]> code.delx.au - gnu-emacs/blobdiff - lisp/cus-start.el
(Abbrevs): A @node line without explicit Prev, Next, and Up links.
[gnu-emacs] / lisp / cus-start.el
index 608d0bc7f8aa8419b1e328da17aa1999b745c97c..9ac98eb1036667d1f6ec6e647b46da8a57fd04d5 100644 (file)
@@ -1,6 +1,7 @@
-;;; cus-start.el --- define customization properties of builtins.
+;;; cus-start.el --- define customization properties of builtins
 ;;
-;; Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc.
+;; Copyright (C) 1997, 1999, 2000, 2001, 2002, 2003, 2004,
+;;   2005, 2006 Free Software Foundation, Inc.
 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: internal
@@ -19,8 +20,8 @@
 
 ;; You should have received a copy of the GNU General Public License
 ;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
 
 ;;; Commentary:
 ;;
 
 ;;; Code:
 
-(let ((all '(;; abbrev.c 
+(let ((all '(;; abbrev.c
             (abbrev-all-caps abbrev-mode boolean)
             (pre-abbrev-expand-hook abbrev-mode hook)
             ;; alloc.c
             (gc-cons-threshold alloc integer)
-            (undo-limit undo integer)
-            (undo-strong-limit undo integer)
             (garbage-collection-messages alloc boolean)
             ;; buffer.c
             (mode-line-format modeline sexp) ;Hard to do right.
             (ctl-arrow display boolean)
             (truncate-lines display boolean)
             (selective-display-ellipses display boolean)
-            (transient-mark-mode editing-basics boolean)
-            (indicate-empty-lines display boolean "21.1")
-            (scroll-up-aggressively windows boolean "21.1")
-            (scroll-down-aggressively windows boolean "21.1")
+            (indicate-empty-lines fringe boolean)
+            (indicate-buffer-boundaries
+             fringe
+             (choice
+              (const :tag "No indicators" nil)
+              (const :tag "On left, with arrows" left)
+              (const :tag "On right, with arrows" right)
+              (set :tag "Pick your own design"
+                   :value ((t . nil))
+                   :format "%{%t%}:\n%v\n%d"
+                   :doc "You can specify a default and then override it \
+for individual indicators.
+Leaving \"Default\" unchecked is equivalent with specifying a default of
+\"Do not show\"."
+                   (choice :tag "Default"
+                           :value (t . nil)
+                           (const :tag "Do not show" (t . nil))
+                           (const :tag "On the left" (t . left))
+                           (const :tag "On the right" (t . right)))
+                   (choice :tag "Top"
+                           :value (top . left)
+                           (const :tag "Do not show" (top . nil))
+                           (const :tag "On the left" (top . left))
+                           (const :tag "On the right" (top . right)))
+                   (choice :tag "Bottom"
+                           :value (bottom . left)
+                           (const :tag "Do not show" (bottom . nil))
+                           (const :tag "On the left" (bottom . left))
+                           (const :tag "On the right" (bottom . right)))
+                   (choice :tag "Up arrow"
+                           :value (up . left)
+                           (const :tag "Do not show" (up . nil))
+                           (const :tag "On the left" (up . left))
+                           (const :tag "On the right" (up . right)))
+                   (choice :tag "Down arrow"
+                           :value (down . left)
+                           (const :tag "Do not show" (down . nil))
+                           (const :tag "On the left" (down . left))
+                           (const :tag "On the right" (down . right))))
+              (other :tag "On left, no arrows" t)))
+            (scroll-up-aggressively windows
+                                    (choice (const :tag "off" nil) number)
+                                    "21.1")
+            (scroll-down-aggressively windows
+                                      (choice (const :tag "off" nil) number)
+                                      "21.1")
+            (line-spacing display (choice (const :tag "none" nil) integer))
             ;; callint.c
             (mark-even-if-inactive editing-basics boolean)
             ;; callproc.c
             (shell-file-name execute file)
             (exec-path execute
-                       (repeat (choice (const :tag "default" nil)
-                                       (file :format "%v"))))
+                       (repeat (choice (const :tag "default directory" nil)
+                                       (directory :format "%v"))))
             ;; coding.c
             (inhibit-eol-conversion mule boolean)
             (eol-mnemonic-undecided mule string)
                            (coding-system :tag "Single coding system"
                                           :value undecided)
                            (function :value ignore))))
+            (selection-coding-system mule coding-system)
             ;; dired.c
-            (completion-ignored-extensions dired 
+            (completion-ignored-extensions dired
                                            (repeat (string :format "%v")))
             ;; dispnew.c
             (baud-rate display integer)
                                                   :value (nil)
                                                   (symbol :format "%v"))
                                           (const :tag "always" t)))
-            (debug-on-error debug 
+            (debug-on-error debug
                             (choice (const :tag "off")
                                     (repeat :menu-tag "When"
                                             :value (nil)
                                    (const :tag "always" t)))
             ;; fileio.c
             (insert-default-directory minibuffer boolean)
+            (read-file-name-completion-ignore-case minibuffer boolean "22.1")
             ;; fns.c
             (use-dialog-box menu boolean "21.1")
+            (use-file-dialog menu boolean "22.1")
             ;; frame.c
             (default-frame-alist frames
               (repeat (cons :format "%v"
                             (symbol :tag "Parameter")
                             (sexp :tag "Value"))))
+            (mouse-highlight mouse (choice (const :tag "disabled" nil)
+                                           (const :tag "always shown" t)
+                                           (other :tag "hidden by keypress" 1)))
+            ;; fringe.c
+            (overflow-newline-into-fringe fringe boolean)
             ;; indent.c
             (indent-tabs-mode fill boolean)
             ;; keyboard.c
             (polling-period keyboard integer)
             (double-click-time mouse (restricted-sexp
                                       :match-alternatives (integerp 'nil 't)))
+            (double-click-fuzz mouse integer)
             (inhibit-local-menu-bar-menus menu boolean)
             (help-char keyboard character)
             (help-event-list keyboard (repeat (sexp :format "%v")))
             (suggest-key-bindings keyboard (choice (const :tag "off" nil)
                                                    (integer :tag "time" 2)
                                                    (other :tag "on")))
-            ;; lread.c
+            ;; macselect.c
+            (mac-dnd-known-types mac (repeat string) "22.1")
+            ;; macterm.c
+            (mac-control-modifier mac (choice (const :tag "No modifier" nil)
+                                              (const control) (const meta)
+                                              (const alt) (const hyper)
+                                              (const super)) "22.1")
+            (mac-command-modifier mac (choice (const :tag "No modifier" nil)
+                                              (const control) (const meta)
+                                              (const alt) (const hyper)
+                                              (const super)) "22.1")
+            (mac-option-modifier mac (choice (const :tag "No modifier (work as option)" nil)
+                                             (const control) (const meta)
+                                             (const alt) (const hyper)
+                                             (const super)) "22.1")
+            (mac-function-modifier mac
+                                   (choice (const :tag "No modifier (work as function)" nil)
+                                           (const control) (const meta)
+                                           (const alt) (const hyper)
+                                           (const super)) "22.1")
+            (mac-emulate-three-button-mouse mac
+                                            (choice (const :tag "No emulation" nil)
+                                                    (const :tag "Option->2, Command->3" t)
+                                                    (const :tag "Command->2, Option->3" reverse))
+                                   "22.1")
+            (mac-wheel-button-is-mouse-2 mac boolean "22.1")
+            (mac-pass-command-to-system mac boolean "22.1")
+            (mac-pass-control-to-system mac boolean "22.1")
+            (mac-allow-anti-aliasing mac boolean "22.1")
 
 ;; This is not good news because it will use the wrong
 ;; version-specific directories when you upgrade.  We need
 ;; customization of the front of the list, maintaining the standard
 ;; value intact at the back.
-;;;         (load-path environment 
+;;;         (load-path environment
 ;;;                    (repeat (choice :tag "[Current dir?]"
 ;;;                                    :format "%[Current dir?%] %v"
 ;;;                                    (const :tag " current dir" nil)
             ;; minibuf.c
             (completion-auto-help minibuffer boolean)
             (enable-recursive-minibuffers minibuffer boolean)
+            (history-length minibuffer
+                            (choice (const :tag "Infinite" t)
+                                    integer))
+            (history-delete-duplicates minibuffer boolean)
             (minibuffer-prompt-properties
              minibuffer
              (list
                                 :format "%t%n%h"
                                 :inline t
                                 (read-only t))
-                         (const :tag "Inviolable"
+                         (const :tag "Don't Enter"
                                 :doc "Prevent point from ever entering prompt"
                                 :format "%t%n%h"
                                 :inline t
             ;; syntax.c
             (parse-sexp-ignore-comments editing-basics boolean)
             (words-include-escapes editing-basics boolean)
+            (open-paren-in-column-0-is-defun-start editing-basics boolean
+                                                   "21.1")
+             ;; term.c
+             (visible-cursor cursor boolean "22.1")
+            ;; undo.c
+            (undo-limit undo integer)
+            (undo-strong-limit undo integer)
+            (undo-outer-limit undo
+                              (choice integer
+                                      (const :tag "No limit"
+                                             :format "%t\n%d"
+                                             :doc
+                                             "With this choice, \
+the undo info for the current command never gets discarded.
+This should only be chosen under exceptional circumstances,
+since it could result in memory overflow and make Emacs crash."
+                                             nil))
+                              "22.1")
             ;; window.c
-            (temp-buffer-show-function windows function)
-            (display-buffer-function windows function)
+            (temp-buffer-show-function windows (choice (const nil) function))
+            (display-buffer-function windows (choice (const nil) function))
             (pop-up-frames frames boolean)
             (pop-up-frame-function frames function)
-            (special-display-buffer-names 
-             frames 
+            (special-display-buffer-names
+             frames
              (repeat (choice :tag "Buffer"
                              :value ""
                              (string :format "%v")
                                                  (symbol :tag "Parameter")
                                                  (sexp :tag "Value")))))))
             (special-display-regexps
-             frames 
+             frames
              (repeat (choice :tag "Buffer"
                              :value ""
                              (regexp :format "%v")
             (same-window-buffer-names windows (repeat (string :format "%v")))
             (same-window-regexps windows (repeat (regexp :format "%v")))
             (pop-up-windows windows boolean)
+            (even-window-heights windows boolean)
             (next-screen-context-lines windows integer)
             (split-height-threshold windows integer)
             (window-min-height windows integer)
             (scroll-step windows integer)
             (scroll-conservatively windows integer)
             (scroll-margin windows integer)
+            (hscroll-margin windows integer "21.3")
+            (hscroll-step windows number "21.3")
             (truncate-partial-width-windows display boolean)
             (mode-line-inverse-video modeline boolean)
+            (mode-line-in-non-selected-windows modeline boolean "21.3")
             (line-number-display-limit display
                                        (choice integer
                                                (const :tag "No limit" nil)))
+            (line-number-display-limit-width display integer)
             (highlight-nonselected-windows display boolean)
             (message-log-max debug (choice (const :tag "Disable" nil)
                                            (integer :menu-tag "lines"
                                                     :format "%v")
                                            (other :tag "Unlimited" t)))
             (unibyte-display-via-language-environment mule boolean)
+            (blink-cursor-alist cursor alist "22.1")
+            ;; xfaces.c
+            (scalable-fonts-allowed display boolean)
             ;; xfns.c
             (x-bitmap-file-path installation
                                 (repeat (directory :format "%v")))
+            (x-use-old-gtk-file-dialog menu boolean "22.1")
+            (x-gtk-show-hidden-files menu boolean "22.1")
+            (x-gtk-whole-detached-tool-bar x boolean "22.1")
             ;; xterm.c
+             (mouse-autoselect-window display boolean "21.3")
+            (x-use-underline-position-properties display boolean "21.3")
             (x-stretch-cursor display boolean "21.1")))
-      this symbol group type native-p version
+      this symbol group type standard version native-p
       ;; This function turns a value
       ;; into an expression which produces that value.
       (quoter (lambda (sexp)
                        (and (listp sexp)
                             (memq (car sexp) '(lambda)))
                        (stringp sexp)
-;;                     (and (fboundp 'characterp)
-;;                          (characterp sexp))
                        (numberp sexp))
                    sexp
                  (list 'quote sexp)))))
-  (while all 
+  (while all
     (setq this (car all)
          all (cdr all)
          symbol (nth 0 this)
          group (nth 1 this)
          type (nth 2 this)
          version (nth 3 this)
+         ;; If we did not specify any standard value expression above,
+         ;; use the current value as the standard value.
+         standard (if (nthcdr 4 this)
+                      (nth 4 this)
+                    (when (default-boundp symbol)
+                      (funcall quoter (default-value symbol))))
          ;; Don't complain about missing variables which are
          ;; irrelevant to this platform.
          native-p (save-match-data
                       (eq system-type 'ms-dos))
                      ((string-match "\\`w32-" (symbol-name symbol))
                       (eq system-type 'windows-nt))
+                     ((string-match "\\`mac-" (symbol-name symbol))
+                      (eq window-system 'mac))
+                     ((string-match "\\`x-.*gtk" (symbol-name symbol))
+                      (or (boundp 'gtk)
+                          (and window-system
+                               (not (eq window-system 'pc))
+                               (not (eq window-system 'mac))
+                               (not (eq system-type 'windows-nt)))))
+                     ((string-match "\\`x-" (symbol-name symbol))
+                      (fboundp 'x-create-frame))
+                     ((string-match "selection" (symbol-name symbol))
+                      (fboundp 'x-selection-exists-p))
+                     ((string-match "fringe" (symbol-name symbol))
+                      (fboundp 'define-fringe-bitmap))
                      (t t))))
     (if (not (boundp symbol))
        ;; If variables are removed from C code, give an error here!
             (message "Note, built-in variable `%S' not bound" symbol))
       ;; Save the standard value, unless we already did.
       (or (get symbol 'standard-value)
-         (put symbol 'standard-value 
-              (list (funcall quoter (default-value symbol)))))
+         (put symbol 'standard-value (list standard)))
       ;; If this is NOT while dumping Emacs,
       ;; set up the rest of the customization info.
       (unless purify-flag
        (put symbol 'custom-version version)))))
 
 (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)
+(put 'selection-coding-system 'custom-set
+     (lambda (symbol value)
+       (set-selection-coding-system value)
+       (set symbol value)))
 
 ;; Record cus-start as loaded
 ;; if we have set up all the info that we can set up.
 (unless purify-flag
   (provide 'cus-start))
 
-;;; cus-start.el ends here.
+;;; arch-tag: 4502730d-bcb3-4f5e-99a3-a86f2d54af60
+;;; cus-start.el ends here