() {
    [[ $# == 0 ]] && local pwd="$PWD" || local pwd=$1
    [[ -z "$pwd" || "$pwd" == "/" ]] && echo $pwd && return

    pwd="${pwd%/}"
    local home="${HOME%/}"
    [[ "$pwd" == "$home" ]] && echo "~" && return

    local offset=${#home}
    [[ "$pwd" == "$home/"* ]] && pwd="~${pwd:$offset}"

    local elements=("${(s:/:)pwd}")
    local length=${#elements}
    for i in {1..$((length-1))}; do
        local elem=${elements[$i]}
        if [[ $i > 2 ]] && [[ ${#elem} > 1 ]]; then
            local c=${elem:0:1}
            if [[ $c == '.' ]]; then
                elem=${elem:0:2}
            else
                elem=${elem:0:1}
            fi
            elements[$i]=${_PROMPT_COLOR_COLLAPSED_PWD}$elem${_PROMPT_COLOR_PWD}
        fi
    done

    local IFS="/"
    echo "${elements[*]}"
}

# vim:set filetype=zsh:
