From 6326573fa21f5baab385b9000c3a47f70165d5c5 Mon Sep 17 00:00:00 2001 From: Robby Russell Date: Sun, 8 Nov 2009 15:34:02 -0800 Subject: [PATCH] Only using the contents of .ssh/known_hosts when the file exists for ssh/scp auto-completion. Closes issue #20 --- lib/completion.zsh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/completion.zsh b/lib/completion.zsh index deeb528..c231ee2 100644 --- a/lib/completion.zsh +++ b/lib/completion.zsh @@ -22,7 +22,7 @@ else fi zstyle ':completion:*' list-colors '' -zstyle ':completion:*' hosts $( sed 's/[, ].*$//' $HOME/.ssh/known_hosts ) + unsetopt MENU_COMPLETE #setopt AUTO_MENU @@ -35,7 +35,12 @@ zstyle ':completion:*:*:*:*:*' menu yes select zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#) ([0-9a-z-]#)*=01;34=0=01' zstyle ':completion:*:*:*:*:processes' command "ps -u `whoami` -o pid,user,comm -w -w" -zstyle ':completion:*:*:(ssh|scp):*:*' hosts `sed 's/^\([^ ,]*\).*$/\1/' ~/.ssh/known_hosts` + +# Load known hosts file for auto-completion with ssh and scp commands +if [ -f ~/.ssh/known_hosts ]; then + zstyle ':completion:*' hosts $( sed 's/[, ].*$//' $HOME/.ssh/known_hosts ) + zstyle ':completion:*:*:(ssh|scp):*:*' hosts `sed 's/^\([^ ,]*\).*$/\1/' ~/.ssh/known_hosts` +fi # Complete on history # zstyle ':completion:*:history-words' stop yes