将一个线对象拆分为多线对象

时间:2018-10-03 10:04:30

标签: javascript vim atom-editor comma

AtomVim中是否有命令/快捷键,所以如果我选择此命令:

{ a: 1, b: 2, c: 3 } 

它转换成这个吗?:

{ 
   a: 1, 
   b: 2, 
   c: 3 
} 

3 个答案:

答案 0 :(得分:1)

Pretty JSON是可以为Atom安装的软件包,它将完全执行此操作。

答案 1 :(得分:1)

将光标置于{}类型内

va{:s/\({\|,\)/\0\r/g<Enter>f}i<Enter>

细分:

va{可视模式选择{}中的所有内容,包括{}本身

:s/\({\|,\)/\0\r/g<Enter>搜索开头的{和任何,,并用其中的内容和换行符“替换”它们。

f}您的光标应位于最后一行,其中应包含结尾的}。将光标移到它。

i<Enter>进入光标位于}前面的插入模式并插入换行符。

这将适用于您作为示例显示的内容。如果您的实际输入中包含任何带有{,的字符串,则此字符串将中断。在这种情况下,您可能需要比普通vim命令更复杂的东西。

答案 2 :(得分:0)

我的splitjoin插件可以在Vim中做到这一点,尽管它不适用于选择,但可以使用光标位置:https://github.com/AndrewRadev/splitjoin.vim

当然,如果您正在处理大型JSON文件,那么专用的JSON美化器将是重新格式化它的更可靠方法。