Bugs item #313404, was opened at 2011-10-26 09:48 by Thomas Wouters You can respond by visiting: https://alioth.debian.org/tracker/?func=detail&atid=413095&aid=313404&group_id=100114
Status: Open Priority: 3 Submitted By: Thomas Wouters (beli-guest) Assigned to: Nobody (None) Summary: ssh completion should ignore "HostName" in ssh config Distribution: None Originally reported in: None Milestone: None Status: None Original bug number: Initial Comment: Ssh completion shouldn't include HostName values from ssh config. I think this beats the purpose of defining hosts in an ssh config. For example, ~/.ssh/config: Host myexample HostName example.org Port 222 User someuser Bash completion completes both "myexample" and "example.org". The thing is that ssh won't use port 222 or someuser as user when you ssh to "example.org" in stead of "myexample". It seems better to just ignore HostName. As far as I know, this is also how zsh completion does it. A possible fix: --- /etc/bash_completion 2011-02-11 23:34:25.000000000 +0100 +++ bash_completion.new 2011-10-26 09:45:10.815174614 +0200 @@ -1334,7 +1334,7 @@ # append any available aliases from config files if [[ ${#config[@]} -gt 0 && -n "$aliases" ]]; then - local hosts=$( sed -ne 's/^[ \t]*[Hh][Oo][Ss][Tt]\([Nn][Aa][Mm][Ee]\)\{0,1\}['"$'\t '"']\{1,\}\([^#*?]*\)\(#.*\)\{0,1\}$/\2/p' "${config[@]}" ) + local hosts=$( sed -ne 's/^[ \t]*[Hh][Oo][Ss][Tt]['"$'\t '"']\+\([^#*?]*\)\(#.*\)\{0,1\}$/\1/p' "${config[@]}" ) COMPREPLY=( "${COMPREPLY[@]}" $( compgen -P "$prefix$user" \ -S "$suffix" -W "$hosts" -- "$cur" ) ) fi ---------------------------------------------------------------------- You can respond by visiting: https://alioth.debian.org/tracker/?func=detail&atid=413095&aid=313404&group_id=100114 _______________________________________________ Bash-completion-devel mailing list Bash-completion-devel@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/bash-completion-devel