LCOV - code coverage report
Current view: top level - lisp - cus-start.el (source / functions) Hit Total Coverage
Test: tramp-tests.info Lines: 0 4 0.0 %
Date: 2017-08-27 09:44:50 Functions: 0 1 0.0 %

          Line data    Source code
       1             : ;;; cus-start.el --- define customization properties of builtins  -*- lexical-binding:t -*-
       2             : 
       3             : ;; Copyright (C) 1997, 1999-2017 Free Software Foundation, Inc.
       4             : 
       5             : ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
       6             : ;; Keywords: internal
       7             : ;; Package: emacs
       8             : 
       9             : ;; This file is part of GNU Emacs.
      10             : 
      11             : ;; GNU Emacs is free software: you can redistribute it and/or modify
      12             : ;; it under the terms of the GNU General Public License as published by
      13             : ;; the Free Software Foundation, either version 3 of the License, or
      14             : ;; (at your option) any later version.
      15             : 
      16             : ;; GNU Emacs is distributed in the hope that it will be useful,
      17             : ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
      18             : ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      19             : ;; GNU General Public License for more details.
      20             : 
      21             : ;; You should have received a copy of the GNU General Public License
      22             : ;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
      23             : 
      24             : ;;; Commentary:
      25             : 
      26             : ;; This file adds customize support for built-in variables.
      27             : 
      28             : ;; While dumping Emacs, this file is loaded, but it only records
      29             : ;; the standard values; it does not do the rest of the job.
      30             : ;; Later on, if the user makes a customization buffer,
      31             : ;; this file is loaded again with (require 'cus-start);
      32             : ;; then it does the whole job.
      33             : 
      34             : ;;; Code:
      35             : 
      36             : (defun minibuffer-prompt-properties--setter (symbol value)
      37           0 :   (set-default symbol value)
      38           0 :   (if (memq 'cursor-intangible value)
      39           0 :       (add-hook 'minibuffer-setup-hook 'cursor-intangible-mode)
      40             :     ;; Removing it is a bit trickier since it could have been added by someone
      41             :     ;; else as well, so let's just not bother.
      42           0 :     ))
      43             : 
      44             : ;; Elements of this list have the form:
      45             : ;; SYMBOL GROUP TYPE VERSION REST...
      46             : ;; SYMBOL is the name of the variable.
      47             : ;; GROUP is the custom group to which it belongs (may also be a list
      48             : ;; of groups)
      49             : ;; TYPE is the defcustom :type.
      50             : ;; VERSION is the defcustom :version (or nil).
      51             : ;; REST is a set of :KEYWORD VALUE pairs.  Accepted :KEYWORDs are:
      52             : ;; :standard - standard value for SYMBOL (else use current value)
      53             : ;; :set - custom-set property
      54             : ;; :risky - risky-local-variable property
      55             : ;; :safe - safe-local-variable property
      56             : ;; :tag - custom-tag property
      57             : (let (standard
      58             :       native-p prop propval
      59             :       ;; This function turns a value
      60             :       ;; into an expression which produces that value.
      61             :       (quoter (lambda (sexp)
      62             :                 ;; FIXME: We'd like to use macroexp-quote here, but cus-start
      63             :                 ;; is loaded too early in loadup.el for that.
      64             :                 (if (or (memq sexp '(t nil))
      65             :                         (keywordp sexp)
      66             :                         (and (listp sexp)
      67             :                              (memq (car sexp) '(lambda)))
      68             :                         (stringp sexp)
      69             :                         (numberp sexp))
      70             :                     sexp
      71             :                   (list 'quote sexp))))
      72             :       (cursor-type-types
      73             :        '(choice
      74             :          (const :tag "Frame default" t)
      75             :          (const :tag "Filled box" box)
      76             :          (const :tag "Hollow cursor" hollow)
      77             :          (const :tag "Vertical bar" bar)
      78             :          (cons  :tag "Vertical bar with specified width"
      79             :                 (const bar) integer)
      80             :          (const :tag "Horizontal bar" hbar)
      81             :          (cons  :tag "Horizontal bar with specified width"
      82             :                 (const hbar) integer)
      83             :          (const :tag "None "nil))))
      84             :   (pcase-dolist
      85             :       (`(,symbol ,group ,type ,version . ,rest)
      86             :            `(;; alloc.c
      87             :              (gc-cons-threshold alloc integer)
      88             :              (gc-cons-percentage alloc float)
      89             :              (garbage-collection-messages alloc boolean)
      90             :              ;; buffer.c
      91             :              (cursor-type display ,cursor-type-types)
      92             :              (mode-line-format mode-line sexp) ;Hard to do right.
      93             :              (major-mode internal function)
      94             :              (case-fold-search matching boolean)
      95             :              (fill-column fill integer)
      96             :              (left-margin fill integer)
      97             :              (tab-width editing-basics integer)
      98             :              (ctl-arrow display boolean)
      99             :              (truncate-lines display boolean)
     100             :              (word-wrap display boolean)
     101             :              (selective-display-ellipses display boolean)
     102             :              (indicate-empty-lines fringe boolean)
     103             :              (indicate-buffer-boundaries
     104             :               fringe
     105             :               (choice
     106             :                (const :tag "No indicators" nil)
     107             :                (const :tag "On left, with arrows" left)
     108             :                (const :tag "On right, with arrows" right)
     109             :                (set :tag "Pick your own design"
     110             :                     :value ((t . nil))
     111             :                     :format "%{%t%}:\n%v\n%d"
     112             :                     :doc "You can specify a default and then override it \
     113             : for individual indicators.
     114             : Leaving \"Default\" unchecked is equivalent with specifying a default of
     115             : \"Do not show\"."
     116             :                     (choice :tag "Default"
     117             :                             :value (t . nil)
     118             :                             (const :tag "Do not show" (t . nil))
     119             :                             (const :tag "On the left" (t . left))
     120             :                             (const :tag "On the right" (t . right)))
     121             :                     (choice :tag "Top"
     122             :                             :value (top . left)
     123             :                             (const :tag "Do not show" (top . nil))
     124             :                             (const :tag "On the left" (top . left))
     125             :                             (const :tag "On the right" (top . right)))
     126             :                     (choice :tag "Bottom"
     127             :                             :value (bottom . left)
     128             :                             (const :tag "Do not show" (bottom . nil))
     129             :                             (const :tag "On the left" (bottom . left))
     130             :                             (const :tag "On the right" (bottom . right)))
     131             :                     (choice :tag "Up arrow"
     132             :                             :value (up . left)
     133             :                             (const :tag "Do not show" (up . nil))
     134             :                             (const :tag "On the left" (up . left))
     135             :                             (const :tag "On the right" (up . right)))
     136             :                     (choice :tag "Down arrow"
     137             :                             :value (down . left)
     138             :                             (const :tag "Do not show" (down . nil))
     139             :                             (const :tag "On the left" (down . left))
     140             :                             (const :tag "On the right" (down . right))))
     141             :                (other :tag "On left, no arrows" t)))
     142             :              (scroll-up-aggressively windows
     143             :                                      (choice (const :tag "off" nil) float)
     144             :                                      "21.1")
     145             :              (scroll-down-aggressively windows
     146             :                                        (choice (const :tag "off" nil) float)
     147             :                                        "21.1")
     148             :              (line-spacing display (choice (const :tag "none" nil) number)
     149             :                            "22.1")
     150             :              (cursor-in-non-selected-windows
     151             :               cursor ,cursor-type-types nil
     152             :               :tag "Cursor In Non-selected Windows"
     153             :               :set (lambda (symbol value)
     154             :                      (set-default symbol value)
     155             :                      (force-mode-line-update t)))
     156             :              (transient-mark-mode editing-basics boolean nil
     157             :                                   :standard (not noninteractive)
     158             :                                   :initialize custom-initialize-delay
     159             :                                   :set custom-set-minor-mode)
     160             :              (bidi-paragraph-direction
     161             :               paragraphs
     162             :               (choice
     163             :                (const :tag "Left to Right" left-to-right)
     164             :                (const :tag "Right to Left" right-to-left)
     165             :                (const :tag "Dynamic, according to paragraph text" nil))
     166             :               "24.1")
     167             :              ;; callint.c
     168             :              (mark-even-if-inactive editing-basics boolean)
     169             :              ;; callproc.c
     170             :              (shell-file-name execute file)
     171             :              (exec-path execute
     172             :                         (repeat (choice (const :tag "default directory" nil)
     173             :                                         (directory :format "%v")))
     174             :                         nil
     175             :                         :standard
     176             :                         (mapcar (lambda (f)
     177             :                                   (if f (directory-file-name f)
     178             :                                     "."))
     179             :                                 (append (parse-colon-path (getenv "PATH"))
     180             :                                         (list exec-directory))))
     181             :              (exec-suffixes execute (repeat string))
     182             :              ;; charset.c
     183             :              (charset-map-path installation
     184             :                                (repeat (directory :format "%v")))
     185             :              ;; coding.c
     186             :              (inhibit-eol-conversion mule boolean)
     187             :              (enable-character-translation mule boolean)
     188             :              (eol-mnemonic-undecided mule string)
     189             :              ;; startup.el fiddles with the values.  IMO, would be
     190             :              ;; simpler to just use #ifdefs in coding.c.
     191             :              (eol-mnemonic-unix mule string nil
     192             :                                 :standard
     193             :                                 (if (memq system-type '(ms-dos windows-nt))
     194             :                                     "(Unix)" ":"))
     195             :              (eol-mnemonic-dos mule string nil
     196             :                                :standard
     197             :                                (if (memq system-type '(ms-dos windows-nt))
     198             :                                    "\\" "(DOS)"))
     199             :              (eol-mnemonic-mac mule string nil
     200             :                                :standard "(Mac)")
     201             :              (file-coding-system-alist
     202             :               mule
     203             :               (alist
     204             :                :key-type (regexp :tag "File regexp")
     205             :                :value-type (choice
     206             :                             :value (undecided . undecided)
     207             :                             (cons :tag "Encoding/decoding pair"
     208             :                                   :value (undecided . undecided)
     209             :                                   (coding-system :tag "Decoding")
     210             :                                   (coding-system :tag "Encoding"))
     211             :                             (coding-system
     212             :                              :tag "Single coding system"
     213             :                              :value undecided
     214             :                              :match (lambda (widget value)
     215             :                                       (and value (not (functionp value)))))
     216             :                             (function :value ignore))))
     217             :              ;; dired.c
     218             :              (completion-ignored-extensions dired
     219             :                                             (repeat (string :format "%v")))
     220             :              ;; dispnew.c
     221             :              (baud-rate display integer)
     222             :              (inverse-video display boolean)
     223             :              (visible-bell display boolean)
     224             :              (no-redraw-on-reenter display boolean)
     225             : 
     226             :              ;; dosfns.c
     227             :              (dos-display-scancodes display boolean)
     228             :              (dos-hyper-key keyboard integer)
     229             :              (dos-super-key keyboard integer)
     230             :              (dos-keypad-mode keyboard integer)
     231             : 
     232             :              ;; editfns.c
     233             :              (user-full-name mail string)
     234             :              ;; emacs.c
     235             :              (report-emacs-bug-address emacsbug string)
     236             :              ;; eval.c
     237             :              (max-specpdl-size limits integer)
     238             :              (max-lisp-eval-depth limits integer)
     239             :              (max-mini-window-height limits
     240             :                                      (choice (const :tag "quarter screen" nil)
     241             :                                              number) "23.1")
     242             :              (debug-on-error debug
     243             :                              (choice (const :tag "off")
     244             :                                      (repeat :menu-tag "When"
     245             :                                              :value (nil)
     246             :                                              (symbol :format "%v"))
     247             :                                      (const :tag "always" t)))
     248             :              (debug-ignored-errors debug (repeat (choice symbol regexp)))
     249             :              (debug-on-quit debug boolean)
     250             :              (debug-on-signal debug boolean)
     251             :              (debugger-stack-frame-as-list debugger boolean "26.1")
     252             :              ;; fileio.c
     253             :              (delete-by-moving-to-trash auto-save boolean "23.1")
     254             :              (auto-save-visited-file-name auto-save boolean)
     255             :              ;; filelock.c
     256             :              (create-lockfiles files boolean "24.3")
     257             :              (temporary-file-directory
     258             :               ;; Darwin section added 24.1, does not seem worth :version bump.
     259             :               files directory nil
     260             :               :standard
     261             :               (file-name-as-directory
     262             :                ;; FIXME ? Should there be Ftemporary_file_directory to do this
     263             :                ;; more robustly (cf set_local_socket in emacsclient.c).
     264             :                ;; It could be used elsewhere, eg Fcall_process_region,
     265             :                ;; server-socket-dir.  See bug#7135.
     266             :                (cond ((memq system-type '(ms-dos windows-nt))
     267             :                       (or (getenv "TEMP") (getenv "TMPDIR") (getenv "TMP")
     268             :                           "c:/temp"))
     269             :                      ((eq system-type 'darwin)
     270             :                       (or (getenv "TMPDIR") (getenv "TMP") (getenv "TEMP")
     271             :                           ;; See bug#7135.
     272             :                           (let ((tmp (ignore-errors
     273             :                                        (shell-command-to-string
     274             :                                         "getconf DARWIN_USER_TEMP_DIR"))))
     275             :                             (and (stringp tmp)
     276             :                                  (setq tmp (replace-regexp-in-string
     277             :                                             "\n\\'" "" tmp))
     278             :                                  ;; Handles "getconf: Unrecognized variable..."
     279             :                                  (file-directory-p tmp)
     280             :                                  tmp))
     281             :                           "/tmp"))
     282             :                      (t
     283             :                       (or (getenv "TMPDIR") (getenv "TMP") (getenv "TEMP")
     284             :                           "/tmp"))))
     285             :               :initialize custom-initialize-delay)
     286             :              ;; fns.c
     287             :              (use-dialog-box menu boolean "21.1")
     288             :              (use-file-dialog menu boolean "22.1")
     289             :              (focus-follows-mouse
     290             :               frames (choice
     291             :                       (const :tag "Off (nil)" :value nil)
     292             :                       (const :tag "On (t)" :value t)
     293             :                       (const :tag "Auto-raise" :value auto-raise)) "26.1")
     294             :              ;; fontset.c
     295             :              ;; FIXME nil is the initial value, fontset.el setqs it.
     296             :              (vertical-centering-font-regexp display
     297             :                                              (choice (const nil) regexp))
     298             :              ;; frame.c
     299             :              (default-frame-alist frames
     300             :                (repeat (cons :format "%v"
     301             :                              (symbol :tag "Parameter")
     302             :                              (sexp :tag "Value"))))
     303             :              (mouse-highlight mouse (choice (const :tag "disabled" nil)
     304             :                                             (const :tag "always shown" t)
     305             :                                             (other :tag "hidden by keypress" 1))
     306             :                               "22.1")
     307             :              (make-pointer-invisible mouse boolean "23.2")
     308             :              (menu-bar-mode frames boolean nil
     309             :                             ;; FIXME?
     310             :                             ;; :initialize custom-initialize-default
     311             :                             :set custom-set-minor-mode)
     312             :              (tool-bar-mode (frames mouse) boolean nil
     313             :                             ;; :initialize custom-initialize-default
     314             :                             :set custom-set-minor-mode)
     315             :              (frame-resize-pixelwise frames boolean "24.4")
     316             :              (frame-inhibit-implied-resize frames
     317             :                                            (choice
     318             :                                             (const :tag "Never" nil)
     319             :                                             (const :tag "Always" t)
     320             :                                             (repeat (symbol :tag "Parameter")))
     321             :                                            "25.1")
     322             :              (tooltip-reuse-hidden-frame tooltip boolean "26.1")
     323             :              ;; fringe.c
     324             :              (overflow-newline-into-fringe fringe boolean)
     325             :              ;; image.c
     326             :              (imagemagick-render-type image integer "24.1")
     327             :              ;; indent.c
     328             :              (indent-tabs-mode indent boolean)
     329             :              ;; keyboard.c
     330             :              (meta-prefix-char keyboard character)
     331             :              (auto-save-interval auto-save integer)
     332             :              (auto-save-timeout auto-save (choice (const :tag "off" nil)
     333             :                                                   (integer :format "%v")))
     334             :              (echo-keystrokes minibuffer number)
     335             :              (polling-period keyboard integer)
     336             :              (double-click-time mouse (restricted-sexp
     337             :                                        :match-alternatives (integerp 'nil 't)))
     338             :              (double-click-fuzz mouse integer "22.1")
     339             :              (help-char keyboard character)
     340             :              (help-event-list keyboard (repeat (sexp :format "%v")))
     341             :              (menu-prompting menu boolean)
     342             :              (select-active-regions killing
     343             :                                     (choice (const :tag "always" t)
     344             :                                             (const :tag "only shift-selection or mouse-drag" only)
     345             :                                             (const :tag "off" nil))
     346             :                                     "24.1")
     347             :              (debug-on-event debug
     348             :                              (choice (const :tag "None" nil)
     349             :                                      (const :tag "When sent SIGUSR1" sigusr1)
     350             :                                      (const :tag "When sent SIGUSR2" sigusr2))
     351             :                              "24.1")
     352             : 
     353             :              ;; This is not good news because it will use the wrong
     354             :              ;; version-specific directories when you upgrade.  We need
     355             :              ;; customization of the front of the list, maintaining the
     356             :              ;; standard value intact at the back.
     357             :              ;;(load-path environment
     358             :              ;;         (repeat (choice :tag "[Current dir?]"
     359             :              ;;                         :format "%[Current dir?%] %v"
     360             :              ;;                         (const :tag " current dir" nil)
     361             :              ;;                         (directory :format "%v"))))
     362             :              (load-prefer-newer lisp boolean "24.4")
     363             :              ;; minibuf.c
     364             :              (enable-recursive-minibuffers minibuffer boolean)
     365             :              (history-length minibuffer
     366             :                              (choice (const :tag "Infinite" t) integer)
     367             :                              "24.5")  ; 30 -> 100
     368             :              (history-delete-duplicates minibuffer boolean "22.1")
     369             :              (read-buffer-completion-ignore-case minibuffer boolean "23.1")
     370             : 
     371             :              (minibuffer-prompt-properties
     372             :               minibuffer
     373             :               (list
     374             :                (checklist :inline t
     375             :                           (const :tag "Read-Only"
     376             :                                  :doc "Prevent prompt from being modified"
     377             :                                  :format "%t%n%h"
     378             :                                  :inline t
     379             :                                  (read-only t))
     380             :                           (const :tag "Don't Enter"
     381             :                                  :doc "Prevent point from ever entering prompt"
     382             :                                  :format "%t%n%h"
     383             :                                  :inline t
     384             :                                  (cursor-intangible t)))
     385             :                (repeat :inline t
     386             :                        :tag "Other Properties"
     387             :                        (list :inline t
     388             :                              :format "%v"
     389             :                              (symbol :tag "Property")
     390             :                              (sexp :tag "Value"))))
     391             :               "21.1"
     392             :               :set minibuffer-prompt-properties--setter)
     393             :              (minibuffer-auto-raise minibuffer boolean)
     394             :              ;; options property set at end
     395             :              (read-buffer-function minibuffer
     396             :                                    (choice (const nil)
     397             :                                            function))
     398             :              ;; msdos.c
     399             :              (dos-unsupported-char-glyph display integer)
     400             :              ;; nsterm.m
     401             :              (ns-control-modifier
     402             :               ns
     403             :               (choice (const :tag "No modifier" nil)
     404             :                       (const control) (const meta)
     405             :                       (const alt) (const hyper)
     406             :                       (const super)) "23.1")
     407             :              (ns-right-control-modifier
     408             :               ns
     409             :               (choice (const :tag "No modifier (work as control)" none)
     410             :                       (const :tag "Use the value of ns-control-modifier"
     411             :                              left)
     412             :                       (const control) (const meta)
     413             :                       (const alt) (const hyper)
     414             :                       (const super)) "24.1")
     415             :              (ns-command-modifier
     416             :               ns
     417             :               (choice (const :tag "No modifier" nil)
     418             :                       (const control) (const meta)
     419             :                       (const alt) (const hyper)
     420             :                       (const super)) "23.1")
     421             :              (ns-right-command-modifier
     422             :               ns
     423             :               (choice (const :tag "No modifier (work as command)" none)
     424             :                       (const :tag "Use the value of ns-command-modifier"
     425             :                              left)
     426             :                       (const control) (const meta)
     427             :                       (const alt) (const hyper)
     428             :                       (const super)) "24.1")
     429             :              (ns-alternate-modifier
     430             :               ns
     431             :               (choice (const :tag "No modifier (work as alternate/option)" none)
     432             :                       (const control) (const meta)
     433             :                       (const alt) (const hyper)
     434             :                       (const super)) "23.1")
     435             :              (ns-right-alternate-modifier
     436             :               ns
     437             :               (choice (const :tag "No modifier (work as alternate/option)" none)
     438             :                       (const :tag "Use the value of ns-alternate-modifier"
     439             :                              left)
     440             :                       (const control) (const meta)
     441             :                       (const alt) (const hyper)
     442             :                       (const super)) "23.3")
     443             :              (ns-function-modifier
     444             :               ns
     445             :               (choice (const :tag "No modifier (work as function)" none)
     446             :                       (const control) (const meta)
     447             :                       (const alt) (const hyper)
     448             :                       (const super)) "23.1")
     449             :              (ns-antialias-text ns boolean "23.1")
     450             :              (ns-auto-hide-menu-bar ns boolean "24.1")
     451             :              (ns-confirm-quit ns boolean "25.1")
     452             :              (ns-use-native-fullscreen ns boolean "24.4")
     453             :              (ns-use-fullscreen-animation ns boolean "25.1")
     454             :              (ns-use-srgb-colorspace ns boolean "24.4")
     455             :              ;; process.c
     456             :              (delete-exited-processes processes-basics boolean)
     457             :              ;; syntax.c
     458             :              (parse-sexp-ignore-comments editing-basics boolean)
     459             :              (words-include-escapes editing-basics boolean)
     460             :              (open-paren-in-column-0-is-defun-start editing-basics boolean
     461             :                                                     "21.1")
     462             :              ;; term.c
     463             :              (visible-cursor cursor boolean "22.1")
     464             :              ;; terminal.c
     465             :              (ring-bell-function display
     466             :               (choice
     467             :                (const :tag "Default" nil)
     468             :                (const :tag "Silent" ignore)
     469             :                function))
     470             :              ;; undo.c
     471             :              (undo-limit undo integer)
     472             :              (undo-strong-limit undo integer)
     473             :              (undo-outer-limit undo
     474             :                                (choice integer
     475             :                                        (const :tag "No limit"
     476             :                                               :format "%t\n%d"
     477             :                                               :doc
     478             :                                               "With this choice, \
     479             : the undo info for the current command never gets discarded.
     480             : This should only be chosen under exceptional circumstances,
     481             : since it could result in memory overflow and make Emacs crash."
     482             :                                               nil))
     483             :                                "22.1")
     484             :              ;; window.c
     485             :              (temp-buffer-show-function windows (choice (const nil) function))
     486             :              (next-screen-context-lines windows integer)
     487             :              (scroll-preserve-screen-position
     488             :               windows (choice
     489             :                        (const :tag "Off (nil)" :value nil)
     490             :                        (const :tag "Full screen (t)" :value t)
     491             :                        (other :tag "Always" 1)) "22.1")
     492             :              (recenter-redisplay
     493             :               windows (choice
     494             :                        (const :tag "Never (nil)" :value nil)
     495             :                        (const :tag "Only on ttys" :value tty)
     496             :                        (other :tag "Always" t)) "23.1")
     497             :              (window-combination-resize windows boolean "24.1")
     498             :              (window-combination-limit
     499             :               windows (choice
     500             :                        (const :tag "Never (nil)" :value nil)
     501             :                        (const :tag "If requested via buffer display alist (window-size)"
     502             :                               :value window-size)
     503             :                        (const :tag "With Temp Buffer Resize mode (temp-buffer-resize)"
     504             :                               :value temp-buffer-resize)
     505             :                        (const :tag "For temporary buffers (temp-buffer)"
     506             :                               :value temp-buffer)
     507             :                        (const :tag "For buffer display (display-buffer)"
     508             :                               :value display-buffer)
     509             :                        (other :tag "Always (t)" :value t))
     510             :               "26.1")
     511             :              (fast-but-imprecise-scrolling scrolling boolean "25.1")
     512             :              (window-resize-pixelwise windows boolean "24.4")
     513             :              ;; xdisp.c
     514             :              ;; The whitespace group is for whitespace.el.
     515             :              (show-trailing-whitespace editing-basics boolean nil
     516             :                                        :safe booleanp)
     517             :              (scroll-step windows integer)
     518             :              (scroll-conservatively windows integer)
     519             :              (scroll-margin windows integer)
     520             :              (maximum-scroll-margin windows float "26.1")
     521             :              (hscroll-margin windows integer "22.1")
     522             :              (hscroll-step windows number "22.1")
     523             :              (truncate-partial-width-windows
     524             :               display
     525             :               (choice (integer :tag "Truncate if narrower than")
     526             :                       (const :tag "Respect `truncate-lines'" nil)
     527             :                       (other :tag "Truncate if not full-width" t))
     528             :               "23.1")
     529             :              (make-cursor-line-fully-visible windows boolean)
     530             :              (mode-line-in-non-selected-windows mode-line boolean "22.1")
     531             :              (line-number-display-limit display
     532             :                                         (choice integer
     533             :                                                 (const :tag "No limit" nil)))
     534             :              (line-number-display-limit-width display integer "22.1")
     535             :              (highlight-nonselected-windows display boolean)
     536             :              (message-log-max debug (choice (const :tag "Disable" nil)
     537             :                                             (integer :menu-tag "lines"
     538             :                                                      :format "%v")
     539             :                                             (other :tag "Unlimited" t))
     540             :                               "24.3")
     541             :              (unibyte-display-via-language-environment mule boolean)
     542             :              (blink-cursor-alist cursor alist "22.1")
     543             :              (overline-margin display integer "22.1")
     544             :              (underline-minimum-offset display integer "23.1")
     545             :              (mouse-autoselect-window
     546             :               display (choice
     547             :                        (const :tag "Off (nil)" :value nil)
     548             :                        (const :tag "Immediate" :value t)
     549             :                        (number :tag "Delay by secs" :value 0.5)) "22.1")
     550             :              (tool-bar-style
     551             :               frames (choice
     552             :                       (const :tag "Images" :value image)
     553             :                       (const :tag "Text" :value text)
     554             :                       (const :tag "Both" :value both)
     555             :                       (const :tag "Both-horiz" :value both-horiz)
     556             :                       (const :tag "Text-image-horiz" :value text-image-horiz)
     557             :                       (const :tag "System default" :value nil)) "24.1")
     558             :              (tool-bar-max-label-size frames integer "24.1")
     559             :              (auto-hscroll-mode scrolling
     560             :                                 (choice
     561             :                                  (const :tag "Don't scroll automatically"
     562             :                                         :value nil)
     563             :                                  (const :tag "Scroll the entire window"
     564             :                                         :value t)
     565             :                                  (const :tag "Scroll only the current line"
     566             :                                         :value current-line))
     567             :                                 "26.1")
     568             :              (void-text-area-pointer cursor
     569             :                                      (choice
     570             :                                       (const :tag "Standard (text pointer)" :value nil)
     571             :                                       (const :tag "Arrow" :value arrow)
     572             :                                       (const :tag "Text pointer" :value text)
     573             :                                       (const :tag "Hand" :value hand)
     574             :                                       (const :tag "Vertical dragger" :value vdrag)
     575             :                                       (const :tag "Horizontal dragger" :value hdrag)
     576             :                                       (const :tag "Same as mode line" :value modeline)
     577             :                                       (const :tag "Hourglass" :value hourglass)))
     578             :              (display-hourglass cursor boolean)
     579             :              (hourglass-delay cursor number)
     580             :              (resize-mini-windows
     581             :               windows (choice
     582             :                        (const :tag "Off (nil)" :value nil)
     583             :                        (const :tag "Fit (t)" :value t)
     584             :                        (const :tag "Grow only" :value grow-only))
     585             :               "25.1")
     586             :              (display-raw-bytes-as-hex display boolean "26.1")
     587             :              (display-line-numbers display-line-numbers
     588             :                                    (choice
     589             :                                     (const :tag "Off (nil)" :value nil)
     590             :                                     (const :tag "Absolute line numbers"
     591             :                                            :value t)
     592             :                                     (const :tag "Relative line numbers"
     593             :                                            :value relative)
     594             :                                     (const :tag "Visually relative line numbers"
     595             :                                            :value visual))
     596             :                                    "26.1")
     597             :              (display-line-numbers-width display-line-numbers
     598             :                                  (choice
     599             :                                   (const :tag "Dynamically computed"
     600             :                                          :value nil)
     601             :                                   (integer :menu-tag "Fixed number of columns"
     602             :                                            :value 2
     603             :                                            :format "%v"))
     604             :                                  "26.1")
     605             :              (display-line-numbers-current-absolute display-line-numbers
     606             :                                  (choice
     607             :                                   (const :tag "Display actual number of current line"
     608             :                                          :value t)
     609             :                                   (const :tag "Display zero as number of current line"
     610             :                                          :value nil))
     611             :                                  "26.1")
     612             :              (display-line-numbers-widen display-line-numbers
     613             :                                  (choice
     614             :                                   (const :tag "Disregard narrowing when calculating line numbers"
     615             :                                          :value t)
     616             :                                   (const :tag "Count lines from beginning of narrowed region"
     617             :                                          :value nil))
     618             :                                  "26.1")
     619             :              ;; xfaces.c
     620             :              (scalable-fonts-allowed display boolean "22.1")
     621             :              ;; xfns.c
     622             :              (x-bitmap-file-path installation
     623             :                                  (repeat (directory :format "%v")))
     624             :              (x-gtk-use-old-file-dialog menu boolean "22.1")
     625             :              (x-gtk-show-hidden-files menu boolean "22.1")
     626             :              (x-gtk-file-dialog-help-text menu boolean "22.1")
     627             :              (x-gtk-use-system-tooltips tooltip boolean "23.3")
     628             :              ;; xterm.c
     629             :              (x-use-underline-position-properties display boolean "22.1")
     630             :              (x-underline-at-descent-line display boolean "22.1")
     631             :              (x-stretch-cursor display boolean "21.1")
     632             :              (scroll-bar-adjust-thumb-portion windows boolean "24.4")
     633             :              ;; xselect.c
     634             :              (x-select-enable-clipboard-manager killing boolean "24.1")
     635             :              ;; xsettings.c
     636             :              (font-use-system-font font-selection boolean "23.2")))
     637             :     (setq ;; If we did not specify any standard value expression above,
     638             :           ;; use the current value as the standard value.
     639             :           standard (if (setq prop (memq :standard rest))
     640             :                        (cadr prop)
     641             :                      (if (default-boundp symbol)
     642             :                          (funcall quoter (default-value symbol))))
     643             :           ;; Don't complain about missing variables which are
     644             :           ;; irrelevant to this platform.
     645             :           native-p (save-match-data
     646             :                      (cond
     647             :                       ((string-match "\\`dos-" (symbol-name symbol))
     648             :                        (eq system-type 'ms-dos))
     649             :                       ((string-match "\\`w32-" (symbol-name symbol))
     650             :                        (eq system-type 'windows-nt))
     651             :                       ((string-match "\\`ns-" (symbol-name symbol))
     652             :                        (featurep 'ns))
     653             :                       ((string-match "\\`x-.*gtk" (symbol-name symbol))
     654             :                        (featurep 'gtk))
     655             :                       ((string-match "clipboard-manager" (symbol-name symbol))
     656             :                        (boundp 'x-select-enable-clipboard-manager))
     657             :                       ((string-match "\\`x-" (symbol-name symbol))
     658             :                        (fboundp 'x-create-frame))
     659             :                       ((string-match "selection" (symbol-name symbol))
     660             :                        (fboundp 'x-selection-exists-p))
     661             :                       ((string-match "fringe" (symbol-name symbol))
     662             :                        (fboundp 'define-fringe-bitmap))
     663             :                       ((string-match "\\`imagemagick" (symbol-name symbol))
     664             :                        (fboundp 'imagemagick-types))
     665             :                       ((equal "font-use-system-font" (symbol-name symbol))
     666             :                        (featurep 'system-font-setting))
     667             :                       ;; Conditioned on x-create-frame, because that's
     668             :                       ;; the condition for loadup.el to preload tool-bar.el.
     669             :                       ((string-match "tool-bar-" (symbol-name symbol))
     670             :                        (fboundp 'x-create-frame))
     671             :                       ((equal "vertical-centering-font-regexp"
     672             :                               (symbol-name symbol))
     673             :                        ;; Any function from fontset.c will do.
     674             :                        (fboundp 'new-fontset))
     675             :                       ((equal "scroll-bar-adjust-thumb-portion"
     676             :                               (symbol-name symbol))
     677             :                        (featurep 'x))
     678             :                       (t t))))
     679             :     (if (not (boundp symbol))
     680             :         ;; If variables are removed from C code, give an error here!
     681             :         (and native-p
     682             :              (message "Note, built-in variable `%S' not bound" symbol))
     683             :       ;; Save the standard value, unless we already did.
     684             :       (or (get symbol 'standard-value)
     685             :           (put symbol 'standard-value (list standard)))
     686             :       ;; We need these properties independent of whether cus-start is loaded.
     687             :       (if (setq prop (memq :safe rest))
     688             :           (put symbol 'safe-local-variable (cadr prop)))
     689             :       (if (setq prop (memq :risky rest))
     690             :           (put symbol 'risky-local-variable (cadr prop)))
     691             :       (if (setq prop (memq :set rest))
     692             :           (put symbol 'custom-set (cadr prop)))
     693             :       ;; Note this is the _only_ initialize property we handle.
     694             :       (if (eq (cadr (memq :initialize rest)) 'custom-initialize-delay)
     695             :           ;; These vars are defined early and should hence be initialized
     696             :           ;; early, even if this file happens to be loaded late.  so add them
     697             :           ;; to the end of custom-delayed-init-variables.  Otherwise,
     698             :           ;; auto-save-file-name-transforms will appear in M-x customize-rogue.
     699             :           (add-to-list 'custom-delayed-init-variables symbol 'append))
     700             :       ;; If this is NOT while dumping Emacs, set up the rest of the
     701             :       ;; customization info.  This is the stuff that is not needed
     702             :       ;; until someone does M-x customize etc.
     703             :       (unless purify-flag
     704             :         ;; Add it to the right group(s).
     705             :         (if (listp group)
     706             :             (dolist (g group)
     707             :               (custom-add-to-group g symbol 'custom-variable))
     708             :           (custom-add-to-group group symbol 'custom-variable))
     709             :         ;; Set the type.
     710             :         (put symbol 'custom-type type)
     711             :         (if version (put symbol 'custom-version version))
     712             :         (while rest
     713             :           (setq prop (car rest)
     714             :                 propval (cadr rest)
     715             :                 rest (nthcdr 2 rest))
     716             :           (cond ((memq prop '(:standard :risky :safe :set))) ; handled above
     717             :                 ((eq prop :tag)
     718             :                  (put symbol 'custom-tag propval))))))))
     719             : 
     720             : (custom-add-to-group 'font-lock 'open-paren-in-column-0-is-defun-start
     721             :                      'custom-variable)
     722             : 
     723             : ;; Record cus-start as loaded if we have set up all the info that we can.
     724             : ;; Don't record it as loaded if we have only set up the standard values
     725             : ;; and safe/risky properties.
     726             : (unless purify-flag
     727             :   (provide 'cus-start))
     728             : 
     729             : ;;; cus-start.el ends here

Generated by: LCOV version 1.12