--- Begin Message ---
Subject: |
24.3.50; Some *-dos coding systems remove characters before LF for some files. |
Date: |
Sat, 27 Apr 2013 21:03:03 +0900 |
User-agent: |
Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM/1.14.9 (Gojō) APEL/10.8 EasyPG/1.0.0 Emacs/24.3.50 (i686-pc-cygwin) MULE/6.0 (HANACHIRUSATO) |
When I evaluate the below code on trunk, I get different result from 24.3.
(let ((file (expand-file-name "HELLO" data-directory)))
(mapcar
(lambda (coding)
(with-temp-buffer
(let ((coding-system-for-read coding))
(insert-file-contents file))
(cons coding
(buffer-substring
(point-min) (progn (forward-line 1) (point))))))
'(iso-8859-1-unix
iso-8859-1-dos
raw-text-unix
raw-text-dos
sjis-unix
sjis-dos
iso-2022-7bit-unix
iso-2022-7bit-dos)))
->
((iso-8859-1-unix . "This is a list of ways to say hello in various languages.
") (iso-8859-1-dos . "This is a list of ways to say hello in various languages
") (raw-text-unix . "This is a list of ways to say hello in various languages.
") (raw-text-dos . "This is a list of ways to say hello in various languages
") (sjis-unix . "This is a list of ways to say hello in various languages.
") (sjis-dos . "This is a list of ways to say hello in various languages
") (iso-2022-7bit-unix . "This is a list of ways to say hello in various
languages.
") (iso-2022-7bit-dos . "This is a list of ways to say hello in various
languages.
"))
Result of Emacs 23.4 is below.
((iso-8859-1-unix . "This is a list of ways to say hello in various languages.
") (iso-8859-1-dos . "This is a list of ways to say hello in various languages.
") (raw-text-unix . "This is a list of ways to say hello in various languages.
") (raw-text-dos . "This is a list of ways to say hello in various languages.
") (sjis-unix . "This is a list of ways to say hello in various languages.
") (sjis-dos . "This is a list of ways to say hello in various languages.
") (iso-2022-7bit-unix . "This is a list of ways to say hello in various
languages.
") (iso-2022-7bit-dos . "This is a list of ways to say hello in various
languages.
"))
We can confirm manually with universal-coding-system-argument and
find-file command. The problem seems to depend the content of the
file and the kind of coding system. For example, it does not occur
with NEWS file. Of course, it is bad manner to load the content of
the file with incorrect coding system. But I think this current
behavior is very confusing.
--
Kazuhiro Ito
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#14287: 24.3.50; Some *-dos coding systems remove characters before LF for some files. |
Date: |
Sun, 28 Apr 2013 21:22:16 +0300 |
> Date: Sun, 28 Apr 2013 07:19:56 +0900
> From: Kazuhiro Ito <address@hidden>
> Cc: address@hidden
>
> > > When I evaluate the below code on trunk, I get different result from 24.3.
> > >
> > > (let ((file (expand-file-name "HELLO" data-directory)))
> > > (mapcar
> > > (lambda (coding)
> > > (with-temp-buffer
> > > (let ((coding-system-for-read coding))
> > > (insert-file-contents file))
> > > (cons coding
> > > (buffer-substring
> > > (point-min) (progn (forward-line 1) (point))))))
> > > '(iso-8859-1-unix
> > > iso-8859-1-dos
> > > raw-text-unix
> > > raw-text-dos
> > > sjis-unix
> > > sjis-dos
> > > iso-2022-7bit-unix
> > > iso-2022-7bit-dos)))
> > >
> > > ->
> > >
> > > ((iso-8859-1-unix . "This is a list of ways to say hello in various
> > > languages.
> > > ") (iso-8859-1-dos . "This is a list of ways to say hello in various
> > > languages
> >
> > Does the patch below fix that?
>
> I confirmed your patch fixed the problem. Thank you.
Thanks, installed.
--- End Message ---