Vim 移动、跳转与缩进
在上一节 “Vim 的模式中” 我们知道了在 Vim 中如何移动光标。其实除了 h,l,j,k 键之外还有两种操作可以让我们移动光标:
以上就是Vim中光标移动最基础的快捷键。但是初学者可能会觉得很别扭。因为现在大家更加习惯于上的上下,这更符合现在人的思维。这里需要对此做个解释,便于大家更加能够理解 Vim。
1. Vim 的起源
Vim 布局起源:Vim 最初的作者 Bill Joy 使用的机器是 ADM-3A 终端机。这款机器相较于现在普遍 PC 来说就是个古董。如下图:
既然是个古董,那么它的布局也就自然不同于如今的 PC 了。可以看下它的具体布局图如下:
Tips:可以明显看到上的上下箭头所对应的是 H J K L 四个字母键,而不是像如今的上的单独上下。这里大家就应该理解为什么Vim光变移动使用的 H J K L 键了把。
2. Vim 基于字符移动
如果有些懵的话,可以看下图中的具体:
3. Vim
有时我们使用 Vim 打开某时只需要阅读某一特定位置就行,这个时候可以使用 Vim 的快捷键来帮我们的定位需要阅读的位置:
Vim 快捷方式:
4. Vim 缩进
每种语言开发中都会又缩进的硬性(Python)或者软性要求。一般来说通过 Vimrc 写到配置中,这样不必要每次手动缩进。但是有时候可能需要非常规的缩进。这时候就需要手动操作缩进了,可以针对单行或者多行甚至块。
5. Vim 移动高级特性——组合
以上的移动方式相对比较单一,但是 Vim 组合的思想和特性给予了 Vim 更加高效的方式。关于 Vim 的组合思想有公式:[count]+operator+[count]+motion
count:的意思,用于重复;
operator :操作方式就是增删改之类的。例如复制(y),(d)等;
motion :Vim help 中会有相应的解释。简单来说就是operator的操作对象。比如单词、句子或者移动的方向等。
Vim 中可以通过 help 帮助来查看 Vim 的说明,相当于说明书和Linux 中man一样。
可以看到 motion 意思就是移动光标的命令本文提到的单词移动或者光标移动都算是 motion 的一种。
那么我们还可以看到会有 count,这个是用于重复移动的的。应该是很容易理解比如:
6. 小结
以上就是 Vim 移动等的操作方式。尤其理解了 Vim motion 组合方式之后,会发现还是比较简单的。具体需要大家多加练习,熟能生巧即可。