私はもっときれいに見えるようにbashプロンプトをカスタマイズしています。私がしたことは次のとおりです(〜/ .bashrcファイル、Ubuntu 20.04)。
# Customizing prompt
t1_bg="\[$(tput setab 31)\]"
t1_fg="\[$(tput setaf 31)\]"
t2_bg="\[$(tput setab 69)\]"
t2_fg="\[$(tput setaf 69)\]"
RESET="\[$(tput sgr0)\]"
triangle_1=$(echo -e "${t1_fg}${t2_bg}\uE0B0${RESET}")
triangle_2=$(echo -e "${t2_fg}\uE0B0")
PS1="${t1_bg} \u${RESET}${triangle_1}${t2_bg} \w ${RESET}${triangle_2}${RESET} "
図からわかるように、三角形はややずれており、テキストは垂直に中央に位置していません。また、プロンプトと出力の間にさらに多くの間隔があったらと思います。これらの問題を解決する方法はありますか?
最後に、ウィンドウのタイトルバーに現在のディレクトリが表示されないのはなぜですか? PS1変数のみを修正しました。
答え1
frabjousがコメントで述べたように、三角形の外観はフォントによって異なります。私はhack-ttfフォントをインストールしました(提案どおり)合成シェル) 問題を解決しました。インストール(少なくともUbuntuでは)は次の方法で実行できます。
sudo apt install fonts-hack-ttf
タイトルバーを修正するために、.bashrcの末尾に以下を追加しました。
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac
以前bashrcでも同じコードが見つかった場合、これが問題をどのように解決するのか理解できません。通常、bashrcに追加された最終コードは次のとおりです。
# Customizing prompt
t1_bg="\[$(tput setab 31)\]"
t1_fg="\[$(tput setaf 31)\]"
t2_bg="\[$(tput setab 69)\]"
t2_fg="\[$(tput setaf 69)\]"
RESET="\[$(tput sgr0)\]"
triangle_1=$(echo -e "${t1_fg}${t2_bg}\uE0B0${RESET}")
triangle_2=$(echo -e "${t2_fg}\uE0B0")
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac