vim 编辑器学习

VIM简介

Vim是从vi发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为类Unix系统用户最喜欢的编辑器。

Vim的第一个版本由布莱姆·米勒在1991年发布。最初的简称是Vi IMitation,随着功能的不断增加,正式名称改成了Vi IMproved。现在是在开放源代码方式下发行的自由软件。        ——[维基百科](https://zh.wikipedia.org/wiki/Vim)

vim


1.进入vim编辑器

可以使用终端输入:`vim`回车进入vim编辑器



vim

2.基础命令

- `i` insert模式,这个类似文本编辑器,你可以在上面输入任何想输入的内容,按住`Esc`键可以退出这个模式,返回到Normal模式。下面是我插入的内容。

- `x` 删除当前光标所在的字符,并将字符存在粘板中

- `dd`删除当前行,并且把删除的行存在粘贴板

- `p` 将剪贴板里的命令粘贴在当前行

- `wq` 存盘+退出 (后面可以跟文件名) 这个命令相当于 `w` :存盘和`q`:退出

- `h、j、k、l`这四个命令就相当与键盘的左下上右键,来移动光标,需要在Normal模式中使用

3.插入模式

- `a` 在光标后面插入内容

- `o` 小写的o在当前行的后一行插入内容

- `O`大写的O在当前行的上一行插入内容

- `cw` 替换从当前位置到单词结束的字符

4.移动光标

- `0` 数字的零,移动光标到当前行的行头。

- `^` 到当前行除过空格,tab键,换行键,回车键等(blank字符)的行头。

- `$` 移动光标到当前行的行尾

- `g_` 到当前行除过空格,tab键,换行键,回车键等(blank字符)的行尾。

- `/int` 搜索`int`这个字符串在当前文本的位置。(如果查找多个,按回车后用`n`键切换下一个)

5.复制/粘贴

- `p/P` 在当前光标的前/后粘贴内容。

- `yy` 复制当前行的内容。

6.撤销和反撤销

- `u` 撤销你刚才做的操作(undo)

- `ctrl+r` 反撤销(Redo)

7.打开、保存、退出、改变文件

- `:e <路径+文件名称>` 打开一个文件

- `:w` 存盘

- `:x、:wq、ZZ` 这三个命令都是保存并推出,最后面的`ZZ`是大些的Z 不需要输入`:`

- `:saveas <路径+文件名称>` 将当前文件另存为

- `:q!` 退出不保存,

- `:qa!` 强行退出正在编辑的文件,就算别的文件有更改。

- `:bn、:bp` 当你用`:e <路径+文件名称>`打开新的文件时 可以用`:bn`切换上一个文件`:bp`切换下一个文件

8.提升

- `. ` (小数点) 可以重复上一次的命令

- `数字N+命令` 可以命令执行N次,例如`dd`后,进行`4p`会将粘贴板的内容粘贴4次。

- `数字N+G` 跳转到第N行。

- `:N` 也可以直接跳转到指定行

- `gg`  直接跳到第一行

- `G` 直接跳到最后一行

- `w` 跳转到下一个单词的开头

- `e` 跳转到下一个单词的结尾

- `W` 跳转到以blank字符分隔符的开头

- `E`  跳转到以blank字符分隔符的结尾

- `%` 匹配括号移动,移动到当前位置最近的括号,包括 `()` `{ }` `[ ]`

- `*`和`#` 寻找和当前光标所在位置相同的单词,`*`下一个,`#`上一个

9.更快

- `v` 选择代码块,然后可以进行下面的操作

- `d` 删除,可以配合上面`v`来使用

- `gu` 将光标所在行的字母变成小写

- `gU` 将光标所在行的字母变成大写

10.在当前行移动光标(字符C:代表任意字符)

- `f+字符C`从光标位置找到下一个为C的字符处

- `F+字符C` 从光标位置找到上一个为C的字符处

- `t+字符C`从光标位置找到下一个为C的字符的前一个位置的字符

- `T+字符C`从光标位置找到下一个为C的字符的后一个位置的字符

11.自动提示

`ctrl n`或者`ctrl p`自动代码提示功能

12.可视化选择:

- `J` 把所有的行连接起来,变成一行

- `<`和`>` 左右缩进

- `=`自动给缩进

- `ctrl+v`选中多行可使用`j`等命令,然后`$`到最后,`A`输入字符串后按`ESC`

13.分屏

`:split` 创建分屏

`:vsplit`创建垂直分屏

`ctrl+w + 方向键` 用来切换分屏

`ctrl+w_`或者`ctrl+w|` 最大化尺寸

`ctrl+w  和 +`或者`ctrl+w + -`增加尺寸

---

参考的学习资料是陈皓老师的[简明 VIM 练级攻略](https://coolshell.cn/articles/5426.html/comment-page-11#comment-1906176) 。

推荐阅读更多精彩内容