Mercurial > emacs
changeset 72149:dd56da5d679d
(customize-package-emacs-version-alist): Doc fix.
(customize-package-emacs-version): Change msg when pkg has no entry.
(custom-no-edit): On a button, do like widget-button-press.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 28 Jul 2006 03:31:18 +0000 |
parents | b5810d0cd476 |
children | 91f3bedce8bc |
files | lisp/cus-edit.el |
diffstat | 1 files changed, 27 insertions(+), 19 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/cus-edit.el Thu Jul 27 23:47:42 2006 +0000 +++ b/lisp/cus-edit.el Fri Jul 28 03:31:18 2006 +0000 @@ -1087,18 +1087,24 @@ ;; Packages will update this variable, so make it available. ;;;###autoload (defvar customize-package-emacs-version-alist nil - "Alist mapping versions of Emacs to versions of a package. -These package versions are listed in the :package-version -keyword used in `defcustom', `defgroup', and `defface'. Its -elements look like this: + "Alist mapping versions of a package to Emacs versions. +We use this for packages that have their own names, but are released +as part of Emacs itself. + +Each elements looks like this: (PACKAGE (PVERSION . EVERSION)...) -For each PACKAGE, which is a symbol, there are one or more -elements that contain a package version PVERSION with an -associated Emacs version EVERSION. These versions are strings. -For example, the MH-E package updates this alist with the -following: +Here PACKAGE is the name of a package, as a symbol. After +PACKAGE come one or more elements, each associating a +package version PVERSION with the first Emacs version +EVERSION in which it (or a subsequent version of PACKAGE) +was first released. Both PVERSION and EVERSION are strings. +PVERSION should be a string that this package used in +the :package-version keyword for `defcustom', `defgroup', +and `defface'. + +For example, the MH-E package updates this alist as follows: (add-to-list 'customize-package-emacs-version-alist '(MH-E (\"6.0\" . \"22.1\") (\"6.1\" . \"22.1\") @@ -1173,11 +1179,10 @@ since-version)))) (defun customize-package-emacs-version (symbol package-version) - "Return Emacs version of SYMBOL. -PACKAGE-VERSION has the form (PACKAGE . VERSION). The VERSION of -PACKAGE is looked up in the associated list + "Return the Emacs version in which SYMBOL's meaning last changed. +PACKAGE-VERSION has the form (PACKAGE . VERSION). We use `customize-package-emacs-version-alist' to find the version of -Emacs that is associated with it." +Emacs that is associated with version VERSION of PACKAGE." (let (package-versions emacs-version) ;; Use message instead of error since we want user to be able to ;; see the rest of the symbols even if a package author has @@ -1193,9 +1198,9 @@ (cdr package-version) "customize-package-emacs-version-alist"))) (t - (message "Package %s neglected to update %s" + (message "Package %s version %s lists no corresponding Emacs version" (car package-version) - "customize-package-emacs-version-alist"))) + (cdr package-version)))) emacs-version)) (defun customize-version-lessp (version1 version2) @@ -4444,10 +4449,13 @@ map) "Keymap for `custom-mode'.") -(defun custom-no-edit () - "Refuse to allow editing of Custom buffer." - (interactive) - (error "You can't edit this part of the Custom buffer")) +(defun custom-no-edit (pos &optional event) + "Invoke button at POS, or refuse to allow editing of Custom buffer." + (interactive "@d") + (let ((button (get-char-property pos 'button))) + (if button + (widget-apply-action button event) + (error "You can't edit this part of the Custom buffer")))) (easy-menu-define Custom-mode-menu custom-mode-map