From: Eli Zaretskii <eliz@gnu.org>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: emacs-devel@gnu.org
Subject: Re: [Emacs-diffs] master db828f6: Don't rely on defaults in decoding UTF-8 encoded Lisp files
Date: Fri, 25 Sep 2015 10:55:24 +0300 [thread overview]
Message-ID: <83fv23hr0z.fsf@gnu.org> (raw)
In-Reply-To: <jwva8sbbj7w.fsf-monnier+emacsdiffs@gnu.org>
> From: Stefan Monnier <monnier@iro.umontreal.ca>
> Cc: emacs-devel@gnu.org
> Date: Thu, 24 Sep 2015 17:29:38 -0400
>
> > emacs -Q
> > M-x set-locale-environment RET he_IL.ISO-8859-8 RET
> > C-x C-f doc/lispref/tips.texi RET
>
> Hmm.... I don't think this is using prefer-utf-8. `prefer-utf-8' is
> used for *.el files via file-coding-system-alist.
So we now agree that at least non-*.el files should have the coding
cookie, yes?
As for *.el files: prefer-utf-8 is too easily duped for us to have
such infinite faith in it. I can easily force a .el file to be saved
in non-UTF-8 encoding, and then it will be decoded incorrectly when
visited, if it doesn't have a coding cookie. E.g., try saving a
foo.el with the following contents:
(setq string "א“”")
using cp1255, then kill the buffer and visit it again. You will see
this instead:
(setq string "Ӕ")
Bottom line: we use prefer-utf-8 for *.el files so that the
probability of such catastrophic errors be minimized when the lazy
maintainers couldn't be bothered to add a cookie. But we don't want
to be lazy ourselves, with the files we own and control.
More generally, I think we should require any text file in the Emacs
repository that includes non-ASCII characters to have an explicit
coding cookie, so that these subtle problems don't lie low because
most Emacs contributors live in UTF-8 locales.
next prev parent reply other threads:[~2015-09-25 7:55 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20150921165211.20434.28114@vcs.savannah.gnu.org>
[not found] ` <E1Ze4K3-0005KC-5U@vcs.savannah.gnu.org>
2015-09-21 19:57 ` [Emacs-diffs] master db828f6: Don't rely on defaults in decoding UTF-8 encoded Lisp files Stefan Monnier
2015-09-21 20:07 ` Eli Zaretskii
2015-09-24 16:44 ` Eli Zaretskii
2015-09-24 21:29 ` Stefan Monnier
2015-09-25 7:55 ` Eli Zaretskii [this message]
2015-09-25 12:21 ` Stefan Monnier
2015-09-25 13:37 ` Eli Zaretskii
2015-09-25 22:32 ` Paul Eggert
2015-09-26 6:27 ` Eli Zaretskii
2015-09-26 6:32 ` Eli Zaretskii
2015-09-26 14:31 ` Paul Eggert
2015-09-26 15:15 ` Eli Zaretskii
2015-09-26 16:01 ` Paul Eggert
2015-09-26 16:09 ` David Kastrup
2015-09-26 17:26 ` Eli Zaretskii
2015-09-26 18:53 ` Paul Eggert
2015-09-26 19:35 ` Eli Zaretskii
2015-09-26 20:26 ` Chad Brown
2015-09-26 21:50 ` David Kastrup
2015-09-27 4:44 ` Paul Eggert
2015-09-27 5:29 ` David Kastrup
2015-09-27 7:38 ` Paul Eggert
2015-09-27 7:46 ` David Kastrup
2015-09-27 7:52 ` Paul Eggert
2015-09-27 9:47 ` Andreas Schwab
2015-09-27 9:54 ` David Kastrup
2015-09-27 10:03 ` Andreas Schwab
2015-09-27 10:12 ` David Kastrup
2015-09-27 11:10 ` Andreas Schwab
2015-09-27 22:48 ` Richard Stallman
2015-09-28 2:41 ` Paul Eggert
2015-09-28 6:53 ` Eli Zaretskii
2015-09-28 15:08 ` Paul Eggert
2015-09-28 15:58 ` Eli Zaretskii
2015-09-27 7:39 ` Eli Zaretskii
2015-09-27 7:52 ` Paul Eggert
2015-09-27 8:00 ` David Kastrup
2015-09-27 8:03 ` Eli Zaretskii
2015-09-27 8:29 ` Paul Eggert
2015-09-27 8:37 ` David Kastrup
2015-09-27 8:40 ` Paul Eggert
2015-09-27 8:50 ` David Kastrup
2015-09-27 10:14 ` Eli Zaretskii
2015-09-27 8:57 ` Eli Zaretskii
2015-09-27 7:34 ` Eli Zaretskii
2015-09-27 16:03 ` Chad Brown
2015-09-27 18:41 ` Eli Zaretskii
2015-09-27 19:52 ` Chad Brown
2015-09-27 20:52 ` Eli Zaretskii
2015-09-26 20:32 ` Paul Eggert
2015-09-27 7:27 ` Eli Zaretskii
2015-09-27 7:42 ` David Kastrup
2015-09-27 9:20 ` Rustom Mody
2015-09-27 10:13 ` Eli Zaretskii
2015-09-27 20:21 ` Paul Eggert
2015-09-27 21:04 ` Eli Zaretskii
2015-09-27 8:22 ` Paul Eggert
2015-09-27 8:55 ` Eli Zaretskii
2015-09-27 9:56 ` Andreas Schwab
2015-09-27 10:04 ` David Kastrup
2015-09-27 10:16 ` Eli Zaretskii
2015-09-27 10:36 ` Eli Zaretskii
2015-09-27 10:59 ` Eli Zaretskii
2015-09-27 20:05 ` Paul Eggert
2015-09-26 17:25 ` Eli Zaretskii
2015-09-26 18:51 ` Paul Eggert
2015-09-27 0:12 ` stephen
2015-09-27 4:44 ` Paul Eggert
2015-09-27 6:20 ` stephen
2015-09-27 8:34 ` Paul Eggert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83fv23hr0z.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=monnier@iro.umontreal.ca \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).