diff --git a/clean_files.txt b/clean_files.txt index d959e041..de68ccc3 100644 --- a/clean_files.txt +++ b/clean_files.txt @@ -71,6 +71,7 @@ completion/available/composer.completion.bash completion/available/conda.completion.bash completion/available/consul.completion.bash completion/available/django.completion.bash +completion/available/dmidecode.completion.bash completion/available/docker.completion.bash completion/available/docker-machine.completion.bash completion/available/gcloud.completion.bash diff --git a/completion/available/dmidecode.completion.bash b/completion/available/dmidecode.completion.bash new file mode 100644 index 00000000..fc50c1f0 --- /dev/null +++ b/completion/available/dmidecode.completion.bash @@ -0,0 +1,20 @@ +# shellcheck shell=bash + +function __dmidecode_completion() { + local prev=$(_get_pword) + local curr=$(_get_cword) + + case $prev in + -s | --string | -t | --type) + OPTS=$(dmidecode "$prev" 2>&1 | grep -E '^ ' | sed 's/ *//g') + # shellcheck disable=SC2207 + COMPREPLY=($(compgen -W "$OPTS" -- "$curr")) + ;; + dmidecode) + # shellcheck disable=SC2207 + COMPREPLY=($(compgen -W "-d --dev-mem -h --help -q --quiet -s --string -t --type -H --handle -u --dump{,-bin} --from-dump --no-sysfs --oem-string -V --version" -- "$curr")) + ;; + esac +} + +complete -F __dmidecode_completion dmidecode