
set_prompt
나는 항상 새 줄에 프롬프트를 인쇄하도록 설정했습니다 .
set_prompt() {
local curpos
stty -echo
while read -t 0; do :; done
echo -en "\033[6n"
IFS=';' read -s -d R -a curpos
stty echo
(( curpos[1] > 1 )) && printf "\n"
}
emacs
하지만 이제 텍스트 편집기(예: or)에서 파일을 편집하면 nano
문자가 잘못된 위치에 인쇄되거나 탐색 중에 커서가 앞뒤로 이동하여 텍스트가 겹치는 것처럼 텍스트가 뒤섞여집니다.
이 지점에서
PS1=\[\]$(git rev-parse --git-dir > /dev/null 2>&1 && git rev-parse --abbrev-ref HEAD 2>/dev/null || echo ${HOSTNAME})\[\]:\[\]\W\[\] Necktwi\[\]$\[\]
PROMPT_COMMAND=set_prompt
설정 외에도 set_prompt
다음을 수행할 수 있습니다.
PS1='$(printf "%$((COLUMNS-1))s\r")'$PS1
그러나 이것에도 emacs
테스트되지 않은 결함이 있지만 nano
위와 같이 나쁘지는 않습니다. 생성된 가짜 문자를 제거하여 이를 훨씬 덜 왜곡된 텍스트로 수정할 수 있었습니다.