PageRenderTime 121ms CodeModel.GetById 116ms app.highlight 1ms RepoModel.GetById 1ms app.codeStats 0ms

/bash_completion_lib/complete -o default/aspell

http://github.com/brinkman83/bashrc
#! | 101 lines | 90 code | 11 blank | 0 comment | 0 complexity | ffca7088c14bd9c4307b12fbe229d26d MD5 | raw file
  1# aspell(1) completion
  2
  3
  4comp_include _filedir _get_cword
  5
  6
  7_aspell_dictionary()
  8{
  9    local datadir
 10    datadir=/usr/lib/aspell
 11    COMPREPLY=( $( command ls $datadir/*.@(multi|alias) ) )
 12    COMPREPLY=( ${COMPREPLY[@]%.@(multi|alias)} )
 13    COMPREPLY=( $( compgen -W '${COMPREPLY[@]#$datadir/}' -- $cur ) )
 14} # _aspell_dictionary()
 15
 16_aspell()
 17{
 18    local cur prev
 19
 20    COMPREPLY=()
 21    cur=`_get_cword`
 22    prev=${COMP_WORDS[COMP_CWORD-1]}
 23
 24    # --name value style option
 25    case "$prev" in
 26        @(-c|-p|check))
 27            _filedir
 28            return 0
 29            ;;
 30        @(dump|create|merge))
 31            COMPREPLY=( $( compgen -W 'master personal repl' -- $cur ) )
 32            return 0
 33            ;;
 34        -d)
 35            _aspell_dictionary
 36            return 0
 37            ;;
 38    esac
 39
 40    # --name=value style option
 41    if [[ "$cur" == *=* ]]; then
 42        prev=${cur/=*/}
 43        cur=${cur/*=/}
 44        case "$prev" in
 45            --@(conf|personal|repl|per-conf))
 46                _filedir
 47                return 0
 48                ;;
 49            --@(conf-dir|data-dir|dict-dir|home-dir|local-data-dir|prefix))
 50                _filedir -d
 51                return 0
 52                ;;
 53            --master)
 54                _aspell_dictionary
 55                return 0
 56                ;;
 57            --mode)
 58                COMPREPLY=( $( compgen -W 'none url email sgml tex' -- $cur ) )
 59                return 0
 60                ;; 
 61            --sug-mode)
 62                COMPREPLY=( $( compgen -W 'ultra fast normal bad-speller' -- $cur ) )
 63                return 0
 64                ;;
 65            --keymapping)
 66                COMPREPLY=( $( compgen -W 'aspell ispell' -- $cur ) )
 67                return 0
 68                ;;
 69        esac
 70    fi
 71
 72    if [[ "$cur" == -* ]]; then
 73        COMPREPLY=( $( compgen -W '--conf= --conf-dir= --data-dir= --dict-dir= \
 74            --encoding= --add-filter= --rem-filter= --mode= -e \
 75            -H -t --add-extra-dicts= --rem-extra-dicts= \
 76            --home-dir= -W --ignore= --ignore-accents \
 77            --dont-ignore-accents --ignore-case --dont-ignore-case \
 78            --ignore-repl --dont-ignore-repl --jargon= --keyboard= \
 79            --lang= --language-tag= --local-data-dir= -d --master= \
 80            --module= --add-module-search-order= \
 81            --rem-module-search-order= --per-conf= -p --personal= \
 82            --prefix= --repl= -C -B --run-together --dont-run-together \
 83            --run-together-limit= --run-together-min= --save-repl \
 84            --dont-save-repl --set-prefix --dont-set-prefix --size= \
 85            --spelling= --strip-accents --dont-strip-accents \
 86            --sug-mode= --add-word-list-path= --rem-word-list-path= \
 87            -b -x --backup -b|-x --dont-backup --reverse --dont-reverse \
 88            --time --dont-time --keymapping= --add-email-quote= \
 89            --rem-email-quote= --email-margin= --add-tex-command= \
 90            --rem-tex-command= --tex-check-comments \
 91            --dont-tex-check-comments --add-tex-extension= \
 92            --rem-tex-extension= --add-sgml-check= --rem-sgml-check= \
 93            --add-sgml-extension= --rem-sgml-extension=' -- $cur ) )
 94    else
 95        COMPREPLY=( $( compgen -W '-? help -c check -a pipe -l list \
 96            config config soundslike filter -v version dump \
 97            create merge' -- $cur ) )
 98    fi
 99} # _aspell()
100
101