내 현재 .bash_profile은 다음과 같습니다. 색상을 추가하고 PS1 bash 프로필의 git 저장소에 있는지 여부를 출력하는 명령을 추가했습니다.
ORIG=$PS1
PS1="\[${txtund}${green}\]LOCAL\[\[${reset}\]";
PS1+="\$(prompt_git \"${white} on ${violet}\")";
PS1+="\[${reset}\]";
PS1+=" - \u\$: ";
문제는 긴 명령을 실행하면 줄이 다시 쓰여진다는 것입니다. 작성하는 동안 다음 줄로 이동하도록 명령을 자동으로 래핑하고 싶습니다. 이런 일이 발생하려면 PS1을 무엇으로 포장해야 합니까?
갱신 -
ORIG=$PS1
PS1="\[${txtund}${green}\]LOCAL\[\[${reset}\]";
PS1+="\$(prompt_git \"\[${white}\] on \[${violet}\]\")";
PS1+="\[${reset}\]";
PS1+=" - \u\$: ";
아래 댓글을 토대로 탈출 횟수를 늘렸습니다. 패키지가 여전히 작동하지 않습니다. 다른 제안이 있나요?
답변1
ORIG=$PS1
PS1="\[${txtund}${green}\]LOCAL\[\[${reset}\]";
PS1+="\$(prompt_git \"\[${white}\] on \[${violet}\]\")";
PS1+="\[${reset}\]";
PS1+="\[ - \u\$: \]";
색상과 텍스트의 마지막 줄을 피했습니다. 이것은 내 문제를 해결했습니다. [ ]를 사용하고 색상과 텍스트를 이스케이프하여 bash에서 명령을 올바르게 래핑할 수 있습니다.