info update + bash completion improvement (long options are suggested)

This commit is contained in:
Mattias Andrée 2012-08-19 03:30:11 +02:00
parent 50a53b99aa
commit afcc9dc829
2 changed files with 27 additions and 3 deletions

View file

@ -8,15 +8,15 @@ _ponysay()
options='-v -h -l -f -W -q' options='-v -h -l -f -W -q'
COMPREPLY=( $( compgen -W "$options" -- "$cur" ) ) COMPREPLY=( $( compgen -W "$options" -- "$cur" ) )
if [ $prev = "-f" ]; then if [ $prev = "-f" ] || [ $prev = "--pony" ]; then
ponies=$('/usr/bin/ponysay.py' --onelist) ponies=$('/usr/bin/ponysay.py' --onelist)
COMPREPLY=( $( compgen -W "$ponies" -- "$cur" ) ) COMPREPLY=( $( compgen -W "$ponies" -- "$cur" ) )
elif [ $prev = "-q" ]; then elif [ $prev = "-q" ] || [ $prev = "--quote" ]; then
quoters=$('/usr/bin/ponysay.py' --quoters) quoters=$('/usr/bin/ponysay.py' --quoters)
COMPREPLY=( $( compgen -W "$quoters" -- "$cur" ) ) COMPREPLY=( $( compgen -W "$quoters" -- "$cur" ) )
elif [ $prev = "-W" ]; then elif [ $prev = "-W" ] || [ $prev = "--wrap" ]; then
cols=$(( `stty size | cut -d ' ' -f 2` - 10 )) cols=$(( `stty size | cut -d ' ' -f 2` - 10 ))
COMPREPLY=( $cols $(( $cols / 2 )) 100 60 ) COMPREPLY=( $cols $(( $cols / 2 )) 100 60 )

View file

@ -766,6 +766,7 @@ but is still available at @url{https://github.com/maandree/kmsponies4ponysay}.
* Printing in TTY with KMS:: Printing in TTY with KMS. * Printing in TTY with KMS:: Printing in TTY with KMS.
* Truncation:: Output truncation. * Truncation:: Output truncation.
* Languages:: Selection of languages. * Languages:: Selection of languages.
* Shell auto-completion:: Things make auto-completion simplier.
@end menu @end menu
@ -855,6 +856,28 @@ However since version 2.0 we are trying to move from all there languages
and only use Python 3. and only use Python 3.
@node Shell auto-completion
@section Shell auto-completion
@cindex auto-completion, inner workings
@cindex shell, auto-completion
@cindex @command{--onelist}
@cindex @command{--quoters}
To make it easier to write auto-completion for shells, @command{ponysay} supports
the two options @command{--onelist} and @command{--quoters}, which has not short
versions.
Executing @command{ponysay --onelist} will list every available pony,
independent of where it is located, the output is a sorted and consists only
of one pony per line.
@command{ponysay --quoters} work just as @command{ponysay --onelist}, excepts
it limites the ponies to those that have quotes. Ponies that have qoutes,
but does not exist, i.e. does not have a .pony-file, are not listed.
Auto-completion scripts should not suggest these options.
@node Contributing @node Contributing
@chapter Contributing @chapter Contributing
@ -1249,6 +1272,7 @@ Patchers and other contributors of ponysay:
@end itemize @end itemize
@node Ponysay license @node Ponysay license
@appendix Ponysay license @appendix Ponysay license