我已经安装了新的iTerm 2。 在顶部的黄色栏中,它问我是否要启用鼠标功能。不幸的是,我不记得确切的句子了。
由于疏忽,我批准了。现在当我在iTerm中使用鼠标滚轮时,它不再向上滚动,而是触发命令历史记录,就好像我按了向上光标键一样。
我在哪里可以切换此选项以再次关闭它?
如果你陷入了滚动历史模式,你可以通过运行vi并退出来摆脱。你也可以选择另一个使用备用屏幕的程序,然后退出。
理论上,使用鼠标滚轮滚动历史记录是不应该发生的。但在实践中,由于有时备用屏幕模式没有正确切换回来,这种情况会发生。接受的答案通过禁用一个有用的功能来解决这个问题,即使用鼠标滚轮或触摸板在vi、less等程序中滚动。您可以在高级首选项中保留此选项:
备用屏幕模式下滚轮发送箭头键
将其设置为“是”。有时你会被困在滚动历史模式中。但如果你知道如何逃脱,这不是个问题。
[[A^
和[[B^
,而不是滚动窗口。我知道这不是正常的行为。在那之前,我把电脑留在了一个SSH shell中的nano
里,当我关闭笔记本电脑时,它就断开了连接。这个突然的退出显然是罪魁祸首。在iTerm2中打开一个新标签页就解决了这个问题。 - Colin Marshallscreen
时,您无法使用此技巧退出备用屏幕模式。因此,如果您经常使用 screen
(像我一样),完全禁用该功能可以拯救生命。 - mvreijntput rmcup
reset
命令;这对我很有效,并且比tput rmcup
稍微容易记住一些。 - undefinediTerm2还支持在使用滚轮时按住Option键,强制窗口滚动,以防您需要在vim中继续使用滚轮。
偏好设置:高级选项:鼠标:在交替模式下滚轮发送箭头键
less +F /var/log/something
中并断开了连接。
你会看到有人已经写了tput rmcup
命令以返回主屏幕。
我还查找了一些终端控制字符。它可以是任何一个:ESC [ ? 1 0 4 9 l
或 ESC [ ? 1 0 4 7 l
或 ESC [ ? 47 l
(gnu.org/software/screen/manual/html_node/Control-Sequences.html),首选第一个。
一般来说,在iTerm2中我经常使用echo -e '\e[?1049l'
。实际上,我并不认为rmcup
更容易记忆,恢复控制台上的内存?。
ESC [ ? 1 0 4 9 l
或ESC [ ? 1 0 4 7 l
或ESC [ ? 47 l
(https://www.gnu.org/software/screen/manual/html_node/Control-Sequences.html)。 - dlamblin