我正在尝试正确使用vim - 为了帮助我,我将箭头键映射到"",以便我被迫使用{hjlk}来移动.
当我想用空格包围一个字符时,这会导致我出现问题,例如:
"2 + 3"格式更好"2 + 3"
以前我会将光标放在+上并键入:
I [空间] [右箭头] [空间] [Esc]键
这是5台印刷机.
要在没有箭头的情况下执行此操作,我似乎需要将光标放在+上并继续:
I [空间] Esc键LLI [空格] [Esc]键
那是8台印刷机.
我可以将"li"转换为"a",将其减少到7个印刷机:
I [空间] [Esc键] LA [空格] [Esc]键
如果没有将其写入宏,有没有更好的方法呢?是否有一些神奇的vim命令允许我在少于5次按下的情况下执行此操作 - 以及某种方式来概括它以便我可以对整个单词或符号执行此操作,例如,如果我想将3 == 4转换为3 == 4?
Sar*_*rah 16
就个人而言,我认为最有意义的是破坏你想要包围的东西,然后重新制作它.
c w "" ESC P
Run Code Online (Sandbox Code Playgroud)
显然,你可以用你喜欢的任何东西替换对象和引号.要改变一个字符+为[空格] + [空格],你会这样做
s [space] [space] ESC P
Run Code Online (Sandbox Code Playgroud)
在+
在阅读完标题之后,首先想到的是surround.vim,它是一个很好的脚本,可以根据您描述的内容进行各种有用的操作.
为了解决您的具体问题,我可能会将光标定位在+和:
S [空间] + [空格] [ESC]
要将3 == 4更改为3 == 4,我可能会将光标定位在第一个=上,并且:
I [空间] [ESC] WW.