编辑JSON的Emacs模式有什么推荐吗?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (19)

有人知道一个好的Emacs模式来编辑JSON吗?我正在使用的应用程序使用基于JSON的通信协议,并且数据很好地缩进并且语法突出显示在我们的过程中会帮助我很多。

提问于
用户回答回答于
用户回答回答于

Josh的JSON模式 +1适用于我。我补充说

(defun beautify-json ()
  (interactive)
  (let ((b (if mark-active (min (point) (mark)) (point-min)))
        (e (if mark-active (max (point) (mark)) (point-max))))
    (shell-command-on-region b e
     "python -mjson.tool" (current-buffer) t)))

(define-key json-mode-map (kbd "C-c C-f") 'beautify-json)

到json-mode.el以使shell命令调用更容易。

对于那些需要/希望用unicode来做到这一点的人,结果不是使用:

python -mjson.tool

你会想要使用

python -c 'import sys,json; data=json.loads(sys.stdin.read()); print json.dumps(data,sort_keys=True,indent=4).decode(\"unicode_escape\").encode(\"utf8\",\"replace\")'

这既美化了JSON,也保留了原始的unicode内容。

扫码关注云+社区