]> git.eshelyaron.com Git - emacs.git/commitdiff
(dos-print-region-function): Force EOL conversion to DOS CR-LF pairs.
authorRichard M. Stallman <rms@gnu.org>
Tue, 12 Aug 1997 05:47:05 +0000 (05:47 +0000)
committerRichard M. Stallman <rms@gnu.org>
Tue, 12 Aug 1997 05:47:05 +0000 (05:47 +0000)
lisp/dos-fns.el

index c640633000c23d78711f307eaf4aa2a4b9dec52f..e3ae53bd0709c7ab9e74e8613d1d0d0d4f0489ba 100644 (file)
@@ -139,11 +139,14 @@ Writes the region to the device or file which is a value of
 `dos-printer' \(which see\).  Ignores any arguments beyond
 START and END."
 
-  (write-region start end dos-printer t 0)
-  ;; Make each print-out start on a new page, but don't waste
-  ;; paper if there was a form-feed at the end of this file.
-  (if (not (char-equal (char-after (1- end)) ?\C-l))
-      (write-region "\f" nil dos-printer t 0)))
+  ;; DOS printers need the lines to end with CR-LF pairs, so make
+  ;; sure it always happens that way.
+  (let ((coding-system-for-write 'undecided-dos))
+    (write-region start end dos-printer t 0)
+    ;; Make each print-out start on a new page, but don't waste
+    ;; paper if there was a form-feed at the end of this file.
+    (if (not (char-equal (char-after (1- end)) ?\C-l))
+       (write-region "\f" nil dos-printer t 0))))
 
 ;; Set this to nil if you have a port of the `lpr' program and
 ;; you want to use it for printing.  If the default setting is