1.vim有三种模式,一般模式、编辑模式和命令行模式。
2.vim的配置文件
当我们在一个vim的窗口中使用:set命令时,例如设置行号:set nu,那我们退出vim后,下次再使用vim时,行号就会消失了。如果我们想要配置一直生效,可以修改~/.vimrc文件,但是这个设置只对当前用户有效,对其他用户是没有效果的。如果我们想要将vim配置的修改应用到所有用户,那么我们就去修改/etc/vimrc配置文件。注意用户的vimrc文件是个隐藏文件,而系统的不是哦。如果~/.vimrc文件不存在的话,新创建一个就好了。
一般情况下,我们去修改~/.vimrc文件就好了,尽量不要去修改/etc/vimrc文件
3.设置行号
(1)临时方案, :set nu
(2)永久方案, 修改~/.vimrc 或 /etc/vimrc
4.设置每行的下划线
(1)临时方案,:set cursorline
(2)永久方案,修改~/.vimrc 或 /etc/vimrc
5.设置paste模式
在vim窗口中输入:set paste可以进入paste模式,这样在往这个窗口中粘贴文本的时候,就会保持原样,不会有缩进什么的了。执行:set nopaste退出paste模式
6.vim中的块选择功能
在vim中一般模式下输入V,表示字符选择,光标经过的字符,都会被反白选择
在vim中一般模式下输入v,表示行选择,光标经过的行,都会被反白选择
在vim中一般模式下输入ctrl+v,表示块选择,光标的起始点和终止点之间的矩形区域被反白选择
7.vim中的缩进
在vim的一般模式中,输入>>或者:>表示当前行向右缩进一次
在vim的一般模式中,输入<<或者:<表示当前行向左缩进一次
PS: 这个可以配合vim的块选择功能实现多行缩进
8.vim多文件编辑
在命令提示符上输入vim filename1 filename2就表示多文件编辑,
:n 表示编辑下一个文件
:N 表示编辑上一个文件
:files 查看有被编译文件的list
9.vim的多窗口编辑
:split filename 表示横向切割窗口,如果filename为空,表示再次在新窗口中打开该文件
:vsplit filename 表示纵向切割窗口 可以使用快捷键CTRL+w+v
窗口的切换:ctrl+w+[方向键] 表示将光标相应移动上下左右的窗口中。注意这个方向键的用法是,先同时按下ctrl和w键,然后松开,最后再按方向键。
窗口的大小调整:
:resize+num 把当前窗口高度增加num行
:resize-num 把当前窗口高度减少num行
:vertical resize+num 把当前窗口增加num列
:vertical resize-num 把当前窗口减少num列
10.打开目录浏览器
:Ex 打开目录浏览器
:Sex 切割窗口为两个,并在新窗口中显示目录浏览器
11.vim中常用的快捷键
:w filename 将vim打开的文件另存为filename
y 复制
p 粘贴
gg 光标移动到文件的第一行
G 光标移动到文件的最后一行
dd 删除光标所在的那一行
u 撤销
CL+r 重做
:! command 在vim中执行command命令
:n 光标移动到文件的第n行
12.vim中替换字符或字符串的方法
:%s/str_1/str_2/g 将vim打开的文件中的str_1字符串替换成str_2字符串 :n1,n2s/str_1/str_2/g 将n1到n2行中的str_1字符串替换成str_2字符串。(其中最后一行可以用$表示,例如:2,$s/beijing/shanghai/g) 备注:可以使用:n1,n2s/^/#/g 为多行shell脚本添加注释
13.显示vim中不可见字符
:set list #显示不可见字符
:set nolist #不显示不可见字符
备注:使用:set list可以显示vim中一些不可见字符,例如TAB键显示为^I, 换行符或行结尾显示为$
14.使用vim快捷键一览图
vim快捷键的两个很赞学习资料:
http://feihu.me/blog/2014/intro-to-vim/
http://blog.vgod.tw/2009/12/08/vim-cheat-sheet-for-programmers/?variant=zh-cn