无法在终端中输入“a”符号

Ula*_*ski 3 bash terminal .bash-profile

我的终端出现了奇怪的行为。我的 OS X 上的 iTerm 和基本终端都不起作用。我只能键入“A”而不是“a”,而不能键入“a”字母。如果我尝试,bash --noediting那么我可以输入“a”,但使用起来非常不舒服。我检查了我的~/.bashrc~/.bash_profile并没有发现任何对我来说似乎很奇怪的东西。有人可以帮助我吗?任何反馈表示赞赏。

ric*_*ici 7

很可能您以某种方式为a.

作为第一步,试试这个:(grep 参数是$"a",但你不能输入 :) )

bind -p | grep $'"\x61"'
Run Code Online (Sandbox Code Playgroud)

它应该打印:

"a": self-insert
Run Code Online (Sandbox Code Playgroud)

如果是这样,那么我的猜测是错误的,你需要去其他地方看看。如果没有,那么你需要修复它,你可以这样做:

bind $'"\x61"':self-insert
Run Code Online (Sandbox Code Playgroud)

现在您需要在 bash 启动文件中找到错误bind命令的位置。我会从 grepping 开始bind。它很可能位于源自这些文件之一的文件中。祝你好运。

您还应该检查~/.inputrcreadline 库使用的文件来初始化它的绑定。