diff options
author | An-Cheng Huang <ancheng@vyatta.com> | 2007-11-12 13:13:20 -0800 |
---|---|---|
committer | An-Cheng Huang <ancheng@vyatta.com> | 2007-11-14 16:16:47 -0800 |
commit | fc7695ee76400ee9833301f98a3fe483d64591b5 (patch) | |
tree | 15b568f5adfa956817cf9f5a1652c43d33d8efa9 /debian/bash_completion/contrib/povray | |
parent | b7fc9e0f6d6105ba2203f219743d4b269415e84b (diff) | |
download | vyatta-bash-fc7695ee76400ee9833301f98a3fe483d64591b5.tar.gz vyatta-bash-fc7695ee76400ee9833301f98a3fe483d64591b5.zip |
initial import from bash_3.1dfsg-8.diff.gzupstream
Diffstat (limited to 'debian/bash_completion/contrib/povray')
-rw-r--r-- | debian/bash_completion/contrib/povray | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/debian/bash_completion/contrib/povray b/debian/bash_completion/contrib/povray new file mode 100644 index 0000000..cea5482 --- /dev/null +++ b/debian/bash_completion/contrib/povray @@ -0,0 +1,58 @@ +# povray completion by "David Necas (Yeti)" <yeti@physics.muni.cz> +# +# $Id: povray,v 1.2 2003/12/31 08:22:37 ianmacd Exp $ + +_povray() +{ + local cur prev povcur pfx oext defoext + defoext=png # default output extension, if cannot be determined FIXME + + COMPREPLY=() + povcur=${COMP_WORDS[COMP_CWORD]} + prev=${COMP_WORDS[COMP_CWORD-1]} + + _expand || return 0 + + case $povcur in + [-+]I*) + cur="${povcur#[-+]I}" # to confuse _filedir + pfx="${povcur%"$cur"}" + _filedir pov + COMPREPLY=( ${COMPREPLY[@]/#/$pfx} ) + return 0 + ;; + [-+]O*) + # guess what output file type user may want + case $( ( IFS=$'\n'; echo "${COMP_WORDS[*]}" | grep '^[-+]F' ) ) in + [-+]FN) oext=png ;; + [-+]FP) oext=ppm ;; + [-+]F[CT]) oext=tga ;; + *) oext=$defoext ;; + esac + # complete filename corresponding to previously specified +I + COMPREPLY=( $( ( IFS=$'\n'; echo "${COMP_WORDS[*]}" | grep '^[-+]I' ) ) ) + COMPREPLY=( ${COMPREPLY[@]#[-+]I} ) + COMPREPLY=( ${COMPREPLY[@]/%.pov/.$oext} ) + cur="${povcur#[-+]O}" # to confuse _filedir + pfx="${povcur%"$cur"}" + _filedir $oext + COMPREPLY=( ${COMPREPLY[@]/#/$pfx} ) + return 0 + ;; + *.ini\[|*.ini\[*[^]]) # sections in .ini files + cur="${povcur#*\[}" + pfx="${povcur%\["$cur"}" # prefix == filename + [ -r "$pfx" ] || return 0 + COMPREPLY=( $(sed -e 's/^[[:space:]]*\[\('"$cur"'[^]]*\]\).*$/\1/' -e 't' -e 'd' -- "$pfx") ) + # to prevent [bar] expand to nothing. can be done more easily? + COMPREPLY=( "${COMPREPLY[@]/#/$pfx[}" ) + return 0 + ;; + *) + cur="$povcur" + _filedir '?(ini|pov)' + return 0 + ;; + esac +} +complete -F _povray -o filenames povray xpovray spovray |