]> code.delx.au - gnu-emacs/commitdiff
Extend completion candidates in tramp.el
authorMichael Albinus <michael.albinus@gmx.de>
Mon, 9 May 2016 07:20:34 +0000 (09:20 +0200)
committerMichael Albinus <michael.albinus@gmx.de>
Mon, 9 May 2016 07:20:34 +0000 (09:20 +0200)
* lisp/net/tramp.el (tramp-parse-default-user-host): New defun.
(tramp-get-completion-function): Use it.

lisp/net/tramp.el

index b179815af3292010976c2b7f3b361346aa25ceba..118da5788589aea79dcecbbebe1b92b7927786b4 100644 (file)
@@ -1712,9 +1712,11 @@ Example:
 (defun tramp-get-completion-function (method)
   "Returns a list of completion functions for METHOD.
 For definition of that list see `tramp-set-completion-function'."
-  (cons
-   ;; Hosts visited once shall be remembered.
-   `(tramp-parse-connection-properties ,method)
+  (append
+   `(;; Default settings are taken into account.
+     (tramp-parse-default-user-host ,method)
+     ;; Hosts visited once shall be remembered.
+     (tramp-parse-connection-properties ,method))
    ;; The method related defaults.
    (cdr (assoc method tramp-completion-function-alist))))
 
@@ -2549,6 +2551,12 @@ PARTIAL-USER must match USER, PARTIAL-HOST must match HOST."
   (unless (zerop (+ (length user) (length host)))
     (tramp-completion-make-tramp-file-name method user host nil)))
 
+(defun tramp-parse-default-user-host (method)
+  "Return a list of (user host) tuples allowed to access for METHOD.
+This function is added always in `tramp-get-completion-function'
+for all methods.  Resulting data are derived from default settings."
+  `((,(tramp-find-user method nil nil) ,(tramp-find-host method nil nil))))
+
 ;; Generic function.
 (defun tramp-parse-group (regexp match-level skip-regexp)
    "Return a (user host) tuple allowed to access.