1、vim安装
<1> sudo apt install vim //sudo 进入root模式,apt install 安装包安装
<2> vim --version //显示vim版本信息则安装完成
2、基本操作
<1> 打开文件
vim 文件名 //文件存在则打开,否则创建该文件
<2> vim 的三种工作模式
命令行模式:不能书写,只能进行复制、粘贴等命令操作
编辑模式:按下“i”键,在终端左下角出现“inserr”(插入)关键字,进入插入模式,即可书写
末行模式:按下“Escape”键(Esc),退出插入模式,再按“Shift”+“:”键,末行模式中使用末行命令
<3> 末行命令
:w | write 的缩写,保存 |
:q | quit 的缩写,退出,若修改以后未保存,不允许退出 |
:q! | 强制退出 |
:wq[x] | 保存并退出 |
:wq! | 保存并退出 |
3、高级操作--vim末行命令中使用
<1> 移动方向键
① 行内移动
w | 后移一个单词(移至后一单词首字处) |
e | 后移一个单词(移至后一单词末字符处)与 b 配合可以在一个单词的开始和结尾处切换 |
b | 前移一个单词(移至前一单词首字符处) |
l | 后移一个字符 |
h | 前移一个字符 |
0 | 行首 |
$ | 行尾 |
^ | 行首,第一个不是空白的字符的位置 |
② 行数移动
k | 上移一行 |
j | 下移一行 |
gg | 文件顶部 |
G | 文件末尾 |
数字gg | 移动到数字对应的行数 |
数字G | 移动到数字对应的行数 |
:数字 | 移动到数字对应的行数 |
③ 屏幕移动
Ctrl+b | back | 向上翻页 |
Ctrl+f | orwardf | 向下翻页 |
H | hand(头/顶) | 屏幕顶部 |
M | middle(中) | 屏幕中间 |
L | low(底) | 屏幕底部 |
④ 段落移动
vim 中使用空行来区分段落
{ 上一段
} 下一段
<2> 括号切换
% 括号匹配及切换
<3> 选中文本(可视化模式)
v | 可视模式 | 从光标位置开始按正常模式选择文本 |
V | 可视行模式 | 选中光标经过的完整行 |
Ctrl + v | 可视块模式 | 垂直选中文本 |
注:可与移动命令配合使用
<4> 撤销和恢复撤销
u | undo | 撤销上次命令 |
Ctrl + r | redo | 恢复撤销的命令 |
<5> 删除文本
x | cut | 删除光标所在的字符或选中的文本 |
d(移动命令) | delete | 删除移动命令所对应的内容 |
dd | delete | 删除光标所在行,可使用 ndd 删除 n 行 |
D | delete | 删除至行尾 |
dG | 删除光标所在位置到文件末尾 |
注:若使用可视化模式已选中一段文本,那么无论使用d还是x都可以删除选中文本
常见组合命令:
dw | 从光标位置删除到单词末尾 |
d0 | 从光标位置删除到一行的起始位置 |
d} | 从光标位置删除到段落结尾 |
ndd | 从光标位置向下连续删除 n 行 |
d5G | 从光标所在行删除到指定代码行的结尾 |
<6> 复制、粘贴
y(移动命令) | copy | 复制 |
yy | copy | 复制当前行 |
nyy | copy | 从光标所在行向下连续复制n行 |
p | paste | 粘贴 |
注:其他软件中使用Ctrl + C复制的内容,不能在vim中使用p命令粘贴,可在命令模式或编辑模式下使用鼠标右键粘贴
<7> 替换命令(轻量的修改)
r | replace | 替换当前字符 |
R | replace | 替换光标当前位置后的字符 |
注:先按r或R,再按要换入的字符
<8> 缩排和重复执行
>> | 向右增加缩进 |
<< | 向左减少缩进 |
. | 重复上次命令 |
注:在可视化模式下,缩排仅需一个>或<
<9> 查找
/str | 查找str |
n | 查找下一个 |
N | 查找上一个 |
<10> 单词快速匹配
* | 向下查找当前光标所在的单词 |
# | 向上查找当前光标所在的单词 |
注:N(上一个)和n(下一个)同样可以使用
<11> 查找并替换
vim中替换命令需在末行模式下使用
全局替换:一次性替换文件中所有出现的旧文本
:%s/old/new/g
<12> 可视区域替换
① 在选中区域进行替换
:s/old/new/g
②在指定行内进行替换
:n1,n2s/old/new/g
注:% 全文替换 /g 不询问 /c 询问确认 old 旧内容 new 新内容 n1、n2为行号
<13> 插入命令
i | insert | 在当前字符前插入文本 |
I | insert | 在行首插入文本 |
o | 在当前行后插入空行 | |
O | 在当前行前插入空行 | |
a | append | 在当前字符后插入文本 |
A | append | 在当前字符前插入文本 |
<14> 多行代码注释
- 方法一:/*文本*/
- 方法二://文本//
- 方法三:①按下Esc键进入末行命令模式,并使用 ^ 将光标移动至行首
②使用替换命令 :n1,n2s/^注释符//g
eg: :1,3s/^#//g
<15> 一次性取消多行代码的注释
①按下Esc键进入命令行模式,使用 ^ 将光标移动到行首
②使用替换命令::n1,n2s/^注释符//g
eg::1,3s/^#//g
<16> 末行命令拓展
:e文件名 | edit | 切换浏览文件 | 当前文件修改后若未保存不能切换文件 |
:n文件名 | new | 新建文件 | |
:w文件名 | write | 另存为 | 任编辑当前文件,并不会切换,在实际应用中起到备份的作用 |
<17> 显示行号
:set number
四、支持中文
1、使用sudo vim /etc/vim/vimrc 文件(注意误删)
sudu vim /etc/vim/vimre
2、在文件最下方输入下列内容
set fileencodings=utf-8,gb2312,gbk,gb18030
set termencodding=uft-8
set encoding=prc