/
githubmirror
/
bash-completion
Обзор
Документация
Войти
/
githubmirror
/
bash-completion
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
2.3
completions/mysql
84 строки
2 KB
Ville Skyttä
mysql: Fix --default-character-set completion with mariadb
25 фев 2016, 17:02
25 фев 2016, 17:02
695b28a
Код
Авторство
О чём код?
# mysql(1) completion -*- shell-script -*- _mysql() { local cur prev words cword split _init_completion -s || return case $prev in -u|--user) COMPREPLY=( $( compgen -u -- "$cur" ) ) return 0 ;; -D|--database) COMPREPLY=( $( compgen -W "$(mysqlshow 2>/dev/null | command sed -ne '2d' -e 's/^|.\([^|]*\)|.*/\1/p')" -- "$cur" ) ) return 0 ;; -h|--host) _known_hosts_real "$cur" return 0 ;; --default-character-set) local charsets=( $( command ls /usr/share/m{ariadb,ysql}/charsets/*.xml 2>/dev/null ) ) charsets=( ${charsets[@]##*/} ) charsets=( ${charsets[@]%%?(Index).xml} utf8 ) COMPREPLY=( $( compgen -W '${charsets[@]}' -- "$cur" ) ) return 0 ;; --character-sets-dir|--ssl-capath) _filedir -d return 0 ;; -S|--socket) _filedir sock return 0 ;; --protocol) COMPREPLY=( $( compgen -W 'tcp socket pipe memory' -- "$cur" ) ) return 0 ;; --defaults-file|--defaults-extra-file|--tee) _filedir return 0 ;; --default-character-set|-P|--port|--set-variable|\ --ssl-ca|--ssl-cert|--ssl-cipher|--ssl-key|\ --connect_timeout|--max_allowed_packet|--prompt|\ --net_buffer_length|--select_limit|--max_join_size|\ --server-arg|--debug|--delimiter|--execute|-e|--pager) # Argument required but no completions available return 0 ;; '-?'|-I|--help|-V|--version) # All other options are noop with these return 0 ;; esac case $cur in --*) local help=$(_parse_help "$1") help+=" --skip-comments --skip-ssl" COMPREPLY=( $( compgen -W "$help" -- "$cur" ) ) [[ $COMPREPLY == *= ]] && compopt -o nospace return 0 ;; # only complete long options -) compopt -o nospace COMPREPLY=( -- ) return 0 ;; esac COMPREPLY=( $( compgen -W \ "$(mysqlshow 2>/dev/null | command sed -ne '2d' -e 's/^|.\([^|]*\)|.*/\1/p')" \ -- "$cur" ) ) } && complete -F _mysql mysql # ex: ts=4 sw=4 et filetype=sh