备注:
vim多个窗口打开同一个文件的时候,他们享受同一个文件缓冲区,在其中一个窗口编辑内容,其他窗口内容会跟着实时变化。
1、命令行命令:vim打开多个窗口
# 水平铺满,上下分割
vim -o file1 file2 file3 ...
# 垂直铺满,左右分割
vim -O file1 file2 file3 ...
2、vim底行命令:当前窗口的基础上再打开新文件
# 在【左侧】打开文件(备注:不写文件名时,表示【再次打开当前文件】)
:vsp new_file
:vs<回车>
# 在【上方】打开文件(备注:不写文件名时,表示【再次打开当前文件】)
:sp new_file
:vs<回车>
3、窗口间游走(切窗口)
<ctrl+w> h/j/k/l 光标切换到:【左、下、上、右】的窗口(附:如果把hjkl换成大写,则会直接将当前光标窗口进行移动)
<ctrl+w> t 切换到:左上角
<ctrl+w> b 切换到:右下角
<ctrl+w> p 切换到:上次一光标所在窗口
<ctrl+w> w 依次轮询切换窗口
num <ctrl+w> w 直接定位到当前screen第num个窗口(左上角是第1个,从左往右,从上往下数)
3.1 鼠标
还有一种可以使用鼠标左键点击直接切换窗口的方法,底行模式输入命令下面命令就可以直接鼠标左键点击切换窗口了:
- :set mouse=a
但是这样就没法用鼠标左键选中文本复制了,取消鼠标的方法为底行模式命令:
- :set mouse=
4、调整窗口尺寸
<ctrl+w> = 当前屏幕所有窗口【等宽且等高】
<ctrl+w> | 当前窗口【宽度】调到最大(竖线:shift \)
<ctrl+w> _ 当前窗口【高度】调到最大(下划线:shift 减号)
#不加num默认操作一个长度单位
num <ctrl+w> + 将当前窗口【增高num行】
num <ctrl+w> - 将当前窗口【减少num行】
num <ctrl+w> > 将当前窗口【变宽num行】
num <ctrl+w> < 将当前窗口【变窄num行】
--------------------------------------------------
按键备注:
# 减号 -
# 等号 =
# 加号 【shift =】
# 下划线:【shift 减号】
5、关闭窗口
底行模式命令:
# a参数表示所有窗口,如:
:qa 关闭所有窗口
# 其他参数和单窗口操作一样,如w保存,!强制退出,如:wqa/qa!/wqa!等