summaryrefslogtreecommitdiffstats
path: root/completions/dnssec-keygen
diff options
context:
space:
mode:
Diffstat (limited to 'completions/dnssec-keygen')
-rw-r--r--completions/dnssec-keygen48
1 files changed, 48 insertions, 0 deletions
diff --git a/completions/dnssec-keygen b/completions/dnssec-keygen
new file mode 100644
index 0000000..3f68a68
--- /dev/null
+++ b/completions/dnssec-keygen
@@ -0,0 +1,48 @@
+# bash completion for dnssec-keygen(8) -*- shell-script -*-
+
+_dnssec_keygen_optarg()
+{
+ local args=$("$1" -h 2>&1 |
+ command sed -e 's/|/ /g' -e 's/(.*//' \
+ -ne '/^[[:space:]]*'$2'/,/^[[:space:]]*[(-]/p' |
+ command sed -e 's/^[[:space:]]*'$2'.*://' -e '/^[[:space:]]*-/d')
+ COMPREPLY+=($(compgen -W '$args' -- "$cur"))
+}
+
+_dnssec_keygen()
+{
+ local cur prev words cword
+ _init_completion || return
+
+ case $prev in
+ -[hbEgLpsPARIDSi])
+ return
+ ;;
+ -K)
+ _filedir -d
+ return
+ ;;
+ -[ancdfTtm])
+ _dnssec_keygen_optarg "$1" $prev
+ return
+ ;;
+ -r)
+ cur=${cur:=/dev/}
+ _filedir
+ return
+ ;;
+ -v)
+ COMPREPLY=($(compgen -W '{0..10}' -- "$cur"))
+ return
+ ;;
+ esac
+
+ if [[ $cur == -* ]]; then
+ COMPREPLY=($(compgen -W '$(_parse_help "$1" | \
+ command sed -e "s/:\$//")' -- "$cur"))
+ return
+ fi
+} &&
+ complete -F _dnssec_keygen dnssec-keygen
+
+# ex: filetype=sh