oeasy教您玩转vim - 63 - # window分屏
窗口window
回忆上次
我们这次了解了缓冲区buffer
ls
可以查看buffer
如下是
buffer
缓冲的一些flag
-
可修改标签关闭=
只读缓冲区a
活跃缓冲区u
没有在列表里面的缓冲区h
隐藏缓冲区x
有读取错误的缓冲区%
当前缓冲区#
有swap
替换文件的缓冲区+
有修改未保存内容可以在
buffer
跳转可以通过
bn[ext]
,选择下一个buffer
可以用
b[uffer1]
、b2
进入指定的buffer
也可以用文件名,比如
b[uffer] oeasy.txt
可以用
bf[irst]
,打开第一个buffer
可以用
bl[ast]
,打开最后一个buffer
不保存也可以跳转
设置
hidden
跳转的时候自动保存
设置
autowrite
可以用大写字母设置跨文件标记mark
mA
添加标记'A
跳转到标记关于强行跳转和保存退出
强制退出当前窗口
:q!
不保存强行退出所有
buffer
:qall!
保存所有未保存的文件
:wall
全部保存并退出
:wqall
vim
中打开的两个文件缓存buffer
可以放到两个窗口里面同时查看吗?🤔
查询手册
查一下手册
:h window

三者定位
上次的
buffer
缓存 是内存中的文件缓存这次的
window
窗口 是打开buffer
的一个视角tab
标签是window
窗口的集合我们可以
通过
:sp[lit]
来上下切分窗口且切分了之后
我们可以在一屏幕内同时看到第1行和第1000行
切分出窗口之后可以用
:q
退出当前窗口这样就又回到单一窗口的状态
在此切分

:sp[lit]
切分 窗口之后意味着切换的方向
意味着window
可以切换窗口
ctrl-wctrl-k切换到当前窗口上面的窗口
ctrl-wctrl-j切换到当前窗口下面的窗口
ctrl-w
ctrl-k、ctrl-j
切分之后可以再次切分
:sp[lit]
切换到当前窗口下面的窗口
切换到当前窗口上面的窗口
再次切换
ctr-w再ctrl-k
ctrl-w再ctrl-j
纵向切分
我们现在位于中间的一层
:vsp[lit]
v的意思是
vertical
垂直方向于是就可以把这个
window
再垂直方向上进行切分在左右切换的时候,使用
切换到当前窗口右面的窗口
切换到当前窗口左面的窗口
ctrl-w再ctrl-h
ctrl-w再ctrl-l

退出窗口
退出当前window窗口
:q
强制退出当前window窗口不保存
:q!
不保存强行退出所有
buffer
:qall!
保存所有未保存的文件
:wall
全部保存并退出
:wqall
设置window显示与隐藏
:on[ly]
保留当前
window
,其余的都hidden
:hide
隐藏当前
window
如果
:set autowrite
了hidden
的时候就自动保存
调整高度

调整窗口
window
高度减小:res[ize] -N
ctrl-w-
高度减小
高度减小N
调整窗口
window
高度增大:res[ize] -N
ctrl-w+
高度增大
高度增大N
设置当前窗口高度值为N
z15cr
:res[ize] N
或者直接在正常模式下
总共是
80*24
看着分配
窗口高度都统一
ctrl-w再=
调整窗口 window
宽度

调整窗口
window
宽度减小:vertical res[ize] -N
ctrl-w<
宽度减小
窗口
window
宽度减小N调整窗口
window
宽度增大:vertical res[ize] N
:res[ize] -N
ctrl+w>
宽度增大
宽度增大N
设置当前窗口宽度值为N
窗口高度宽度都统一
ctrl-w再=
总共是
80*24
还是得看着分配看着分配
状态横条

:set laststatus=0
不用状态横条:set laststatus=1
有多个窗口的时候,最底下有一个状态横条:set laststatus=0
各窗口有各自的状态横条
快速终端
可以用
:terminal
或者:ter
切换到命令模式只有vim8以上的版本才支持
可以试试不?
看起来是单独新建了一个进程
如何上下切换 窗口
window
?快捷键
如何切出
shell
?试试
exit
命令

想要纵向分屏出shell?
:vertical terminal
:vert ter
总结
我们这次了解了 窗口
window
窗口是用来装 缓冲
buffer
的buffer
是在内存里面载入的硬盘文件窗口的切分
:sp[lit]
水平切分:vsp[lit]
垂直切分窗口的切换
切换到当前窗口右面的窗口
切换到当前窗口左面的窗口
切换到当前窗口下面的窗口
切换到当前窗口上面的窗口
ctrl-w再ctrl-k
ctrl-w再ctrl-j
ctrl-w再ctrl-h
ctrl-w再ctrl-l
窗口的隐藏和全屏
其他的窗口都进入
:hide
状态隐藏的
window
中buffer
不保存除非设置了
autowrite
:hid[e]
可以隐藏当前窗口:on[ly]
可以全屏当前窗口'laststatus'
可以设置状态横条:terminal
可以开启终端这次主要就是
window
窗口,还挺方便尤其多文件操作
这个还有什么可玩的吗?🤔
下次再说 *
[Github地址] (https://github.com/overmind1980/oeasyvim)
[Gitee地址] (https://gitee.com/overmind1980/oeasyvim)
[蓝桥实验楼 邀请码FJWYIMGB] (https://www.lanqiao.cn/courses/2840)