我通常将我的 Vim 屏幕分成两个垂直窗口,每个窗口都可以进一步水平拆分。有时,我想添加或删除垂直窗口。有没有办法检测有多少顶级垂直分割并根据需要添加或删除vsplit?
例如,假设我的屏幕如下所示:
+--------+--------+
| | |
| | |
+--------+ |
| | |
| | |
| +--------+
| | |
+--------+--------+
我想:Columns 1
给我
+--------+
| |
| |
+--------+
| |
| |
| |
| |
+--------+
通过关闭最右边的两个窗口。
我什么也不想做:Columns 2
,检测到两列已经打开。
我想:Columns 3
给我
+--------+--------+--------+
| | | |
| | | |
+--------+ | |
| | | |
| | | |
| +--------+ |
| | | |
+--------+--------+--------+
如果该函数忽略水平拆分中的垂直拆分,我很好。例如,如果我有
+--------+
| |
| |
+---+----+
| | |
| | |
| | |
| | |
+---+----+
我跑了:Columns 2
,我会得到
+--------+--------+
| | |
| | |
+---+----+ |
| | | |
| | | |
| | | |
| | | |
+---+----+--------+