如何并排放置两组块(以JavaScript对象样式)?
换句话说,如何扭转这种局面:如何并排放置两组块(以JavaScript对象样式)?,javascript,vim,Javascript,Vim,换句话说,如何扭转这种局面: hello: goodbye: 'Hello' 'Goodbye' 在Vim里 hello: 'Hello', goodbye: 'Goobye' 我之所以要这样做,是因为我从Exel表中获取了一长串字符串,需要将它们转换为JavaScript对象,就像我在评论中所说的,在Vim中这样做可能会使事情过于复杂。使用Excel,很容易将两列相邻放置,并将这些结果复制/粘贴到Vim以进行最终调整(如果需要) 下面的替换命令可能会让您开始使用仅适用于Vim的解决方案
hello:
goodbye:
'Hello'
'Goodbye'
在Vim里
hello: 'Hello',
goodbye: 'Goobye'
我之所以要这样做,是因为我从Exel表中获取了一长串字符串,需要将它们转换为JavaScript对象,就像我在评论中所说的,在Vim中这样做可能会使事情过于复杂。使用Excel,很容易将两列相邻放置,并将这些结果复制/粘贴到Vim以进行最终调整(如果需要) 下面的替换命令可能会让您开始使用仅适用于Vim的解决方案 0,/\v^$/-1s/\v(.*)/\=子匹配(0).getline(行('.')+3)。',' 要点是
- 设置从文件顶部到第一个空行减去1的范围
- 在一组中捕获整行
- 用捕获的组替换整行,并附加当前行的内容+3
- 您需要计算出第一个和第二个“列”之间的#行以传入替换命令
- 之后仍然需要手动删除第二列中的所有行
qq}jdd'pkJA,j
@q
,如果需要重复此过程100次,请按100@q
@q
并不是说使用Vim是不可能的,但在我看来,将excel中的长列表粘贴到单独的列中,并将最终结果复制/粘贴到Vim中,以添加一些最终格式,要容易得多。
qq}jdd''pkJA,<escape key>j