我一直在整理我的BASH提示。
目前它看起来像这样:
以下是代码:
# NOTE: OSX uses .bashprofile http://superuser.com/questions/244964/mac-os-x-bashrc-not-working
# http://mywiki.wooledge.org/BashFAQ/037
bold=$( tput bold || tput md )
black=$( tput setaf 0 )
red=$( tput setaf 1 )
green=$( tput setaf 2 )
blue=$( tput setaf 4 )
white=$( tput setaf 7 || tput AF 7 )
RESET=$( tput sgr0 )
# https://github.com/sickill/stderred
export DYLD_INSERT_LIBRARIES="/usr/lib/libstderred.dylib${DYLD_INSERT_LIBRARIES:+:$DYLD_INSERT_LIBRARIES}"
export STDERRED_ESC_CODE="$bold$red"
pre_prompt ()
{
if [ $? = 0 ]; then
echo "$green ✔";
else
echo "$red ✘";
fi
printf "$RESET\n"
printf "$bold"
printf "%s@%s ~ %s:\n" "$USER" "$HOSTNAME" "$PWD"
printf "$RESET"
}
# execs before prompt
export PROMPT_COMMAND=pre_prompt
# \[ ... \] --> http://mywiki.wooledge.org/BashFAQ/053
export PS1="\[$bold$blue\] ⤐ \[$RESET$bold\]"
export PS2="-2-> "
export PS3="-3-> "
export PS4="-4-> "
注意我正在使用一个超级小的代码来使STDERR以红色打印。
我唯一想改进的是用户输入的hilight文本。
有没有办法做到这一点?
答案 0 :(得分:0)
在$RESET
之后,添加$bold
以及您要使用的任何颜色代码以突出显示命令行条目。