得られないこの回答Bash 4.4.20(Ubuntu 18.04のデフォルトシェル)での作業:
$ complete -o nosort -W '--color=auto --color=always --color=never' mycommand
$ mycommand --<Tab>
--color=always --color=auto --color=never
COMPREPLY
関数に設定すると、同じ結果が表示されます。
_mycommand() {
COMPREPLY=($(compgen -W '--color=auto --color=always --color=never' -- "${COMP_WORDS[1]}"))
}
complete -o nosort -F _mycommand mycommand
man bash
このオプションは言及されているので、サポートする必要がnosort
あります。何を提供しますか?
答え1
これにより発生したようです。completion-ignore-case
:
$ bind "set completion-ignore-case off"
$ bind -V | grep ignore-case
completion-ignore-case is set to `off'
$ complete -o nosort -W '--color=auto --color=always --color=never' mycommand
$ mycommand --<Tab>
--color=auto --color=always --color=never
Bash 4.4.20には修正がないようです。