I wanted to put the Unicode character Δ into PS1
, but when I did, when typing in long commands, the terminal wouldn't wrap to a newline but would overwrite the current line!
The problem doesn't occur when I remove the Unicode character, and I am pretty sure I escaped everything.
export PS1="Δ "
How do I fix this?
Term. Info:
$BASH_VERSION => 5.0.16(1)-release
$TERM => xterm-256color
! stty
speed 38400 baud; line = 0;
-brkint -imaxbel iutf8
P.S. the solution at bash prompt not wrapping as expected also resulted in odd behavior, due to the fact that ignoring the Unicode character also results in an incorrect character count.
echo $BASH_VERSION
), the terminal you run this in (echo $TERM
), and the stty settings (stty
). – Mar 24 '20 at 00:21LC_ALL= LC_CTYPE=en_US.UTF-8
in the shell (no need to export them) and see if it fixes it. – Mar 24 '20 at 00:25bash: warning: setlocale: LC_CTYPE: cannot change locale (en_US.UTF-8)
– Bill Mar 24 '20 at 00:29locale
command say? Try setting it to any utf locale you have available (locale -a
should give you a list). – Mar 24 '20 at 00:30locale
output on pastebin here: https://pastebin.com/CpDL7dRb – Bill Mar 24 '20 at 00:32C.UTF-8
, and it worked! Thanks! – Bill Mar 24 '20 at 00:34