LINUX.ORG.RU

История изменений

Исправление bryak, (текущая версия) :

  1. Я не пойму, при каждой смене директории выполняются эти все функции или один раз?

  2. Почему вот это не работает без начального слеша? Может он и есть причина того, что условие [[ -z некорректно проверяется?

git_branch() {
    # local zzz="\$(git branch 2>/dev/null | grep '^*' | colrm 1 2)"
    local zzz="\$(git rev-parse --abbrev-ref HEAD 2>/dev/null)"
    printf "%s" "$1${zzz}$Color_Off"
    # printf "%s" "$1${zzz}${Color_Off}"
    # if [[ ! -z ${zzz} ]];then 
    #     printf "%s" "$1${zzz}${Color_Off}"
    # else
    #     printf "%s" "$1---${Color_Off}"
    # fi
}

Т.е, если сделать не

local zzz="\$(git rev-parse --abbrev-ref HEAD 2>/dev/null)"

а

local zzz="$(git rev-parse --abbrev-ref HEAD 2>/dev/null)"

то ничего не выводит

printf "%s" "$1${zzz}${Color_Off}"

Исходная версия bryak, :

  1. Я не пойму, при каждой смене директории выполняются эти все функции или один раз?

  2. Почему вот это не работает без начального слеша? Может он и есть причина того, что условие [[ -z некорректно проверяется?

git_branch() {
    # local zzz="\$(git branch 2>/dev/null | grep '^*' | colrm 1 2)"
    local zzz="\$(git rev-parse --abbrev-ref HEAD 2>/dev/null)"
    printf "%s" "$1${zzz}$Color_Off"
    # printf "%s" "$1${zzz}${Color_Off}"
    # if [[ ! -z ${zzz} ]];then 
    #     printf "%s" "$1${zzz}${Color_Off}"
    # else
    #     printf "%s" "$1---${Color_Off}"
    # fi
}