diff options
author | Luke Elliott <luke.b.elliott@gmail.com> | 2023-02-18 09:35:40 +0000 |
---|---|---|
committer | Luke Elliott <luke.b.elliott@gmail.com> | 2023-09-06 16:06:00 +0100 |
commit | df24e36a62f8e6cb667f4beb1b43e99bd360269d (patch) | |
tree | 7b7e8e438c8a53564d436e525eb644eb19c0ef0f /data/shell-completions/bash/meson | |
parent | 7e3f419c7aeeab8997189aa13ca348cc54ea8e1b (diff) | |
download | meson-df24e36a62f8e6cb667f4beb1b43e99bd360269d.zip meson-df24e36a62f8e6cb667f4beb1b43e99bd360269d.tar.gz meson-df24e36a62f8e6cb667f4beb1b43e99bd360269d.tar.bz2 |
completions: bash: added "compile" (and "help") completion.
Diffstat (limited to 'data/shell-completions/bash/meson')
-rw-r--r-- | data/shell-completions/bash/meson | 65 |
1 files changed, 63 insertions, 2 deletions
diff --git a/data/shell-completions/bash/meson b/data/shell-completions/bash/meson index d406204..300c504 100644 --- a/data/shell-completions/bash/meson +++ b/data/shell-completions/bash/meson @@ -564,7 +564,27 @@ _meson-subprojects() { } _meson-help() { - : # Nothing to do + longopts=( + setup + configure + dist + install + introspect + init + test + wrap + subprojects + rewrite + compile + devenv + env2mfile + ) + + local cur prev + + if _get_comp_words_by_ref cur prev &>/dev/null; then + COMPREPLY+=($(compgen -W '${longopts[*]}' -- "${cur}")) + fi } _meson-rewrite() { @@ -572,7 +592,48 @@ _meson-rewrite() { } _meson-compile() { - : TODO + shortopts=( + h + C + j + l + v + ) + + longopts=( + help + clean + jobs + load-average + verbose + ninja-args + vs-args + xcode-args + ) + + local cur prev + if _get_comp_words_by_ref cur prev &>/dev/null; then + if [[ ${prev:0:2} == -- ]] && _meson_complete_option "${prev:2}" "$cur"; then + return + elif [[ ${prev:0:1} == - ]] && [[ ${prev:1:2} != - ]] && _meson_complete_option "${prev:1}"; then + return + fi + else + cur="${COMP_WORDS[COMP_CWORD]}" + fi + + if ! _meson_compgen_options "$cur"; then + _filedir -d + + if [[ -z $cur ]]; then + COMPREPLY+=($(compgen -P '--' -W '${longopts[*]}')) + COMPREPLY+=($(compgen -P '-' -W '${shortopts[*]}')) + fi + + if [[ $COMP_CWORD == 1 ]]; then + COMPREPLY+=($(compgen -W "${meson_subcommands[*]}" -- "$cur")) + fi + fi } _meson-devenv() { |