X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=contrib%2Fcompletion%2Flei-completion.bash;h=5c137e68ac2ea5aec7237d7461b153a97d72a577;hb=dc82a4a2af4c8c2e34cdbd56e07f097dff5c9a78;hp=fbda474c10bc43b975494fecd0c336476f06c6e0;hpb=298751baed3ce7ae1549356152784b83220a31f0;p=public-inbox.git diff --git a/contrib/completion/lei-completion.bash b/contrib/completion/lei-completion.bash index fbda474c..5c137e68 100644 --- a/contrib/completion/lei-completion.bash +++ b/contrib/completion/lei-completion.bash @@ -4,14 +4,13 @@ # preliminary bash completion support for lei (Local Email Interface) # Needs a lot of work, see `lei__complete' in lib/PublicInbox::LEI.pm _lei() { - case ${COMP_WORDS[@]} in - *' add-external http'*) - compopt -o nospace - ;; + local wordlist="$(lei _complete ${COMP_WORDS[@]})" + case $wordlist in + *':'* | *'='* | '//'*) compopt -o nospace ;; *) compopt +o nospace ;; # the default esac - COMPREPLY=($(compgen -W "$(lei _complete ${COMP_WORDS[@]})" \ - -- "${COMP_WORDS[COMP_CWORD]}")) + wordlist="${wordlist//;/\\\\;}" # escape ';' for ';UIDVALIDITY' and such + COMPREPLY=($(compgen -W "$wordlist" -- "${COMP_WORDS[COMP_CWORD]}")) return 0 } complete -o default -o bashdefault -F _lei lei