拼客全栈攻防 第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! ✌️