改变我人生的 7 个 Vim 技巧(附演示)
大家好!
这是我在 DEV 上发表的第一篇文章,但我听说了这个社区的很多好事,并且一直在 Twitter 上关注它。❤️
我知道你们中的大多数人至少曾经对学习和使用 Vim 感兴趣,并且你们中的许多人每天都使用它。
市面上有很多资源涵盖了 Vim 的基础知识,我不想在这里重复这些内容。相反,我想分享一些我在工作中使用 Vim 时从其他人那里学到的快速技巧。
这些小技巧虽然学得很快,但会对你日常的 Vim 工作带来很大的帮助。它们确实让我的工作变得更轻松了。
在我们开始之前:如果你对 Vim 感兴趣但还没有开始,这些是我想要推荐的资源:
- OpenVim - 交互式 Vim 教程
- vimtutor - 这是一个交互式命令行教程,可在 Mac 和一些 Linux 发行版上使用。只需
vimtutor
在终端中输入 - VimAdventures - 前几个级别是免费的,如果你喜欢这种格式,完整许可证的价格为 25 美元
如果你喜欢 Vim,但单独运行它又太麻烦,可以为你常用的编辑器(例如 VS Code、Sublime 或其他任何编辑器)安装 Vim 扩展。这样,你就可以使用 Vim 的快速操作和快捷键,以及你更熟悉的友好界面。
关于学习和使用 Vim,我有了的一个重要认识:你不需要掌握所有内容(这实际上是不可能的)就可以开始使用它。
一旦你掌握了基础知识,每次工作中遇到问题或瓶颈时,就把它写下来,然后查看这份清单,并在网上搜索如何在 Vim 中实现它。这样,你就能逐步弥补你可能存在的不足,并且随着你不断学习新技能,你的技能也会越来越好(这些细微的改进与本文下文中的技巧类似)。
现在让我们开始有趣的部分——技巧和窍门!你无需安装任何 Vim 插件即可使用它们。
1. 如何以正确的缩进开始书写
在学习这个技巧之前,我习惯于换行,然后进入插入模式,按 Tab 键移动到正确的缩进位置,然后开始输入代码。有了这个小技巧,你就不用再额外按 Tab 键了,它会自动在正确的缩进位置切换到插入模式。
食谱:S
(SHIFT+s)
演示:
2. 自动调整窗口大小
我们经常会对 Vim 中的窗口进行一些操作,导致它们的大小调整不正确,有时一个窗口太宽,另一个窗口太窄。最简单的方法是在一个 Vim 选项卡中打开三个窗口,然后调整打开 Vim 的终端窗口的大小。
您想将所有窗口调整为相同大小,并均匀分布可用空间。好消息是,您无需手动操作。
食谱:CTRL+w =
CTRL+w 组合键,然后按等号键将使窗口均等化。
演示:
3. 跳转到匹配的括号
将光标放在方括号 [ 或圆括号 ( 或花括号 { 上,按 % (SHIFT+5) 可跳转到其匹配的符号。再次按下该键可跳回(在它们之间切换)。
if (condition) {
// code
}
// If your cursor was on {, and you pressed %, you'd jump to }
配方:%
将光标放在要匹配的字符上
演示:
4. 缩进/取消缩进一行或多行
>> – indents a line
<< – unindents a line
当您选择多行时(在 VISUAL LINE 模式下),您只需按一次 > 或 < 即可缩进或取消缩进行(如下面的演示所示)
缩进时,无论光标位于行内何处,它都会正常工作。缩进完成后,光标会自动定位到行中第一个非空字符处。
食谱:一行:>>
,<<
。多行:>
,<
。
演示:
5. 修复整个文件的缩进
从文件顶部开始(要到达那里,请gg
在文件中的任何位置按下 )。然后按下=G
,Vim 将修复整个文件的缩进。如果您没有从文件开头开始,它将修复从当前行到文件底部的缩进。
食谱:=G
按等号,然后按 SHIFT+G
演示:
6. 使用标签的基础知识
您经常需要同时查看多个文件或上下文。Vim 的标签页功能非常方便,但尚未得到充分利用。我不知道其他编辑器是否支持此功能(我相信肯定有其他编辑器可以实现)。例如,我喜欢将代码相关的文件保存在主标签页中,并将 README 保存在另一个标签页中,其中包含 TODO 列表以及一个可以记录后续想法的地方。
要编写与 Tab 配合使用的命令,您需要处于命令模式。要开始编写命令,请按下:
并输入。输入时,命令将显示在编辑器的左下角。按 Enter 键执行。
配方::tabnew
创建一个新选项卡。gt
- 转到下一个选项卡gT
- 转到上一个选项卡:tabo
- 关闭除活动选项卡之外的所有其他选项卡
演示:
7. 如何快速返回上一个文件
通常,当你编辑一个包含代码的文件时,你会在同一个窗口中打开另一个文件。这样一来,返回到刚才编辑的文件就不那么容易了。你可以列出缓冲区并导航到上一个缓冲区,但你需要记住它的名称,这会浪费你宝贵的时间。Vim 用户不喜欢在操作上花费太多时间。:) 所以你可以使用 CTRL+o 来实现这一点!
它所做的就是找到光标的先前位置 - 如果它恰好位于不同的文件中(刚刚打开新文件而丢失的文件),它会让我们跳回到那里!
如果你还有其他实用的小技巧,欢迎在评论区留言!我很喜欢学习这些技巧,相信其他读者也会喜欢的!
💌我每周都会撰写一份简报,涵盖编程学习、习惯养成、个人理财、书籍推荐及要点、极简主义、创业、心理学等等!感兴趣的朋友:加入1000+位志同道合、热衷于自我提升和学习的朋友们吧!
点击此处订阅!
🌱 最近我正在开发我的业余项目——一款名为“Zerno”的应用。立即注册,即可快速体验!
Zerno 应用