lyx_mirror/lib/scripts/bash_completion
Pavel Sanda eb4786c80d New version of bash_completion from Cengiz Günay.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34067 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-06 12:01:24 +00:00

60 lines
1.4 KiB
Bash

# lyx(1) completion
# Copyleft 2010 Cengiz Gunay <cengique@users.sf.net>
have lyx &&
_lyx()
{
local cur g last
# turn on extglob
shopt -q extglob && g=1
test $g -eq 0 && shopt -s extglob
COMPREPLY=()
cur=${COMP_WORDS[COMP_CWORD]}
local dbg_cmds=( "none info init key gui \
parser lyxrc kbmap latex mathed font tclass \
lyxvc lyxserver roff action lyxlex depend insets \
files workarea insettext graphics changes \
external painting debug any" )
#echo "cmds: '$dbg_cmds'"
if [[ $COMP_CWORD > 1 ]]; then
last=${COMP_WORDS[$(($COMP_CWORD - 1))]}
else
last=''
fi
case "$last" in
+\(--export|-e\))
_filedir '+(pdf[1234]|PDF[1234]|pdf|PDF|ps|PS|xhtml|XHTML)';;
-dbg)
# check for multiple debug commands
if [[ $cur == *,* ]]; then #
COMPREPLY=( $( compgen -W '$dbg_cmds' \
-P ${cur%,*}, -- ${cur##*,} ) )
else
COMPREPLY=( $( compgen -W '$dbg_cmds' -- $cur ) )
fi;;
*)
case "$cur" in
-*)
# LyX command line options
COMPREPLY=( $( compgen -W '-help -userdir -sysdir \
-geometry -dbg -x --execute -e --export \
-i --import -version -batch ' -- $cur ) ) ;;
*)
# LyX files
_filedir '@(lyx)'
esac
esac
# turn it off if necessary
test $g -eq 0 && shopt -u extglob
}
[ "${have:-}" ] && complete -F _lyx $filenames lyx