【Vim】高效编辑技巧全解析

本篇将从光标移动技巧、常用快捷操作、组合命令运用等方面逐步讲解 vim 的使用。


📘 高效光标移动技巧

在 Vim 中,光标移动是编辑效率的核心之一。以下是一些必须掌握的移动命令,按使用频率和实用程度分类整理:

🔹 基本单字符移动(熟练掌握)
命令 说明
h 左移一个字符
l 右移一个字符
j 下移一行
k 上移一行
🔹 行内快速跳转(提高速度)
命令 说明
0 移动到行首
^ 移动到行首第一个非空白字符
$ 移动到行尾
🔹 单词移动(提升阅读与修改速度)
命令 说明
w 移动到下一个单词的开头
W 移动到下一个"空格分隔词"的开头(包括符号等)
e 移动到当前/下一个单词的结尾
b 回到前一个单词的开头
🔹 屏幕跳转(快速浏览)
命令 说明
H 当前屏幕的顶部行
M 当前屏幕的中间行
L 当前屏幕的底部行
Ctrl + d 向下移动半屏
Ctrl + u 向上移动半屏
Ctrl + f 向下翻页
Ctrl + b 向上翻页
🔹 精准定位(精准跳转)
命令 说明
G 跳转到文件末尾
gg 跳转到文件开头
:10 跳转到第 10 行
/关键字 向下搜索
?关键字 向上搜索
n/N 继续/反向查找

✅ 练习任务1:

  1. 打开一个 .txt.c 文件。
  2. 使用 w/W, e, b 在词间移动光标。
  3. 尝试用 /, n, gg, G, :行号 快速定位到不同区域。
  4. 练习 Ctrl + d/uH/M/L 来翻页与对齐视角。

📘 编辑效率提升技巧

这一部分将帮助您快速修改文本、撤销错误操作、复制粘贴内容 ,并逐步掌握 Vim 的"组合命令理念"------这是成为高效 Vim 用户的关键!


🔹 1. 删除与剪切命令(Delete)

命令 说明
x 删除光标所在的一个字符(相当于剪掉)
X 删除光标前的一个字符
dd 删除当前整行
d0 删除至行首
d$ 删除至行尾
dw 删除一个单词
d2w 删除两个单词
dG 删除从当前行到文件末尾的所有内容

🧠 组合命令 思路:
d + 移动命令 = 删除范围

例如:d} 删除到下一段落、d/^关键词 删除到某个搜索结果。


🔹 2. 复制与粘贴(Yank & Paste)

命令 说明
yy 复制当前行(yank)
Y 等同于 yy
p 在光标后粘贴
P 在光标前粘贴
y0 从当前光标复制到行首
y$ 从当前光标复制到行尾
yw 复制一个单词

提示:

  • y + 移动命令 = 复制范围(如 yG 复制到文件末尾)。
  • 复制全文到系统剪切板::%y+

🔹 3. 撤销与重做

命令 说明
u 撤销上一个操作
U 撤销当前行所有更改
Ctrl + r 重做(撤销的撤销)

🔹 4. 重复上一次命令

命令 说明
. 重复上一次非移动命令操作

示例:

  • 输入 dw 删除一个单词;
  • 然后输入 . 可以再删下一个;
  • 多个 . 可连续操作,非常适合重复清理。

🧠 实战思维:组合操作简化复杂任务

Vim 的高效编辑核心:操作命令 + 范围命令

示例 说明
c$ 改写至行尾(delete + insert)
d} 删除到段落结尾
y3j 复制当前行向下共 3 行
2dd 删除两行

✅ 练习建议2:

打开一个 .txt.md 文件,练习以下内容:

  1. dd, d$, d2w 删除不同范围内容。
  2. yy, yw, yG, p, P 实现复制粘贴。
  3. 试试 ., u, Ctrl + r 来理解 Vim 的"后悔药"机制。
  4. 练习组合命令 d3j, y5k, c$,体验 Vim 的"动作+对象"逻辑。

📌 学习进度记录:

阶段 状态 说明
Vim 基本模式切换 ✅ 已掌握 熟悉普通、插入、命令、可视模式
高效光标移动 ✅ 进行中 熟练掌握了行内/屏幕/词语跳转
编辑效率操作 🔄 学习中 正在掌握删除、复制、撤销等技巧
相关推荐
tokepson4 小时前
Mysql下载部署方法备份(Windows/Linux)
linux·服务器·windows·mysql
zz_nj6 小时前
工作的环境
linux·运维·服务器
极客先躯7 小时前
如何自动提取Git指定时间段的修改文件?Win/Linux双平台解决方案
linux·git·elasticsearch
suijishengchengde8 小时前
****LINUX时间同步配置*****
linux·运维
qiuqyue8 小时前
基于虹软Linux Pro SDK的多路RTSP流并发接入、解码与帧级处理实践
linux·运维·网络
切糕师学AI8 小时前
Linux 操作系统简介
linux
sun03228 小时前
【VSCode基础】VSCode快捷键总结、工程导入配置等
ide·vscode·编辑器
南烟斋..9 小时前
GDB调试核心指南
linux·服务器
爱跑马的程序员9 小时前
Linux 如何查看文件夹的大小(du、df、ls、find)
linux·运维·ubuntu
oMcLin11 小时前
如何在 Ubuntu 22.04 LTS 上部署并优化 Magento 电商平台,提升高并发请求的响应速度与稳定性?
linux·运维·ubuntu