【!长文预警】vim是什么?分为哪些模式?怎么用?

分类: 365bet网址主页 时间: 2026-02-21 12:36:56 作者: admin 阅读: 9260

拼客全栈攻防 第7.1天——功能速记

一个深度沉迷效率工具的程序猿/文字工作者/极客(根据你自己定位调整哈)。今天咱们不聊游戏,不聊新番,来聊一个让无数程序员又爱又恨、被誉为“编辑器之神”的家伙—— Vim!相信我,掌握它,你的键盘操作效率能直接起飞!✈️

一、 Vim 是什么?—— “键盘就是你的魔法杖”

想象一下:你不需要鼠标,双手永远不必离开主键盘区,就能完成所有复杂的文本编辑操作。 这就是 Vim 的核心魅力!

出身名门: 它是上古神器 Vi(Visual Editor)的超级增强版 (Vi IMproved)。诞生于1991年(比很多小伙伴年纪都大了!)。

核心哲学: 模态编辑(Modal Editing)。这是它区别于几乎所有现代编辑器(像 VS Code, Sublime, Notepad++) 的根本!不同模式下,同一个按键代表不同含义。

为效率而生: 设计目标就是减少手指移动距离,最大化键盘操作效率。一旦熟练,编辑速度能快到让你自己都惊讶。

无处不在: Linux/Mac 系统默认安装,服务器必备!你不会想在只有命令行的生产服务器上抓瞎的。

高度可定制: .vimrc 配置文件 + 海量插件,能把它从简单的记事本武装成媲美 IDE 的超级编辑器(写代码、写脚本、写文档统统不在话下)。

学习曲线: 没错,它陡峭!俗称 “从入门到放弃”。但一旦跨过初期门槛,你会发现它是真香!🔥

比喻: 普通编辑器像开自动挡汽车,Vim 像开手动挡赛车。手动挡起步慢,离合控制不好容易熄火(比如不知道怎么退出Vim),但一旦你会开了,那操控感和速度感是无敌的!键盘就是你的离合器、油门和方向盘。

二、 Vim 的核心模式—— “切换形态,各显神通”

理解 Vim 模式是入门的关键!就像超级英雄要切换形态打怪一样。记住:Esc 键是你强大的“形态重置”按钮!

普通模式 (Normal Mode) - “指挥官模式”

进入方式: 启动 Vim 默认进入 | 在其他任何模式按 Esc。

核心功能: 移动光标、下达命令、执行操作。 这是 Vim 的灵魂所在!你不能直接输入文字。

常用操作:

移动: h(左), j(下), k(上), l(右) | w(下一个单词头), b(上一个单词头), e(单词尾) | 0(行首), $(行尾) | gg(文件头), G(文件尾) | Ctrl+f(下翻页), Ctrl+b(上翻页)。

编辑命令: d(删除), y(复制/拉取), p(粘贴), c(修改), x(删除光标下字符) ... 这些命令需要配合“动作”(motion)使用,形成组合技! (这才是精髓!)

dd = 删除当前行

yy = 复制当前行

dw = 删除从光标到下一个单词头

c$ = 修改从光标到行尾(删除并进入插入模式)

p = 在当前行后粘贴

撤销/重做: u(撤销), Ctrl + r(重做)

搜索: / + 关键词 (向下搜索) | ? + 关键词 (向上搜索) | n(下一个匹配项), N(上一个匹配项)

提示: 普通模式是你大部分时间所处的“思考决策”状态。你在这里规划你的操作路径。

插入模式 (Insert Mode) - “码字模式”

进入方式: 在普通模式下按:i(在光标前插入), a(在光标后追加), o(在下方新行插入), O(在上方新行插入), I(在行首插入), A(在行尾追加)。

核心功能: 输入和编辑文本内容。 此时键盘行为就像你熟悉的记事本或 Word。

退出方式: 按 Esc 返回普通模式。

提示: 这是你“输出”的状态。大部分新手只想一直待在这里,但高手只在需要输入时才短暂进入,快速完成输入后立刻返回普通模式进行高效移动和操作。

可视模式 (Visual Mode) - “选区模式”

进入方式: 普通模式下按:v(字符可视), V(行可视), Ctrl+v(块可视/列可视)。

核心功能: 高亮选择文本块。 选择后,可以执行普通模式下的命令(如 d, y, c, p),操作将作用于选中的区域。

退出方式: 按 Esc 返回普通模式(或者执行完操作命令后自动退出)。

提示: 当你需要精确操作某一块不规则区域的文本时(比如批量注释多行代码中间几列),可视模式(尤其是块可视)是神器!

命令行模式 (Command-line Mode / Ex Mode) - “终极奥义模式”

进入方式: 普通模式下按 :。

核心功能: 执行更复杂的管理命令。 命令会显示在屏幕底部。

常用命令:

:w - 保存文件 (Write)

:q - 退出 Vim (Quit) (如果文件有修改未保存会报错)

:q! - 强制退出,不保存修改!(救命稻草,也是新手噩梦)

:wq 或 :x - 保存并退出

:e <文件名> - 打开另一个文件进行编辑 (Edit)

:s/old/new/ - 将当前行第一个 old 替换为 new

:%s/old/new/g - 将整个文件中所有 old 全局替换为 new (最常用!)

:set number / :set nu - 显示行号 | :set nonumber / :set nonu - 隐藏行号

:/搜索词 - 等同于直接在普通模式按 /

退出方式: 执行完命令自动退出 | 按 Esc 取消输入的命令。

提示: 这是执行“大招”的地方。文件操作、全局替换、配置开关都在这。:wq 和 :q! 是每个 Vimer 刻在DNA里的命令。

三、 实战!—— “跟我一步步操作起来!”

光说不练假把式!假设我们有个文件 hello.txt,内容如下:

Hello, this is line 1.

Welcome to line 2.

Vim is awesome! Line 3.

Goodbye from line 4.

实战目标:

打开文件。

在 line 2 前面加上 *。

把 line 3 的 awesome 改成 powerful。

复制 line 4。

在文件末尾粘贴一份。

删除 line 1。

把所有的 line 替换成 Line。

保存并退出。

操作步骤(请在你的终端跟着敲):

打开文件: 终端输入 vim hello.txt (回车)。此时进入 普通模式。

定位到 line 2: 按 j 一次(从第一行移动到第二行)。

在行首插入 *:

确保光标在 line 2 行任意位置(因为我们要操作整行)。

普通模式下按 I (大写 i)。这时进入 插入模式,光标跳到该行行首。

输入 * (星号加空格)。

按 Esc 返回 普通模式。现在第二行是 * Welcome to line 2.。

修改 line 3 的单词:

按 j 移动到第三行 (Vim is awesome! Line 3.)。

把光标移动到 awesome 的 a 上(可以按 w 快速移动单词)。

普通模式下输入 cw (Change Word)。这会删除 awesome 并立即进入 插入模式。

输入 powerful。

按 Esc 返回 普通模式。

复制 line 4:

按 j 移动到第四行 (Goodbye from line 4.)。

普通模式下按 yy (Yank Yank / 复制行)。

粘贴到文件末尾:

按 G (大写 g),跳到文件最后一行。

普通模式下按 p (Paste)。会在第四行下方粘贴出新的一行。现在有五行了。

删除 line 1:

按 gg 跳到文件第一行 (Hello, this is line 1.)。

普通模式下按 dd (Delete Delete)。第一行消失了。

全局替换 line 为 Line:

普通模式下按 : (冒号),进入 命令行模式。光标在底部冒号后。

输入 %s/line/Line/g (回车执行)。

解释: % 表示整个文件, s 表示替换 (substitute), /line/Line/ 表示把 line 替换成 Line, /g 表示全局替换(一行内所有匹配项)。这个命令会把文件中所有小写的 line 替换成大写的 Line。

保存并退出:

还在 命令行模式 或者按 Esc 回到 普通模式 后,再按 :。

输入 wq (回车)。或者直接在普通模式按 Shift + zz (快速保存退出)。

最终 hello.txt 内容应该是:

* Welcome to Line 2.

Vim is powerful! Line 3.

Goodbye from Line 4.

Goodbye from Line 4.

恭喜你!完成了一次完整的 Vim 基础操作实战!🎉

四、 给新手的建议 & 成为 Vim 高手的路径—— “熬过阵痛期,海阔天空!”

安装与配置(可选但推荐):

Linux/Mac:通常自带 vim。试试 vimtutor (终端输入这个命令),官方超棒入门教程!

Windows: 安装 Git for Windows,它带的 Git Bash 里有 vim。或者单独安装 vim.org 的版本。

.vimrc 配置文件: 这是 Vim 的“修炼秘籍”。网上搜一份基础配置(比如设置行号 set number,语法高亮 syntax on),放在你的用户目录下,能让体验好很多。

学习路径:

第一步:死磕 vimtutor! 官方教程,30分钟带你过一遍核心操作。必须做完!

第二步:强制自己用! 找个小项目或日常笔记,强迫自己只用 Vim(即使慢)。关闭鼠标!

第三步:掌握核心组合: d/y/c + w/e/b/$/0/tX(找到X字符前) / fX(找到X字符)。理解操作符 (Operator) + 动作 (Motion) 的模式。

第四步:活用可视模式。 v, V, Ctrl+v 在各种场景下的妙用。

第五步:征服命令行模式: 熟练 :w, :q!, :wq, :%s/old/new/gc(带确认的替换),:e, :split (分屏)。

第六步:探索插件(进阶): .vimrc 熟练后,用插件管理器(如 Vim-plug, Vundle)安装 NERDTree(文件树)、coc.nvim(代码补全)、fzf(模糊搜索)等神器,打造你的专属 IDE。

克服“痛点”:

不知道怎么退出? 记住:Esc (确保回普通模式) -> :q! (强制退出不保存) 或 :wq (保存退出)。实在不行 Ctrl+Alt+Delete / 关终端。但别养成习惯!

编辑半天忘了模式? 疯狂按 Esc 回到普通模式准没错。

操作错了? u 是撤销你的好朋友!

觉得慢? 坚持一周!肌肉记忆形成后速度会指数级提升。

心态: 把学习 Vim 当成玩一个硬核游戏。初期挫折感强,但每掌握一个命令/组合技,成就感巨大!它是一项值得投资的长期技能。

五、 总结—— “Vim: 效率玩家的终极浪漫”

Vim 不是最快的入门编辑器,但绝对是天花板最高、最具潜力、最让你与键盘合二为一的编辑器。它的模态编辑、组合命令哲学,代表了终极的键盘操作效率。克服了学习曲线,你会发现编辑文本、编写代码成为一种行云流水的“指尖舞蹈”。

为什么要学?

提升效率: 长期看,大幅减少鼠标依赖,编辑速度快到飞起。

通用技能: 服务器运维、远程开发必备,走到哪都不怕。

掌控感: 完全掌控你的编辑环境,打造独一无二的生产力工具。

极客范儿: 懂的都懂,键盘侠的浪漫!

所以,各位小伙伴,别再被“如何退出Vim”的梗吓到啦!勇敢迈出第一步,打开终端,输入 vimtutor,开始你的 Vim 修炼之旅吧!

一收藏关注就是最大的支持! 下期你们想看我折腾什么工具/技术?评论区告诉我!我们下期见!Peace out! ✌️

相关文章

365Bet官方

手机骚扰电话拦截APP排行榜TOP10推荐

365Bet官方

【服务】英语怎么说

365Bet官方

决斗观点vol.297-曲线救国——半龙女仆的出路究竟何去何从