]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix hostname completion on MS Windows
authorJim Porter <jporterbugs@gmail.com>
Fri, 9 Apr 2021 07:57:06 +0000 (09:57 +0200)
committerMichael Albinus <michael.albinus@gmx.de>
Fri, 9 Apr 2021 07:57:06 +0000 (09:57 +0200)
* lisp/net/tramp.el (tramp-completion-file-name-regexp-default):
Handle volume letter being added to paths for file name completion on W32
systems.  This fixes hostname (and method) autocomplete on W32.

Copyright-paperwork-exempt: yes

lisp/net/tramp.el

index b2c650f6e1a29b39e2a316f7cc4abb76ec0f071f..e61c3b1e44c5be542bfb5be6cca96d29b5bfb29d 100644 (file)
@@ -1078,7 +1078,13 @@ initial value is overwritten by the car of `tramp-file-name-structure'.")
 
 (defconst tramp-completion-file-name-regexp-default
   (concat
-   "\\`/\\("
+   "\\`"
+   ;; `file-name-completion' uses absolute paths for matching.  This
+   ;; means that on W32 systems, something like "/ssh:host:~/path"
+   ;; becomes "c:/ssh:host:~/path".  See also `tramp-drop-volume-letter'.
+   (when (eq system-type 'windows-nt)
+       "\\(?:[[:alpha:]]:\\)?")
+   "/\\("
    ;; Optional multi hop.
    "\\([^/|:]+:[^/|:]*|\\)*"
    ;; Last hop.