如何在vim中重复执行“调整窗口大小”命令?

4

我知道如何调整窗口大小(CTRL_W +)。但是当我想要重复执行相同的命令时,. 是无用的。反复输入 CTRL_W + 很枯燥。还有其他方法吗?

在我的系统中:

if bufwinnr(1)
  map + <C-W>+
  map - <C-W>-
endif

不起作用。

if bufwinnr(1)
  map <kPlus> <C-W>+
  map <kMinus> <C-W>-
  map <kDivide> <c-w><
  map <kMultiply> <c-w>>
endif

工作了。


1
请查看vi.stackexchange.com上的此问题,其中提供了一些解决方案,包括配置submode和repmo插件来完成此操作。 - joeytwiddle
请查看包含子模块的完整配置(非常简洁):https://ddrscott.github.io/blog/2016/making-a-window-submode/ - Tinmarino
2个回答

7

在我的系统中:如果 bufwinnr(1) 成立 映射 + + 映射 - - 结束如果没有生效。如果 bufwinnr(1) 成立 映射 + 映射 - 映射 < 映射 > 结束如果已经生效,感谢大家 :) - jinleileiking
这很不错;但真正棒的是,如果有人在这个插件中添加窗口调整大小功能就太好了:http://vim.sourceforge.net/scripts/script.php?script_id=2174 - dsummersl

6

按下 Ctrl-W+ 快捷键可以进行前置计数。按下 Ctrl-W_ 命令可以最大化窗口,不需要计数,或使用前置计数设置绝对高度。使用计数,您应该很少需要重复调整窗口大小的命令。

如果您经常希望对窗口大小进行小的重复调整,也许您可以利用 ex-commands 的可重复性(使用 @:)并使用 :resize +1 而不是键盘快捷键进行调整。如果您经常调整窗口大小,建议使用映射 +-,如 Zsolt suggested 所建议。如果您只是一遍又一遍地恢复相同的窗口布局,请查看使用保存的会话文件 (:help sessions)。


1
你可以使用 :res-1:res+1 来少打一点字。 - ib.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接