From faff17b2a94697fe5c4568cdee5458cf780b87fa Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Fri, 29 Nov 2013 18:08:22 +0900 Subject: Hostname completion for ssh and telnet commands --- fzf-completion.bash | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'fzf-completion.bash') diff --git a/fzf-completion.bash b/fzf-completion.bash index 383122df..2ffe7338 100644 --- a/fzf-completion.bash +++ b/fzf-completion.bash @@ -95,6 +95,22 @@ _fzf_kill_completion() { fi } +_fzf_host_completion() { + if [ "${COMP_WORDS[COMP_CWORD-1]}" = '-l' ]; then + return 1 + fi + + local selected + tput sc + selected=$(grep -v '^\s*\(#\|$\)' /etc/hosts | awk '{print $2}' | sort -u | fzf $FZF_COMPLETION_OPTS) + tput rc + + if [ -n "$selected" ]; then + COMPREPLY=( "$selected" ) + return 0 + fi +} + complete -F _fzf_opts_completion fzf # Directory @@ -123,3 +139,8 @@ done # Kill completion complete -F _fzf_kill_completion -o nospace -o default -o bashdefault kill +# Host completion +for cmd in "ssh telnet"; do + complete -F _fzf_host_completion -o default -o bashdefault $cmd +done + -- cgit v1.2.3