高级功能入门
1.使用vim编辑器编辑多个文件
$ vim 1.txt 2.txt
默认进入1.txt
- 命令行模式下输入
: n
编辑2.txt
,可以加上!
即: n!
,在不保存1.txt
数据下,仅仅切换到另一个文件(小写n下一个文件,大写N上一个文件) : e 3.txt
打开新的文件3.txt
: ls
列出编辑过的文件: e#
回到前一个文件: e! 4.txt
打开新文件,放弃正在编辑的文件: f
显示正在编辑的文件名: f new.txt
改变正在编辑的文件名
2.恢复文件
$ vim -r 1.txt
一般用在突然断电的情况下
3.可视模式
v
字符选择模式Shift +v
行选择模式Ctrl+v
区块选择模式
4.视窗操作
- 命令行模式下输入
:new
打开一个新的vim视窗 - 命令行模式下输入
:sp 1.txt
打开新的水平分屏视窗来编辑1.txt
- 命令行模式下输入
:vsp 2.txt
打开新的垂直分屏视窗来编辑2.txt
- 普通模式下
Ctrl+w s
将当前窗口分割成两个水平的窗口 - 普通模式下
Ctrl+w v
将当前窗口分割成两个垂直的窗口 - 普通模式下
Ctrl+w q
即:q
结束分割出来的视窗。如果在新视窗中有输入需要使用强制符!即:q!
- 普通模式下
Ctrl+w o
打开一个视窗并且隐藏之前的所有视窗 - 普通模式下
Ctrl+w j
移至下面视窗 - 普通模式下
Ctrl+w k
移至上面视窗 - 普通模式下
Ctrl+w h
移至左边视窗 - 普通模式下
Ctrl+w l
移至右边视窗 - 普通模式下
Ctrl+w J
将当前视窗移至下面 - 普通模式下
Ctrl+w K
将当前视窗移至上面 - 普通模式下
Ctrl+w H
将当前视窗移至左边 - 普通模式下
Ctrl+w L
将当前视窗移至右边 - 普通模式下
Ctrl+w -
减小视窗的高度 - 普通模式下
Ctrl+w +
增加视窗的高度
5.文档加密
$ vim x file1
6.执行外部命令
在命令行模式中输入!
可以执行外部的shell命令
:!ls
用于显示当前目录的内容:!rm FILENAME
用于删除名为 FILENAME 的文件:w FILENAME
可将当前 VIM 中正在编辑的文件另存为 FILENAME 文件
7.帮助命令
- 普通模式下按
F1
打开vim自己预设的帮助文档 - 命令行模式下输入
:h shiftwidth
打开名为shiftwidth
的帮助文件 - 命令行模式下输入
:ver
显示版本及参数
8.功能设定
8.1 vim的功能设定
可以在编辑文件的时候进行功能设定,如命令行模式下输入:set nu
(显示行数),设定值退出vim后不会保存。要永久保存配置需要修改vim配置文件。vim的配置文件~/.vimrc
,可以打开文件进行修改,不过务必小心不要影响vim正常使用。
8.2 获取目前的设定
- 命令行模式下输入
:set
或者:se
显示所有修改过的配置 - 命令行模式下输入
:set all
显示所有的设定值 - 命令行模式下输入
set option?
显示option的设定值 - 命令行模式下输入
:set nooption
取消当前设定值
8.3 set功能的说明
- 命令行模式下输入
:set autoindent(ai)
设置自动缩进 - 命令行模式下输入
:set autowrite(aw)
设置自动存档,默认未打开 - 命令行模式下输入
:set background=dark或light
,设置背景风格 - 命令行模式下输入
:set backup(bk)
设置自动备份,默认未打开 - 命令行模式下输入
: set cindent(cin)
设置C语言风格缩进