进行Vimgolf练习,要求您从以下开始:
- One number per line -
-----------------------
2,3,5,7,
11,13,17,
19,23,29,
然后将其转换为:
2
3
5
7
11
13
17
19
23
29
给出的一个解决方案是:
dj3gJV"=[<C-R><C-A>]<CR>pZZ
我跟随&#34; = [&#34;等等。做&#34;:帮助[&#34;在Vim中,只显示正常模式下带方括号的一些动作。我认为引号表示使用了一个特殊的寄存器,但我不清楚等号后面的其余部分。
1)查询Vim帮助系统以了解&#34; = [...&#34;在视觉模式? 2)而且,你能解释一下&#34; = [...&#34 ;? (其中......是后面其余命令的缩写)
答案 0 :(得分:2)
你打电话给表达式注册表&#39;,把vim脚本语言列表并进行评估。
"=
将调用&#39;表达式寄存器&#39;。如果你把这个寄存器的vim-script语言表达式,它将被计算出来。 :help "=
有关表达式寄存器的更多信息。
:help <C-R>
有关特殊寄存器的信息。
:help c_<C-R>_<C-A>
在光标下插入WORD。您处于可视模式,因此将插入所有选择。
[2,3,5,7,11,13,17,19,23,29,]
这是vim脚本语言的列表。 :help List
您可以阅读:help "=
如果结果是List,则每个元素都变成一个String并用作一行。