From 7dd37071d0a82f35507c6062bef0df2917564ab5 Mon Sep 17 00:00:00 2001 From: Mike Lamb Date: Fri, 27 Jan 2012 13:14:16 -0800 Subject: [PATCH] pcmpl-ssh-known-hosts tiny change * lisp/pcmpl-unix.el (pcmpl-ssh-known-hosts): Handle [host]:port syntax. Fixes: debbugs:10533 --- lisp/ChangeLog | 5 +++++ lisp/pcmpl-unix.el | 14 ++++++++------ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 571a5e284a2..a907bd43f38 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2012-01-27 Mike Lamb (tiny change) + + * pcmpl-unix.el (pcmpl-ssh-known-hosts): + Handle [host]:port syntax. (Bug#10533) + 2012-01-27 Alex Harsanyi * xml.el (xml-parse-tag): Fix parsing of comments (Bug#10405). diff --git a/lisp/pcmpl-unix.el b/lisp/pcmpl-unix.el index 2dc25d93abf..3af22c82dfb 100644 --- a/lisp/pcmpl-unix.el +++ b/lisp/pcmpl-unix.el @@ -152,13 +152,15 @@ documentation), this function returns nil." (file-readable-p pcmpl-ssh-known-hosts-file)) (with-temp-buffer (insert-file-contents-literally pcmpl-ssh-known-hosts-file) - (let (ssh-hosts-list) - (while (re-search-forward "^ *\\([-.[:alnum:]]+\\)[, ]" nil t) - (add-to-list 'ssh-hosts-list (match-string 1)) + (let ((host-re "\\(?:\\([-.[:alnum:]]+\\)\\|\\[\\([-.[:alnum:]]+\\)\\]:[0-9]+\\)[, ]") + ssh-hosts-list) + (while (re-search-forward (concat "^ *" host-re) nil t) + (add-to-list 'ssh-hosts-list (concat (match-string 1) + (match-string 2))) (while (and (looking-back ",") - (re-search-forward "\\([-.[:alnum:]]+\\)[, ]" - (line-end-position) t)) - (add-to-list 'ssh-hosts-list (match-string 1)))) + (re-search-forward host-re (line-end-position) t)) + (add-to-list 'ssh-hosts-list (concat (match-string 1) + (match-string 2))))) ssh-hosts-list)))) (defun pcmpl-ssh-config-hosts () -- 2.39.2