X-Git-Url: http://git.iain.cx/?a=blobdiff_plain;f=.profile.d%2Fcompletion.bashrc;h=775c20891255d9521945a27dc129a7bd3aaf8472;hb=b82d709dee82b7e05ae8b9fa87e0eea488da6a3d;hp=cf77c1550425fe0730aa46ed51ce52de195bd631;hpb=9bc7cefe316314c162241101a15de05d96033256;p=profile.git diff --git a/.profile.d/completion.bashrc b/.profile.d/completion.bashrc index cf77c15..775c208 100644 --- a/.profile.d/completion.bashrc +++ b/.profile.d/completion.bashrc @@ -1,8 +1,7 @@ -# $Id$ # Helper! export COMPLETION_DIR_SSH=~/.ssh/hosts export COMPLETION_DIR_TELNET=~/.telnet/hosts -export COMPLETION_DIR_RDP=~/.ssh/hosts +export COMPLETION_DIR_RDP=~/.rdp/hosts export COMPLETION_DIR_PING="$COMPLETION_DIR_SSH $COMPLETION_DIR_TELNET $COMPLETION_DIR_RDP" function _generic_completion() { @@ -30,8 +29,7 @@ function _process() { function _known_hosts() { cur=${COMP_WORDS[COMP_CWORD]} - HOSTS=$(sed 's/[ ].*//;s/,/\ -/' ~/.ssh/known_hosts) + HOSTS=$(sed 's/[ ].*//;s/,/\n/' ~/.ssh/known_hosts) COMPREPLY=($(compgen -W "$HOSTS" -- "$cur")) return 0 @@ -86,7 +84,7 @@ function _modprobe() { COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} - ver=$(uname -r) + ver=$KERNEL MODULES="$(find /lib/modules/$ver -name \*.ko | sed -n 's@^.*/\([^/]*\).ko$@\1@p')" COMPREPLY=($(compgen -W "$MODULES" -- "$cur")) @@ -104,6 +102,15 @@ function _rmmod() { return 0 } +# Find tags with GNU GLOBAL. +function _global() { + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + + COMPREPLY=($(global -c "$cur")) + return 0 +} + complete -F _ssh rollout complete -F _ssh ssh complete -F _ssh sshterm @@ -121,3 +128,4 @@ complete -F _known_hosts kill_known_host complete -F _known_hosts knh complete -F _modprobe modprobe complete -F _rmmod rmmod +complete -F _global global