Variable: local-enable-local-variables
local-enable-local-variables is a variable defined in files.el.gz.
Value
t
Documentation
Like enable-local-variables, except for major mode in a -*- line.
The meaningful values are nil and non-nil. The default is non-nil. It should be set in a buffer-local fashion.
Setting this to nil has the same effect as setting enable-local-variables
to nil, except that it does not ignore any mode: setting in a -*- line.
Unless this difference matters to you, you should set enable-local-variables
instead of this variable.
Source Code
;; Defined in /usr/src/emacs/lisp/files.el.gz
;; This is an odd variable IMO.
;; You might wonder why it is needed, when we could just do:
;; (setq-local enable-local-variables nil)
;; These two are not precisely the same.
;; Setting this variable does not cause -*- mode settings to be
;; ignored, whereas setting enable-local-variables does.
;; Only three places in Emacs use this variable: tar and arc modes,
;; and rmail. The first two don't need it. They already use
;; inhibit-local-variables-regexps, which is probably enough, and
;; could also just set enable-local-variables locally to nil.
;; Them setting it has the side-effect that dir-locals cannot apply to
;; eg tar files (?). FIXME Is this appropriate?
;; AFAICS, rmail is the only thing that needs this, and the only
;; reason it uses it is for BABYL files (which are obsolete).
;; These contain "-*- rmail -*-" in the first line, which rmail wants
;; to respect, so that find-file on a BABYL file will switch to
;; rmail-mode automatically (this is nice, but hardly essential,
;; since most people are used to explicitly running a command to
;; access their mail; M-x gnus etc). Rmail files may happen to
;; contain Local Variables sections in messages, which Rmail wants to
;; ignore. So AFAICS the only reason this variable exists is for a
;; minor convenience feature for handling of an obsolete Rmail file format.
(defvar local-enable-local-variables t
"Like `enable-local-variables', except for major mode in a -*- line.
The meaningful values are nil and non-nil. The default is non-nil.
It should be set in a buffer-local fashion.
Setting this to nil has the same effect as setting `enable-local-variables'
to nil, except that it does not ignore any mode: setting in a -*- line.
Unless this difference matters to you, you should set `enable-local-variables'
instead of this variable.")