选择大量的文本,这些文本扩展到像Eclipse这样的IDE中的许多屏幕,因为你可以使用鼠标,但这是最好的方法,例如选择和删除多屏幕文本或者将三个大方法写入另一个文本的最佳方法是什么文件,然后在通过putty/ssh使用它时,在Vim中将它们删除以用于测试目的,在那里你不能使用鼠标?
我可以很容易地从行到行尾或者从代码块到最后但是如果文本扩展到许多屏幕,或者其中有很多空白行,我觉得我的感觉就像是双手被绑在Vim.有解决方案吗
还有一个相关的问题:有没有办法以某种方式选择40行,然后将它们全部注释掉(用"#"或"//"),这在大多数IDE中都很常见?
好吧,首先,你可以设置vim
使用鼠标,这将允许你像你一样选择文本Eclipse
.
您也可以使用Visual选择 - v默认情况下.一旦选择,你可以yank
,cut
等
至于评论块,我通常选择它VISUAL
,然后做
:'<,'>s/^/# /
用a代替每行的开头#
.('<
和'>
标记是视觉选择的开始和.
使用标记.
转到要删除的文本块的顶部并输入
ma
那条线上的任何地方.不需要结肠.
然后转到块的末尾并输入以下内容:
:'a,.d
输入ma
已a
为光标下的字符设置标记.
移动到文本块底部后输入的命令表示"从包含marker a
('a)描述的字符到当前行(.)d
elete的行."
这种东西也可以用于其他事情.
:'a,.ya b - yank from 'a to current line and put in buffer 'b' :'a,.ya B - yank from 'a to current line and append to buffer 'b' :'a,.s/^/#/ - from 'a to current line, substitute '#' for line begin (i.e. comment out in Perl) :'s,.s#^#//# - from 'a to current line, substitute '//' for line begin (i.e. comment out in C++)
NB 'a
(撇号-a)是指包含标记的字符的行a
.``a a (backtick-a) refers to the character marked by
.
要插入注释,请使用CTRL- v(blockwise-visual,not'v'character wise-visual或'V'linewise-visual)选择行的开头字符.然后使用'I'进入插入模式,在第一行输入注释字符(例如'#'),最后使用'Esc'转到正常模式.瞧!
要删除注释,请使用blockwise-visual选择注释,然后使用' x' 删除它们.
使用visual block命令v(或V表示整行,C- V表示矩形块).在可视块模式下,您可以使用任何运动命令,包括搜索; 我经常使用}跳到下一个空白行.标记块后,您可以:将其添加到文件,删除,抽取或其他任何内容.如果执行命令并且可视块消失,请使用gv重新选择相同的块.请参阅:帮助视觉变化了解更多信息.
我认为vim附带了特定于语言的脚本,可以按照适合您选择的语言的方式注释掉代码块.