Napisałem ten ładny i kolorowy monit dla mojego terminala OS X:
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ [\1]/'
}
export PS1="\e]2;\w\a\e[1;30;1m\][\u@\[\033[0;36m\]\h\e[1;30;1m\]:\[\033[0;35m\]\w\e[1;30;1m\]] \[\033[0;31m\](\t) \[\033[0;33m\]\$(parse_git_branch)\n\[\033[0m\]\e[1;30;1m\]\$\[\e[0m\]"
I source ~/.bash_profile
to i działa dobrze. z wyjątkiem sytuacji, gdy używam strzałki w górę do poruszania się po historii, dzieje się coś dziwnego.
w zasadzie początek source ~/.bash_profile
polecenia w historii staje się częścią pytania. kiedy ja ctrl+c
lub enter
ono wraca do normy, ale gdy tylko zobaczę historię source
polecenia, monit ponownie się zmienia.
Oto przykład, w którym widziałem historię, a następnie ctrl+u
napisałem ls
:
[user@host:~/Documents] (14:01:40) [branch]
$source ~/.ls
Wszelkie wskazówki na ten temat?