キティ端末を使用する他の端末エミュレータとは異なり、私のbashプロンプトには色がありません。私はUbuntuを使っていて、私のPS1は\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$
これには何を設定する必要がありますか?
ありがとう
答え1
キティがカラー端末で認識できない場合がありますが…$TERM
環境変数はどのように設定されていますか?
GNOME端末では、次のように言います。
$ 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
。