现在我有以下行,~/.screenrc
因此我可以向后滚动并查看屏幕窗口的输出:
termcapinfo xterm ti@:te@
现在我正在编辑vim
,我想使用鼠标滚动里面vim,不在终端回滚中。有没有办法在运行时禁用终端回滚?
手册screenrc
页提到termcapinfo
一旦启动就无法更改:
您必须将这些命令放在 screenrc 启动文件之一中,因为一旦终端仿真器启动,它们就毫无意义了。
……所以不能相信。合理的黑客也可以,我正在使用 Konsole 终端模拟器。
答案1
这是一个特定于 vim 的解决方法(例如,它不起作用less
):
- 保存撤消历史记录。
- 使用会话保存打开的选项卡。
- 关闭 vim。
- 拆下屏幕。
- 重新打开 vim(或打开禁用 termcap 的屏幕)。
命令(: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
您可以将undodir
和undofile
指令放入 vimrc 中以供将来使用,这样您就不必重复。我还没有这样做,所以要重新连接我的 vim 会话并保留撤消历史记录:
vim -S /tmp/sess.vim +set\ undodir=/tmp/vimundo\ undofile