如何像在 Ubuntu 的其他部分一样使用 Ctrl-Backspace 在终端中删除单词?

如何像在 Ubuntu 的其他部分一样使用 Ctrl-Backspace 在终端中删除单词?

当我在任何程序(浏览器、文本编辑器、IDE)中的文本中时,我可以通过按住Ctrl并按下Backspace3 次来删除 3 个单词。

这在所有程序中都能完美运行,除了对于终端。在终端中Ctrl+Backspace只会删除一个字母,而我需要Alt+Backspace来删除整个单词。

由于我不断在终端和其他程序之间切换,这真的很烦人。

我尝试过我在这里找到(创建~/.inputrc包含"\C-?":"\C-W")但这对我来说不起作用。现在,当我按 时,它会删除整个单词Backspace,但Ctrl+Backspace仍然只会删除一个字母。

有人知道我该如何改变这种行为,以便Ctrl+Backspace删除光标左侧的单词吗?欢迎提供所有提示!

答案1

如果没有终端仿真器的帮助,bash 本身通常无法做到这一点,因为Backspace Ctrl通常与+ ?(ASCII DEL)(或Ctrl+ H- ASCII 退格键)的键码相同。(尝试Ctrl+V然后Backspace进行验证。)这使得Ctrl+Backspace本质上Ctrl+ Ctrl+ ?... 即Ctrl+?或仅仅是Backspace其本身。*)

某些终端仿真器具有一些设置,允许您为各种组合键发送自定义键码。特别是,许多终端仿真器都有自定义Backspace发送内容的选项(通常在 ASCII DEL 或退格键之间切换)。您可能想尝试这些选项,看看终端仿真器是否会为HCtrl+发送不同的键码Backspace


* 这对于许多特殊键也同样适用 - Enteris Ctrl+ MTabis Ctrl+ IEscis Ctrl+]等等。

相关内容