diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2014-08-21 15:37:06 -0300 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2014-08-21 15:37:06 -0300 |
commit | 6ae4c3884701f31edbf84666a7b1b76dc01a1068 (patch) | |
tree | d3ded3c8c7c39849ab4dbd4bc097caa8cfa619af /lib | |
parent | bfd718703aac6fe706ee751f232b0e80601913d1 (diff) | |
download | keyringer-6ae4c3884701f31edbf84666a7b1b76dc01a1068.tar.gz keyringer-6ae4c3884701f31edbf84666a7b1b76dc01a1068.tar.bz2 |
Shell completions: fix handling of keyrings with '-' in their names
Diffstat (limited to 'lib')
-rw-r--r-- | lib/keyringer/completions/bash/keyringer | 3 | ||||
-rw-r--r-- | lib/keyringer/completions/zsh/_keyringer | 3 |
2 files changed, 2 insertions, 4 deletions
diff --git a/lib/keyringer/completions/bash/keyringer b/lib/keyringer/completions/bash/keyringer index 0f2cb2b..b638418 100644 --- a/lib/keyringer/completions/bash/keyringer +++ b/lib/keyringer/completions/bash/keyringer @@ -69,7 +69,6 @@ _keyringer() { fi # Process config - source $config/config keyrings="`ls --color=never $config | sed -e '/^config$/d' | xargs`" # Available instances @@ -77,7 +76,7 @@ _keyringer() { # The current instance instance="${COMP_WORDS[1]}" - path="`eval echo '$'$instance`" + path="`grep -e "^$instance=" "$config/config" | tail -n 1 | cut -d = -f 2 | sed -e 's/"//g' -e "s/'//g" | sed -e 's/ *#.*$//'`" # Command completions if [ "${#COMP_WORDS[@]}" == "2" ]; then diff --git a/lib/keyringer/completions/zsh/_keyringer b/lib/keyringer/completions/zsh/_keyringer index b4ccdd4..6142949 100644 --- a/lib/keyringer/completions/zsh/_keyringer +++ b/lib/keyringer/completions/zsh/_keyringer @@ -19,9 +19,8 @@ _keyringer() { fi # Process config - source $config/config local keyrings="`ls --color=never $config | sed -e '/^config$/d' | xargs`" - local keyring_path="`eval echo '$'$words[2]`" + local keyring_path="`grep -e "^$words[2]=" "$config/config" | tail -n 1 | cut -d = -f 2 | sed -e 's/"//g' -e "s/'//g" | sed -e 's/ *#.*$//'`" local instances="`echo $keyrings | sed -e 's/ /$\\\|^/g' -e 's/^/^/' -e 's/$/$/'`" _arguments \ |