![如何確保遠端主機將 ctrl-h 視為 putty 會話中的退格鍵?](https://rvso.com/image/1648590/%E5%A6%82%E4%BD%95%E7%A2%BA%E4%BF%9D%E9%81%A0%E7%AB%AF%E4%B8%BB%E6%A9%9F%E5%B0%87%20ctrl-h%20%E8%A6%96%E7%82%BA%20putty%20%E6%9C%83%E8%A9%B1%E4%B8%AD%E7%9A%84%E9%80%80%E6%A0%BC%E9%8D%B5%EF%BC%9F.png)
ctrl-h
我在啟用從 putty 到 Linux 遠端主機的捷徑(對於 tmux 和 vim)時遇到問題。準確的說,我覺得ctrl-h
確實是送的。為了確認,當我輸入時ctrl-v
,ctrl-h
我得到了^H
. (退格鍵確實可以用作 ^? 因為我已經在這樣做了stty erase ^?
。)
然而,在終端機中,ctrl-h
仍然被解釋為退格鍵。
有人知道這個問題以及釋放ctrl-h
退格鍵的修復方法嗎?
謝謝。
答案1
您使用的終端程式決定發送退格鍵的程式碼,^H 或 ^? (DEL)通常。它的值在其設定或首選項中設置,通常在提到鍵盤的選項卡或下拉列表中,但每個終端程式都有自己的定義方式。
tmux 有一個配置值 ,backspace key
其中key
可能是^?
。請注意,tmux 在您的終端程式中運行。
當您透過ssh 連接到電腦時,會使用電腦認為是您的終端的內容來設定TERM 環境變量,該變量定義了用於執行諸如向右或向左、向上或向下移動之類的操作的功能或鍵碼。退格鍵就是其中之一,要查看其值,請輸入tput kbs | cat -v
。這可能仍然與您的 tmux 設定不同。
混合這些設定並不是一個好主意,^H 是 ascii 定義中的退格鍵。強制設定通常是不必要的,並且可能會導致其他不使用您的設定透過 ssh 連接到同一台電腦的人出現問題。