為什麼在 Debian 的 gnome-terminal 中 Alt+Backspace 會被綁定到 delete-word?
我習慣在 Ubuntu 和 OS X 中使用
ctrl
+backspace
。我想了解這一點,因為它有助於我如何設計和建構系統。儘管如此,您仍然在終端中擁有諸如ctrl
+ 、 …之類的 emacs 鍵綁定。u
但是,網際網路瀏覽器仍然使用ctrl
+backspace
來完成任務。我想在基礎知識上保持某種一致性。與 Ubuntu 相比,Debian 的其他差異
- 在終端中移動選項卡 - 沒有找到該任務的任何鍵綁定;在 Ubuntu 中,我使用
ctrl
+1
,…作業系統:Debian 8.5
視窗管理器:Gnome
這些是 shell ( bash ) 的鍵綁定,而不是終端的鍵綁定。請參閱“終端”、“外殼”、“tty”和“控制台”之間的確切區別是什麼?儘管如此,終端仍參與將鍵弦轉換為轉義序列。請參閱鍵盤輸入和文本輸出如何工作?
Bash 使用 Emacs 鍵綁定(除非您切換到 vi 模式)。在 Emacs 中,
Alt
+BackSpace
(M-backspace
) 刪除前一個單詞。Alt
+BackSpace
(C-backspace
) 傳統上沒有綁定,儘管現代版本也將其綁定到刪除前一個單詞的命令。
Alt
+的轉義序列是在發送單個字元時*key*
後跟字元的轉義字元。+沒有標準的轉義序列,並且通常無法與其他鍵區分開來。這就是為什麼終端應用程序(包括經典的 Emacs)往往沒有綁定+的原因。在 gnome-terminal 中,+發送與 相同的字元,因此不可能為+單獨綁定。*key*``*key*``Ctrl``BackSpace``Ctrl``BackSpace``Ctrl``BackSpace``BackSpace``Ctrl``BackSpace
Gnome-terminal 的 keychord-to-escape-sequence 轉換是不可配置的。如果您想使用不同的翻譯,請使用可配置的終端仿真器,例如 rxvt 或 xterm。