Я предполагаю, что вы используете Bash. Для меня это звучит так, как будто по какой-то причине перепутаны привязки клавиш.
Если вы выполните эту команду:
bind -p|grep -i '"[pE]"'
вы должны получить такой результат:
"E": self-insert
"e": self-insert
"P": self-insert
"p": self-insert
Если записи для «P» и «e» отсутствуют, попробуйте эти команды.
bind '"e":self-insert'
bind '"P":self-insert'
Очевидно, что вы не можете вводить символы, поэтому введите их версию в обратном случае, нажмите стрелку влево, а затем нажмите Alt-u, чтобы выделить маленькую букву «p» или Alt-l (это строчная буква) "), чтобы уменьшить заглавную букву" E "(вам нужно сделать это для каждого " e "в первой команде).
Если это работает, проверьте файл ~/.inputrc
на наличие недопустимых сочетаний клавиш. Кроме того, проверьте файлы запуска, такие как ~/.bashrc
и т. Д. Проблема, вероятно, связана с отсутствующими или неуместными кавычками, и это может быть связано с привязкой ключа к чему-то вроде \eP
, который по умолчанию связан с строкой чтения функция do-lowercase-version
.