在混沌纷繁的尘世中寻找真正想要的是什么
Vim极简命令手册

前言和概述

作为一个大学生,在vim学习中感到初学者平常学一两个命令是没用的,vim的入门第一步必须快速掌握一批能够足够日常编辑文本使用的命令,如增删改查、跳转光标……这样才能够让vim在工作学习中成功发动,进而在使用中熟能生巧、拓展学习其他的快捷键。

以下都是在正常模式下的命令,即按下Esc所进入的模式,这个模式是Vim的精要,掌握了这些移动光标、切换插入模式、复制粘贴、增改删查、退出操作,基本能入门使用Vim。


正常模式

定位光标:

  1. 逐个字符移动:hjkl,左下上右,不用去死记,有个简单的记忆方法,这四个字母恰好是键盘上的同一排,这排字母中最左边的h和最右边的h和l恰好对应是左右的意思,只需要记住j和k是下和上即可,进阶用法就是加上前缀数字,比如3j
  2. gg/G:移动到文档头(gg)和移动到文档尾(G),进阶用法就是行号+gg调到指定行【文档移动】
  3. control+f/b:翻页【页移动】
  4. 移动到这一行的首尾:行首0行尾$。值得注意的是,所谓行尾位置是不包括最后一个字符的,最后一个字符那个位置你永远移动不到【行移动】
  5. w/b:前后移动一个单词【行内移动】
  6. f/F+字母:光标移动到后文(使用f)或前文(使用F)中最近的第一个字母之前,进阶用法是这条命令执行之后,还能使用n或者N移动到第二个字母。这个f/F命令其实也可以用更强大的/和?平替【行内移动】

进入插入模式:

  1. i/a:i是光标本体位置,即在当前位置原地插入,即方块光标的左边缘位置。a则是在当前位置后一个字符插入,即方块光标的右边缘位置。初学者可能会记不住i和a的位置,其实也不用死记,不记得的时候可以联想一下a是ass(屁股)的意思【泄露了奇怪的记忆方法】
  2. I/A:I是在行首插入,A是在行尾插入
  3. o/O:o在下一行插入,O在上一行插入

复制粘贴:

  1. yy:复制1行,进阶用法就是带数字,例如2yy复制2行【行复制】
  2. 可视模式:v+上文中的“定位光标”命令,可以对文本进行选中,然后按y复制,按d剪切【精确复制】
  3. dd和dj:行剪切操作。其实dd就是剪切一行了,dj是剪切本行加上下一行,值得一提的是,不管是dd还是dj,都会把删除的东西放进剪切板【行剪切】
  4. p:在方块光标的右边缘位置粘贴。记住如果是使用yy复制的行,粘贴的时候则会另起一行贴上去,这就是为什么有时候初学者会感到粘贴不好用,对按p之后粘贴的位置不清楚【粘贴】
  5. ddp:交换当前行和下一行【行交换】
  6. xp:交换当前字符和下一个字符【字符交换】

删除:

  1. dd:删除一行。进阶用法就是加数字d3d删除三行,还有dj删除上一行dk删除下一行【删除行】
  2. dw:删除一个单词。进阶用法就是加数字d3w删除三个单词,不过控制或者说数单词个数还需要研究一下什么叫单词【删除单词】
  3. x:删除一个字符。进阶用法就是加数字3x删除三个字符【删除字】

把命令重复多遍:数字+命令即可,通常用于插入多个同样的字符比如3 a!<esc>

查找替换:

  1. 替换::%s/abc/def/g把所有的 abc 替换为 def

退出:

  1. 快速保存并退出:ZZ
  2. 放弃更改重新打开本文件::e!
我这辈子见过最好的学习方法 | CLT认知负荷理论 | 汤质看本质
一道题理解动态规划、BFS、DFS
© 2024 Dal
「 就在那个时刻,你记得这并非幻觉,的确就在那个时刻,那只手和那块石头的接触面,她突然回过头冲你说:我也爱着你。 」