On 2/3/16 3:20 PM, Yuri wrote:
> On 01/31/2016 13:41, Yuri wrote:
>> I have this line in ~/.bashrc:
>> PS1=$'\\[\e[0;38;5;202m\\]\u2514\u2023\\[\e[0m\\] '
>
> This link
> http://unix.stackexchange.com/questions/25903/awesome-symbols-and-characters-in-a-bash-prompt
> says: "Since bash 4.2, you can use \u followed by 4 hexadecimal digits in a
> $'…' string".
> My bash-4.3.42 misinterprets \u as the user name instead.
>
> So what could be wrong? Is \u supposed to be a user name or a unicode
> codepoint hexadecimal prefix?
Sigh. You are mixing two things that perform backslash-escape character
processing. If there is no character corresponding to a particular unicode
value in the current character set, the escape sequence is left unchanged.
So you get through a round of expansion with the $'...' processing, and the
\u2514 is preserved in the result. The PS1 expansion code sees the \u and
turns it into the current username.
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU [email protected] http://cnswww.cns.cwru.edu/~chet/