diff -r ff69af3c67a3 -r 8730e2d0db0e bash-completion.sh --- a/bash-completion.sh Thu Jan 02 23:31:44 2020 +0100 +++ b/bash-completion.sh Sun Jan 05 01:01:12 2020 +0100 @@ -33,6 +33,14 @@ "false" ) + MODE=( + "string" + "boolean" + "raw-xml" + "line-number" + "xpath" + ) + # FIXME: user must type " and then press TAB otherwise the completion is broken due to the : colon # # can be fixed by global modification of environment variable: @@ -51,15 +59,22 @@ ) - if [[ "$w1" == "--relation" && "x$w0" == "x" ]]; then COMPREPLY=("''") - elif [[ "$w1" == "--relation" && "x$w0" == "x" ]]; then COMPREPLY=("''") - elif [[ "$w1" == "--records" && "x$w0" == "x" ]]; then COMPREPLY=("'/'") - elif [[ "$w1" == "--attribute" && "x$w0" == "x" ]]; then COMPREPLY=("''") - elif [[ "$w2" == "--attribute" ]]; then COMPREPLY=($(compgen -W "${DATA_TYPE[*]}" -- "$w0")) - elif [[ "$w3" == "--attribute" && "x$w0" == "x" ]]; then COMPREPLY=("''") - elif [[ "$w1" == "--namespace" && "x$w0" == "x" ]]; then COMPREPLY=("''") - elif [[ "$w2" == "--namespace" ]]; then COMPREPLY=($(compgen -W "${XMLNS[*]}" -- "$w0")) - elif [[ "$w1" == "--xinclude" ]]; then COMPREPLY=($(compgen -W "${XINCLUDE[*]}" -- "$w0")) + if [[ "$w1" == "--relation" && "x$w0" == "x" ]]; then COMPREPLY=("''") + elif [[ "$w1" == "--records" && "x$w0" == "x" ]]; then COMPREPLY=("'/'") + elif [[ "$w1" == "--attribute" && "x$w0" == "x" ]]; then COMPREPLY=("''") + elif [[ "$w2" == "--attribute" ]]; then COMPREPLY=($(compgen -W "${DATA_TYPE[*]}" -- "$w0")) + elif [[ "$w3" == "--attribute" && "x$w0" == "x" ]]; then COMPREPLY=("''") + elif [[ "$w1" == "--namespace" && "x$w0" == "x" ]]; then COMPREPLY=("''") + elif [[ "$w2" == "--namespace" ]]; then COMPREPLY=($(compgen -W "${XMLNS[*]}" -- "$w0")) + elif [[ "$w1" == "--xinclude" ]]; then COMPREPLY=($(compgen -W "${XINCLUDE[*]}" -- "$w0")) + elif [[ "$w1" == "--mode" ]]; then COMPREPLY=($(compgen -W "${MODE[*]}" -- "$w0")) + elif [[ "$w1" == "--raw-xml-nodelist-wrapper" ]]; then COMPREPLY=("'xml'") + elif [[ "$w2" == "--raw-xml-nodelist-wrapper" && "x$w0" == "x" ]]; then COMPREPLY=("''") + elif [[ "$w3" == "--raw-xml-nodelist-wrapper" && "x$w0" == "x" ]]; then COMPREPLY=("''") + + elif [[ "$w1" == "--raw-xml-attribute-wrapper" ]]; then COMPREPLY=("'attribute'") + elif [[ "$w2" == "--raw-xml-attribute-wrapper" && "x$w0" == "x" ]]; then COMPREPLY=("''") + elif [[ "$w3" == "--raw-xml-attribute-wrapper" && "x$w0" == "x" ]]; then COMPREPLY=("''") else OPTIONS=( "--namespace" @@ -68,6 +83,9 @@ "--name-is-xpath" "--attribute" "--xinclude" + "--mode" + "--raw-xml-nodelist-wrapper" + "--raw-xml-attribute-wrapper" ) COMPREPLY=($(compgen -W "${OPTIONS[*]}" -- "$w0")) fi