diff options
author | Ville Skyttä <ville.skytta@iki.fi> | 2011-10-13 21:26:13 +0300 |
---|---|---|
committer | Ville Skyttä <ville.skytta@iki.fi> | 2011-10-13 21:37:34 +0300 |
commit | 449c71fa747390535c76c6a71e4b9ee81aab347e (patch) | |
tree | 28690f904fa746737f72977bbcfac12dc37b4d04 | |
parent | 5baebf81d3ede436d63ae38e464dacaa0ad4b486 (diff) | |
download | bash-completion-449c71fa747390535c76c6a71e4b9ee81aab347e.tar.gz |
Get rid of remaining $UNAME and $USERLAND uses.
Use $OSTYPE and _userland() instead.
-rw-r--r-- | bash_completion | 29 | ||||
-rw-r--r-- | completions/gcc | 3 | ||||
-rw-r--r-- | completions/ifup | 4 | ||||
-rw-r--r-- | completions/killall | 2 | ||||
-rw-r--r-- | completions/man | 4 |
5 files changed, 22 insertions, 20 deletions
diff --git a/bash_completion b/bash_completion index a8b8ff9a..5570338f 100644 --- a/bash_completion +++ b/bash_completion @@ -46,17 +46,6 @@ readonly BASH_COMPLETION_COMPAT_DIR # _blacklist_glob='@(acroread.sh)' -# Set a couple of useful vars -# -UNAME=$( uname -s ) -# strip OS type and version under Cygwin (e.g. CYGWIN_NT-5.1 => Cygwin) -UNAME=${UNAME/CYGWIN_*/Cygwin} - -case ${UNAME} in - Linux|GNU|GNU/*) USERLAND=GNU ;; - *) USERLAND=${UNAME} ;; -esac - # Turn on extended globbing and programmable completion shopt -s extglob progcomp @@ -103,6 +92,16 @@ complete -b builtin # start of section containing completion functions called by other functions +# Output what userland we're running on +_userland() +{ + local uname=$( uname -s ) + case $uname in + Linux|GNU|GNU/*) echo GNU ;; + *) echo "$uname" ;; + esac +} + # This function checks whether we have a given program on the system. # _have() @@ -960,7 +959,7 @@ _expand() # This function completes on process IDs. # AIX and Solaris ps prefers X/Open syntax. -[[ $UNAME == @(SunOS|AIX) ]] && +[[ $OSTYPE == *@(solaris|aix)* ]] && _pids() { COMPREPLY=( $( compgen -W '$( command ps -efo pid | sed 1d )' -- "$cur" )) @@ -972,7 +971,7 @@ _pids() # This function completes on process group IDs. # AIX and SunOS prefer X/Open, all else should be BSD. -[[ $UNAME == @(SunOS|AIX) ]] && +[[ $OSTYPE == *@(solaris|aix)* ]] && _pgids() { COMPREPLY=( $( compgen -W '$( command ps -efo pgid | sed 1d )' -- "$cur" )) @@ -984,7 +983,7 @@ _pgids() # This function completes on process names. # AIX and SunOS prefer X/Open, all else should be BSD. -[[ $UNAME == @(SunOS|AIX) ]] && +[[ $OSTYPE == *@(solaris|aix)* ]] && _pnames() { COMPREPLY=( $( compgen -X '<defunct>' -W '$( command ps -efo comm | \ @@ -1866,7 +1865,7 @@ unset i [[ ${BASH_SOURCE[0]} != ~/.bash_completion && -r ~/.bash_completion ]] \ && . ~/.bash_completion unset -f have -unset UNAME USERLAND have +unset have set $BASH_COMPLETION_ORIGINAL_V_VALUE unset BASH_COMPLETION_ORIGINAL_V_VALUE diff --git a/completions/gcc b/completions/gcc index 6da9ffe8..dfc8a172 100644 --- a/completions/gcc +++ b/completions/gcc @@ -47,7 +47,8 @@ _gcc() } && complete -F _gcc gcc g++ c++ g77 gcj gpc -[[ $USERLAND == GNU || $UNAME == Cygwin ]] && _have gcc && complete -F _gcc cc +[[ $OSTYPE == *cygwin* || $( _userland ) == GNU ]] \ + && _have gcc && complete -F _gcc cc # Local variables: # mode: shell-script diff --git a/completions/ifup b/completions/ifup index aab9bbca..2bd66ce8 100644 --- a/completions/ifup +++ b/completions/ifup @@ -1,6 +1,6 @@ # Red Hat & Debian GNU/Linux if{up,down} completion -# -[ $USERLAND = GNU ] || return 1 + +[[ $( _userland ) == GNU ]] || return 1 _ifupdown() { diff --git a/completions/killall b/completions/killall index 162e2382..d57165fc 100644 --- a/completions/killall +++ b/completions/killall @@ -14,7 +14,7 @@ _killall() return 0 } && complete -F _killall pkill -[[ $UNAME == @(Linux|FreeBSD|Darwin) ]] && complete -F _killall killall +[[ $OSTYPE == *@(linux|freebsd|darwin)* ]] && complete -F _killall killall # Local variables: # mode: shell-script diff --git a/completions/man b/completions/man index 0fa17a0d..0575ba3c 100644 --- a/completions/man +++ b/completions/man @@ -1,6 +1,8 @@ # man(1) completion -[[ $USERLAND == GNU || $UNAME == @(Darwin|FreeBSD|SunOS|Cygwin|OpenBSD) ]] && +[[ $OSTYPE == *@(darwin|freebsd|solaris|cygwin|openbsd)* || \ + $( _userland ) == GNU ]] || return 1 + _man() { local cur prev words cword split |