emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/trunk r102067: Avoid redefining some C defc


From: Glenn Morris
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r102067: Avoid redefining some C defcustoms.
Date: Sat, 23 Oct 2010 17:58:22 -0700
User-agent: Bazaar (2.0.3)

------------------------------------------------------------
revno: 102067
committer: Glenn Morris <address@hidden>
branch nick: trunk
timestamp: Sat 2010-10-23 17:58:22 -0700
message:
  Avoid redefining some C defcustoms.
  
  * lisp/frame.el (show-trailing-whitespace, auto-hscroll-mode)
  (display-hourglass, hourglass-delay, cursor-in-non-selected-windows):
  Don't redefine things that are defined in C.
  * lisp/cus-start.el: Also handle :risky, :safe, :set, and :tag.
  (show-trailing-whitespace, auto-hscroll-mode)
  (display-hourglass, hourglass-delay, cursor-in-non-selected-windows):
  Set up the appropriate custom properties.
modified:
  lisp/ChangeLog
  lisp/cus-start.el
  lisp/frame.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2010-10-24 00:21:59 +0000
+++ b/lisp/ChangeLog    2010-10-24 00:58:22 +0000
@@ -1,3 +1,13 @@
+2010-10-24  Glenn Morris  <address@hidden>
+
+       * frame.el (show-trailing-whitespace, auto-hscroll-mode)
+       (display-hourglass, hourglass-delay, cursor-in-non-selected-windows):
+       Don't redefine things that are defined in C.
+       * cus-start.el: Also handle :risky, :safe, :set, and :tag.
+       (show-trailing-whitespace, auto-hscroll-mode)
+       (display-hourglass, hourglass-delay, cursor-in-non-selected-windows):
+       Set up the appropriate custom properties.
+
 2010-10-24  Chong Yidong  <address@hidden>
 
        Bind "C-c ]" to ...

=== modified file 'lisp/cus-start.el'
--- a/lisp/cus-start.el 2010-10-11 23:57:49 +0000
+++ b/lisp/cus-start.el 2010-10-24 00:58:22 +0000
@@ -96,6 +96,11 @@
                                       "21.1")
             (line-spacing display (choice (const :tag "none" nil) integer)
                           "22.1")
+            (cursor-in-non-selected-windows
+             cursor boolean nil t :tag "Cursor In Non-selected Windows"
+             :set #'(lambda (symbol value)
+                      (set-default symbol value)
+                      (force-mode-line-update t)))
             ;; callint.c
             (mark-even-if-inactive editing-basics boolean)
             ;; callproc.c
@@ -327,6 +332,8 @@
                                  (other :tag "Always" t))
                                 "23.1")
             ;; xdisp.c
+            (show-trailing-whitespace whitespace-faces boolean nil nil
+                                      :safe booleanp)
             (scroll-step windows integer)
             (scroll-conservatively windows integer)
             (scroll-margin windows integer)
@@ -362,6 +369,9 @@
                      (const :tag "Text-image-horiz" :value text-image-horiz)
                      (const :tag "System default" :value nil)) "23.3")
              (tool-bar-max-label-size frames integer "23.3")
+            (auto-hscroll-mode scrolling boolean "21.1")
+            (display-hourglass cursor boolean)
+            (hourglass-delay cursor number)
 
             ;; xfaces.c
             (scalable-fonts-allowed display boolean "22.1")
@@ -379,7 +389,7 @@
             (x-stretch-cursor display boolean "21.1")
             ;; xsettings.c
             (font-use-system-font font-selection boolean "23.2")))
-      this symbol group type standard version native-p
+      this symbol group type standard version native-p rest prop propval
       ;; This function turns a value
       ;; into an expression which produces that value.
       (quoter (lambda (sexp)
@@ -404,6 +414,7 @@
                       (nth 4 this)
                     (when (default-boundp symbol)
                       (funcall quoter (default-value symbol))))
+         rest (nthcdr 5 this)
          ;; Don't complain about missing variables which are
          ;; irrelevant to this platform.
          native-p (save-match-data
@@ -436,6 +447,11 @@
       ;; Save the standard value, unless we already did.
       (or (get symbol 'standard-value)
          (put symbol 'standard-value (list standard)))
+      ;; We need these properties independent of whether cus-start is loaded.
+      (if (setq prop (memq :safe rest))
+         (put symbol 'safe-local-variable (cadr prop)))
+      (if (setq prop (memq :risky rest))
+         (put symbol 'risky-local-variable (cadr prop)))
       ;; If this is NOT while dumping Emacs,
       ;; set up the rest of the customization info.
       (unless purify-flag
@@ -443,18 +459,25 @@
        (custom-add-to-group group symbol 'custom-variable)
        ;; Set the type.
        (put symbol 'custom-type type)
-       (put symbol 'custom-version version)))))
+       (put symbol 'custom-version version)
+       (while rest
+         (setq prop (car rest)
+               propval (cadr rest)
+               rest (nthcdr 2 rest))
+         (cond ((memq prop '(:risky :safe))) ; handled above
+               ((eq prop :set)
+                (put symbol 'custom-set propval))
+               ((eq prop :tag)
+                (put symbol 'custom-tag propval))))))))
 
 (custom-add-to-group 'iswitchb 'read-buffer-function 'custom-variable)
 (custom-add-to-group 'font-lock 'open-paren-in-column-0-is-defun-start
                     'custom-variable)
 
-;; Record cus-start as loaded
-;; if we have set up all the info that we can set up.
-;; Don't record cus-start as loaded
-;; if we have set up only the standard values.
+;; Record cus-start as loaded if we have set up all the info that we can.
+;; Don't record it as loaded if we have only set up the standard values
+;; and safe/risky properties.
 (unless purify-flag
   (provide 'cus-start))
 
-;; arch-tag: 4502730d-bcb3-4f5e-99a3-a86f2d54af60
 ;;; cus-start.el ends here

=== modified file 'lisp/frame.el'
--- a/lisp/frame.el     2010-10-23 21:13:39 +0000
+++ b/lisp/frame.el     2010-10-24 00:58:22 +0000
@@ -1467,14 +1467,6 @@
 
 (make-variable-buffer-local 'show-trailing-whitespace)
 
-(defcustom show-trailing-whitespace nil
-  "Non-nil means highlight trailing whitespace.
-This is done in the face `trailing-whitespace'."
-  :type 'boolean
-  :safe 'booleanp
-  :group 'whitespace-faces)
-
-
 
 ;; Scrolling
 
@@ -1483,13 +1475,6 @@
   :version "21.1"
   :group 'frames)
 
-(defcustom auto-hscroll-mode t
-  "Allow or disallow automatic horizontal scrolling of windows.
-If non-nil, windows are automatically scrolled horizontally to make
-point visible."
-  :version "21.1"
-  :type 'boolean
-  :group 'scrolling)
 (defvaralias 'automatic-hscrolling 'auto-hscroll-mode)
 
 
@@ -1576,35 +1561,6 @@
                                'blink-cursor-start))))
 
 (define-obsolete-variable-alias 'blink-cursor 'blink-cursor-mode "22.1")
-
-;; Hourglass pointer
-
-(defcustom display-hourglass t
-  "Non-nil means show an hourglass pointer, when Emacs is busy.
-This feature only works when on a window system that can change
-cursor shapes."
-  :type 'boolean
-  :group 'cursor)
-
-(defcustom hourglass-delay 1
-  "Seconds to wait before displaying an hourglass pointer when Emacs is busy."
-  :type 'number
-  :group 'cursor)
-
-
-(defcustom cursor-in-non-selected-windows t
-  "Non-nil means show a cursor in non-selected windows.
-If nil, only shows a cursor in the selected window.
-If t, displays a cursor related to the usual cursor type
-\(a solid box becomes hollow, a bar becomes a narrower bar).
-You can also specify the cursor type as in the `cursor-type' variable.
-Use Custom to set this variable and update the display."
-  :tag "Cursor In Non-selected Windows"
-  :type 'boolean
-  :group 'cursor
-  :set #'(lambda (symbol value)
-          (set-default symbol value)
-          (force-mode-line-update t)))
 
 
 ;;;; Key bindings


reply via email to

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