为什么 Esc-p 或 Ctrl-p 在一个终端上不起作用但在所有其他终端上都起作用?

为什么 Esc-p 或 Ctrl-p 在一个终端上不起作用但在所有其他终端上都起作用?

不知何故,当我在 Ubuntu 16.04 中启动 X 会话时,我得到了一个带有 6 个选项卡的 Gnome 终端窗口,除最后一个选项卡外,其他选项卡均按预期工作。最后一个选项卡失去了Esc- p/ Alt-P功能。

由于它在其他 5 个选项卡中有效,我的想法是,这是因为它是最后一个选项卡。同时,如果我关闭该选项卡并重新打开一个新选项卡,则该新选项卡将按预期工作。

每当我打开 X 会话时,该终端窗口就会自动打开。

另一件不起作用的事情是Ctrl- d。我第一次点击它时,我^D在控制台中得到了一个,但它并没有被杀死。

顺便说一句,我在我的.bashrc程序中做了一件事stty -ctlecho,所以我不会一直得到^C(否则会阻止我使用复制/粘贴!)所以感觉那个特定的类似操作没有被执行,因为我在控制台中输入-键^D时看到了。Ctrld

可能出了什么问题?

涉及的二进制文件:

alexis   23335 22889  0 08:31 ?        00:00:22 /usr/lib/gnome-terminal/gnome-terminal-server
alexis   23376 23335  0 08:31 pts/19   00:00:00 bash
alexis   23377 23335  0 08:31 pts/20   00:00:00 bash
alexis   23378 23335  0 08:31 pts/21   00:00:00 bash
alexis   23379 23335  0 08:31 pts/22   00:00:00 bash
alexis   23387 23335  0 08:31 pts/23   00:00:00 bash
alexis   23430 23335  0 08:31 pts/24   00:00:00 bash
alexis   24960 23335  0 08:53 pts/5    00:00:00 bash
alexis   25387 23335  0 09:02 pts/6    00:00:00 bash

答案1

我今天发现了问题所在。

几天前,我修改了我的提示符,H:M:S在当前路径后加上时间 ( ),这样我就可以看到我运行命令的时间。当我想知道命令需要多长时间而不必每次都想着使用 时,这很有用/usr/bin/time

这个添加使得提示的长度变得更长(多了 9 个字符,还有空格),并且Esc- p/ Alt-P功能被关闭,因为它认为光标的位置离第 1 列太远。

如果我做:

cd ..

只需一次,提示的长度就会减少到足以使功能返回!

请注意Ctrl-R仍然有效。

答案2

使用以下配置在 vi 编辑模式下更改了我的 ~/.inputrc

set completion-ignore-case on
set show-all-if-ambiguous on
set show-all-if-unmodified on

set editing-mode vi
set keymap vi-insert

"\C-p":previous-history
"\C-n":next-history
"\C-a.":beginning-of-line
"\C-e.":end-of-line

"\C-l":clear-screen

相关内容