Частично дублированная история при настройке PS1 в .bash_profile

Частично дублированная история при настройке PS1 в .bash_profile

Когда я установил PS1переменную в ~/.bash_profile, она работала так, как настроено. Однако история как-то испорчена.

Когда я нажимаю Arrow Upили Ctrl+Pдля просмотра введенных мной команд, в некоторых местах они начинают частично дублироваться. Ниже показан сценарий (обратите внимание, cd /Coкакая часть дублируется):

введите описание изображения здесь

Несмотря на визуальное дублирование, при нажатии Enter я все равно получаю правильный результат в истории команд.

Вот информация о моей системе:

  • Операционная система: Mac OS X 10.9.4
  • Терминал: системный терминал по умолчанию, iTerm 2

Я установил PS1так .bash_profile:

PS1='${YELLOW}\u${WHITE} in ${GREEN}\w${WHITE}${YELLOW}`__git_ps1 " on 
%s"`${WHITE}\r\n${NORMAL}$ '

решение1

Вам необходимо поместить \[и \]вокруг всех управляющих последовательностей, чтобы редактор строки знал, какова длина приглашения.

Связанный контент