人们谈论常见技巧的问题很多,特别是“Vim+ctags提示和技巧”。
然而,我并没有提到Vim新手会觉得很酷的常用快捷方式。我所说的是一位经验丰富的Unix用户(无论是开发人员、管理员,还是两者都有),他们认为自己知道99%的人从未听说过或梦想过的东西。这不仅让他们的工作更容易,而且很酷,很粗糙。毕竟,Vim位于世界上最黑暗的角落丰富的操作系统中,因此它应该具有只有少数特权人士知道并想与我们分享的复杂性。
人们谈论常见技巧的问题很多,特别是“Vim+ctags提示和技巧”。
然而,我并没有提到Vim新手会觉得很酷的常用快捷方式。我所说的是一位经验丰富的Unix用户(无论是开发人员、管理员,还是两者都有),他们认为自己知道99%的人从未听说过或梦想过的东西。这不仅让他们的工作更容易,而且很酷,很粗糙。毕竟,Vim位于世界上最黑暗的角落丰富的操作系统中,因此它应该具有只有少数特权人士知道并想与我们分享的复杂性。
当前回答
我使用vim进行几乎所有的文本编辑,所以我经常使用复制和粘贴。问题是默认情况下vim经常会通过粘贴扭曲导入的文本。阻止这种情况的方法是使用
:set paste
在粘贴数据之前。这将使它不致混乱。
注意,您必须发出:set nopaste以恢复自动缩进。粘贴预格式化文本的替代方法是剪贴板寄存器(*和+)和:r!cat(您必须用^D结束粘贴的片段)。
打开高对比度配色方案有时也很有用。这可以通过
:color blue
我注意到它不适用于我使用的所有版本的vim,但它适用于大多数版本。
其他回答
当我在项目中工作时,我经常使用许多窗口,有时我需要调整它们的大小。以下是我使用的:
map + <C-W>+
map - <C-W>-
这些映射允许增加和减少当前窗口的大小。这很简单,但很快。
在构建过程缓慢的项目上工作时,我总是在后台构建,并将输出通过管道发送到名为errors.err的文件(类似于make debug 2>&1|tee errors.err)。这使得我可以在构建过程中继续编辑或审阅源代码。当它准备好后(使用GTK上的pynotify通知我它已经完成),我可以使用quickfix在vim中查看结果。首先发出:cf[ile],读取错误文件并跳转到第一个错误。我个人喜欢使用cwindow在单独的窗口中获得构建结果。
这是一个用不同编码重新打开当前文件的好技巧:
:e ++enc=cp1250 %:p
当您必须使用传统编码时,这很有用。支持的编码列在编码值下的表中(请参阅帮助编码值)。类似的事情也适用于++ff,这样您就可以使用Windows/Unix重新打开文件了。如果您第一次出错,则行结束(请参阅帮助ff)。
我今天通过NSFAQ找到了这个:
注释代码块。
点击CTRL-V进入分块视觉模式。
标记要注释的块。
点击I(大写I)并在行的开头输入注释字符串。(//对于C++)
按ESC键,所选的所有行都将//前置到行的前面。
我喜欢:ls命令。