From 7b2e995299175a8d2e573413975ff8da43b0a9a2 Mon Sep 17 00:00:00 2001 From: Dominik Ritter Date: Sun, 17 Apr 2016 17:51:31 +0200 Subject: [PATCH] Fix truncation of changeset in detached tag mode --- functions/vcs.zsh | 2 +- powerlevel9k.zsh-theme | 15 ++++++++------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/functions/vcs.zsh b/functions/vcs.zsh index 63cdbc75..15f0177e 100644 --- a/functions/vcs.zsh +++ b/functions/vcs.zsh @@ -74,7 +74,7 @@ function +vi-git-tagname() { # exists, so we have to manually retrieve it and clobber the branch # string. local revision - revision=$(git rev-list -n 1 --abbrev-commit --abbrev=8 HEAD) + revision=$(git rev-list -n 1 --abbrev-commit --abbrev=${POWERLEVEL9K_VCS_INTERNAL_HASH_LENGTH} HEAD) hook_com[branch]="$(print_icon 'VCS_BRANCH_ICON')${revision} $(print_icon 'VCS_TAG_ICON')${tag}" else # We are on both a tag and a branch; print both by appending the tag name. diff --git a/powerlevel9k.zsh-theme b/powerlevel9k.zsh-theme index faae532c..ed1c49cb 100755 --- a/powerlevel9k.zsh-theme +++ b/powerlevel9k.zsh-theme @@ -815,7 +815,14 @@ prompt_todo() { # VCS segment: shows the state of your repository, if you are in a folder under # version control set_default POWERLEVEL9K_VCS_ACTIONFORMAT_FOREGROUND "red" +# Default: Just display the first 8 characters of our changeset-ID. +set_default POWERLEVEL9K_VCS_INTERNAL_HASH_LENGTH "8" prompt_vcs() { + if [[ -n "$POWERLEVEL9K_CHANGESET_HASH_LENGTH" ]]; then + POWERLEVEL9K_VCS_INTERNAL_HASH_LENGTH="$POWERLEVEL9K_CHANGESET_HASH_LENGTH" + fi + + # Load VCS_INFO autoload -Uz vcs_info VCS_WORKDIR_DIRTY=false @@ -832,13 +839,7 @@ prompt_vcs() { VCS_CHANGESET_PREFIX='' if [[ "$POWERLEVEL9K_SHOW_CHANGESET" == true ]]; then - # Default: Just display the first 8 characters of our changeset-ID. - local VCS_CHANGESET_HASH_LENGTH=8 - if [[ -n "$POWERLEVEL9K_CHANGESET_HASH_LENGTH" ]]; then - VCS_CHANGESET_HASH_LENGTH="$POWERLEVEL9K_CHANGESET_HASH_LENGTH" - fi - - VCS_CHANGESET_PREFIX="$(print_icon 'VCS_COMMIT_ICON')%0.$VCS_CHANGESET_HASH_LENGTH""i " + VCS_CHANGESET_PREFIX="$(print_icon 'VCS_COMMIT_ICON')%0.$POWERLEVEL9K_VCS_INTERNAL_HASH_LENGTH""i " fi zstyle ':vcs_info:*' enable git hg