# 在 vi/vim 中给多行文本添加 # 注释的方法
## 方法1:使用可视块模式(最常用)
1. 将光标移动到要注释的第一行的行首
2. 按 `Ctrl + V` 进入可视块模式
3. 使用方向键(j/k 或 上下箭头)选择要注释的行
4. 按大写的 `I`(Shift + i)进入插入模式
5. 输入 `#` 和一个空格(可选)
6. 按 `Esc` 键,所有选中的行都会添加注释
## 方法2:使用行号范围
1. 在正常模式下输入 `:起始行号,结束行号s/^/# /`
- 例如:`:10,20s/^/# ` 给第10-20行添加注释
- `^` 表示行首
- `# ` 是要添加的注释符号和空格
2. 如果要添加注释但不包含空格:
- `:10,20s/^/#/`
## 方法3:使用标记
1. 移动到起始行,按 `ma` 设置标记 a
2. 移动到结束行,按 `mb` 设置标记 b
3. 输入 `:'a,'bs/^/# /`
## 方法4:使用相对行号
1. 从当前行开始,给下面的5行添加注释:
- `:.,+4s/^/# /`
2. 从当前行开始,给上面的3行和下面的2行添加注释:
- `:-3,+2s/^/# /`
## 方法5:使用正常模式命令
1. 将光标移动到要注释的第一行
2. 输入 `5>>`(5 是行数,>> 是缩进命令)
- 这会将行向右缩进,而不是添加注释
- 需要配合自动缩进或设置
## 方法6:使用宏录制
1. 将光标移动到要注释的第一行
2. 按 `qa` 开始录制宏到寄存器 a
3. 按 `I` 进入行首插入模式
4. 输入 `#` 和空格
5. 按 `Esc` 退出插入模式
6. 按 `j` 移动到下一行
7. 按 `q` 结束录制
8. 按 `5@a` 执行宏5次
## 方法7:使用插件
如果需要频繁进行注释操作,可以安装注释插件:
- vim-commentary
- nerdcommenter
- tcomment_vim
安装后可以使用:
- `gc` 切换注释
- `gcc` 注释当前行
- 可视模式下选择多行后按 `gc`
## 方法8:删除多行注释
1. 可视块模式删除:
- 按 `Ctrl + V` 进入可视块模式
- 选择要删除的注释符号
- 按 `d` 删除
2. 使用替换命令删除:
- `:10,20s/^# //` 删除行首的 # 和空格
- `:10,20s/^#//` 只删除行首的 #
## 注意事项
1. **^ 的作用**:`^` 表示行首,确保只在行首添加注释
2. **空格处理**:建议在 # 后添加一个空格,符合大多数编程规范
3. **文件类型**:不同文件类型使用不同的注释符号:
- Python/Shell: `#`
- JavaScript/C++: `//`
- HTML: `<!-- -->`
- CSS: `/* */`
4. **Esc 键**:使用方法1时,按 Esc 后会有短暂延迟,然后所有选中的行会同时添加注释
## 实际示例
原始文本:
line1
line2
line3
line4
line5
操作步骤:
1. 将光标移动到 line1
2. 按 `Ctrl + V`
3. 按 `4j` 或向下键4次
4. 按大写的 `I`
5. 输入 `# `
6. 按 `Esc`
结果:
# line1
# line2
# line3
# line4
# line5
Posted inServer