mat*_*ter 23 json gedit sublimetext winston
使用winston进行node.js日志记录,我得到了json日志文件.这种情况下的日志文件只是一系列(换行符分隔的)json对象.这对于日志查询和将日志视为一流数据非常有用!
然而,两者Sublime和gedit(至少他们在Ubuntu,sublime 2和gedit 3.6.2上使用它们的版本),很难突出json - 他们使用相同的颜色键和值,使任何日志钻孔相当痛苦,真的不可能以任何远程人道的方式进行.
现有chrome extensions的json突出显示在这里也没有用 - 它们无法处理json对象的集合,因此无法显示这些日志文件,除非我首先手动将它们转换为合成父对象中的数组(从而将它们转换为json对象) ).在查看仍在写入的日志文件的情况下,这很乏味......
是否有任何工具可以按原样吞下json日志文件,同时突出显示不同颜色的键而不是值,这样json日志对人类也很友好,不仅对机器?这是一个真正的痛苦.
谢谢!
Mat*_*DMo 27
查看霓虹色方案,可通过Package Control获得,Github可用于Sublime Text.键和值以不同颜色突出显示,并且不同级别有不同的键颜色.

完全披露:我是这个项目的维护者,但我真的认为它会帮助你 - 它在使用如上所示的多级JSON文件时肯定有帮助.
Ben*_*ten 24
如果您喜欢默认的Monkai主题,请查看MonokaiJSON +主题!它支持字符串,字典,数组以及所有这些混合!
https://github.com/ColibriApps/MonokaiJsonPlus

我修改了原始的暮光之城主题,为更漂亮的json添加规则.它是@MattDMo答案的修改版本,并且具有不同级别的类似不同的键颜色.你可以从这里得到它
https://github.com/shaunakv1/twilight-tmTheme-better-json-highlight
以下是JSON的外观:

查看 SublimeText 中的 json 文件,我意识到键和值具有不同的范围。因此,自定义配色方案并为键和值添加不同的颜色应该非常简单。
键的范围为source.json meta.structure.dictionary.json string.quoted.double.json
,而值的范围为source.json meta.structure.dictionary.json meta.structure.dictionary.value.json string.quoted.double.json
因此,如果您在配色方案规则的底部添加此代码片段,您应该会看到它们具有不同的颜色:
<dict>
<key>name</key>
<string>Json Keys</string>
<key>scope</key>
<string>source.json meta.structure.dictionary.json string.quoted.double.json</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF0000</string> <!-- your keys color -->
</dict>
</dict>
<dict>
<key>name</key>
<string>JSON Values</string>
<key>scope</key>
<string>source.json meta.structure.dictionary.json meta.structure.dictionary.value.json string.quoted.double.json</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#00FF00</string> <!-- your custom color -->
</dict>
</dict>
Run Code Online (Sandbox Code Playgroud)