diff options
author | Karoly Lorentey <lorentey@elte.hu> | 2006-10-14 17:36:28 +0000 |
---|---|---|
committer | Karoly Lorentey <lorentey@elte.hu> | 2006-10-14 17:36:28 +0000 |
commit | 12b6af5c7ed2cfdb9783312bf890cf1e6c80c67a (patch) | |
tree | 1775f9fd1c92defd8b61304a08ec00da95bc4539 /lisp/cus-edit.el | |
parent | 3f87f67ee215ffeecbd2f53bd7f342cdf03f47df (diff) | |
parent | f763da8d0808af7c80d72bc586bf4fcf50b37ddd (diff) | |
download | emacs-12b6af5c7ed2cfdb9783312bf890cf1e6c80c67a.tar.gz |
Merged from emacs@sv.gnu.org
Patches applied:
* emacs@sv.gnu.org/emacs--devo--0--patch-413
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-414
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-415
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-416
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-417
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-418
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-419
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-420
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-421
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-422
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-423
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-424
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-425
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-426
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-427
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-428
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-429
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-430
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-431
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-432
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-433
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-434
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-435
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-436
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-437
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-438
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-439
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-440
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-441
lisp/url/url-methods.el: Fix format error when http_proxy is empty string
* emacs@sv.gnu.org/emacs--devo--0--patch-442
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-443
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-444
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-445
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-446
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-447
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-448
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-449
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-450
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-451
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-452
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-453
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-454
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-455
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-456
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-457
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-458
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-459
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-460
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-461
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-462
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-463
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-464
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-465
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-466
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-467
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-468
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-469
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-470
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-471
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-472
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-473
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-128
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-129
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-130
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-131
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-132
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-133
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-134
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-135
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-136
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-137
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-138
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-139
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-140
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-141
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-142
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-143
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-144
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-145
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-146
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-147
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-148
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-149
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-582
Diffstat (limited to 'lisp/cus-edit.el')
-rw-r--r-- | lisp/cus-edit.el | 59 |
1 files changed, 43 insertions, 16 deletions
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el index 609b5572a08..ab3f7ec2b92 100644 --- a/lisp/cus-edit.el +++ b/lisp/cus-edit.el @@ -389,7 +389,7 @@ :link '(custom-manual "(emacs)Undo") :group 'editing) -(defgroup modeline nil +(defgroup mode-line nil "Content of the modeline." :group 'environment) @@ -1521,13 +1521,18 @@ Otherwise use brackets." (widget-insert description)) (widget-insert (format ". %s buttons; type RET or click mouse-1 to actuate one. -Editing a setting changes only the text in the buffer. -Use the setting's State button to set it or save changes in it. -Saving a change normally works by editing your Emacs init file. -See " +Editing a setting changes only the text in the buffer." (if custom-raised-buttons "`Raised' text indicates" "Square brackets indicate"))) + (if init-file-user + (widget-insert " +Use the setting's State button to set it or save changes in it. +Saving a change normally works by editing your Emacs init file.") + (widget-insert " +\nSince you started Emacs with `-q', which inhibits use of the +Emacs init file, you cannot save settings into the Emacs init file.")) + (widget-insert "\nSee ") (widget-create 'custom-manual :tag "Custom file" "(emacs)Saving Customizations") @@ -4152,6 +4157,8 @@ if only the first line of the docstring is shown.")) recentf-exclude))) (old-buffer (find-buffer-visiting filename))) (with-current-buffer (or old-buffer (find-file-noselect filename)) + (unless (eq major-mode 'emacs-lisp-mode) + (emacs-lisp-mode)) (let ((inhibit-read-only t)) (custom-save-variables) (custom-save-faces)) @@ -4255,19 +4262,31 @@ This function does not save the buffer." (let ((spec (car-safe (get symbol 'theme-value))) (value (get symbol 'saved-value)) (requests (get symbol 'custom-requests)) - (now (not (or (custom-variable-p symbol) - (and (not (boundp symbol)) - (not (eq (get symbol 'force-value) - 'rogue)))))) + (now (and (not (custom-variable-p symbol)) + (or (boundp symbol) + (eq (get symbol 'force-value) + 'rogue)))) (comment (get symbol 'saved-variable-comment))) - ;; Check `requests'. + ;; Check REQUESTS for validity. (dolist (request requests) (when (and (symbolp request) (not (featurep request))) (message "Unknown requested feature: %s" request) (setq requests (delq request requests)))) + ;; Is there anything customized about this variable? (when (or (and spec (eq (car spec) 'user)) comment (and (null spec) (get symbol 'saved-value))) + ;; Output an element for this variable. + ;; It has the form (SYMBOL VALUE-FORM NOW REQUESTS COMMENT). + ;; SYMBOL is the variable name. + ;; VALUE-FORM is an expression to return the customized value. + ;; NOW if non-nil means always set the variable immediately + ;; when the customizations are reloaded. This is used + ;; for rogue variables + ;; REQUESTS is a list of packages to load before setting the + ;; variable. Each element of it will be passed to `require'. + ;; COMMENT is whatever comment the user has specified + ;; with the customize facility. (unless (bolp) (princ "\n")) (princ " '(") @@ -4383,14 +4402,15 @@ This function does not save the buffer." "Ignoring WIDGET, create a menu entry for customization group SYMBOL." `( ,(custom-unlispify-menu-entry symbol t) :filter (lambda (&rest junk) - (let ((menu (custom-menu-create ',symbol))) + (let* ((menu (custom-menu-create ',symbol))) (if (consp menu) (cdr menu) menu))))) ;;;###autoload (defun custom-menu-create (symbol) "Create menu for customization group SYMBOL. The menu is in a format applicable to `easy-menu-define'." - (let* ((item (vector (custom-unlispify-menu-entry symbol) + (let* ((deactivate-mark nil) + (item (vector (custom-unlispify-menu-entry symbol) `(customize-group ',symbol) t))) (if (and (or (not (boundp 'custom-menu-nesting)) @@ -4435,8 +4455,8 @@ The format is suitable for use with `easy-menu-define'." ;; Actually, this misfeature of dense keymaps was fixed on 2001-11-26. (let ((map (make-keymap))) (set-keymap-parent map widget-keymap) - (define-key map [remap self-insert-command] 'custom-no-edit) - (define-key map "\^m" 'custom-newline) + (define-key map [remap self-insert-command] 'Custom-no-edit) + (define-key map "\^m" 'Custom-newline) (define-key map " " 'scroll-up) (define-key map "\177" 'scroll-down) (define-key map "\C-c\C-c" 'Custom-set) @@ -4448,12 +4468,12 @@ The format is suitable for use with `easy-menu-define'." map) "Keymap for `custom-mode'.") -(defun custom-no-edit (pos &optional event) +(defun Custom-no-edit (pos &optional event) "Invoke button at POS, or refuse to allow editing of Custom buffer." (interactive "@d") (error "You can't edit this part of the Custom buffer")) -(defun custom-newline (pos &optional event) +(defun Custom-newline (pos &optional event) "Invoke button at POS, or refuse to allow editing of Custom buffer." (interactive "@d") (let ((button (get-char-property pos 'button))) @@ -4535,6 +4555,13 @@ if that value is non-nil." (setq widget-documentation-face 'custom-documentation) (make-local-variable 'widget-button-face) (setq widget-button-face custom-button) + + ;; We need this because of the "More" button on docstrings. + ;; Otherwise clicking on "More" can push point offscreen, which + ;; causes the window to recenter on point, which pushes the + ;; newly-revealed docstring offscreen; which is annoying. -- cyd. + (set (make-local-variable 'widget-button-click-moves-point) t) + (set (make-local-variable 'widget-button-pressed-face) custom-button-pressed) (set (make-local-variable 'widget-mouse-face) custom-button-mouse) |