VI三种模式
1. 命令模式(默认模式)
2. 输入模式(编辑模式)
3. 特殊模式(最后行模式)
命令 作用
--------------------
输入:
a 在光标后输入文本
A 在当前行末尾输入文本
i 在光标前输入文本
I 在当前行末开始输入文本
o 在当前行后输入新一行
O 在当前行前输入新一行
移动:
h 向前移动一个字符
j 向上移动一行
k 向下移动一行
l 向后移动一个字符
删除:
x 删除光标所在的字符
dw 删除光标所在的单词
D(d$) 删除光标至行尾所有字符
dd 删除当前行
查询:
/abc 向前查询abc
?abc 向后查询abc
n 向前继续查询
N 向后继续查询
拷贝粘贴:
/yw 拷贝光标所在单词
Y(y$) 拷贝光标至行尾字符
yy 拷贝当前行
p 粘贴到光标后
P 粘贴到光标前
退出保存:
:q
:q!
:w
:wq(:x,ZZ)
:w filename 存入文件filename中
:w! filename
其它有用命令:
:set nu 显示行号
nG 跳到第n行
U undo
. redo
nyy 拷贝n行
:e filename 创建新文件
:n filename 加载新文件
vi环境下执行终端命令:
:!gcc -o test test.c
vi配置文件的设置: ~/.vimrc
set nocompatible #去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限
set nummber #显示行号
filetype on #检测文件的类型
set history=1000 #记录历史的行数
set background=dark #背景使用黑色
syntax on #语法高亮度显示
set autoindent #vim使用自动对起,也就是把当前行的对起格式应用到下一行
set smartindent #依据上面的对起格式,智能的选择对起方式
set tabstop=4 #设置tab键为4个空格
set shiftwidth=4 #设置当行之间交错时使用4个空格
set showmatch #设置匹配模式,类似当输入一个左括号时会匹配相应的那个右括号
set guioptions-=T #去除vim的GUI版本中的toolbar
set vb t_vb= #当vim进行编辑时,如果命令错误,会发出一个响声,该设置去掉响声
set ruler #在编辑过程中,在右下角显示光标位置的状态行
set nohls #默认情况下,寻找匹配是高亮度显示的,该设置关闭高亮显示
set incsearch #自动查询匹配
if has("vms") #修改一个文件后,自动进行备份,备份的文件名为原文件名加"~"后缀
set nobackup
else
set backup
endif