diff options
author | Tom Ryder <tom@sanctum.geek.nz> | 2013-09-01 00:04:10 +1200 |
---|---|---|
committer | Tom Ryder <tom@sanctum.geek.nz> | 2013-09-01 00:04:10 +1200 |
commit | feb7dd2c70c9a45878c094bb8f8c2c3b98400fee (patch) | |
tree | bc817ca60e3d59ecf0e323df166bcf58bb0d939b /bash/bashrc.d/completion.bash | |
parent | Add command completion for sudo (diff) | |
download | dotfiles-feb7dd2c70c9a45878c094bb8f8c2c3b98400fee.tar.gz dotfiles-feb7dd2c70c9a45878c094bb8f8c2c3b98400fee.zip |
Move SSH completion into its own file
Diffstat (limited to 'bash/bashrc.d/completion.bash')
-rw-r--r-- | bash/bashrc.d/completion.bash | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/bash/bashrc.d/completion.bash b/bash/bashrc.d/completion.bash index a921770b..6a382a37 100644 --- a/bash/bashrc.d/completion.bash +++ b/bash/bashrc.d/completion.bash @@ -22,34 +22,3 @@ complete -c sudo # unset with shell variables and functions complete -v -A function unset -# ssh/sftp/ssh-copy-id with config hostnames -_ssh() { - local word config hosts option value - word=${COMP_WORDS[COMP_CWORD]} - config=$HOME/.ssh/config - hosts=() - - # Bail if the configuration file is illegible - if [[ ! -r $config ]]; then - return 1 - fi - - # Read hostnames from the file, no asterisks - while read -r option value _; do - if [[ $option == Host && $value != *'*'* ]]; then - hosts[${#hosts[@]}]=$value - fi - done < "$config" - - # Generate completion reply - COMPREPLY=( $(compgen -W "${hosts[*]}" -- "$word") ) -} -complete -F _ssh ssh sftp ssh-copy-id - -# scp/rsync with local files and hostnames (colon suffixes) -_scp() { - _ssh - COMPREPLY=( "${COMPREPLY[@]/%/:}" ) -} -complete -f -F _scp scp - |