首先不选shell
或eshell
是出于想和一个尽量真实的系统终端交互,然后选了ansi-term
。
正常的命令提示符是这样的:
┌─[15:02:12]─[mark@a550jk4200]
└──> ~ $ >>
但为了执行历史的命令,按两下方向键的话,命令提示符会变成这样
┌─[15:02:12]─[mark@a550jk4200]
└──> ~ $
顺便分享一下抄来的命令提示符吧:
if [[ ${EUID} == 0 ]] ; then
sq_color="\[\033[0;31m\]"
else
sq_color="\[\033[0;34m\]"
fi
PS1="$sq_color\342\224\214\342\224\200\$([[ \$? != 0 ]] && echo \"[\[\033[01;37m\]\342\234\227$sq_color]\342\224\200\")[\[\033[01;37m\]\t$sq_color]\342\224\200[\[\033[01;37m\]\u@\h$sq_color]\n\342\224\224\342\224\200\342\224\200> \[\033[01;37m\]\W$sq_color $ \[\033[01;37m\]>>\\[\\033[0m\\] "
之前的问题是yaourt
结束后会有怪字符,不过这个是个别现象,我只知道yaourt
会有,而别的输出有颜色的命令没遇到这个问题。
怪字符是0;eterm-color
,其实就是0;$TERM
。
暂时把$TERM
设置成了dumb-emacs-ansi
,虽然yaourt的问题还有。还有,这个term好像不能在里面启动编辑器,还有什么hardcopy terminals,不知道还有没有别的不能的。