summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominik Ritter <dritter03@googlemail.com>2016-04-17 18:51:31 +0300
committerDominik Ritter <dritter03@googlemail.com>2016-04-17 19:03:31 +0300
commit7b2e995299175a8d2e573413975ff8da43b0a9a2 (patch)
treea24ffe7faa0448781e15bbf3dd8240374aa1720d
parenta09eda677421bea934a08a0d1bc5196ab973d853 (diff)
Fix truncation of changeset in detached tag mode
-rw-r--r--functions/vcs.zsh2
-rwxr-xr-xpowerlevel9k.zsh-theme15
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