首页 > 解决方案 > 有没有一种简单的方法可以在 vim 中反转 json 的漂亮打印?

问题描述

当我为机器学习目的标记图像或文本时,我经常以某种json格式导出结果。然后,我可以打开它vim并简单地使用打印

:execute '%!python -m json.tool'

我经常添加| w自动将更改写入文件。

有没有办法扭转这个过程?压缩json,这样就没有多余的字符了?

示例输入:

{
    "name": "John",
    "email": "john@smith.co.uk"
}

期望的输出:

{"name":"John","email":"john@smith.co.uk"}

我会满足于 Vimish、Pythonish 和 Bashish 解决方案。

标签: pythonjsonbashvimpretty-print

解决方案


chepner评论中所述,解决方案是使用:

:%!jq -c .

我已经对其进行了测试,并且可以正常工作。

如果想立即保存文件,他们可以添加| w写入更改。

这需要jq安装在系统上,这是一个相当标准的实用程序。


推荐阅读