diff options
author | Richard M. Stallman <rms@gnu.org> | 1997-04-10 05:58:24 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1997-04-10 05:58:24 +0000 |
commit | 2c66f5d19633aaed36d7da8722dd06a2cc108132 (patch) | |
tree | febba811a7e79eaf50c762894c20fa63c03197c3 /lisp/emacs-lisp/lisp-mode.el | |
parent | 328c069714ae705f93fc09607e47f5c19ddf2353 (diff) | |
download | emacs-2c66f5d19633aaed36d7da8722dd06a2cc108132.tar.gz emacs-2c66f5d19633aaed36d7da8722dd06a2cc108132.tar.bz2 emacs-2c66f5d19633aaed36d7da8722dd06a2cc108132.zip |
(eval-defun): For defcustom, always set the value.
Diffstat (limited to 'lisp/emacs-lisp/lisp-mode.el')
-rw-r--r-- | lisp/emacs-lisp/lisp-mode.el | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el index ebdee0673ee..be328b30329 100644 --- a/lisp/emacs-lisp/lisp-mode.el +++ b/lisp/emacs-lisp/lisp-mode.el @@ -329,9 +329,14 @@ With argument, insert value in current buffer after the defun." (end-of-defun) (beginning-of-defun) (read (current-buffer))))) - (if (and (eq (car form) 'defvar) - (cdr-safe (cdr-safe form))) - (setq form (cons 'defconst (cdr form)))) + (cond ((and (eq (car form) 'defvar) + (cdr-safe (cdr-safe form))) + ;; Force variable to be bound. + (setq form (cons 'defconst (cdr form)))) + ((and (eq (car form) 'defcustom) + (default-boundp (nth 1 form))) + ;; Force variable to be bound. + (set-default (nth 1 form) (eval (nth 2 form))))) (prin1 (eval form)))) (defun lisp-comment-indent () |