是否有可以更改的Vim命令(我猜测搜索和替换?):
listThing(["fish", "monkey", "cat", "penguin"])
成:
listThing([
"fish",
"monkey",
"cat",
"penguin"
])
不只是在逗号后面添加换行符和制表符,因为第一行和最后一行也需要分开。
答案 0 :(得分:2)
不知道你的文件中还有什么可能与简单方法相匹配的是:
:1,$s/\("[^ ,]*"\|\])\)/\r \1/g
哪能得到你:
listThing([
"fish",
"monkey",
"cat",
"penguin"
])
编辑:正如我上面所述,但会再次强调:这对您有用的程度可能取决于您文件中的其他类似结构。其他选项包括使用Ingo建议的插件,或在awk
,perl
或<insert-favorite-script-language-here>
中编写单独的脚本。
答案 1 :(得分:2)
对于特定情况,@ lurker的答案提出的:substitute
命令就足够了。不幸的是,对于许多编程语言,可能存在结构嵌套,并且很难正确处理所有这些。因此,对于一个强大的“不要让我思考”的解决方案,我认为你需要一个插件。虽然我还没有尝试过,argwrap plugin提供了这个。