38409
|
1 ;;; cus-start.el --- define customization properties of builtins
|
17416
|
2 ;;
|
43111
|
3 ;; Copyright (C) 1997, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
17416
|
4 ;;
|
|
5 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
|
|
6 ;; Keywords: internal
|
|
7
|
17520
|
8 ;; This file is part of GNU Emacs.
|
|
9
|
|
10 ;; GNU Emacs is free software; you can redistribute it and/or modify
|
|
11 ;; it under the terms of the GNU General Public License as published by
|
|
12 ;; the Free Software Foundation; either version 2, or (at your option)
|
|
13 ;; any later version.
|
|
14
|
|
15 ;; GNU Emacs is distributed in the hope that it will be useful,
|
|
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
18 ;; GNU General Public License for more details.
|
|
19
|
|
20 ;; You should have received a copy of the GNU General Public License
|
|
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the
|
|
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
23 ;; Boston, MA 02111-1307, USA.
|
|
24
|
17416
|
25 ;;; Commentary:
|
|
26 ;;
|
18052
|
27 ;; This file adds customize support for built-in variables.
|
|
28
|
|
29 ;; While dumping Emacs, this file is loaded, but it only records
|
|
30 ;; the standard values; it does not do the rest of the job.
|
|
31 ;; Later on, if the user makes a customization buffer,
|
|
32 ;; this file is loaded again with (require 'cus-start);
|
|
33 ;; then it does the whole job.
|
17416
|
34
|
|
35 ;;; Code:
|
|
36
|
49588
|
37 (let ((all '(;; abbrev.c
|
17416
|
38 (abbrev-all-caps abbrev-mode boolean)
|
|
39 (pre-abbrev-expand-hook abbrev-mode hook)
|
|
40 ;; alloc.c
|
|
41 (gc-cons-threshold alloc integer)
|
|
42 (undo-limit undo integer)
|
|
43 (undo-strong-limit undo integer)
|
|
44 (garbage-collection-messages alloc boolean)
|
|
45 ;; buffer.c
|
|
46 (mode-line-format modeline sexp) ;Hard to do right.
|
|
47 (default-major-mode internal function)
|
18496
|
48 (enable-multibyte-characters mule boolean)
|
17416
|
49 (case-fold-search matching boolean)
|
|
50 (fill-column fill integer)
|
|
51 (left-margin fill integer)
|
|
52 (tab-width editing-basics integer)
|
|
53 (ctl-arrow display boolean)
|
|
54 (truncate-lines display boolean)
|
|
55 (selective-display-ellipses display boolean)
|
30167
|
56 (indicate-empty-lines display boolean "21.1")
|
48939
f3fc48331bdc
(scroll-up-aggressively, scroll-down-aggressively): Update custom types.
Richard M. Stallman <rms@gnu.org>
diff
changeset
|
57 (scroll-up-aggressively windows
|
f3fc48331bdc
(scroll-up-aggressively, scroll-down-aggressively): Update custom types.
Richard M. Stallman <rms@gnu.org>
diff
changeset
|
58 (choice (const :tag "off" nil) number)
|
f3fc48331bdc
(scroll-up-aggressively, scroll-down-aggressively): Update custom types.
Richard M. Stallman <rms@gnu.org>
diff
changeset
|
59 "21.1")
|
f3fc48331bdc
(scroll-up-aggressively, scroll-down-aggressively): Update custom types.
Richard M. Stallman <rms@gnu.org>
diff
changeset
|
60 (scroll-down-aggressively windows
|
f3fc48331bdc
(scroll-up-aggressively, scroll-down-aggressively): Update custom types.
Richard M. Stallman <rms@gnu.org>
diff
changeset
|
61 (choice (const :tag "off" nil) number)
|
f3fc48331bdc
(scroll-up-aggressively, scroll-down-aggressively): Update custom types.
Richard M. Stallman <rms@gnu.org>
diff
changeset
|
62 "21.1")
|
17416
|
63 ;; callint.c
|
|
64 (mark-even-if-inactive editing-basics boolean)
|
|
65 ;; callproc.c
|
|
66 (shell-file-name execute file)
|
|
67 (exec-path execute
|
|
68 (repeat (choice (const :tag "default" nil)
|
|
69 (file :format "%v"))))
|
24057
|
70 ;; coding.c
|
|
71 (inhibit-eol-conversion mule boolean)
|
24202
|
72 (eol-mnemonic-undecided mule string)
|
|
73 (eol-mnemonic-unix mule string)
|
|
74 (eol-mnemonic-dos mule string)
|
|
75 (eol-mnemonic-mac mule string)
|
30978
|
76 (file-coding-system-alist
|
|
77 mule
|
|
78 (alist
|
|
79 :key-type (regexp :tag "File regexp")
|
|
80 :value-type (choice
|
|
81 :value (undecided . undecided)
|
|
82 (cons :tag "Encoding/decoding pair"
|
|
83 :value (undecided . undecided)
|
|
84 (coding-system :tag "Decoding")
|
|
85 (coding-system :tag "Encoding"))
|
|
86 (coding-system :tag "Single coding system"
|
|
87 :value undecided)
|
|
88 (function :value ignore))))
|
48075
|
89 (selection-coding-system mule coding-system)
|
17416
|
90 ;; dired.c
|
49588
|
91 (completion-ignored-extensions dired
|
17416
|
92 (repeat (string :format "%v")))
|
25296
|
93 ;; dispnew.c
|
17416
|
94 (baud-rate display integer)
|
|
95 (inverse-video display boolean)
|
|
96 (visible-bell display boolean)
|
|
97 (no-redraw-on-reenter display boolean)
|
|
98 ;; editfns.c
|
|
99 (user-full-name mail string)
|
|
100 ;; eval.c
|
|
101 (max-specpdl-size limits integer)
|
|
102 (max-lisp-eval-depth limits integer)
|
|
103 (stack-trace-on-error debug
|
|
104 (choice (const :tag "off")
|
|
105 (repeat :menu-tag "When"
|
|
106 :value (nil)
|
|
107 (symbol :format "%v"))
|
|
108 (const :tag "always" t)))
|
49588
|
109 (debug-on-error debug
|
17416
|
110 (choice (const :tag "off")
|
|
111 (repeat :menu-tag "When"
|
|
112 :value (nil)
|
|
113 (symbol :format "%v"))
|
|
114 (const :tag "always" t)))
|
|
115 (debug-ignored-errors debug (repeat (choice symbol regexp)))
|
18883
|
116 (debug-on-quit debug
|
|
117 (choice (const :tag "off")
|
|
118 (repeat :menu-tag "When"
|
|
119 :value (nil)
|
|
120 (symbol :format "%v"))
|
|
121 (const :tag "always" t)))
|
17416
|
122 ;; fileio.c
|
|
123 (insert-default-directory minibuffer boolean)
|
26619
|
124 ;; fns.c
|
30167
|
125 (use-dialog-box menu boolean "21.1")
|
17416
|
126 ;; frame.c
|
|
127 (default-frame-alist frames
|
|
128 (repeat (cons :format "%v"
|
|
129 (symbol :tag "Parameter")
|
|
130 (sexp :tag "Value"))))
|
43376
|
131 (mouse-highlight mouse (choice (const :tag "disabled" nil)
|
|
132 (const :tag "always shown" t)
|
|
133 (other :tag "hidden by keypress" 1)))
|
17416
|
134 ;; indent.c
|
|
135 (indent-tabs-mode fill boolean)
|
|
136 ;; keyboard.c
|
|
137 (meta-prefix-char keyboard character)
|
|
138 (auto-save-interval auto-save integer)
|
|
139 (auto-save-timeout auto-save (choice (const :tag "off" nil)
|
|
140 (integer :format "%v")))
|
27768
|
141 (echo-keystrokes minibuffer number)
|
17416
|
142 (polling-period keyboard integer)
|
18478
|
143 (double-click-time mouse (restricted-sexp
|
|
144 :match-alternatives (integerp 'nil 't)))
|
46616
|
145 (double-click-fuzz mouse integer)
|
17416
|
146 (inhibit-local-menu-bar-menus menu boolean)
|
|
147 (help-char keyboard character)
|
|
148 (help-event-list keyboard (repeat (sexp :format "%v")))
|
|
149 (menu-prompting menu boolean)
|
|
150 (suggest-key-bindings keyboard (choice (const :tag "off" nil)
|
|
151 (integer :tag "time" 2)
|
22571
|
152 (other :tag "on")))
|
41604
|
153
|
30167
|
154 ;; This is not good news because it will use the wrong
|
|
155 ;; version-specific directories when you upgrade. We need
|
|
156 ;; customization of the front of the list, maintaining the standard
|
|
157 ;; value intact at the back.
|
49588
|
158 ;;; (load-path environment
|
30167
|
159 ;;; (repeat (choice :tag "[Current dir?]"
|
|
160 ;;; :format "%[Current dir?%] %v"
|
|
161 ;;; (const :tag " current dir" nil)
|
|
162 ;;; (directory :format "%v"))))
|
17416
|
163 ;; minibuf.c
|
|
164 (completion-auto-help minibuffer boolean)
|
|
165 (enable-recursive-minibuffers minibuffer boolean)
|
43035
|
166 (history-length minibuffer
|
|
167 (choice (const :tag "Infinite" t)
|
|
168 integer))
|
33684
|
169 (minibuffer-prompt-properties
|
|
170 minibuffer
|
|
171 (list
|
|
172 (checklist :inline t
|
|
173 (const :tag "Read-Only"
|
|
174 :doc "Prevent prompt from being modified"
|
|
175 :format "%t%n%h"
|
|
176 :inline t
|
|
177 (read-only t))
|
|
178 (const :tag "Inviolable"
|
|
179 :doc "Prevent point from ever entering prompt"
|
|
180 :format "%t%n%h"
|
|
181 :inline t
|
|
182 (point-entered minibuffer-avoid-prompt)))
|
|
183 (repeat :inline t
|
|
184 :tag "Other Properties"
|
|
185 (list :inline t
|
|
186 :format "%v"
|
|
187 (symbol :tag "Property")
|
33922
|
188 (sexp :tag "Value"))))
|
|
189 "21.1")
|
17416
|
190 (minibuffer-auto-raise minibuffer boolean)
|
33922
|
191 ;; options property set at end
|
34064
|
192 (read-buffer-function minibuffer
|
|
193 (choice (const nil)
|
|
194 (function-item iswitchb-read-buffer)
|
|
195 function))
|
23863
|
196 ;; msdos.c
|
|
197 (dos-unsupported-char-glyph display integer)
|
17416
|
198 ;; process.c
|
18052
|
199 (delete-exited-processes processes-basics boolean)
|
17416
|
200 ;; syntax.c
|
|
201 (parse-sexp-ignore-comments editing-basics boolean)
|
|
202 (words-include-escapes editing-basics boolean)
|
52129
|
203 (open-paren-in-column-0-is-defun-start editing-basics boolean
|
|
204 "21.1")
|
17416
|
205 ;; window.c
|
35966
|
206 (temp-buffer-show-function windows (choice (const nil) function))
|
|
207 (display-buffer-function windows (choice (const nil) function))
|
17416
|
208 (pop-up-frames frames boolean)
|
|
209 (pop-up-frame-function frames function)
|
49588
|
210 (special-display-buffer-names
|
|
211 frames
|
17416
|
212 (repeat (choice :tag "Buffer"
|
|
213 :value ""
|
|
214 (string :format "%v")
|
|
215 (cons :tag "With attributes"
|
|
216 :format "%v"
|
|
217 :value ("" . nil)
|
|
218 (string :format "%v")
|
|
219 (repeat :tag "Attributes"
|
|
220 (cons :format "%v"
|
|
221 (symbol :tag "Parameter")
|
|
222 (sexp :tag "Value")))))))
|
|
223 (special-display-regexps
|
49588
|
224 frames
|
17416
|
225 (repeat (choice :tag "Buffer"
|
|
226 :value ""
|
|
227 (regexp :format "%v")
|
|
228 (cons :tag "With attributes"
|
|
229 :format "%v"
|
|
230 :value ("" . nil)
|
|
231 (regexp :format "%v")
|
|
232 (repeat :tag "Attributes"
|
|
233 (cons :format "%v"
|
|
234 (symbol :tag "Parameter")
|
|
235 (sexp :tag "Value")))))))
|
|
236 (special-display-function frames function)
|
|
237 (same-window-buffer-names windows (repeat (string :format "%v")))
|
|
238 (same-window-regexps windows (repeat (regexp :format "%v")))
|
|
239 (pop-up-windows windows boolean)
|
34263
|
240 (even-window-heights windows boolean)
|
21407
|
241 (next-screen-context-lines windows integer)
|
17416
|
242 (split-height-threshold windows integer)
|
|
243 (window-min-height windows integer)
|
|
244 (window-min-width windows integer)
|
24840
|
245 (scroll-preserve-screen-position windows boolean)
|
30978
|
246 (display-buffer-reuse-frames windows boolean "21.1")
|
17416
|
247 ;; xdisp.c
|
|
248 (scroll-step windows integer)
|
24758
|
249 (scroll-conservatively windows integer)
|
|
250 (scroll-margin windows integer)
|
43662
|
251 (hscroll-margin windows integer "21.3")
|
|
252 (hscroll-step windows number "21.3")
|
17416
|
253 (truncate-partial-width-windows display boolean)
|
33848
401f7cd02fba
(all): Restore entry for `mode-line-inverse-video', so that people can
Miles Bader <miles@gnu.org>
diff
changeset
|
254 (mode-line-inverse-video modeline boolean)
|
43284
|
255 (mode-line-in-non-selected-windows modeline boolean "21.3")
|
30167
|
256 (line-number-display-limit display
|
|
257 (choice integer
|
|
258 (const :tag "No limit" nil)))
|
52129
|
259 (line-number-display-limit-width display integer)
|
17416
|
260 (highlight-nonselected-windows display boolean)
|
|
261 (message-log-max debug (choice (const :tag "Disable" nil)
|
|
262 (integer :menu-tag "lines"
|
|
263 :format "%v")
|
22571
|
264 (other :tag "Unlimited" t)))
|
24628
|
265 (unibyte-display-via-language-environment mule boolean)
|
52432
|
266 (blink-cursor-alist cursor alist "21.5")
|
48075
|
267 ;; xfaces.c
|
|
268 (scalable-fonts-allowed display boolean)
|
17416
|
269 ;; xfns.c
|
|
270 (x-bitmap-file-path installation
|
25296
|
271 (repeat (directory :format "%v")))
|
|
272 ;; xterm.c
|
44357
|
273 (mouse-autoselect-window display boolean "21.3")
|
43111
|
274 (x-use-underline-position-properties display boolean "21.3")
|
30167
|
275 (x-stretch-cursor display boolean "21.1")))
|
|
276 this symbol group type native-p version
|
18052
|
277 ;; This function turns a value
|
|
278 ;; into an expression which produces that value.
|
|
279 (quoter (lambda (sexp)
|
|
280 (if (or (memq sexp '(t nil))
|
28569
|
281 (keywordp sexp)
|
18052
|
282 (and (listp sexp)
|
|
283 (memq (car sexp) '(lambda)))
|
|
284 (stringp sexp)
|
30167
|
285 ;; (and (fboundp 'characterp)
|
|
286 ;; (characterp sexp))
|
|
287 (numberp sexp))
|
18052
|
288 sexp
|
|
289 (list 'quote sexp)))))
|
49588
|
290 (while all
|
17416
|
291 (setq this (car all)
|
|
292 all (cdr all)
|
|
293 symbol (nth 0 this)
|
|
294 group (nth 1 this)
|
23967
|
295 type (nth 2 this)
|
30167
|
296 version (nth 3 this)
|
23967
|
297 ;; Don't complain about missing variables which are
|
|
298 ;; irrelevant to this platform.
|
|
299 native-p (save-match-data
|
|
300 (cond
|
|
301 ((string-match "\\`dos-" (symbol-name symbol))
|
|
302 (eq system-type 'ms-dos))
|
|
303 ((string-match "\\`w32-" (symbol-name symbol))
|
|
304 (eq system-type 'windows-nt))
|
43235
|
305 ((string-match "\\`x-" (symbol-name symbol))
|
|
306 (fboundp 'x-create-frame))
|
23967
|
307 (t t))))
|
17416
|
308 (if (not (boundp symbol))
|
|
309 ;; If variables are removed from C code, give an error here!
|
23967
|
310 (and native-p
|
|
311 (message "Note, built-in variable `%S' not bound" symbol))
|
18052
|
312 ;; Save the standard value, unless we already did.
|
|
313 (or (get symbol 'standard-value)
|
49588
|
314 (put symbol 'standard-value
|
18052
|
315 (list (funcall quoter (default-value symbol)))))
|
|
316 ;; If this is NOT while dumping Emacs,
|
|
317 ;; set up the rest of the customization info.
|
|
318 (unless purify-flag
|
|
319 ;; Add it to the right group.
|
|
320 (custom-add-to-group group symbol 'custom-variable)
|
|
321 ;; Set the type.
|
30167
|
322 (put symbol 'custom-type type)
|
|
323 (put symbol 'custom-version version)))))
|
18052
|
324
|
33922
|
325 (custom-add-to-group 'iswitchb 'read-buffer-function 'custom-variable)
|
52129
|
326 (custom-add-to-group 'font-lock 'open-paren-in-column-0-is-defun-start
|
|
327 'custom-variable)
|
48075
|
328 (put 'selection-coding-system 'custom-set
|
|
329 (lambda (symbol value)
|
|
330 (set-selection-coding-system value)
|
|
331 (set symbol value)))
|
33922
|
332
|
18052
|
333 ;; Record cus-start as loaded
|
|
334 ;; if we have set up all the info that we can set up.
|
|
335 ;; Don't record cus-start as loaded
|
|
336 ;; if we have set up only the standard values.
|
|
337 (unless purify-flag
|
|
338 (provide 'cus-start))
|
17416
|
339
|
52401
|
340 ;;; arch-tag: 4502730d-bcb3-4f5e-99a3-a86f2d54af60
|
38409
|
341 ;;; cus-start.el ends here
|