Terminal
如何在終端中禁用滑鼠支持?
我在使用 xfce4-terminal 時問了這個問題,但我對通用解決方案感興趣:有沒有辦法阻止終端仿真器在控制台中宣布滑鼠支持?我需要更頻繁的滑鼠選擇和複製粘貼,而我需要 vim 或任何地方的滑鼠支持。
在啟用xterm 滑鼠跟踪時,您可以按住該
Shift
鍵以使用正常的滑鼠選擇。這適用於我知道的所有終端仿真器(, (like ) 或基於 - 的終端仿真器)。xterm``vte``xfce-terminal``rxvt
具體來說
vim
,mouse
通常在終端中預設情況下不啟用。因此set mouse=a
,您~/.vimrc
或您的作業系統提供的系統 vimrc 中可能存在某個地方。您可以隨時添加:set mouse=
給你
~/.vimrc
禁用它。或者:if !has("gui_running") set mouse= endif
以避免為
vim
.滑鼠支持(有點)在具有該功能的
terminfo
數據庫中宣傳。kmous
現在,並非所有應用程序都依賴它來決定是否啟用滑鼠跟踪。您可以重新定義終端的條目(在本地 terminfo 數據庫中)以刪除該功能:
infocmp -1x | grep -v kmous= | TERMINFO=~/.terminfo tic -x - export TERMINFO=~/.terminfo
對於使用 的應用程序,將使用者定義的功能(未在 和 中記錄但在和中提及)設置為空字元串
ncurses
就足夠了。如果滑鼠事件是由終端發送的,這不會阻止應用程序處理滑鼠事件,但會阻止應用程序發送進入滑鼠跟踪模式的序列。因此,您可以將兩者結合:XM
terminfo(5)``curs_caps(5)``curs_mouse(3)
infocmp -1x | sed '/kmous=/d;/XM=/d;$s/$/XM=,/' | TERMINFO=~/.terminfo tic -x - export TERMINFO=~/.terminfo