[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: add info about safe-local-variable to describe-variable
From: |
Reiner Steib |
Subject: |
Re: add info about safe-local-variable to describe-variable |
Date: |
Thu, 11 May 2006 15:36:05 +0200 |
User-agent: |
Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.50 (gnu/linux) |
On Wed, May 10 2006, Ken Manheimer wrote:
> On 5/10/06, Reiner Steib <address@hidden> wrote:
>> ;;;###autoload
>> (put 'allout-numbered-bullet 'safe-local-variable
>> (lambda (x) (or (not x) (stringp x))))
>>
>> ... instead of...
>>
>> ;;;###autoload(put 'allout-numbered-bullet 'safe-local-variable (lambda (x)
>> (or (not x) (stringp x))))
>>
>> ... (and similar for other many other variables) in `allout.el'.
>
> i haven't seen some of this conversation (i looked in the archive, and
> these messages aren't there yet), and i'm not clear whether something
> is being requested here.
[ The archives on gmane.org are updated as soon as the message arrives
from the list:
http://news.gmane.org/gmane.emacs.devel
http://news.gmane.org/gmane.emacs.pretest.bugs ]
> i deliberately chose to use the form that defines the variables in the
> file's bytecode, as well as in loaddefs, because i want to be able to
> use the most recent version of allout in versions of emacs that are
> not built with allout (eg, the old emacs version i'm running on my
> zaurus). i would like to be able to use the same source code in such
> cases. (i imagine other people might be in the same situation.)
AFAICS, Emacs 21 doesn't care about the safe-local-variable properties
in the first place, so you there no need for backward compatibility
here. (I don't think we should try to be backward compatible with
older CVS versions.)
> i don't want to make allout objectionable for distribution with emacs,
> and am willing to conform to the conventions, if necessary. is having
> the definitions exist only in loaddefs being asked, or will it be
> enough to have the active definitions in allout as well, but quote the
> lambda expressions so they're not byte-compiled (and so don't clutter
> the help)?
For Emacs 22, Richard recommended not to execute it again when the
file is loaded, i.e. use...
;;;###autoload(put '... 'safe-local-variable ...)
See <http://thread.gmane.org/gmane.emacs.devel/52972/focus=53151>.
On Wed, May 10 2006, Ken Manheimer wrote:
> On 5/10/06, Reiner Steib <address@hidden> wrote:
>> On Wed, May 10 2006, Stefan Monnier wrote:
>>
>> [ (lambda (x) (or (not x) (stringp x))) ]
>> > Actually, we should use string-or-null-p here.
>>
>> ACK. And (member x (quote (t nil))) should be booleanp.
>
> i can make those changes. (booleanp must be rather new addition -
> it's not in my CVS emacs built a week and a half ago.)
Stefan installed it on 2006-04-29.
>> But there are also expressions in `allout.el' where no predefined
>> predicate exists (AFAICS):
>>
>> allout-use-mode-specific-leader
(lambda (x) (or (member x '(t nil)) (stringp x)))
I'd rewrite this as...
(lambda (x) (or (booleanp x) (stringp x)))
>> allout-reindent-bodies
(lambda (x) (member x '(nil t text force)))
>> allout-layout
(lambda (x) (or (numberp x) (listp x) (integerp x)
(member x '(: * + -))))
> is it necessary to have a predefined predicate in all cases, or will
> quoting the lambda be sufficient? i could define functions to be used
> as predicates, and have them autoloaded, but i see no particular gain
> there.
I don't think it would be useful to define functions for these
predicates. If you put them inside the autoload comment, you don't
need to quote them. (Of course this is only _my_ opinion; maybe you
should wait for other comments before working on it.)
For completeness, here is a list of all safe-local-variable lambda
expressions in `loaddefs.el':
(lambda (x) (member x (quote (nil t text force)))); allout-reindent-bodies
==> no need for a defun, but use autoload comment.
(lambda (x) (member x (quote (t nil)))); allout-old-style-prefixes
(lambda (x) (member x (quote (t nil)))); allout-show-bodies
(lambda (x) (member x (quote (t nil)))); allout-stylish-prefixes
(lambda (x) (member x (quote (t nil)))); allout-use-hanging-indents
==> booleanp
(lambda (x) (memq x '(nil t exclusive))); ispell-check-comments
==> no need for a defun
(lambda (x) (or (member x (quote (t nil))) (stringp x)));
allout-use-mode-specific-leader
==> no need for a defun, but use autoload comment.
(lambda (x) (or (not x) (stringp x))); allout-file-xref-bullet
(lambda (x) (or (not x) (stringp x))); allout-numbered-bullet
==> string-or-null-p
(lambda (x) (or (numberp x) (listp x) (integerp x) (member x (quote (: * +
-))))); allout-layout
==> no need for a defun, but use autoload comment.
(lambda (x) (or (stringp x) (symbolp x))); reftex-fref-is-default
(lambda (x) (or (stringp x) (symbolp x))); reftex-vref-is-default
==> no need for a defun; If we'd have more of this, we could add
`string-or-symbol-p'.
> (please cc me in followups in this thread...)
[ Done. You may lookup the sub-thread here:
http://thread.gmane.org/gmane.emacs.pretest.bugs/11847/focus=11953 ]
Bye, Reiner.
--
,,,
(o o)
---ooO-(_)-Ooo--- | PGP key available | http://rsteib.home.pages.de/
- Re: add info about safe-local-variable to describe-variable, (continued)
- Re: add info about safe-local-variable to describe-variable, Johan Bockgård, 2006/05/13
- Re: add info about safe-local-variable to describe-variable, Reiner Steib, 2006/05/14
- Message not available
- Re: add info about safe-local-variable to describe-variable, Ken Manheimer, 2006/05/15
- Re: add info about safe-local-variable to describe-variable, Reiner Steib, 2006/05/15
- Re: add info about safe-local-variable to describe-variable, Ken Manheimer, 2006/05/15
- Re: add info about safe-local-variable to describe-variable, Reiner Steib, 2006/05/16
- Re: add info about safe-local-variable to describe-variable, Richard Stallman, 2006/05/10
- Re: add info about safe-local-variable to describe-variable, Stefan Monnier, 2006/05/11
- Re: add info about safe-local-variable to describe-variable, Richard Stallman, 2006/05/12
- Re: add info about safe-local-variable to describe-variable, Ken Manheimer, 2006/05/10
- Re: add info about safe-local-variable to describe-variable,
Reiner Steib <=
- Re: add info about safe-local-variable to describe-variable, Kim F. Storm, 2006/05/11
- Re: add info about safe-local-variable to describe-variable, Stefan Monnier, 2006/05/11
- Re: add info about safe-local-variable to describe-variable, Richard Stallman, 2006/05/11
- Re: add info about safe-local-variable to describe-variable, Luc Teirlinck, 2006/05/10
- Re: add info about safe-local-variable to describe-variable, Richard Stallman, 2006/05/10
- Re: add info about safe-local-variable to describe-variable, Reiner Steib, 2006/05/11
- Re: add info about safe-local-variable to describe-variable, Richard Stallman, 2006/05/12
- Re: add info about safe-local-variable to describe-variable, Reiner Steib, 2006/05/12
- Re: add info about safe-local-variable to describe-variable, Richard Stallman, 2006/05/13
- Re: add info about safe-local-variable to describe-variable, Luc Teirlinck, 2006/05/10