From b11f891484bbaa1a0334730c74b0bb29da3f25f3 Mon Sep 17 00:00:00 2001 From: Sven Hergenhahn Date: Thu, 7 Dec 2017 16:17:58 +0100 Subject: [PATCH] Fix completion to allow for multiple pass repos - see upstream: https://git.zx2c4.com/password-store/tree/src/completion/pass.zsh-completion --- plugins/pass/_pass | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/plugins/pass/_pass b/plugins/pass/_pass index 7a9b1f955..4e0b077df 100644 --- a/plugins/pass/_pass +++ b/plugins/pass/_pass @@ -6,12 +6,19 @@ # Brian Mattern # Jason A. Donenfeld . # All Rights Reserved. -# # This file is licensed under the GPLv2+. # Please visit http://git.zx2c4.com/password-store/tree/COPYING for more information. # # Oh my zsh plugin maintainer: Santiago Borrazás +# If you use multiple repositories, you can configure completion like this: +# +# compdef _pass workpass +# zstyle ':completion::complete:workpass::' prefix "$HOME/work/pass" +# workpass() { +# PASSWORD_STORE_DIR=$HOME/work/pass pass $@ +# } + _pass () { local cmd @@ -117,8 +124,9 @@ _pass_cmd_show () { } _pass_complete_entries_helper () { local IFS=$'\n' - local prefix="${PASSWORD_STORE_DIR:-$HOME/.password-store}" - _values -C 'passwords' ${$(find -L "$prefix" \( -name .git -o -name .gpg-id \) -prune -o $@ -print 2>/dev/null | sed -e "s#${prefix}/\{0,1\}##" -e 's#\.gpg##' | sort):-""} + local prefix + zstyle -s ":completion:${curcontext}:" prefix prefix || prefix="${PASSWORD_STORE_DIR:-$HOME/.password-store}" + _values -C 'passwords' ${$(find -L "$prefix" \( -name .git -o -name .gpg-id \) -prune -o $@ -print 2>/dev/null | sed -e "s#${prefix}/\{0,1\}##" -e 's#\.gpg##' -e 's#\\#\\\\#' | sort):-""} } _pass_complete_entries_with_subdirs () {