]> git.eshelyaron.com Git - emacs.git/commitdiff
(find-file-not-found-set-buffer-file-coding-system):
authorEli Zaretskii <eliz@gnu.org>
Fri, 27 Oct 2000 19:24:25 +0000 (19:24 +0000)
committerEli Zaretskii <eliz@gnu.org>
Fri, 27 Oct 2000 19:24:25 +0000 (19:24 +0000)
Don't call find-buffer-file-type-coding-system.  Instead, just
set eol-type to -unix if inhibit-eol-conversion is in effect, or
if the file is on an untranslated filesystem.
(add-untranslated-filesystem): Use "D" instead of "f" inside
interactive.

lisp/ChangeLog
lisp/dos-w32.el

index 7ba2dc59c3050988a78ede4b6e40058bd8dd300a..da199782251537c83e136585833f43e265986c7c 100644 (file)
@@ -1,3 +1,12 @@
+2000-10-27  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * dos-w32.el (find-file-not-found-set-buffer-file-coding-system):
+       Don't call find-buffer-file-type-coding-system.  Instead, just
+       set eol-type to -unix if inhibit-eol-conversion is in effect, or
+       if the file is on an untranslated filesystem.
+       (add-untranslated-filesystem): Use "D" instead of "f" inside
+       interactive.
+
 2000-10-27  Dave Love  <fx@gnu.org>
 
        * textmodes/refill.el (refill-late-fill-paragraph-function): New
index 83eb895dc80e1ea66a85138a13c3653214869020..901c7bac141ee37cb0d4a602eca3389ca4b27bf8 100644 (file)
@@ -177,10 +177,16 @@ set to the appropriate coding system, and the value of
 (defun find-file-not-found-set-buffer-file-coding-system ()
   (save-excursion
     (set-buffer (current-buffer))
-    (let* ((dummy-insert-op (list 'insert-file-contents (buffer-file-name)))
-          (coding-system-pair
-           (find-buffer-file-type-coding-system dummy-insert-op)))
-      (setq buffer-file-coding-system (car coding-system-pair))
+    (let ((coding buffer-file-coding-system))
+      ;; buffer-file-coding-system is already set by
+      ;; find-operation-coding-system, which was called from
+      ;; insert-file-contents.  All that's left is to change
+      ;; the EOL conversion, if required by the user.
+      (when (and (null coding-system-for-read)
+                (or inhibit-eol-conversion
+                    (untranslated-file-p (buffer-file-name))))
+       (setq coding (coding-system-change-eol-conversion coding 0))
+       (setq buffer-file-coding-system coding))
       (setq buffer-file-type (eq buffer-file-coding-system 'no-conversion)))))
 
 ;;; To set the default coding system on new files.
@@ -233,7 +239,10 @@ CR/LF translation, and nil otherwise."
 CR/LF translation.  FILESYSTEM is a string containing the directory
 prefix corresponding to the filesystem.  For example, for a Unix 
 filesystem mounted on drive Z:, FILESYSTEM could be \"Z:\"."
-  (interactive "fUntranslated file system: ")
+  ;; We use "D", not "f", to avoid confusing the user: "f" prompts
+  ;; with a directory, but RET returns the current buffer's file, not
+  ;; its directory.
+  (interactive "DUntranslated file system: ")
   (let ((fs (untranslated-canonical-name filesystem)))
     (if (member fs untranslated-filesystem-list)
        untranslated-filesystem-list