我经常使用可视块然后插入多行,例如注释掉很多代码.这非常适合在多行上的相同位置插入文本,但我无法弄清楚如何使用可视块模式删除此文本,Backspace,Del和d都不起作用.我正在使用MacVim.
sar*_*old 23
您正在寻找x:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
Run Code Online (Sandbox Code Playgroud)
然后视觉块选择,x:
root:/root:/bin/bash
daeaemon:/usr/sbin:/bin/sh
bin/bin:/bin/sh
sys/dev:/bin/sh
Run Code Online (Sandbox Code Playgroud)
我经常使用它,原因完全相同 - 评论和取消注释大块代码.
这不是直接回答问题(sarnold已经这样做了),但我建议有更有效的方法(取消)注释代码块.我有一个CommentToggle函数,可以注释或取消注释当前行,具体取决于它是否以"comchar"开头.
function! CommentToggle(comchar)
let firstchar = matchstr(getline("."),"[^ ]")
if firstchar == a:comchar
sil exe 'normal ^xx'
else
sil exe 'normal ^i' . a:comchar . ' '
endif
endfunction
Run Code Online (Sandbox Code Playgroud)
因此,对于perl文件,您可以映射:
nnoremap <silent> <leader>c :call CommentToggle('#')<CR>
Run Code Online (Sandbox Code Playgroud)
并按3 \ c(取消)从光标位置注释三行.
您还可以编写可视模式映射:
vnoremap <silent> <leader>c :call CommentToggle('#')<CR>
Run Code Online (Sandbox Code Playgroud)
允许您选择一个可视区域,然后按\c(取消)对它们进行全部评论.
此特定函数仅适用于单字符注释("#","%"等),但可以直接将其扩展为更长的字符串(例如"//"),甚至更复杂的替换,例如HTML评论.
希望这可以帮助.
| 归档时间: |
|
| 查看次数: |
10273 次 |
| 最近记录: |