当前位置: 首页 > news >正文

Vim 编辑器全模式操作指南

Vim 编辑器全模式操作指南

Vim 是 Linux 系统中最常用的文本编辑器之一,其强大之处在于灵活的工作模式和高效的操作命令。掌握 Vim 的工作模式切换及核心操作,能显著提升文本编辑效率。本文将详细解析 Vim 的 4 种工作模式及常用操作命令

一、Vim 的 4 种工作模式

Vim 的核心是 “模式化编辑”,不同模式对应不同的操作场景,模式间可通过特定命令切换。

模式进入方式核心功能
命令模式启动 Vim 默认进入执行光标移动、删除、复制等编辑命令
输入模式命令模式下通过特定命令进入直接输入 / 编辑文本内容
末行模式命令模式下输入:进入执行保存、退出、查找替换等全局操作
可视模式命令模式下通过v/V/ctrl+v进入选中一块文本进行批量操作(删除、复制等)

二、模式切换与核心操作

1. 命令模式 ↔ 输入模式(编辑模式)

命令模式是 Vim 的 “控制中心”,无法直接输入文本,需切换到输入模式才能编辑内容。以下是从命令模式进入输入模式的常用命令:

命令功能描述
i在当前光标所在位置开始编辑(光标不动)
I在光标所在行的行首开始编辑
o在光标所在行下方新建一行并编辑
O在光标所在行上方新建一行并编辑
a在光标所在位置后一位开始编辑
A在光标所在行的行尾开始编辑

返回命令模式:输入模式下按Esc键(左下角会消失 “–INSERT–” 提示)

2. 命令模式常用快捷键

命令模式下可执行光标移动、删除、复制等操作,无需进入输入模式即可完成高效编辑

(1)光标移动
命令功能描述
G跳转到文本最后一行
gg跳转到文本第一行
nG/ngg跳转到第n行(如10G跳转到第 10 行)
ctrl+f向下翻一页(forward)
ctrl+b向上翻一页(backward)
home/^/0光标移动到行首
end/$光标移动到行尾
(2)删除操作
命令功能描述
x/Del删除光标所在位置的单个字符
dd删除光标所在行(整行)
ndd删除从光标行开始的n行(如3dd删 3 行)
d^删除从光标前一位到行首的所有内容
d$删除从光标位置到行尾的所有内容(含光标)
(3)复制与粘贴
命令功能描述
yy复制光标所在行(整行)
nyy复制从光标行开始的n行(如5yy复制 5 行)
p在光标行下方粘贴复制的内容
P在光标行上方粘贴复制的内容
(4)查找操作
命令功能描述
/关键词从当前位置向下查找 “关键词”(如/sbin
n继续向下查找下一个匹配项
N向上查找上一个匹配项
:noh末行模式下执行,取消查找结果的高亮显示

三、末行模式操作(命令模式→:进入)

末行模式用于执行全局操作(如保存、退出、替换等),命令输入在屏幕底部的 “末行”,执行后自动返回命令模式

1. 退出与保存

命令功能描述
:q不保存修改,退出 Vim(若有未保存内容会提示)
:q!强制不保存修改并退出(忽略未保存内容)
:wq保存修改并退出 Vim
:wq!强制保存修改并退出(对只读文件有效,需权限)

2. 行号与文件操作

命令功能描述
:set nu显示文本的行号
:set nu!取消行号显示
:w /path/filename将当前内容另存为指定文件(如:w /tmp/bb
:e /path/filename打开新文件编辑(需先保存当前文件修改)
:r /path/filename读取指定文件内容,插入到当前光标后

3. 文本替换(核心功能)

替换命令格式::范围 s/旧内容/新内容/选项

命令示例功能描述
:%s/旧/新/g替换整个文件中所有 “旧内容” 为 “新内容”(%表示全部行,g表示每行所有匹配)
:%s/旧/新替换整个文件中每行第一个 “旧内容” 为 “新内容”
:1,7s/旧/新/g替换第 1-7 行中所有 “旧内容” 为 “新内容”

四、多文件分屏操作

Vim 支持同时打开多个文件并分屏显示,方便对比或编辑

命令功能描述
vim file1 file2 -o水平分屏显示file1file2(上下排列)
vim file1 file2 -O垂直分屏显示file1file2(左右排列)

五、可视模式操作(批量处理)

可视模式用于 “选中一块文本” 后批量操作(删除、复制、替换等),按Esc退出可视模式返回命令模式

模式类型进入方式选中单位典型操作(选中后)
字符模式命令模式按v按单个字符选中x删除选中内容
行模式命令模式按V按整行选中dd删除选中行
块模式命令模式按Ctrl+v按矩形块选中(如多列)批量插入注释(如I#+Esc

总结

Vim 的高效源于 “模式化” 设计:命令模式负责编辑控制,输入模式专注文本录入,末行模式处理全局操作,可视模式简化批量处理。熟练掌握模式切换(尤其是Esc返回命令模式)和核心命令,能让 Vim 成为日常工作的 “效率利器”。建议通过实际编辑练习(如修改配置文件)加深记忆,逐步形成 “不碰鼠标” 的编辑习惯

http://www.lryc.cn/news/599234.html

相关文章:

  • 短剧小程序系统开发:构建影视娱乐生态新格局
  • Java常用命令、JVM常用命令
  • Android Room 持久化库:简化数据库操作
  • pycharm安装教程-PyCharm2023安装详细步骤【MAC版】【安装包自取】
  • PyCharm高效开发全攻略
  • IP证书:构建数字世界知识产权安全防线的基石
  • Java零基础入门学习知识点2-JDK安装配置+Maven
  • Qwen3-235B-A22B-Thinking-2507 - 开源思维推理模型的新标杆
  • 深入解析Hadoop YARN如何避免资源死锁:机制与实战
  • Androidstudio 上传当前module 或本地jar包到maven服务器。
  • C++调用GnuPlot一维绘图
  • 微信小程序中英文切换miniprogram-i18n-plus
  • 三、Spark 运行环境部署:全面掌握四种核心模式
  • day33:零基础学嵌入式之网络——HTTP服务端
  • GaussDB 逻辑备份实操
  • 《剑指offer》-数据结构篇-链表
  • Java 大视界 -- Java 大数据机器学习模型在金融衍生品市场波动特征挖掘与交易策略创新中的应用(363)
  • MySQL存储引擎深度解析与实战指南
  • 电科金仓新一代数据库一体机:国产化方案替换优质选择
  • Java研学-RabbitMQ(三)
  • LeetCode 391:完美矩形
  • SQL164 2021年11月每天新用户的次日留存率
  • 虚拟地址-物理地址
  • 关于“PromptPilot”
  • jwt 验证方法 (ASP.NET Core)
  • Uniapp编写微信小程序,绘制动态圆环进度条
  • Linux——线程(下)
  • uniapp小程序上传图片并压缩
  • 【MacOS】发展历程
  • 基于 Nginx 与未来之窗防火墙构建下一代自建动态网络防护体系​—仙盟创梦IDE