我一直在Vim中学习新的命令,但我相信每个人都偶尔会学习一些新东西。我最近才知道:

Zz, zt, zb -位置光标在中间,顶部或底部的屏幕

还有什么其他有用或优雅的命令是你希望很久以前就学会的?


当前回答

set confirm允许你优雅地用:q退出Vim。您不需要使用ZZ或其他盲目保存或丢弃所有更改的笨拙机制。

其他回答

^r^w以命令模式将单词粘贴到光标下。

它在使用grep或replace命令时非常有用。

^X-F使用当前目录中的文件名完成。不再从终端复制/粘贴或痛苦的双重检查。

^X-P使用当前文件中的单词完成

:set scrollbind强制一个缓冲区与另一个缓冲区一起滚动。例如,把你的窗户分成两个垂直的窗格。在每个文件中加载一个文件(可能是同一文件的不同版本)。Do:设置每个scrollbind。现在,当你滚动其中一个窗格时,两个窗格将一起滚动。比较文件的理想选择。

我知道这并不完全是Vim。但是我发现cscope集成真的很好,它在侵入Linux内核时帮助了我很多。

按Ctrl + \, g到达函数的定义 Ctrl + \, s查找函数、宏或变量的所有用法。

^P和^N

完成上一个(^P)或下一个(^N)文本。

^O和^I

转到前一个(^O -“O”为旧)位置或下一个(^I -“I”靠近“O”)位置。

当您执行搜索、编辑文件等时,您可以通过这些“跳转”向前和向后导航。

标志着

按ma (m-标记,a -标记的名称)。稍后要返回位置,键入' a '。

:q!

我希望我在第一次使用vi之前就知道这一点。