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

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

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


当前回答

Qx将开始记录击键。你几乎可以做任何编辑任务,Vim都记得。当你完成时再次点击q,然后按@x来重放你的击键。这对于过于复杂而无法编写映射的重复编辑非常有用。可以使用x以外的字符进行多次记录。

其他回答

:x #(Save and Quit a File)

与:wq或ZZ相同

^P和^N

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

^O和^I

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

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

标志着

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

这句话总是让我高兴起来:

:help 42

选项卡式界面

除了分开的窗口,您还可以有选项卡窗口。在转义模式下,输入tabnew。您可以像这样打开多个选项卡。要在选项卡之间导航,输入tabn。这将移动到下一个选项卡。要移动到选项卡窗口,键入tabn2以移动第二个选项卡,依此类推。

要关闭制表符,输入tabc、tabclose或直接关闭。

如果你在终端模拟器(基本上是GUI中的终端)中,那么你可以尝试执行set mouse=a。完成后,您可以用鼠标在编辑器内单击。这也将帮助您通过单击在选项卡之间导航,并通过单击右侧的关闭按钮关闭。

对齐您的代码-完整的文件

只需在转义模式下输入G=gg。

折叠代码

假设您有一个完成的函数。您希望最小化(或折叠)这部分代码,以便可以释放一些空间并减少混乱。只需选择代码。然后输入折叠。

这将折叠代码。如果您想展开代码,只需转到那里,并键入zo。要再次折叠,输入zc。

我很惊讶没有人提到Vim的窗口支持。我几乎每次打开Vim都会使用Ctrl + W, S。