3

foo次のようないくつかのサブコマンドを持つプログラムのオートコンプリート機能を作成しています。

foo lists:show
foo list:create <list_name>

これまでのところ、私は何かが働いています:

# file: foo_completion.sh
_foo_completion_func ()
{
    local cur
    COMPREPLY=()
    cur=${COMP_WORDS[COMP_CWORD]}
    case "$cur" in
        t*) COMPREPLY=( $( compgen -W 'list:show' -- $cur ) );;
    esac
    return 0
}
complete -F _foo_completion_func -o filenames foo

したがってsource foo_completion.sh 、そうするとfoo liTabオートコンプリートされますが、出力は次のとおりです。

foo list\:show

\コロンの前に。どうやらそれは単なる視覚的なものですが、foo list:show代わりにそこに行きたいと思いfoo list\:showます。これは可能ですか?どんなアイデアでも大歓迎です。

4

1 に答える 1