emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Defaults for elisp-mode files


From: Stephen J. Turnbull
Subject: Defaults for elisp-mode files
Date: Thu, 04 Oct 2012 10:29:53 +0900

Stefan Monnier writes:

 > So I think in the longer term these annotations should be made
 > unnecessary because they're ugly.

`-*- coding: utf-8 -*-' should be unnecessary most of the time.  But

 > For the `utf-8', I guess we can simply set auto-coding-alist

I suppose you mean

    (set-coding-system-priority 'utf-8)

XEmacs can't set `auto-coding-list' because 'iso-2022-jp[1] has been
our standard for non-ASCII files since about 1999.  I mention this not
because compatibility is an issue here, but rather I suspect that
something similar, if unofficial, is true for Emacs.  Also, there's
probably a lot of historical user code, especially in init files, with
comments (which will be unreadable) and strings (functionality breaks
silently if they're used for matching auto-detected text) and
occasionally even identifiers in legacy encodings.

Legacy encodings (especially GB 2312, Shift JIS, and Big5 in my
experience, and I bet Russians and Ukrainians will say the same about
KOI8, etc) continue to be in heavy use on Windows and in email.

While you *can* set `auto-coding-alist', I think it will cause a lot
of pain.

 > But for the lexical-binding setting,

I think you have to live with that as long as for the foreseeable
future you're going to allow users to use implicit dynamic binding.
In other words, you shouldn't get rid of it until you actually
stop consulting the lexical-binding variable itself, and always use
lexical environments for non-special variables.

*Each* file really should contain a *prominent* statement about how
variables are evaluated, since the semantics differ.  Worse, the
semantics are determined by the *file*, not by Emacs.  That is, just
because Emacs changes its default, doesn't mean the developer will at
exactly the same time.  The developer working on the file needs that
indication.


Footnotes: 
[1]  What I really meant was iso-2022-int, but we didn't have it at
the time, and there's very little difference.  None that matters. :-)
Despite the "jp", in fact iso-2022-jp favors ASCII, not Japanese.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]