diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 16:24:27 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 16:24:27 +0000 |
commit | 6c18848a903eb3ee06dccd915859ce64195c257c (patch) | |
tree | ea0fe36eb5e6f40e0a1f765d44c4b0c0b2bfb089 /completions/postmap | |
parent | Initial commit. (diff) | |
download | bash-completion-6c18848a903eb3ee06dccd915859ce64195c257c.tar.xz bash-completion-6c18848a903eb3ee06dccd915859ce64195c257c.zip |
Adding upstream version 1:2.11.upstream/1%2.11
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'completions/postmap')
-rw-r--r-- | completions/postmap | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/completions/postmap b/completions/postmap new file mode 100644 index 0000000..35c4ada --- /dev/null +++ b/completions/postmap @@ -0,0 +1,41 @@ +# postalias(1) and postmap(1) completion -*- shell-script -*- + +_postmap() +{ + local cur prev words cword + _init_completion || return + + case $prev in + -c) + _filedir -d + return + ;; + -[dq]) + return + ;; + esac + + if [[ $cur == -* ]]; then + COMPREPLY=($(compgen -W '$(_parse_usage "$1")' -- "$cur")) + return + fi + + if [[ $cur == *:* ]]; then + compopt -o filenames + COMPREPLY=($(compgen -f -- "${cur#*:}")) + else + local len=${#cur} pval + for pval in $(/usr/sbin/postconf -m 2>/dev/null); do + if [[ $cur == "${pval:0:len}" ]]; then + COMPREPLY+=("$pval:") + fi + done + if [[ ! ${COMPREPLY-} ]]; then + compopt -o filenames + COMPREPLY=($(compgen -f -- "$cur")) + fi + fi +} && + complete -F _postmap postmap postalias + +# ex: filetype=sh |