Коли я натискаю, Homeякщо мій поточний ввід досить короткий (скажімо, <36 символів), він працює добре. Однак, коли я набрав більш довгу команду, а потім хочу повернутися до початку, здається, що вона робить свою роботу, але команда більше не відображається . Схоже, я не на початку, але приблизно з 10 символів. Хоча якщо я набираю "наосліп", це працює добре, але це виглядає як тотальний безлад, ніби весь вхід зміщено вправо, але не перемальовано. Тому я набираю його, але "насправді" ні, тому що місце, яке я "стираю", - це "насправді" 10 символів праворуч. Відповідно, якщо я спробую стерти команду, перші 10 символів все одно відображаються, але якщо я натиснув Enterїї, відображається ще одна підказка, як ніби попередній вхід був порожнім.
Я знаю, що це не найкраще пояснення коли-небудь, але справа в тому, що баш визнає це і намагається зробити правильно, але часто не вдається.
Я відтворюю це як в tty, так і в терміналі в X сесії. Коли я натискаю Ctrl+, Vа потім Homeбачу різні послідовності ( ^[OH
в X, ^[[1~
в tty), але обидва, здається, є в моїх /etc/inputrc
:
# do not bell on tab-completion
#set bell-style none
set meta-flag on
set input-meta on
set convert-meta off
set output-meta on
$if mode=emacs
# for linux console and RH/Debian xterm
"\e[1~": beginning-of-line
"\e[4~": end-of-line
"\e[5~": beginning-of-history
"\e[6~": end-of-history
"\e[7~": beginning-of-line
"\e[3~": delete-char
"\e[2~": quoted-insert
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
"\e[1;5C": forward-word
"\e[1;5D": backward-word
# for rxvt
"\e[8~": end-of-line
# for non RH/Debian xterm, can't hurt for RH/DEbian xterm
"\eOH": beginning-of-line
"\eOF": end-of-line
# for freebsd console
"\e[H": beginning-of-line
"\e[F": end-of-line
$endif
echo $TERM
показує linux
в tty та xterm
X сесії.
Його
GNU bash, версія 4.2.24 (2) -випуск (i686-pc-linux-gnu)
У когось є підказки про це?
PS1="\e[0;36m[\u@\h \W]\$ \e[m"
. Чи щось із цим не так? Введення 36 символів не заповнює один рядок (на сьогоднішній день). Також у мене немає бічної прокрутки в tty :)
PS1='$ '