diff --git a/cranspasswords_bash_completion b/cranspasswords_bash_completion index fd9bb6a75d579c985bfb1e58e67fa50e64331fd7..236e63cf625c807da6aab13ae5e093d5b4f6892e 100644 --- a/cranspasswords_bash_completion +++ b/cranspasswords_bash_completion @@ -77,9 +77,18 @@ server=$_cranspasswords_server return 0 fi + if [[ "$last" = "--edit" ]]; then + if [ ! -f "${pass_dir}${server}-w" ]; then + echo "`cranspasswords --server $server -l | grep "+" | awk '{print $2}'`" > "${pass_dir}${server}-w" + fi + pass_list="`cat "${pass_dir}${server}-w"`" + COMPREPLY=( $(compgen -W "$pass_list" -- $cur ) ) + return 0 + fi + if true; then if [ ! -f "${pass_dir}$server" ]; then - echo "`cranspasswords --server $server -l | grep "+" | awk '{print $2}'`" > "${pass_dir}$server" + echo "`cranspasswords --server $server -l | grep "\( +\| -\)" | awk '{print $2}'`" > "${pass_dir}$server" fi pass_list="`cat "${pass_dir}$server"`" COMPREPLY=( $(compgen -W "$pass_list" -- $cur ) )