키티 터미널: PS1 bash 프롬프트에 색상이 없습니다.

키티 터미널: PS1 bash 프롬프트에 색상이 없습니다.

키티 터미널을 사용하는 다른 터미널 에뮬레이터와 달리 내 bash 프롬프트에는 색상이 없습니다. 나는 우분투를 사용하고 있고 내 PS1은\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$

이를 위해 무엇을 설정해야 합니까?

감사해요

답변1

키티가 컬러단말기로 인식이 안되는 경우가 있는데.. $TERM환경변수는 어떻게 설정되어 있나요?

그놈 터미널에서는 다음과 같이 말합니다.

$ echo $TERM
xterm-256color

"고양이"는 이렇게 쓰고 있습니다.

$ echo $TERM
xterm-kitty

다음 .bashrc줄을 확인하세요.

xterm-color|*-256color) color_prompt=yes;;

xterm-kitty다음과 같이 추가하세요 .

xterm-color|*-256color|xterm-kitty) color_prompt=yes;;

이제 새끼 고양이를 다시 시작하세요.

답변2

나는 그것이 다음 코드와 함께 작동할 것이라고 생각합니다~/.bashrc

해당 변수를 조작해야 하는지는 모르겠지만 TERM내 변수에 존재합니다 ~/.bashrc. 몇 년 전에 빌렸지만 실제로 필요한 것이 무엇인지 모르거나 기억하지 못합니다.

if [ "${TERM:0:5}" == "xterm" ]
then
 typeset TERM=xterm-color  # force colour prompt
fi

function statstring {
RC=$?
  if [ "0" != $RC ]; then
    printf "[$RC] "
  fi
}
case "$TERM" in
xterm-color)
#    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

    if [ "$USER" = root ]; then
        PS1='\[\033[01;31m\]$(statstring)\[\033[00m\]${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[00m\] \[\033[01;34m\]\w\[\033[00m\] \$ '
    else
        PS1='\[\033[01;31m\]$(statstring)\[\033[00m\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\w\[\033[00m\] \$ '
    fi
    ;;
*)
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
    ;;
esac

if [ "$TERM" == "xterm-color" ]
then
 typeset TERM=xterm  # force basic prompt
fi

참고: PC 컴퓨터의 ANSI 이스케이프 시퀀스는 ESC [로 시작합니다. echo명령문에서는 \0033(ASCII: 3*8+3 = 27 for ESC)을 사용할 수 있습니다. 바라보다이 링크ANSI 시퀀스에 대한 자세한 설명입니다.

명령이 오류 코드를 반환하는 경우에도 "오류 코드 메시지"가 나타납니다. 이것은 기능에 의해 제어됩니다 statstring.

여기에 이미지 설명을 입력하세요.

관련 정보