我一直在Vim中学习新的命令,但我相信每个人都偶尔会学习一些新东西。我最近才知道:
Zz, zt, zb -位置光标在中间,顶部或底部的屏幕
还有什么其他有用或优雅的命令是你希望很久以前就学会的?
我一直在Vim中学习新的命令,但我相信每个人都偶尔会学习一些新东西。我最近才知道:
Zz, zt, zb -位置光标在中间,顶部或底部的屏幕
还有什么其他有用或优雅的命令是你希望很久以前就学会的?
当前回答
我希望我能早点知道基本的视觉块模式。即使你不使用Vim做其他的事情,在Vim中打开一个文件仅仅是为了一些块操作也可以节省大量的时间。我很确定我在手动做这种事情上浪费了大量的时间。
我发现一些特别有用的例子,比如始终如一地重构符号常量名列表:
进入可视块模式(我在Windows上用Ctrl + Q代替Ctrl + V)
移动光标以突出显示所需的块。
然后,我无论文本和按Esc有文本插入前面的块上的每一行。
使用A而不是I将文本插入到每行的块之后。
此外,简单地用~切换视觉选择的大小写可以节省大量时间。
还有简单地删除列,当然是用d。
其他回答
^P和^N
完成上一个(^P)或下一个(^N)文本。
^O和^I
转到前一个(^O -“O”为旧)位置或下一个(^I -“I”靠近“O”)位置。
当您执行搜索、编辑文件等时,您可以通过这些“跳转”向前和向后导航。
标志着
按ma (m-标记,a -标记的名称)。稍后要返回位置,键入' a '。
进一步使用xcramps的建议,我无法告诉你我用了多少次:
: % !排序
对文件中的项列表进行排序。
细节:
:范围!命令
将在指定的行范围上执行shell命令。一个范围通常被指定为开始,结束
例子: 1,3指定前3行 'a,'b选择书签a和b之间的文本 ,$选择整个文档(。=第一线;$ =最后一行) %是.,$的快捷方式,还可以选择整个文档。
您可以随意混合和匹配数字、书签、.和$。
set confirm允许你优雅地用:q退出Vim。您不需要使用ZZ或其他盲目保存或丢弃所有更改的笨拙机制。
:q!
我希望我在第一次使用vi之前就知道这一点。
我真的希望我知道你可以使用Ctrl+C而不是Esc来切换插入模式。这对我来说是一个真正的生产力提升。