9. 分隔窗口
将一个窗口分隔成多个窗口,可以同时显示或者编辑多个文件,或者可以显示或编辑同一个文件的不同位置。
-
- 分隔一个窗口
-
:split命令:将屏幕分成上下两个窗口,并将光标定位在上面的窗口中。 -
:vsplit命令:将屏幕分成左右两个窗口,并将光标定位在左边的窗口中。 -
CTRL-w w(window)命令:切换当前活动窗口,与CTRL-w CTRL-w功能相同。 -
:close命令:关闭当前活动窗口。比如:quit或ZZ均可以关闭当前窗口,但是其优点在于可以阻止你关闭最后一个窗口,不会意外的将Vim退出。 -
:only命令:关闭除当前窗口之外的所有窗口。
-
- 为另一个文件分隔出一个窗口
-
:split {otherFile}:打开第二个窗口同时在新打开的窗口中开始编辑。 -
:new:打开一个新的窗口并开始编辑一个空的缓冲区。- 备注:可以重复的使用
:split或new命令打开任何你喜欢的窗口数目。
- 备注:可以重复的使用
-
- 窗口的大小
-
:3solit {fileName}:高度为3的新窗口,名为{fileName}的文件。
-
-
CTRL-w +:窗口高度增加1行。
-
-
-
CTRL-w -:窗口高度减小1行。
- 备注:可以增加计数命令,如
4CTRL-w -一次减少4行。 -
{height} CTRL-w:窗口高度指定为一个固定的height。 - 备注:不指定高度时,默认让窗口达到它的最大的高度。
-
:set mouse=a:设置使用鼠标控制窗口调整。
-
-
- 常用选项
-
winminheight:强制窗口的最小高度,可以使用:set wmh=4。 -
winminwidth:强制窗口的最小宽度,可以使用:set smw=4。 -
equalalways:自动让所有窗口均摊屏幕上可用的高度和宽度。
-
- 垂直分隔
-
- 常用命令
-
:vsplit命令:将屏幕分成左右两个窗口,并将光标定位在左边的窗口中。 -
:vnew:垂直打开一个新的窗口并开始编辑一个空的缓冲区。
-
- 切换窗口
-
CTRL-w h:切换到左边的窗口。 -
CTRL-w j:切换到下边的窗口。 -
CTRL-w k:切换到上边的窗口。 -
CTRL-w l:切换到右边的窗口。 -
CTRL-w t:切换到顶部的窗口。(top) -
CTRL-w b:切换到底部的窗口。(bottom)
-
- 移动窗口
-
CTRL-w H:向左移动窗口 -
CTRL-w J:向下移动窗口 -
CTRL-w K:向上移动窗口 -
CTRL-w L:向右移动窗口
-
- 针对所有窗口操作的命令
-
- 常用命令
-
:qall:关闭所有的窗口。(quit all) -
:wqall:保存所有穿够内容并关闭窗口。(write quit all) -
:qall!:强制关闭所有的窗口,不为文件保存。
-
- 为每一个文件打开一个窗口
-
vi -o *.txt:水平打开多个文件,并且为每一个文件打开一个窗口。 -
vi -O *.txt:垂直打开多个文件,并且为每一个文件打开一个窗口。 -
:all命令:将文件列表中的文件,各打开一个水平的窗口进行显示或编辑。 -
:vertical all命令:将文件列表中的文件,各打开一个垂直的窗口进行显示或编辑。
-
- 使用vimdiff查看文件的区别
- 备注:
vimdiff是Vim的另一种特殊的启动方式,可以显示文件的不同之处。 -
- 常用命令
-
vimdiff {fileName} {fileName}:以diff模式打开两个文件进行比较。 -
:vertical diffsplit {fileName}:可以运行Vim之后进行比较两个不同的文件。 -
]c和[c:跳到下一个或上一个两个文件的不同的地方。
-
- 消除差异
-
diffupdate:重新比较两个文件,更细差异,主要用于修改文本之后。 -
dp(diff put):将当前窗口不同的内容放到另一个窗口中。 -
do(diff obtain):从另一个窗口中对应的位置上取来了差异的内容。
-
- 其他
-
CTRL-w CTRL-^:分隔出一个窗口来编辑前一个文件。
-
-
- 常用选项
-
:set scrollbind:打开同步滚动,通常这个选项是默认开启的。 -
laststatus:0 永不;1 只有在有至少两个窗口时;2 总是 -
splitbelow:用来控制新打开窗口出现在当前窗口的下边。 -
splitright:用来控制新打开窗口出现在当前窗口的右边。
-
- 页签
- 解决平铺在显示屏幕上窗口不够用的问题。
-
CTRL-w T:将当前活动窗口以页签的形式显示。 -
:tabedit {fileName}:以页签的形式显示{fileName}的文件。 -
gt(goto tab):转到下一个标签页,最后一个标签页回到第一个。 -
gT(goto tab):转到上一个标签页,第一个标签页回到最后一个。 -
{count}gt:转到第{count}个标签页,首个标签页的编号为1。 -
:tabonly:关闭除当前页签之后的所有页签。






网友评论