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

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

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


当前回答

选项卡式界面

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

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

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

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

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

折叠代码

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

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

其他回答

ZZ(工作方式:wq)

关于光标的位置:我发现光标总是停留在屏幕中间是很酷的

set scrolloff=9999

在我们的软件商店中,变量声明需要排序。在我们使用的语言中,多个变量可以出现在同一行上。

new var1,var2,var3,etc

这是一个真正的痛苦,通过和视觉上尝试排序每个变量。在Vim中,块突出显示和排序命令是我的朋友:

将光标移动到要排序的第一个变量。 发出v命令进入可视模式。 将光标移动到最后一个要排序的变量的末尾(在我的例子中,我输入$到行末尾)。 执行!sort命令告诉Vim对突出显示的文本进行排序。

只有在底层系统上存在'sort'命令时,这才会起作用。

在Bash的命令行上使用Vim绑定:

    set -o vi

在其他使用readline的程序中,按Ctrl + Alt + J从Emacs绑定切换到Vim绑定。

我刚刚在浏览Vim帮助时发现了这个:

:help index

这将把您带到一个单独的(可搜索的!)页面,其中包含所有模式的所有命令。

所以,如果你知道你要记住/学习的命令是从某个按键开始或涉及到某个按键,你可以搜索并浏览所有的可能性。或者你可以浏览你感兴趣的模式,看看/学习编辑的可能性。

我都数不清有多少次我只是按Ctrl + R或者其他键,然后得到了第一个东西,当然这不是你想要的。在我看来,这比:helpgrep好多了。

然后进入。vimrc:

nnoremap <silent> <F1> :help normal-index<CR>
inoremap <silent> <F1> <C-O>:help insert-index<CR>

:help仍然会让你进入默认的F1页面。

当光标位于引号、圆括号、括号或大括号上时,按%查找匹配项。