[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#14591: New keyword :local for defcustom
From: |
Juanma Barranquero |
Subject: |
bug#14591: New keyword :local for defcustom |
Date: |
Fri, 14 Jun 2013 15:06:06 +0200 |
> No.
Well, there are only two defcustom permanent-locals which are not
automatically buffer-local, and I wouldn't be surprised to discover
that they should, in fact, be. In any case, it's a corner case not
worth catering to.
=== modified file 'lisp/custom.el'
--- lisp/custom.el 2013-01-02 16:13:04 +0000
+++ lisp/custom.el 2013-06-14 12:10:30 +0000
@@ -173,6 +173,11 @@
(put symbol 'risky-local-variable value))
((eq keyword :safe)
(put symbol 'safe-local-variable value))
+ ((eq keyword :local)
+ (when (memq value '(t permanent))
+ (make-variable-buffer-local symbol))
+ (when (eq value 'permanent)
+ (put symbol 'permanent-local t)))
((eq keyword :type)
(put symbol 'custom-type (purecopy value)))
((eq keyword :options)
@@ -246,6 +251,9 @@
:risky Set SYMBOL's `risky-local-variable' property to VALUE.
:safe Set SYMBOL's `safe-local-variable' property to VALUE.
See Info node `(elisp) File Local Variables'.
+:local If VALUE is t, mark SYMBOL as automatically buffer-local.
+ If VALUE is `permanent', also set SYMBOL's `permanent-local'
+ property to t.
The following common keywords are also meaningful.
bug#14591: New keyword :local for defcustom, Juanma Barranquero, 2013/06/14
bug#14591: New keyword :local for defcustom, Stefan Monnier, 2013/06/12