Linux Vim批量注释和自定义注释-CSDN博客

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

使用 Vim 编辑 Shell 脚本在进行调试时需要进行多行的注释每次都要先切换到输入模式在行首输入注释符"#"再退回命令模式非常麻烦。连续行的注释其实可以用替换命令来完成。

换句话说在指定范围行加"#"注释可以使用 ":起始行终止行 s/^/#/g"例如

:1,10s/^/#/g

表示在第 1~10 行行首加"#"注释。"^"意为行首"g"表示执行替换时不询问确认。如果希望每行交互询问是否执行则可将 "g" 改为 "c"。

取消连续行注释则可以使用 ":起始行终止行s/^#//g"例如

:1,10s/^#//g

意为将行首的"#"替换为空即删除。当然使用语言不同注释符号或想替换的内容不同都可以采用此方法灵活运用即可。添加"//"注释要稍微麻烦一些命令格式为 ":起始行终止行 s/^/\/\//g"。例如

:1,5s/^/\/\//g

表示在第 1~5 行行首加"//"注释因为 "/" 前面需要加转义字符 "\"所以写出来比较奇特。以上方法可以解决连续行的注释问题如果是非连续的多行就不灵了这时我们可以定义快捷键简化操作。格式如下

:map 快捷键 执行命令

如定义快捷键 "Ctrl+P" 为在行首添加 "#" 注释可以执行 ":map^P l#<Esc>"。其中 "^P" 为定义快捷键 "Ctrl+P"。注意必须同时按 "Ctrl+V+P" 快捷键生成 "^P" 方可有效或先按 "Ctrl+V" 再按 "Ctrl+P" 也可以直接输入 "^P" 是无效的。

"l#<Esc>" 就是此快捷键要触发的动作"l" 为在光标所在行行首插入"#" 为要输入的字符"<Esc>" 表示退回命令模式。

"<Esc>" 要逐个字符输入不可直接按键盘上的 Esc 键。设置成功后直接在任意需要注释的行上按 "Ctrl+P" 快捷键就会自动在行首加上 "#" 注释。取消此快捷键定义输入 ":unmap^P" 即可。我们可以延伸一下如果想取消文件行首的快捷键则可以设置 ":map^B 0x"快捷键为 "Ctrl+B", "0" 表示跳到行首"x" 表示删除光标所在处字符。再如有时我们写完脚本等文件需要在末尾注释中加入自己的邮箱则可以直接定义每次按快捷键 "Ctrl+E" 实现插入邮箱定义方法为 ":map^E asamlee@itxdl.net<Esc>"。

其中 "a" 表示在当前字符后插入"samlee@itxdl.net" 为插入的邮箱"<Esc>" 表示插入后返回命令模式。

所以通过定义快捷键我们可以把前面讲到的命令组合起来使用。将快捷键对应的命令保存在 .vimrc 文件中即可在每次使用 Vim 时自动调用非常方便。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: linux

“Linux Vim批量注释和自定义注释-CSDN博客” 的相关文章