From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Ken Manheimer" Newsgroups: gmane.emacs.devel Subject: Re: allout patch - more safe-local-variables, plus autoloads Date: Wed, 19 Apr 2006 19:08:00 -0400 Message-ID: <2cd46e7f0604191608o52f500ferc1955a131bd5fde4@mail.gmail.com> References: <2cd46e7f0604171211s5ef0e820gebc4e68b2ce2606d@mail.gmail.com> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_12380_25017011.1145488080335" X-Trace: sea.gmane.org 1145488167 20610 80.91.229.2 (19 Apr 2006 23:09:27 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 19 Apr 2006 23:09:27 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Apr 20 01:09:21 2006 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1FWLnG-0000H3-Fc for ged-emacs-devel@m.gmane.org; Thu, 20 Apr 2006 01:09:06 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FWLnF-0006Zk-Bt for ged-emacs-devel@m.gmane.org; Wed, 19 Apr 2006 19:09:05 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1FWLmF-0005ce-CK for emacs-devel@gnu.org; Wed, 19 Apr 2006 19:08:03 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1FWLmE-0005bN-Ik for emacs-devel@gnu.org; Wed, 19 Apr 2006 19:08:02 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FWLmE-0005b3-60 for emacs-devel@gnu.org; Wed, 19 Apr 2006 19:08:02 -0400 Original-Received: from [64.233.182.185] (helo=nproxy.gmail.com) by monty-python.gnu.org with esmtp (Exim 4.52) id 1FWLnQ-00041y-CI for emacs-devel@gnu.org; Wed, 19 Apr 2006 19:09:16 -0400 Original-Received: by nproxy.gmail.com with SMTP id x30so940863nfb for ; Wed, 19 Apr 2006 16:08:00 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:references; b=oT+ARL2vdnxPTAmNP5SoVfxskajU14XICx0cLZOX0hK9JU6e5MHwT5XHkg9HwlX/Ga9fj83xUaOQ8i99dtzdNFt6IpGGiZ9MhbxmLTlVTsBBY0fDczKBoB278XSIq4ffiXzo1bZwy40cw8CeF5xAe7mVfLDk0oZ+n4wrFLUoBZs= Original-Received: by 10.49.38.10 with SMTP id q10mr218245nfj; Wed, 19 Apr 2006 16:08:00 -0700 (PDT) Original-Received: by 10.49.51.17 with HTTP; Wed, 19 Apr 2006 16:08:00 -0700 (PDT) Original-To: rms@gnu.org In-Reply-To: X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:53113 Archived-At: ------=_Part_12380_25017011.1145488080335 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On 4/18/06, Richard Stallman wrote: > I see that you've used t as the property value. > That allows any type of value. > > Most of these variables are supposed to be strings. > I don't know what would happen if they were set to other types; > did you check each one? > > It would be safer to use stringp as the property value > for a variable that is supposed to be a string. i was too casual when i read the info about safe-local-variable. i've revised my patch to better discriminate values, where appropriate.=20 the revised patch and the ChangeLog are attached. -- ken manheimer ken.manheimer@gmail.com http://myriadicity.net ------=_Part_12380_25017011.1145488080335 Content-Type: text/plain; name=allout-patch.txt; charset=us-ascii Content-Transfer-Encoding: 7bit X-Attachment-Id: f_em7e8t7l Content-Disposition: attachment; filename="allout-patch.txt" Index: allout.el =================================================================== RCS file: /sources/emacs/emacs/lisp/allout.el,v retrieving revision 1.71 diff -u -u -r1.71 allout.el --- allout.el 13 Apr 2006 10:44:37 -0000 1.71 +++ allout.el 19 Apr 2006 23:02:28 -0000 @@ -84,8 +84,6 @@ (require 'pgg-gpg) (require 'overlay) )) -(autoload 'pgg-gpg-symmetric-key-p "pgg-gpg" - "True if decoded armor MESSAGE-KEYS has symmetric encryption indicator.") ;;;_* USER CUSTOMIZATION VARIABLES: @@ -199,6 +197,8 @@ :type 'boolean :group 'allout) (make-variable-buffer-local 'allout-show-bodies) +;;;###autoload +(put 'allout-show-bodies 'safe-local-variable t) ;;;_ = allout-header-prefix (defcustom allout-header-prefix "." @@ -212,6 +212,8 @@ :type 'string :group 'allout) (make-variable-buffer-local 'allout-header-prefix) +;;;###autoload +(put 'allout-header-prefix 'safe-local-variable 'stringp) ;;;_ = allout-primary-bullet (defcustom allout-primary-bullet "*" "Bullet used for top-level outline topics. @@ -227,6 +229,8 @@ :type 'string :group 'allout) (make-variable-buffer-local 'allout-primary-bullet) +;;;###autoload +(put 'allout-primary-bullet 'safe-local-variable 'stringp) ;;;_ = allout-plain-bullets-string (defcustom allout-plain-bullets-string ".," "*The bullets normally used in outline topic prefixes. @@ -241,6 +245,8 @@ :type 'string :group 'allout) (make-variable-buffer-local 'allout-plain-bullets-string) +;;;###autoload +(put 'allout-plain-bullets-string 'safe-local-variable 'stringp) ;;;_ = allout-distinctive-bullets-string (defcustom allout-distinctive-bullets-string "*+-=>()[{}&!?#%\"X@$~_\\:;^" "*Persistent outline header bullets used to distinguish special topics. @@ -274,6 +280,8 @@ :type 'string :group 'allout) (make-variable-buffer-local 'allout-distinctive-bullets-string) +;;;###autoload +(put 'allout-distinctive-bullets-string 'safe-local-variable 'stringp) ;;;_ = allout-use-mode-specific-leader (defcustom allout-use-mode-specific-leader t @@ -305,6 +313,8 @@ (const allout-mode-leaders) (const comment-start)) :group 'allout) +;;;###autoload +(put 'allout-use-mode-specific-leader 'safe-local-variable t) ;;;_ = allout-mode-leaders (defvar allout-mode-leaders '() "Specific allout-prefix leading strings per major modes. @@ -330,6 +340,8 @@ :type 'boolean :group 'allout) (make-variable-buffer-local 'allout-old-style-prefixes) +;;;###autoload +(put 'allout-old-style-prefixes 'safe-local-variable t) ;;;_ = allout-stylish-prefixes - alternating bullets (defcustom allout-stylish-prefixes t "*Do fancy stuff with topic prefix bullets according to level, etc. @@ -376,6 +388,8 @@ :type 'boolean :group 'allout) (make-variable-buffer-local 'allout-stylish-prefixes) +;;;###autoload +(put 'allout-stylish-prefixes 'safe-local-variable t) ;;;_ = allout-numbered-bullet (defcustom allout-numbered-bullet "#" @@ -388,6 +402,9 @@ :type '(choice (const nil) string) :group 'allout) (make-variable-buffer-local 'allout-numbered-bullet) +;;;###autoload +(put 'allout-numbered-bullet 'safe-local-variable + (lambda (x) (or (not x) (stringp x)))) ;;;_ = allout-file-xref-bullet (defcustom allout-file-xref-bullet "@" "*Bullet signifying file cross-references, for `allout-resolve-xref'. @@ -395,6 +412,9 @@ Set this var to the bullet you want to use for file cross-references." :type '(choice (const nil) string) :group 'allout) +;;;###autoload +(put 'allout-file-xref-bullet 'safe-local-variable + (lambda (x) (or (not x) (stringp x)))) ;;;_ = allout-presentation-padding (defcustom allout-presentation-padding 2 "*Presentation-format white-space padding factor, for greater indent." @@ -402,6 +422,8 @@ :group 'allout) (make-variable-buffer-local 'allout-presentation-padding) +;;;###autoload +(put 'allout-presentation-padding 'safe-local-variable 'integerp) ;;;_ = allout-abbreviate-flattened-numbering (defcustom allout-abbreviate-flattened-numbering nil @@ -455,11 +477,16 @@ :group 'allout) ;;;_ + Topic encryption +;;;_ = allout-encryption group +(defgroup allout-encryption nil + "Settings for topic encryption features of allout outliner." + :group 'allout) ;;;_ = allout-topic-encryption-bullet (defcustom allout-topic-encryption-bullet "~" "*Bullet signifying encryption of the entry's body." :type '(choice (const nil) string) - :group 'allout) + :version "22.0" + :group 'allout-encryption) ;;;_ = allout-passphrase-verifier-handling (defcustom allout-passphrase-verifier-handling t "*Enable use of symmetric encryption passphrase verifier if non-nil. @@ -467,7 +494,8 @@ See the docstring for the `allout-enable-file-variable-adjustment' variable for details about allout ajustment of file variables." :type 'boolean - :group 'allout) + :version "22.0" + :group 'allout-encryption) (make-variable-buffer-local 'allout-passphrase-verifier-handling) ;;;_ = allout-passphrase-hint-handling (defcustom allout-passphrase-hint-handling 'always @@ -482,7 +510,8 @@ :type '(choice (const always) (const needed) (const disabled)) - :group 'allout) + :version "22.0" + :group 'allout-encryption) (make-variable-buffer-local 'allout-passphrase-hint-handling) ;;;_ = allout-encrypt-unencrypted-on-saves (defcustom allout-encrypt-unencrypted-on-saves t @@ -514,7 +543,8 @@ :type '(choice (const :tag "Yes" t) (const :tag "All except current topic" except-current) (const :tag "No" nil)) - :group 'allout) + :version "22.0" + :group 'allout-encryption) (make-variable-buffer-local 'allout-encrypt-unencrypted-on-saves) ;;;_ + Miscellaneous customization @@ -585,6 +615,8 @@ :type 'boolean :group 'allout) (make-variable-buffer-local 'allout-use-hanging-indents) +;;;###autoload +(put 'allout-use-hanging-indents 'safe-local-variable t) ;;;_ = allout-reindent-bodies (defcustom allout-reindent-bodies (if allout-use-hanging-indents @@ -602,6 +634,9 @@ :group 'allout) (make-variable-buffer-local 'allout-reindent-bodies) +;;;###autoload +(put 'allout-reindent-bodies 'safe-local-variable + (lambda (x) (member x '(nil t text force)))) ;;;_ = allout-enable-file-variable-adjustment (defcustom allout-enable-file-variable-adjustment t @@ -1053,7 +1088,8 @@ the emacs buffer state, if file variable adjustments are enabled. See `allout-enable-file-variable-adjustment' for details about that.") (make-variable-buffer-local 'allout-passphrase-verifier-string) -(put 'allout-passphrase-verifier-string 'safe-local-variable t) +;;;###autoload +(put 'allout-passphrase-verifier-string 'safe-local-variable 'stringp) ;;;_ = allout-passphrase-hint-string (defvar allout-passphrase-hint-string "" "Variable used to retain reminder string for file's encryption passphrase. @@ -1065,8 +1101,9 @@ state, if file variable adjustments are enabled. See `allout-enable-file-variable-adjustment' for details about that.") (make-variable-buffer-local 'allout-passphrase-hint-string) -(put 'allout-passphrase-hint-string 'safe-local-variable t) (setq-default allout-passphrase-hint-string "") +;;;###autoload +(put 'allout-passphrase-hint-string 'safe-local-variable 'stringp) ;;;_ = allout-after-save-decrypt (defvar allout-after-save-decrypt nil "Internal variable, is nil or has the value of two points: ------=_Part_12380_25017011.1145488080335 Content-Type: text/plain; name=allout-ChangeLog.txt; charset=us-ascii Content-Transfer-Encoding: 7bit X-Attachment-Id: f_em7eco8y Content-Disposition: attachment; filename="allout-ChangeLog.txt" 2006-04-17 Ken Manheimer * allout.el: Remove local autoload declaration for pgg-gpg-symmetric-key-p, since that's now done in pgg-gpg.el. (allout-show-bodies, allout-header-prefix, allout-primary-bullet, allout-plain-bullets-string, allout-distinctive-bullets-string, allout-use-mode-specific-leader, allout-old-style-prefixes, allout-stylish-prefixes, allout-numbered-bullet, allout-file-xref-bullet, allout-presentation-padding, allout-use-hanging-indents, allout-reindent-bodies): Mark as safe-local-variable with suitable value spec, and add autoload cookie for loaddefs inclusion. ------=_Part_12380_25017011.1145488080335 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel ------=_Part_12380_25017011.1145488080335--