我在VIM的:vsplit
命令中如何滚动另一个窗口? 我已经到处查找,但所有网站都在讨论如何将两个窗口同步滚动。 我想查看一个文件,编辑它,同时滚动另一个窗口。
我相当(好吧,相当)确定没有内置的方法可以做到这一点,最重要的是因为只有在存在两个窗口时才有意义。不过,对于这种特定情况,您可以使用映射。将以下内容放入您的~/.vimrc
中:
nmap <a-j> <c-w>w<c-e><c-w>w
nmap <a-k> <c-w>w<c-y><c-w>w
这会使得Alt+J往下滚动,Alt+K往上滚动,你可以根据自己的喜好更改。如果你想让它在更多的窗口中起作用,你需要编写一个脚本。
" SCROLLING FOR OTHER SPLIT WINDOWS (JUST 2 WINDOWS)
nmap <M-j> <c-w>w<c-e><c-w>wh " Scroll down one line other pane
nmap <M-k> <c-w>w<c-y><c-w>wh " Scroll up one line other pane
nmap <M-d> <c-w>w<c-d><c-w>wh " Scroll down half screen other pane
nmap <M-u> <c-w>w<c-u><c-w>wh " Scroll up half screen other pane
nmap <M-f> <c-w>w<c-f><c-w>wh " Scroll down one screen other pane
nmap <M-b> <c-w>w<c-b><c-w>wh " Scroll up one screen other pane
<M>
代表Meta、Opt或Alt键。当我测试这个快捷键时,我的光标会向前移动1个字符。所以我最终将绑定映射到了h
。但是只有在您没有到达其他窗格的第一行或最后一行时,这些绑定才有效,否则光标将切换到当前窗格然后开始滚动。