如何以某种方式增加或减少 vim 缓冲区的高度或宽度,以便当您按住组合键时,缓冲区大小不断变化?
我知道CTRL W <这可行,但它每次移动一个单位。我正在寻找一种方法,当您按下CTRL W <并按住 时,<VIM 会流畅地(持续地)更改缓冲区的宽度,直到您松开<。
答案1
尝试这些:
:nmap ^[> :vertical res +1^M
:nmap ^[< :vertical res -1^M
要输入^[
,请按Ctrl-v然后Esc。 要输入^M
,请按Ctrl-v然后Enter。
正如 Heptite 在评论中所建议的,您可以使用键符号而不是文字字符:
:nmap <Esc>> :vertical res +1<Enter>
:nmap <Esc>< :vertical res -1<Enter>
结果与顶部的示例具有相同的映射。
现在您可以按住Alt- Shift->以平滑地增加宽度或Alt- Shift-<以平滑地增加宽度。对我来说,在右侧窗口中使用它有点奇怪,因为我认为我正在左右移动分隔符,但事实并非如此。
更改水平分割窗口的大小:
:nmap ^[+ :res +1^M
:nmap ^[- :res -1^M
这些是常规的加号和减号键,而不是小键盘上的加号和减号键。在我的美式键盘上,除了 之外Alt,我还可以Shift按住+,但不能Shift按住-。
答案2
您也可以使用10 ctrl-w <
或10 ctrl-w >
将其更改 10 个单位。