[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#21616: [PATCH] Enable sorting of JSON object keys when encoding
From: |
Dmitry Gutov |
Subject: |
bug#21616: [PATCH] Enable sorting of JSON object keys when encoding |
Date: |
Mon, 9 Nov 2015 02:01:25 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Thunderbird/42.0 |
Hi Simen,
On 10/04/2015 10:15 PM, Simen Heggestøyl wrote:
When working with JSON data, it is often convenient to be able to
prettify the data, and having object keys sorted in a fixed order.
This patch adds the variable `json-encoding-object-sort-key' which
I think it's a "predicate", not a "key". See the argument names in
`sort' and `cl-sort': the latter has a :key keyword argument, but it has
different purpose.
Call it json-[encode-]key-sort-predicate, maybe?
This gets rid of a lot of redundant code from `json-encode-hash-table'
and `json-encode-plist' by going via alists, and using the logic of
`json-encode-alist' commonly for all the structures.
The unification part makes me concerned, again, from the performance
standpoint. Did you do any measuring here?
I was in doubt whether to make `json-pretty-print-ordered' and
`json-pretty-print-buffer-ordered' their own commands, or if it would
be better to provide this functionality by having `json-pretty-print'
and `json-pretty-print-buffer' accept prefix arguments. I decided on
the former, because I think it makes the commands easier to discover.
Yes, making them separate seems to be more in line with other Emacs
commands.
- bug#21616: [PATCH] Enable sorting of JSON object keys when encoding,
Dmitry Gutov <=