emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: fancy-splash-screen customize group...


From: Lennart Borgman
Subject: Re: fancy-splash-screen customize group...
Date: Wed, 07 Dec 2005 23:38:51 +0100
User-agent: Mozilla Thunderbird 1.0.7 (Windows/20050923)

Juri Linkov wrote:

With the changes I'm suggesting you end up with the following preamble:

 This is a customization buffer for group Emacs.

 Editing an option value changes only the text in the buffer.  The
 State button can be used to set or save the option value.  Saving an
 option normally edits your init file.

 See Help for more information.

I think your change makes this header more clear.  The only part that
is still confusing is

   The State button can be used to set or save the option value.

I suspect that the first thing that a novice will do after reading this
is to search the button with the name "State" in the customization buffer.
I have attached a preliminary patch for this. The patch changes the text to something reminding of the text above. It also changes the links from a button-like style to underline. Please test the patch.

There is one thing that I have not found out how to change it: the "mouse over" face. It is gray whatever I do. If someone knows how to make a widget really display the highlight face then please tell me!
Index: cus-edit.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/cus-edit.el,v
retrieving revision 1.243
diff -c -r1.243 cus-edit.el
*** cus-edit.el 4 Dec 2005 02:39:24 -0000       1.243
--- cus-edit.el 7 Dec 2005 22:32:29 -0000
***************
*** 1412,1445 ****
                   'custom-button-pressed
                 'custom-button-pressed-unraised))))
  
  (defun custom-buffer-create-internal (options &optional description)
    (custom-mode)
    (if custom-buffer-verbose-help
!       (progn
        (widget-insert "This is a customization buffer")
        (if description
            (widget-insert description))
        (widget-insert (format ".
! %s show active fields; type RET or click mouse-1
! on an active field to invoke its action.  Editing an option value
! changes only the text in the buffer.  Invoke the State button to set or
! save the option value.  Saving an option normally edits your init file.
! Invoke "
                               (if custom-raised-buttons
                                   "`Raised' buttons"
                                 "Square brackets")))
        (widget-create 'info-link
!                      :tag "Custom file"
!                      "(emacs)Saving Customizations")
!       (widget-insert
!        " for information on how to save in a different file.
! Invoke ")
!       (widget-create 'info-link
!                      :tag "Help"
                       :help-echo "Read the online help."
                       "(emacs)Easy Customization")
!       (widget-insert " for general information.\n\n")
!       (widget-insert "Operate on everything in this buffer:\n "))
      (widget-insert " "))
    (widget-create 'push-button
                 :tag "Set for Current Session"
--- 1412,1471 ----
                   'custom-button-pressed
                 'custom-button-pressed-unraised))))
  
+ (defface custom-link-face
+   `((((class color) (background light)) (:foreground "blue" :underline t))
+     (((class color) (background dark)) (:foreground "cyan" :underline t)))
+   "Face used to highlight attributes that are links."
+   :group 'custom-faces)
+ 
+ 
  (defun custom-buffer-create-internal (options &optional description)
    (custom-mode)
    (if custom-buffer-verbose-help
!       (let (
!             (custom-file-txt "custom file")
!             (help-txt "help"))
!         ;;(put-text-property 0 (length custom-file-txt) 'mouse-face 
'highlight custom-file-txt)
!         ;;(put-text-property 0 (length help-txt) 'mouse-face 'highlight 
help-txt)
        (widget-insert "This is a customization buffer")
        (if description
            (widget-insert description))
+ ;; %s show active fields; type RET or click mouse-1
+ ;; on an active field to invoke its action.  Editing an option value
+ ;; changes only the text in the buffer.  Invoke the State button to set or
+ ;; save the option value.  Saving an option normally edits your init file.
        (widget-insert (format ".
! 
! Editing an option value changes only the text in the buffer.  The
! State button(s) next to the option(s) can be used to set or save
! the value. Saving an option normally edits your init file.
! 
! See "
                               (if custom-raised-buttons
                                   "`Raised' buttons"
                                 "Square brackets")))
+ ;;    (widget-create 'info-link
+ ;;                        :button-face 'custom-link-face
+ ;;                        :button-prefix ""
+ ;;                        :button-suffix ""
+ ;;                   ;;:tag "Custom file"
+ ;;                   :tag custom-file-txt
+ ;;                   "(emacs)Saving Customizations")
+ ;;    (widget-insert
+ ;;     " for information on how to save in a different file.\n\nSee ")
+ 
        (widget-create 'info-link
!                        :button-face 'custom-link-face
!                        :button-prefix ""
!                        :button-suffix ""
!                        :mouse-face 'highlight
!                        :button-mouse-face 'highlight
!                      ;;:tag "Help"
!                      :tag help-txt
                       :help-echo "Read the online help."
                       "(emacs)Easy Customization")
!       (widget-insert " for more information.\n\n")
!       (widget-insert "Operate on all options in this buffer:\n "))
      (widget-insert " "))
    (widget-create 'push-button
                 :tag "Set for Current Session"
***************
*** 2149,2154 ****
--- 2175,2183 ----
                  (insert " ")
                  (push (widget-create-child-and-convert
                         widget 'custom-group-link
+                          :button-face 'custom-link-face
+                          :button-prefix ""
+                          :button-suffix ""
                         :tag (custom-unlispify-tag-name symbol)
                         symbol)
                        buttons)
***************
*** 2160,2166 ****
             (when links
               (insert "\nParent documentation: ")
               (while links
!                (push (widget-create-child-and-convert widget (car links))
                       buttons)
                 (setq links (cdr links))
                 (cond ((null links)
--- 2189,2200 ----
             (when links
               (insert "\nParent documentation: ")
               (while links
!                (push (widget-create-child-and-convert
!                       widget (car links)
!                       :button-face 'custom-link-face
!                       :button-prefix ""
!                       :button-suffix ""
!                       )
                       buttons)
                 (setq links (cdr links))
                 (cond ((null links)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]