Ctrl+a не возвращается полностью назад в терминале

Я недавно обновил свою подсказку для взгляда чего-то как

[user@User] ~/wroking/directory (git-branch)
↳ 

использование следующего кода в моем .bashrc

source ~/.local/bin/git-prompt.sh
GIT_PS1_SHOWDIRTYSTATE="true"
PS1='\e[0;36m[${debian_chroot:+($debian_chroot)}\u@\h] \w$(__git_ps1 " (%s)")\e[m\n\e[1;36m⤷\e[m '

Однако, когда я ctrl+a назад к запуску входа, курсор () только перемещения как так

[user@User] ~/wroking/directory (git-branch)
↳ command --option1=foo --option2=bar█

ctrl+a

[user@User] ~/wroking/directory (git-branch)
↳ command -█option1=foo --option2=bar

ctrl+k

[user@User] ~/wroking/directory (git-branch)
↳ command -█

ctrl+e

[user@User] ~/wroking/directory (git-branch)
↳ command -         █

Если я нажимаю back-space после ctrl-a ничего не происходит. Ни если я нажимаю left-arrow.

Я могу всегда фиксировать это путем очистки экрана, однако я нахожу это поведение действительно раздражающим и недовольным. Тем более, что я не знаю то, что продолжается. Кто-либо знает? Как я фиксирую это?

2
задан 22 April 2014 в 17:54

1 ответ

Необходимо перенести цветовые коды в \[ и \]

PS1='\[\e[0;36m\][${debian_chroot:+($debian_chroot)}\u@\h] \w$(__git_ps1 " (%s)")\[\e[m\]\n\[\e[1;36m\]\$\[\e[m\] '
1
ответ дан 22 April 2014 в 17:54

Другие вопросы по тегам:

Похожие вопросы: