OS X Terminal text stacking on top of itself

后端 未结 6 1867
夕颜
夕颜 2020-12-24 05:14

I\'m encountering a strange issue in the Terminal app in Mac OS X Lion. When I enter in a long line of text that should wrap to the next line when it reaches the edge of the

6条回答
  •  轮回少年
    2020-12-24 05:50

    I used to have the same issue due to incorrectly using color codes. Here is my PS1 which solved the issue. Also if you use GIT, then this will be also helpful to show git branch you are working on and if your working tree is dirty or not. Put this in your .profile or .bash_profile

    # Git branch in prompt.
    parse_git_branch() {
        git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
    }
    
    parse_git_dirty() {
        st=$(git status 2>/dev/null | tail -n 1)
        if [[ $st == "" ]]; then
            echo ''
        elif [[ $st == "nothing to commit (working directory clean)" ]]; then
            echo ''
        elif [[ $st == 'nothing added to commit but untracked files present (use "git add" to track)' ]]; then
            echo '?'
        else
            echo '*'
        fi
    }
    
    # coloring the terminal comman line
    SB_GREEN="\[\033[1;32m\]"
    SB_BLUE="\[\033[1;34m\]"
    SB_RED="\[\033[1;31m\]"
    SB_NOCOLOR="\[\033[0m\]"
    export PS1="$SB_GREEN\u@\h$SB_NOCOLOR: $SB_BLUE\w$SB_GREEN\$(parse_git_branch)$SB_RED\$(parse_git_dirty)$SB_NOCOLOR $ "
    

    Hope this helps.

提交回复
热议问题