Vim 上手

一、Vim 配置优化

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
"去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限
set nocompatible
"显示行号
set number
"检测文件的类型
filetype on
"记录历史的行数
set history=1000
"背景使用黑色
set background=dark
"语法高亮度显示
syntax on
"下面两行在进行编写代码时,在格式对起上很有用;
"第一行,vim使用自动对起,也就是把当前行的对起格式应用到下一行;
"第二行,依据上面的对起格式,智能的选择对起方式,对于类似C语言编
"写上很有用
set autoindent
set smartindent
"第一行设置tab键为4个空格,第二行设置当行之间交错时使用4个空格
set tabstop=4
set shiftwidth=4
"设置匹配模式,类似当输入一个左括号时会匹配相应的那个右括号
set showmatch
"在编辑过程中,在右下角显示光标位置的状态行
set ruler
"查询时非常方便,如要查找book单词,当输入到/b时,会自动找到第一
"个b开头的单词,当输入到/bo时,会自动找到第一个bo开头的单词,依
"次类推,进行查找时,使用此设置会快速找到答案,当你找要匹配的单词
"时,别忘记回车
set incsearch

"设置历史记录步数
set history=50

"开启相关插件
filetype on
filetype plugin on
filetype indent on

"编码设置,设置编码
set encoding=utf-8
"设置文件编码"
set fileencodings=utf-8
"设置终端编码"
set termencoding=utf-8

二、Vim 快捷键

1. 移动

  • w 向前移动一个单词(光标停在单词首部),如果已到行尾,则转至下一行行首
  • b 向后移动一个单词 2b 向后移动2个单词
  • e,同w,只不过是光标停在单词尾部
  • ge,同b,光标停在单词尾部
  • gg 移动到文件头
  • G(shift + g) 移动到文件尾
  • Ctrl + d 向下滚动半屏
  • Ctrl + u 向上滚动半屏
  • Ctrl + f 向下滚动一屏
  • Ctrl + b 向上滚动一屏

2. 撤销

  • u 撤销(Undo)
  • U 撤销对整行的操作
  • Ctrl + r 重做(Redo),即撤销的撤销

3. 删除

  • dd 删除当前行
  • dj 删除上一行
  • dk 删除下一行
  • 10d 删除当前行开始的10行。
  • D 删除当前字符至行尾。D=d$

4. 拷贝和粘贴

  • yy 拷贝当前行
  • nyy 拷贝当前后开始的n行,比如2yy拷贝当前行及其下一行
  • p 在当前光标后粘贴,如果之前使用了yy命令来复制一行,那么就在当前行的下一行粘贴
  • shift+p 在当前行前粘贴