Bash提示在OS X终端打破
我在OS X终端应用中使用bash,当我滚动浏览历史记录时,我的自定义$ PS1会中断。Bash提示在OS X终端打破
PS1="${BLUE}\u${CYAN}@${RED}\h${BLUE}\w\n\[${red}\$${NC}\]"
还试图 PS1 =“$ {BLUE} \ U $ {CYAN} @ $ {RED} \ H $ {BLUE} \ W \ r \ n [$ {红色} \ {$$ NC }]“
问题似乎在换行符。我已经在Slackware上使用了这个bash提示符。
你需要[和]每一个转义序列;做蓝色之类的东西包括这些?如果不是,他们需要用这些电话括起来。
似乎是最后一行所需要的。在之前的一行中并不需要。 – Milhous 2008-09-20 04:16:15
如果问题似乎与换行符一样,请尝试将\ r \ n代替\ n,然后查看它是否有所作为。
现在我已经试过
PS1="${BLUE}\u${CYAN}@${RED}\h${BLUE}\w${RED}\r\n\$\[${blue}\]"
这似乎工作 ,使以前的命令工作所需的支架。
为了避免这样的“逃逸”为你提示需要困难evole更加复杂,这应该是启动上生长骨架:
function _my_prompt()
{
# magic goes here
my_prmpt=....
}
PROMPT_COMMAND='_my_prompt'
PS1="[\$my_prmpt] \$"
我在远程登录时同样的问题(Debian的)系统。由于.bashrc中的转义值都被很好的括起来,我做了一些Google搜索,发现原因可能是本地和远程系统的窗口大小不同。添加
禁用了javascript -s checkwinsize
对远程系统的.bashrc已经修复了这个问题对我来说。
默认mac bash或macports bash? – kch 2008-09-19 21:14:36