diff options
author | David Paleino <dapal@debian.org> | 2011-02-06 21:26:41 +0100 |
---|---|---|
committer | David Paleino <dapal@debian.org> | 2011-02-06 21:26:41 +0100 |
commit | 9920a8faedf704420571d8072ccab27e9dac40ba (patch) | |
tree | 733edf3b07be06c130d04aaa1884213326722cad /completions/wireless-tools | |
parent | f9748115fb4b2950fb4df7535fb723c4affde078 (diff) | |
download | bash-completion-9920a8faedf704420571d8072ccab27e9dac40ba.tar.gz |
Imported Upstream version 1.3upstream/1.3
Diffstat (limited to 'completions/wireless-tools')
-rw-r--r-- | completions/wireless-tools | 180 |
1 files changed, 180 insertions, 0 deletions
diff --git a/completions/wireless-tools b/completions/wireless-tools new file mode 100644 index 00000000..56ba0db8 --- /dev/null +++ b/completions/wireless-tools @@ -0,0 +1,180 @@ +# bash completion for Linux wireless-tools + +[ $UNAME = Linux ] && +{ + +have iwconfig && +_iwconfig() +{ + local cur prev + + COMPREPLY=() + _get_comp_words_by_ref cur prev + + case $prev in + mode) + COMPREPLY=( $( compgen -W 'managed ad-hoc master \ + repeater secondary monitor' -- "$cur" ) ) + return 0 + ;; + essid) + COMPREPLY=( $( compgen -W 'on off any' -- "$cur" ) ) + if [ -n "${COMP_IWLIST_SCAN:-}" ]; then + COMPREPLY=( "${COMPREPLY[@]}" $( compgen -W \ + "$( iwlist ${COMP_WORDS[1]} scan | \ + awk -F'\"' '/ESSID/ {print $2}' )" -- "$cur" ) ) + fi + return 0 + ;; + nwid) + COMPREPLY=( $( compgen -W 'on off' -- "$cur" ) ) + return 0 + ;; + channel) + COMPREPLY=( $( compgen -W "$( iwlist ${COMP_WORDS[1]} channel | \ + awk '/^[ \t]*Channel/ {print $2}' )" -- "$cur" ) ) + return 0 + ;; + + freq) + COMPREPLY=( $( compgen -W "$( iwlist ${COMP_WORDS[1]} channel | \ + awk '/^[ \t]*Channel/ {print $4"G"}')" -- "$cur" ) ) + return 0 + ;; + ap) + COMPREPLY=( $( compgen -W 'on off any' -- "$cur" ) ) + if [ -n "${COMP_IWLIST_SCAN:-}" ]; then + COMPREPLY=( "${COMPREPLY[@]}" $( compgen -W \ + "$( iwlist ${COMP_WORDS[1]} scan | \ + awk -F ': ' '/Address/ {print $2}' )" -- "$cur" ) ) + fi + return 0 + ;; + rate) + COMPREPLY=( $( compgen -W 'auto fixed' -- "$cur" ) ) + COMPREPLY=( "${COMPREPLY[@]}" $( compgen -W \ + "$( iwlist ${COMP_WORDS[1]} rate | \ + awk '/^[ \t]*[0-9]/ {print $1"M"}' )" -- "$cur" ) ) + return 0 + ;; + rts|frag) + COMPREPLY=( $( compgen -W 'auto fixed off' -- "$cur" ) ) + return 0 + ;; + key|enc) + COMPREPLY=( $( compgen -W 'off on open restricted' -- "$cur" ) ) + return 0 + ;; + power) + COMPREPLY=( $( compgen -W 'period timeout off on' -- "$cur" ) ) + return 0 + ;; + txpower) + COMPREPLY=( $( compgen -W 'off on auto' -- "$cur" ) ) + return 0 + ;; + retry) + COMPREPLY=( $( compgen -W 'limit lifetime' -- "$cur" ) ) + return 0 + ;; + esac + + if [ $COMP_CWORD -eq 1 ]; then + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '--help --version' -- "$cur" ) ) + else + _available_interfaces -w + fi + else + COMPREPLY=( $( compgen -W 'essid nwid mode freq channel sens mode \ + ap nick rate rts frag enc key power txpower commit' -- "$cur" ) ) + fi + +} && +complete -F _iwconfig iwconfig + + +have iwlist && +_iwlist() +{ + local cur prev + + COMPREPLY=() + _get_comp_words_by_ref cur prev + + if [ $COMP_CWORD -eq 1 ]; then + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '--help --version' -- "$cur" ) ) + else + _available_interfaces -w + fi + else + COMPREPLY=( $( compgen -W 'scan scanning freq frequency \ + channel rate bit bitrate key enc encryption power \ + txpower retry ap accesspoint peers event' -- "$cur" ) ) + fi +} && +complete -F _iwlist iwlist + + +have iwspy && +_iwspy() +{ + local cur + + COMPREPLY=() + _get_comp_words_by_ref cur + + if [ $COMP_CWORD -eq 1 ]; then + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '--help --version' -- "$cur" ) ) + else + _available_interfaces -w + fi + else + COMPREPLY=( $( compgen -W 'setthr getthr off' -- "$cur" ) ) + fi +} && +complete -F _iwspy iwspy + + +have iwpriv && +_iwpriv() +{ + local cur prev + + COMPREPLY=() + _get_comp_words_by_ref cur prev + + case $prev in + roam) + COMPREPLY=( $( compgen -W 'on off' -- "$cur" ) ) + return 0 + ;; + port) + COMPREPLY=( $( compgen -W 'ad-hoc managed' -- "$cur" ) ) + return 0 + ;; + esac + + if [ $COMP_CWORD -eq 1 ]; then + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '--help --version' -- "$cur" ) ) + else + _available_interfaces -w + fi + else + COMPREPLY=( $( compgen -W '--all roam port' -- "$cur" ) ) + fi +} && +complete -F _iwpriv iwpriv + +} + +# 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 |