summaryrefslogtreecommitdiff
path: root/external/pygments.bashcomp
blob: 1299fdb9ceff3f81a2d8fe21f666bccdf359ca23 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!bash
#
# Bash completion support for Pygments (the 'pygmentize' command).
#

_pygmentize()
{
    local cur prev

    COMPREPLY=()
    cur=`_get_cword`
    prev=${COMP_WORDS[COMP_CWORD-1]}

    case "$prev" in
        -f)
            FORMATTERS=`pygmentize -L formatters | grep '* ' | cut -c3- | sed -e 's/,//g' -e 's/:$//'` 
            COMPREPLY=( $( compgen -W '$FORMATTERS' -- "$cur" ) )
            return 0
            ;;
        -l)
            LEXERS=`pygmentize -L lexers | grep '* ' | cut -c3- | sed -e 's/,//g' -e 's/:$//'` 
            COMPREPLY=( $( compgen -W '$LEXERS' -- "$cur" ) )
            return 0
            ;;
        -S)
            STYLES=`pygmentize -L styles | grep '* ' | cut -c3- | sed s/:$//`
            COMPREPLY=( $( compgen -W '$STYLES' -- "$cur" ) )
            return 0
            ;;
    esac

    if [[ "$cur" == -* ]]; then
        COMPREPLY=( $( compgen -W '-f -l -S -L -g -O -P -F \
                                   -N -H -h -V -o' -- "$cur" ) )
        return 0
    fi
}
complete -F _pygmentize -o default pygmentize