Sha256: db1401225f647e7a11ef29552adabbcf05d4adfb94c68c2c17a9a8691248ea40

Contents?: true

Size: 1.61 KB

Versions: 7

Compression:

Stored size: 1.61 KB

Contents

#!/usr/bin/env bash
#
# Sym command line completion
#
# © 2015-2016, Konstantin Gredeskoul,  https://github.com/kigster/sym
# MIT LICENSE
#

declare -a bash_completion_locations=(/usr/local/etc/bash_completion /usr/etc/bash_completion /etc/bash_completion)
loaded=false
for file in ${bash_completion_locations[@]}; do
    [[ -s $file ]] && {
      source $file
      break
    }
done

_sym_long_opts() {
    sym -h | grep -- '--' | egrep '^  -' | awk '{print $2}' | sort
}

_sym_short_opts() {
    sym -h | grep -- '--' | egrep '^  -' | awk '{print $1}' | sed 's/,//g' | sort
}

unset _SYM_COMP_LONG_OPTIONS
unset _SYM_COMP_SHORT_OPTIONS

_sym()
{
    local cur prev shell i path

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

    _expand || return 0

    case "$prev" in
        --@(key|file|output|negate))
            _filedir
            return 0
            ;;
        -@(f|k|o|n))
            _filedir
            return 0
            ;;
    esac

    case "$cur" in
        --*)
            export _sym_comp_long_options=${_sym_comp_long_options:-$(_sym_long_opts)}
            COMPREPLY=($( compgen -W "$_sym_comp_long_options" -- "$cur" ))
            ;;
        -*)
            export _sym_comp_short_options=${_sym_comp_short_options:-$(_sym_short_opts)}
            COMPREPLY=($( compgen -W "$_sym_comp_short_options" -- "$cur" ))
            ;;
        *)
            _filedir
            ;;
    esac

    return 0
} && complete -F _sym $nospace $filenames sym

# Local variables:
# mode: shell-script
# sh-basic-offset: 4
# sh-indent-comment: t
# indent-tabs-mode: nil
# End:
# ex: ts=4 sw=4 et filetype=sh

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
sym-2.7.0 bin/sym.completion
sym-2.6.3 bin/sym.completion
sym-2.6.2 bin/sym.completion
sym-2.6.1 bin/sym.completion
sym-2.6.0 bin/sym.completion
sym-2.5.3 bin/sym.completion
sym-2.5.1 bin/sym.completion