当屏幕已经运行时如何切换鼠标滚动行为?

当屏幕已经运行时如何切换鼠标滚动行为?

现在我有以下行,~/.screenrc因此我可以向后滚动并查看屏幕窗口的输出:

termcapinfo xterm ti@:te@

现在我正在编辑vim,我想使用鼠标滚动里面vim,不在终端回滚中。有没有办法在运行时禁用终端回滚?

手册screenrc页提到termcapinfo一旦启动就无法更改:

您必须将这些命令放在 screenrc 启动文件之一中,因为一旦终端仿真器启动,它们就毫无意义了。

……所以不能相信。合理的黑客也可以,我正在使用 Konsole 终端模拟器。

答案1

这是一个特定于 vim 的解决方法(例如,它不起作用less):

命令(:foo是vim命令,其他都是shell命令):

mkdir /tmp/vimundo
:set undodir=/tmp/vimundo undofile
# note: `set undofile` has to be done for each tab and is saved only
# when the file itself is saved.
:mks /tmp/sess.vim
:wqa

您可以将undodirundofile指令放入 vimrc 中以供将来使用,这样您就不必重复。我还没有这样做,所以要重新连接我的 vim 会话并保留撤消历史记录:

vim -S /tmp/sess.vim +set\ undodir=/tmp/vimundo\ undofile

相关内容