
本文是 Vim 用户指南 系列的其中一篇:
- Vim 初学者入门指南
- Vim 快捷键速查表
- 5 个针对有经验用户的 Vim 技巧
- 3 个针对高级用户的 Vim 编辑器实用技巧
Vim 编辑器是一个基于命令行的工具,是传奇编辑器 vi 的增强版。尽管图形界面的富文本编辑有很多,但是熟悉 Vim 对于每一位 Linux 的使用者都能有所帮助——无论你是经验丰富的系统管理员,还是刚上手树莓派的新手用户。
这个轻量级的编辑器是个非常强大的工具。在有经验的使用者手中,它能完成不可思议的任务。除了常规的文本编辑功能以外,它还支持一些进阶特性。例如,基于正则表达式的搜索和替换、编码转换,以及语法高亮、代码折叠等的编程特性。
使用 Vim 时有一个非常重要的一点需要注意,那就是按键的功能取决于编辑器当前的“模式”。例如,在“普通模式”输入字母j
时,光标会向下移动一行。而当你在“插入模式”下输入字符,则只是正常的文字录入。
下面就是速查表,以便于你充分利用 Vim。
基本操作
快捷键 |
功能 |
Esc |
从当前模式转换到“普通模式”。所有的键对应到命令。 |
i |
“插入模式”用于插入文字。回归按键的本职工作。 |
: |
“命令行模式” Vim 希望你输入类似于保存该文档命令的地方。 |
方向键
快捷键 |
功能 |
h |
光标向左移动一个字符 |
j 或 Ctrl + J |
光标向下移动一行 |
k 或 Ctrl + P |
光标向上移动一行 |
l |
光标向右移动一个字符 |
0 |
(数字 0)移动光标至本行开头 |
$ |
移动光标至本行末尾 |
^ |
移动光标至本行第一个非空字符处 |
w |
向前移动一个词 (上一个字母和数字组成的词之后) |
W |
向前移动一个词 (以空格分隔的词) |
5w |
向前移动五个词 |
b |
向后移动一个词 (下一个字母和数字组成的词之前) |
B |
向后移动一个词 (以空格分隔的词) |
5b |
向后移动五个词 |
G |
移动至文件末尾 |
gg |
移动至文件开头 |
浏览文档
快捷键 |
功能 |
( |
跳转到上一句 |
) |
跳转到下一句 |
{ |
跳转到上一段 |
} |
跳转到下一段 |
[[ |
跳转到上一部分 |
]] |
跳转到下一部分 |
[] |
跳转到上一部分的末尾 |
][ |
跳转到上一部分的开头 |
插入文本
快捷键 |
功能 |
a |
在光标后插入文本 |
A |
在行末插入文本 |
i |
在光标前插入文本 |
o |
(小写字母 o)在光标下方新开一行 |
O |
(大写字母 O)在光标上方新开一行 |
特殊插入
快捷键 |
功能 |
:r [filename] |
在光标下方插入文件 [filename] 的内容 |
:r ![command] |
执行命令 [command] ,并将输出插入至光标下方 |
删除文本
快捷键 |
功能 |
x |
删除光标处字符 |
dw |
删除一个词 |
d0 |
删至行首 |
d$ |
删至行末 |
d) |
删至句末 |
dgg |
删至文件开头 |
dG |
删至文件末尾 |
dd |
删除该行 |
3dd |
删除三行 |
简单替换文本
快捷键 |
功能 |
r{text} |
将光标处的字符替换成 {text} |
R |
进入覆写模式,输入的字符将替换原有的字符 |
复制/粘贴文本
快捷键 |
功能 |
yy |
复制当前行至存储缓冲区 |
["x]yy |
复制当前行至寄存器 x |
p |
在当前行之后粘贴存储缓冲区中的内容 |
P |
在当前行之前粘贴存储缓冲区中的内容 |
["x]p |
在当前行之后粘贴寄存器 x 中的内容 |
["x]P |
在当前行之前粘贴寄存器 x 中的内容 |
撤销/重做操作
快捷键 |
功能 |
u |
撤销最后的操作 |
Ctrl+r |
重做最后撤销的操作 |
搜索和替换
快捷键 |
功能 |
/search_text |
检索文档,在文档后面的部分搜索 search_text |
?search_text |
检索文档,在文档前面的部分搜索 search_text |
n |
移动到后一个检索结果 |
N |
移动到前一个检索结果 |
:%s/original/replacement |
检索第一个 “original” 字符串并将其替换成 “replacement” |
:%s/original/replacement/g |
检索并将所有的 “original” 替换为 “replacement” |
:%s/original/replacement/gc |
检索出所有的 “original” 字符串,但在替换成 “replacement” 前,先询问是否替换 |
书签
快捷键 |
功能 |
m {a-zA-Z} |
在当前光标位置设置书签,书签名可用一个大小写字母({a-zA-Z}) |
:marks |
列出所有书签 |
{a-zA-Z} |
跳转到书签 {a-zA-Z} |
选择文本
快捷键 |
功能 |
v |
进入逐字可视模式 |
V |
进入逐行可视模式 |
Esc |
退出可视模式 |
改动选中文本
快捷键 |
功能 |
~ |
切换大小写 |
d |
删除一个词 |
c |
变更 |
y |
复制 |
> |
右移 |
相关推荐
这有一些建议帮助你的全球化开发团队能够更好地理解你们的讨论并能参与其中。 几周前,我见证了两位同事之间一次有趣的互动,他们分别是 Jason,我们的一位美国员工,和 Raj,一位来自印度的访问工作人员。 Raj 在印度时,他一般会通过电话参加美国中部时间上午 9 点的每日立会,现在他到美国工作了,就可以和组员们坐在同一间会议室里开会了。Jason 拦下了 Raj,说:“Raj 你要去哪?你不是一直
linux中国
2024-07-18
Escape
Google 员工承认用户无法在公司的限制下保护自己的隐私 根据 The Verge 的报道,在一场针对 Google 的诉讼中所暴露出来的原始文件表示,Google 的高管和工程师都知道,公司让用户保护自己的位置数据的隐私有多么的困难。 在昨天的硬核观察中,我们提到, Google 表示自己不会在设定功能的时候为自己添加后门,但同时我们也表达了对此的不信任。如今可以看到,Google 在种种方面
linux中国
2024-07-17
Escape
抵制在 Git 中添加一些会增加管理难度的东西的冲动;这里有替代方法。 有权访问源代码使对安全性的分析以及应用程序的安全成为可能。但是,如果没有人真正看过代码,问题就不会被发现,即使人们主动地看代码,通常也要看很多东西。幸运的是,GitHub 拥有一个活跃的安全团队,最近,他们 发现了已提交到多个 Git 仓库中的特洛伊木马病毒,甚至仓库的所有者也偷偷溜走了。尽管我们无法控制其他人如何管理自己的仓
linux中国
2024-07-17
Escape
Flickr 成立基金会希望将照片保存 100 年 新成立的 Flickr 基金会的目标是“确保 Flickr 将被保留给后代”,而不会像 MySpace 照片一样丢失。他们提到一个特别的集合 “Flickr Commons”,这是一个巨大的、不拘一格的、迷人的档案,它从世界各地收集图像和内容,它由策展人挑选和组织,允许人们访问从历史肖像到科学图像,以及其它等等各种图片。Flickr 希望它能使
linux中国
2024-07-16
Escape
elementary OS 是一个漂亮的 Linux 发行版,但它适合所有人吗?它们是否有可以做得更好的地方?下面是我的想法。 elementary OS 的 6.1 是最新的版本,它做了许多基本的改进,带来了一些新功能。 当然,为你的系统选择的 Linux 发行版在很多方面都是不同的。然而,我认为在 elementary OS 中,有一些事情可以做得更好。 在这里,我列出了 elementary
linux中国
2024-07-17
Escape
回到顶部
|