]> git.eshelyaron.com Git - emacs.git/commitdiff
(convert-standard-filename): Handle cygwin-specific pathnames.
authorSam Steingold <sds@gnu.org>
Mon, 29 Oct 2001 18:49:16 +0000 (18:49 +0000)
committerSam Steingold <sds@gnu.org>
Mon, 29 Oct 2001 18:49:16 +0000 (18:49 +0000)
lisp/ChangeLog
lisp/w32-fns.el

index 5c9b4ac6e98307839495755d7cf91ea5ca405510..397da093117f5155b4aee29dd970d2476e923c56 100644 (file)
@@ -1,10 +1,15 @@
+2001-10-29  Sam Steingold  <sds@gnu.org>
+
+       * w32-fns.el (convert-standard-filename): Handle cygwin-specific
+       "/cygdrive/LETTER/" pathnames.
+
 2001-10-29  Eli Zaretskii  <eliz@is.elta.co.il>
 
        * faces.el (invert-face): Check for 'unspecified, not for nil,
        when testing whether face colors are not specified.  From
        David.Kastrup@t-online.de (David Kastrup).
        (read-face-name): Doc fix.
-       (make-face-bold, make-face-unbold, make-face-italic) 
+       (make-face-bold, make-face-unbold, make-face-italic)
        (make-face-unitalic, make-face-bold-italic, invert-face): Remove
        trailing blank from the prompt passed to read-face-name.
 
index 256aecc42d79007b67fb1a68b2291796faebfff3..7dd98e49e303bffadf7300e628cdfaa1a073ac67 100644 (file)
@@ -43,7 +43,7 @@
 ;; Ignore case on file-name completion
 (setq completion-ignore-case t)
 
-;; Map all versions of a filename (8.3, longname, mixed case) to the 
+;; Map all versions of a filename (8.3, longname, mixed case) to the
 ;; same buffer.
 (setq find-file-visit-truename t)
 
@@ -72,7 +72,7 @@ numbers, and the build number."
 
 (defun w32-system-shell-p (shell-name)
   (and shell-name
-       (member (downcase (file-name-nondirectory shell-name)) 
+       (member (downcase (file-name-nondirectory shell-name))
               w32-system-shells)))
 
 (defun w32-shell-dos-semantics ()
@@ -98,15 +98,15 @@ has configured the shell with inappropriate settings."
     (erase-buffer)
     (if (w32-system-shell-p (getenv "ESHELL"))
        (insert (format "Warning! The ESHELL environment variable uses %s.
-You probably want to change it so that it uses cmdproxy.exe instead.\n\n" 
+You probably want to change it so that it uses cmdproxy.exe instead.\n\n"
                        (getenv "ESHELL"))))
     (if (w32-system-shell-p (getenv "SHELL"))
        (insert (format "Warning! The SHELL environment variable uses %s.
-You probably want to change it so that it uses cmdproxy.exe instead.\n\n" 
+You probably want to change it so that it uses cmdproxy.exe instead.\n\n"
                        (getenv "SHELL"))))
     (if (w32-system-shell-p shell-file-name)
        (insert (format "Warning! shell-file-name uses %s.
-You probably want to change it so that it uses cmdproxy.exe instead.\n\n" 
+You probably want to change it so that it uses cmdproxy.exe instead.\n\n"
                        shell-file-name)))
     (if (and (boundp 'explicit-shell-file-name)
             (w32-system-shell-p explicit-shell-file-name))
@@ -212,7 +212,7 @@ You should set this to t when using a non-system shell.\n\n"))))
         (dir1 (expand-file-name "../info/" instdir))
         (dir2 (expand-file-name "../../../info/" instdir)))
     (if (file-exists-p dir1)
-       (setq Info-default-directory-list 
+       (setq Info-default-directory-list
              (append Info-default-directory-list (list dir1)))
       (if (file-exists-p dir2)
          (setq Info-default-directory-list
@@ -230,9 +230,9 @@ You should set this to t when using a non-system shell.\n\n"))))
 ;;; source-directory, set it to something that is a reasonable approximation
 ;;; on the user's machine.
 
-;(add-hook 'before-init-hook 
+;(add-hook 'before-init-hook
 ;        '(lambda ()
-;           (setq source-directory (file-name-as-directory 
+;           (setq source-directory (file-name-as-directory
 ;                                   (expand-file-name ".." exec-directory)))))
 
 ;; Avoid creating auto-save file names containing invalid characters.
@@ -255,7 +255,11 @@ See also `auto-save-file-name-p'."
 This function's standard definition is trivial; it just returns the argument.
 However, on some systems, the function is redefined
 with a definition that really does change some file names."
-  (let ((name (copy-sequence filename))
+  (let ((name
+         (save-match-data
+           (if (string-match "\\`/cygdrive/\\([a-zA-Z]\\)/" filename)
+               (replace-match "\\1:/" t nil filename)
+             (copy-sequence filename))))
        (start 0))
     ;; leave ':' if part of drive specifier
     (if (and (> (length name) 1)
@@ -438,7 +442,7 @@ clipboard as well. Optional PUSH is ignored on Windows."
   (if x-select-enable-clipboard
       (w32-set-clipboard-data text))
   (setq x-last-selected-text text))
-    
+
 (defun x-get-selection-value ()
   "Return the value of the current selection.
 Consult the selection, then the cut buffer.  Treat empty strings as if