注释多行

来源:互联网 发布:java random的用法 编辑:程序博客网 时间:2024/06/06 09:49

http://www.21andy.com/blog/20100413/1859.html

Vim 注释多行简化说明
以下一次注释3行操作如下

esc
0 跳到行首
ctrl+v 可视块模式
jjj 下移3行
I 进入插入模式
//
esc
 
// 多行反注释
ctrl+v,然后选中要反注释的行的注释列,然后d即可删除。
 

嫌麻烦可以自己定义快捷键

# vim ~/.vimrc

输入如下内容,保存

"F5 for comment
vmap <F5> :s=^\(//\)*=//=g<cr>:noh<cr>
nmap <F5> :s=^\(//\)*=//=g<cr>:noh<cr>
imap <F5> <ESC>:s=^\(//\)*=//=g<cr>:noh<cr>
"F6 for uncomment
vmap <F6> :s=^\(//\)*==g<cr>:noh<cr>
nmap <F6> :s=^\(//\)*==g<cr>:noh<cr>
imap <F6> <ESC>:s=^\(//\)*==g<cr>:noh<cr>

Vim 注释多行详细说明:
ctrl+v 进入列模式,向下或向上移动光标,把需要注释的行的开头标记起来,然后按大写的I,再插入注释符,比如#,再按Esc,就会全部注释。或者也可以运行下面这些命令:

:s/^/#                  #用"#"注释当前行
:2,50s/^ /#              #在2~50行首添加"#"注释
:.,+3s/^/#              #用"#"注释当前行和当前行后面的三行
:%s/^/#                 #用"#"注释所有行

顺便说一下vim的替换,这个常用,已经牢记,其实和上面用命令注释多行是一样的,只不过是上面注释的命令里的"^"符号代表开始位置而已,在下面这些命令中,"s"代表替换,part1代表查找的内容,part2代表替换的内容,"%"代表所有行,"g"代表替换整行里所有的内容(如果不加"/g"则只替换每行第一个匹配part1的地方)。

:s/part1/part2          #用part2替换当前行中第1个part1
:s/part1 /part2/g        #用part2替换当前行中所有的part1
:%s/part1/part2         #用part2替换所有行中每行第1个part1
:%s/part1/part2/g       #用part2替换所有行中所有的part1
:2,50s/part1 /part2      #用part2替换第2行到第50行中每行第1个part1
:2,50s/part1/part2/g    #用 part2替换第2行到第50行中所有的part1
:.,+3s/part1/part2      #用part2替换当前行以及当前行后面的三行中每行第1个part1
:.,+3s/part1/part2/g    #用part2替换当前行以及当前行后面的三行中所有的part1

BTW: 在替换时要注意,某些字符是需要转译的,如空格、括号等。

原创粉丝点击