TAB
:tabnew 增加一个标签
:tabc 关闭当前的tab
:tabo 关闭所有其他的tab
:tabs 查看所有打开的tab
:tabp或gT 前一个tab
:tabn或gt 后一个tab
Ngt 切换到第N个tab
:tabfirst(或:tabr ) 移动到第一个标签页
:tablast 移动到最后一个标签页
:tabm [次序] 移动当前文件的标签页次序(标签页次序是从0开始计数的)
:tabm 1 将把当前标签页移动到第2的位置
:tabm 不指定参数将被移动到最后
:tabdo <命令> 同时在多个标签页中执行命令
:tab ball 为每一个打开的缓冲区,分别新建单独的标签页
WINDOW
1)实用操作
目录
:Ex 开启目录浏览器,可以浏览当前目录下的所有文件,并可以选择
:Sex 水平分割当前窗口,并在一个窗口中开启目录浏览器
buffer
:ls 显示当前buffer情况
\\:files 或 :buffers
:b num 切换文件(其中num为buffer list中的编号)
file
:f file 给窗口重命名
:n 跳至下一个文件
:e# 回到刚才编辑的文件
:?# 编辑前一次编辑的文档
Ctrl+ˆ 编辑上一个文档,用于两个文档相互交换编辑时
ctrl+i 回到以前旧的编辑位置
ctrl+o 同上
Ctrl+6 下一个文件
:bn 下一个文件
:bp 上一个文件
:shell 可以在不关闭vi的情况下切换到shell命令行
:exit 从shell回到vi
2)横向切割窗口
:new+窗口名 (保存后就是文件名)
:split+窗口名 = :sp+窗口名
3)纵向切割窗口名
:vsplit+窗口名 = :vsp+窗口名
:sp (file) :上下分屏
:vs (file) :上下分屏
4)打开多个文件:
vim -o file1 file2 ... #水平打开多窗口,
vim -O file1 file2 ... #垂直打开多窗口,
vim -d file1 file2 ... #垂直打开多窗口,并且进行比较
vimdiff file1 file2 .. #等同于上一句
5)关闭窗口:
:q或close #关闭当前窗口
(close只是暂时关闭窗口,其内容还在缓存中,只有使用q!、w!或x才能真能退出)
:only #保留当前窗口,关闭其它所有窗口
:qall(qa) #退出所有窗口
:wall #保存所有窗口
6)切换窗口:
ctrl+w+j/k, #j/k可以上下切换
ctrl+w+上下左右键 #
ctrl+w(快速双击w) #依次切换窗口
7)调整窗口:
(分屏关动作都是ctrl+w 开始的,再跟一个其他字母)
ctrl+w = :让左右上下各个分屏宽度,高度均等。
ctrl+w _(shift + -) :当前屏幕高度扩展到最大
ctrl+w |(shift + \) :当前屏幕宽度扩展到最大
ctrl+w c :关闭当前屏幕
8)纵向调整
:ctrl+w + 纵向扩大(行数增加)
:ctrl+w - 纵向缩小 (行数减少)
:res(ize) num 例如::res 5,显示行数调整为5行
:res(ize)+num 把当前窗口高度增加num行
:res(ize)-num 把当前窗口高度减少num行
9)横向调整
:vertical res(ize) num 指定当前窗口为num列
:vertical res(ize)+num 把当前窗口增加num列
:vertical res(ize)-num 把当前窗口减少num列
vim多标签和多窗口