Why does the Terminal command line screw up like this? (bash’s fault?)

bashcommand linehistoryterminal

When I use the command line history ( CtrlR , CtrlP )

The command line screws up like this:
enter image description here

The cursor is supposedly located at the end of the line ( just pressed CtrlE )

If I press enter, just source ~/.bash_profile is executed, the rest is just rubbish on the screen.
Although it works as it should, I'd like the terminal to not be visually broken.

edit:
This is my PS1:
PS1="\033[0;31m[mac] \033[0;37m\w\033[1;36m> \033[1;0m"

Best Answer

It's most likely an issue with what you've set your PS1 to in your .bashrc or .bash_profile. Specifically, I'd expect it's related to incorrect escape sequences.

Here is a link with more information. It's hard to tell exactly without seeing what your PS1 is set to.