四种模式
一般模式,插入模式,命令行模式,可视模式。
一般模式下:
- 插入、替换:
i
:在光标所在字符前插入内容。a
:在光标所在字符后插入内容。I
:在行首插入内容。A
:在行尾插入内容。o
:在光标所在行下一行插入内容。O
:在光标所在上一行插入内容。r
:按下后再按一个字符,将光标所在处原来的字符替换为这个字符。R
:进入替换模式。
- 删除:
x
:删除光标所在字符。nx
:从光标所在字符算起,向后删除 n 个字符。dd
:删除光标所在行。ndd
:从光标所在行算起,向下删除 n 行。D
/d$
:删除光标所在位置至行尾的所有字符。d^
:删除光标所在位置至行首的所有字符。J
:删除光标所在行的换行符。.
:重复上一次删除操作。
- 复制、粘贴:
yy
:复制光标所在行。nyy
:从光标所在行算起,向下复制 n 行。p
:在光标所在行的下一行粘贴内容。P
:在光标所在行的上一行粘贴内容。.
:重复上一次粘贴操作。
- 撤销、重做:
u
:撤销一次编辑。Ctrl
+r
:撤销一次撤销操作。
- 定位:
h
/j
/k
/l
:光标向 左/下/上/右 方向移动一位。nh
/nj
/nk
/nl
:光标向 左/下/上/右 方向移动 n 位。gg
:光标移动到文件首行行首。G
:光标移动到文件尾行行首。0
/^
:光标移动到当前行首。$
:光标移动到当前行尾。nG
:光标移动到第 n 行行首。n$
:光标下移 n 行,并定位到行尾。n[Enter]
:n 为数字,光标向下移动 n 行。
- 查找字符串:
/words
:查找 words,按n
查找下一个,N
查找上一个。?words
:查找 words,按n
查找上一个,N
查找下一个。
- 翻页:
Ctrl+f
:向下翻页。Ctrl+b
:向上翻页。
- 插入、替换:
插入模式下:按
[ESC]
退出到一般模式。一般模式下输入
:
进入命令行模式。命令行模式下:w
:将修改写入文件。q
:退出 vim。wq
:写入并退出。w!
:文件没有写权限,但当前用户可以修改文件时,可以用该命令强制写入。wq!
:强制写入并退出。q!
:放弃修改并退出,!
告诉 vim 无需保存。e!
:撤销全部操作。w 文件名
:将文件另存为。w! 文件名
:将文件另存为,若已存在,则强行覆盖。!
:暂时退出,按任意键回来继续编辑。数字
:光标移动到第 n 行行首。/words
、?words
:查找字符串。用法与一般模式下的相同。1,20s/words1/words2/gc
:将 1~20 行的 words1 替换为 words2。s
和g
是替换命令,加c
表示由用户一个一个决定要不要替换,不加c
则直接替换。行数可以是数字,也可以是$
,$
表示末行。r 文件名
:读取指定文件,将其内容插入到当前文件光标所在行的后面。
可视模式:
- 分为 可视模式,可视行模式,可视块模式。
- 可视模式:一般模式下按
v
进入,可选择字符。 - 可视行模式:一般模式下按
V
进入,可选择块。 - 可视块模式:一般模式下按
Ctrl
+v
进入,可选择块。
- 可视模式:一般模式下按
- 可视模式常用操作:
- 大多数一般模式下的操作。
- 复制:
y
,粘贴:p
,删除:d
,插入:I
。 - 按
[ESC]
退出到一般模式。
- 分为 可视模式,可视行模式,可视块模式。
多文件编辑
同时打开多个文件:vim file1 file2
在命令行模式下输入 xn
切换到下 x 个文件,输入 xN
切换到上 x 个文件,输入 files
查看打开的文件的信息。
多窗口功能
进入 vim 后,命令行模式下输入 sp filename
分割窗口。没有 filename
则分割窗口并在新窗口中编辑当前文件,有 filename
则分割窗口并在新窗口中编辑指定文件。
按 Ctrl
+w
+j
光标移动到下一个窗口;按 Ctrl
+w
+k
光标移动到上一个窗口。
光标移动到想关闭的窗口,按 Ctrl
+w
+q
或 输入 :q
关闭窗口。
环境参数设置
命令行模式下:
set all
:查看所有环境参数。set nu
:显示行号。set nonu
:不显示行号。set autoindent
:与上一行自动对齐。set tabstop=4
:设置制表符宽度。set shiftwidth=4
:设置自动缩进的宽度。filetype indent on
:根据文件类型自动缩进。syntax on/off
:是否显示关键词颜色。set bg=dark/light
:设置色调样式。dark 和 light 是两种不同样式,默认为 light。set
:显示与默认值不同的设置值。set ruler
:显示右下角状态栏。set showmode
:显示左下角状态栏
如果在 vim 中输入上面的设置,这些设置只会在当前 vim 中有效,重启 vim 就无效了。
永久设置环境参数:将以上设置添加到 /etc/vimrc
或 ~/.vimrc
文件中。如果添加到 /etc/vimrc
中,所有用户都会拥有这些设置;如果添加到 ~/.vimrc
中,仅该家目录的拥有者拥有这些设置。