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

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

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


当前回答

从Vim中构建和调试代码!

配置

没什么,真的。您需要在当前目录中创建一个Makefile。

要编译

在Vim中,输入:make调用shell并构建程序。当输出滚动时,不要担心;当它完成时,只需按Enter键返回Vim。

神奇的

在Vim中,您可以使用以下命令:

:cl列出错误、警告和其他消息。 :cc在屏幕底部显示当前的错误/警告消息,并跳转到代码中的违规行。 :cc n跳转到第n条消息。 :cn进入下一条消息。 :cp跳转到上一条消息。

还有更多;如果你感兴趣,在Vim中输入:help:cc。

其他回答

我经常创建用于编辑任务的函数,并将它们存储在.vimrc文件中,这样我就可以再次找到它们。

例如,读取已转换为单行的.NET调用栈:

function! FixCallStacks()
:%s;\[NLN\];\r;g
:%s;\[TAB\];\t;g
endfunction

我不得不说,我最喜欢的一个方法是把帮助窗口放在一个新标签中:

:tab help <help_topic>

这将在一个新标签中打开帮助,作为一个喜欢Vim标签的人,这是非常有用的。

Gv启动可视模式并自动选择您之前选择的内容。

:Te[xplore]

Tab & Explore(在生成浏览器窗口之前执行Tab new)

使用选项卡打开多个文件

:tabe filepath

在打开的文件之间导航

gt and gT or :tabn and :tabp

保存打开的会话,以便稍后可以返回打开的文件列表

:mksession session_file_name.vim

打开已创建的会话

vim -S session_file_name.vim

立即关闭所有文件

:qa

这是我最近学到的另一个命令

autocmd

它允许你在一个事件上运行命令,所以你可以在保存文件时使用如下命令:

:autocmd BufWritePost *.cpp :make