diff options
author | Brian Mattern <rephorm@rephorm.com> | 2012-09-22 08:54:38 -0700 |
---|---|---|
committer | Brian Mattern <rephorm@rephorm.com> | 2012-09-22 08:54:38 -0700 |
commit | 74815d52ccf0c0623fbb41dfad4a9978bb9a2986 (patch) | |
tree | 0d367077fb7e0892d18e3366206859f68a0121a6 /contrib/pass.bash-completion | |
parent | 3f1ea67c5647c51001642e93121836f96075f81c (diff) | |
parent | 34b0a3ba7ff1932977672e12ad728441cf859aab (diff) |
Better gpg id completion
Names and email addresses (if present) are included
Diffstat (limited to 'contrib/pass.bash-completion')
-rw-r--r-- | contrib/pass.bash-completion | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/contrib/pass.bash-completion b/contrib/pass.bash-completion index 72f2abb..1b9e20e 100644 --- a/contrib/pass.bash-completion +++ b/contrib/pass.bash-completion @@ -37,6 +37,13 @@ _pass_complete_entries () { done } +_pass_complete_keys () { + local IFS=$'\n' + # Extract names and email addresses from gpg --list-keys + local keys="$(gpg --list-keys | grep uid | sed -e 's/uid *\([^<]*\)\(<\(.*\)>\)\?/\1\n\3/' | sed -e 's/\(^ *\| *$\)//g')" + COMPREPLY+=($(compgen -W "${keys}" -- ${cur})) +} + _pass() { COMPREPLY=() @@ -46,8 +53,7 @@ _pass() case "${COMP_WORDS[1]}" in init) COMPREPLY+=($(compgen -W "-e --reencrypt" -- ${cur})) - local keys=$(gpg --list-keys |grep uid |sed 's/.*<\(.*\)>/\1/') - COMPREPLY+=($(compgen -W "${keys}" -- ${cur})) + _pass_complete_keys ;; ls|list|edit) _pass_complete_entries |