linux - 如何使 Alt + NationalChar 用作 Alt + US-ASCII?

标签 linux bash shell terminal

我想在 shell 终端中使用 ALT + d 来杀死一个单词。

问题是,如果我使用国家字符,即西里尔字母,在按下 ALT + CyrChar 后,我会在我调整的 xterm 上得到一个 CyrChar和 gnome 终端上的不可打印符号。

我知道可以将此功能重新绑定(bind)到某些 CTRL 组合,比如 CTRL + dbind '"\C-d":shell-kill-word',它也可以在国家模式下工作,但是有没有办法让 ALT + CyrChar 的工作类似于ALT + US-ASCII?

最佳答案

首先,在您的 shell 中输入 CTRL+V ALT+CyrChar。您应该会看到类似“^[foo”的内容。 “foo”部分是当您按下 ALT+CyrChar 时 bash 看到的部分。然后使用 bind '"\efoo":kill-word' 将其绑定(bind)到 kill-word 命令。确保将 foo 替换为 ^[ 之后的内容。

例如绑定(bind) ALT+DELETE 到 kill-word,我会使用 bind '"\e[3;3~":kill-word ' 因为 CTRL+V ALT+ 打印 ^[[3;3~.

关于linux - 如何使 Alt + NationalChar 用作 Alt + US-ASCII?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8917066/

相关文章:

linux - linux 中的多个 sed -e 命令用法

c++ - 在 Linux 上 boost windows_shared_memory

linux - 两台远程服务器上的 git diff(在 git git --no-index 之外)

bash - 输出特定行的大文本文件

C++线程意外打印同一行多次

linux - Linux 中 MEX 文件的独立程序

bash - 为什么这个模式匹配 `ab` ,而不是 `ba` ?

linux - 使用脚本登录从Windows运行Linux的远程脚本

linux - 来自 Bash 脚本内部服务器的 scp 文档

shell - AWK 打印最后一行的第二列