Bash

為什麼在 Debian 的 gnome-terminal 中 Alt+Backspace 會被綁定到 delete-word?

  • September 3, 2016

我習慣在 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。

引用自:https://unix.stackexchange.com/questions/307677