From: Eli Zaretskii Date: Wed, 30 Dec 1998 17:21:44 +0000 (+0000) Subject: (prefer-coding-system): If the argument requires specific EOL conversion X-Git-Tag: emacs-20.4~989 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=bd3ac67e7b166d085835ea00b3d83d822d962391;p=emacs.git (prefer-coding-system): If the argument requires specific EOL conversion type, make the default coding systems use that. --- diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el index 6d9f5b1e9ec..ecb7bab89f5 100644 --- a/lisp/international/mule-cmds.el +++ b/lisp/international/mule-cmds.el @@ -238,6 +238,9 @@ This also sets the following values: o default value for the command `set-terminal-coding-system' (not on MSDOS) o default value for the command `set-keyboard-coding-system' +If CODING-SYSTEM specifies a certain type of EOL conversion, the coding +systems set by this function will use that type of EOL conversion. + This command does not change the default value of terminal coding system for MS-DOS terminal, because DOS terminals only support a single coding system, and Emacs automatically sets the default to that coding system at @@ -246,7 +249,8 @@ startup." (if (not (and coding-system (coding-system-p coding-system))) (error "Invalid coding system `%s'" coding-system)) (let ((coding-category (coding-system-category coding-system)) - (base (coding-system-base coding-system))) + (base (coding-system-base coding-system)) + (eol-type (coding-system-eol-type coding-system))) (if (not coding-category) ;; CODING-SYSTEM is no-conversion or undecided. (error "Can't prefer the coding system `%s'" coding-system)) @@ -260,7 +264,12 @@ startup." (if (and base (interactive-p)) (message "Highest priority is set to %s (base of %s)" base coding-system)) - (set-default-coding-systems (or base coding-system)))) + ;; If they asked for specific EOL conversion, honor that. + (if (memq eol-type '(0 1 2 unix dos mac)) + (setq coding-system + (coding-system-change-eol-conversion base eol-type)) + (setq coding-system base)) + (set-default-coding-systems coding-system))) (defun find-coding-systems-region-subset-p (list1 list2) "Return non-nil if all elements in LIST1 are included in LIST2.