vim的使用

一. 多文件编辑

1. 缓冲区的方式

输入 vim +多个文件名 这几个会进入缓冲区 在命令模式下输入 :ls #展示缓冲区中的文件状态名字和行号

%a表示正在被使用

  • h:隐藏的缓冲区(已加载但未显示)

切换缓冲区: 1. 编号切换 :b 2 (切换到编号为2的文件)

  1. 文件名切换: b processBar.h

  2. ctrl+^: 切换到上一次编辑的文件

这样的方式更合适少文件,但是还是不够直观还有两种方法窗口和新标签页的方式。

2. 窗口式(windows窗口的分屏直观的)

首先有左右的垂直分屏和上下分屏的水平分屏(这个分屏就是看分屏线的位置!)

关键指令就是split(劈开的):

在main.c中可以进入命令模式 :split processBar.c 水平分屏二者文件

以及 vsplit processBar.h垂直打开

切换方式:

ctrl +w 加方向移动切换指定的窗口哦

ctrl +w +w加方向移动切换指定的窗口哦

二. 在v-block模式下的使用

在 Vim 中,Visual Block 模式(块选择模式) 用于垂直选中矩形区域的文本(而非按行选择),适合多行复制相同列的内容。具体操作步骤如下:

1. 进入 Visual Block 模式

在普通模式(按 Esc 确保处于此模式)下,按 Ctrl + v (小写 v),左下角会显示 -- VISUAL BLOCK --,表示进入块选择模式。

2. 选择需要复制的多行区域

  • 上下方向键(↑/↓) 选择需要复制的行数(比如从第 3 行选到第 7 行)。
  • 左右方向键(←/→) 调整选中的列范围(比如只选每行的前 5 个字符)。

选中后,目标区域会被高亮。

3. 复制选中的块

y (yank,复制),此时选中的块会被复制到 Vim 寄存器中,左下角会提示复制的字符数(如 3 lines yanked)。

4. 粘贴复制的块

移动光标到目标位置(比如另一段代码的行首),按 p (paste,粘贴),复制的块会被插入到光标所在位置的下方;按 P 则插入到光标上方。

示例:复制多行注释符号

假设要复制以下代码中每行开头的 // 到其他行:

c

运行

复制代码
// 第一行注释
// 第二行注释
// 第三行注释
int main() { ... }

操作步骤:

  1. 光标移到第一行的第一个 / 处,按 Ctrl + v 进入块模式。
  2. 键 2 次,选中 3 行。
  3. 键 1 次,选中 // 这两列。
  4. y 复制。
  5. 光标移到 int main() 行首,按 p 粘贴,即可给该行加上 //

退出模式

完成操作后,按 Esc 可退出 Visual Block 模式,回到普通模式。

这种模式特别适合处理 "列对齐的文本"(如注释、表格、重复前缀),比按行复制更精准。

相关推荐
AlfredZhao2 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐3 天前
Linux内存扩容指南
linux
zylyehuo3 天前
Linux 彻底且安全地删除文件
linux
用户805533698034 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297914 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
Web3探索者6 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo6 天前
Linux系统中网线与USB网络共享冲突
linux
Sokach10157 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
AlfredZhao8 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
zzzzzz3109 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql