Если при открытии файла в Unix на модельной строке написано (DOS), строки заканчиваются в стиле Windows. Если при открытии файла в Windows написано (Unix), строки заканчиваются в стиле Unix.
Из руководства по Emacs 22.2 (Узел: Строка режима):
Если файл буфера использует
возврат каретки, перевод строки
изменяется на обратную косую черту ('\') или
'(DOS)', в зависимости от операционной
система. Если файл использует только
возврат каретки, индикатор двоеточия
меняется на косую черту
('/') или '(Mac)'. В некоторых системах
Emacs отображает «(Unix)» вместо
двоеточие для файлов, которые используют перевод строки как
разделитель строк.
Вот функция, которая & ndash; Я думаю & ndash; показывает, как проверить из elisp, что Emacs определил как тип конца строки. Если это выглядит чрезмерно сложным, возможно, это так.
(defun describe-eol ()
(interactive)
(let ((eol-type (coding-system-eol-type buffer-file-coding-system)))
(when (vectorp eol-type)
(setq eol-type (coding-system-eol-type (aref eol-type 0))))
(message "Line endings are of type: %s"
(case eol-type
(0 "Unix") (1 "DOS") (2 "Mac") (t "Unknown")))))