;ELC   
;;; Compiled by handa@melange.gnu.org on Tue Jun 30 04:04:02 1998
;;; from file /fs/gd/1/gnu/emacs/lisp/cus-edit.el
;;; in Emacs version 20.2.97.1
;;; with bytecomp version 2.47
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`cus-edit.el' was compiled for Emacs 19.29 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\305\306!\210\305\307!\210\305\310!\210\311\312\313\217\210\311\314\315\217\210\316\317@!\204% @@L\210A\211\204 )\320\321\322\323#\210\320\321\324\325#\210\326\327\321\330#\210\331\332\311\333	\334%\210\331\335\311\336\n\332%\210\331\337\311\340\341\n\335&\210\331\342\311\343\n\335%\210\331\344\311\345\n\335%\210\331\346\311\347\n\335%\210\331\350\311\351\n\335%\210\331\352\311\353\n\332%\210\331\354\311\355\356\n\352&\210\331\357\311\360\n\352\n\361&\210\331\362\311\363\n\332%\210\331\364\311\365\n\332%\210\331\366\311\367\n\364%\210\331\370\311\371\n\366\n\361&\210\331\372\311\373\n\366%\210\331\374\311\375\n\364%\210\331\376\311\377\n\364%\210\331\201@ \311\201A \n\332%\210\331\201B \311\201C \n\201@ %\210\331\201D \311\201E \n\201@ %\210\331\201F \311\201G \n\201@ %\210\331\201H \311\201I \n\201@ %\210\331\361\311\201J \n\332%\210\331\201K \311\201L \n\361%\210\331\201M \311\201N \n\361%\210\331\201O \311\201P \n\361%\210\331\201Q \311\201R \201S \n\361&\210\331\201T \311\201U \n\332%\210\331\201V \311\201W \201X \n\201T &\210\331\201Y \311\201Z \n\201T %\210\331\201[ \311\201\\ \n\201T %\210\331\201] \311\201^ \n\201T %\210\331\201_ \311\201` \n\201T %\210\331\201a \311\201b \n\201T \n\335&\210\331\201c \311\201d \n\201T %\210\331\201e \311\201f \n\201T %\210\331\201g \311\201h \n\332%\210\331\201i \311\201j \n\332%\210\331\201k \311\201l \n\332%\210\331\201m \311\201n \n\201k %\210\331\201o \311\201p \n\332%\210\331\201q \311\201r \n\332%\210\331\201s \311\201t \n\332%\210\331\201u \311\201v \n\332%\210\331\327\201w \201x 	\201y 	\201z \f\201{ \n\201s &\210\331\201| \311\201} \n\327\n\201o &\210\331\201~ \311\201 \f\201{ \n\327&\210\331\201\200 \311\201\201 \f\201{ \n\327&\210\331\201\202 \311\201\203 \f\201{ \n\327&\210\331\201\204 \311\201\205 \n\337%\210\331\201\206 \311\201\207 \201\210 \n\201O &\210\331\201\211 \311\201\212 \n\335%\210\331\201\213 \311\201\214 \n\201T %\210\331\201\215 \311\201\216 \n\335%\210\331\201\217 \311\201\220 \n\335%\210\331\201\221 \311\201\222 \n\201T %\210\331\201\223 \311\201\224 \n\357%\210\331\201\225 \311\201\226 \n\201T %\210\331\201\227 \311\201\230 \n\201T %\210\331\201\231 \311\201\232 \n\201O %\210\331\201\233 \311\201\234 \n\361%\210\331\201\235 \311\201\236 \n\201T %\210\331\201\237 \311\201\240 \n\201T %\210\331\346\311\201\241 \n\201T %\210\331\201\242 \311\201\243 \n\201T %\210\331\201\244 \311\201\245 \n\201i %\210\331\201\246 \311\201\247 \n\357%\210\331\201\250 \311\201\251 \n\201a %\210\331\201\252 \311\201\253 \n\201T %\207" [keywords :link :group :tag :prefix require cus-face wid-edit easymenu nil (byte-code "\300\301!\207" [require cus-load] 2) ((error)) (byte-code "\300\301!\207" [require cus-start] 2) ((error)) (:custom-last :custom-prefix :custom-category :custom-prefixes :custom-menu :custom-show :custom-magic :custom-state :custom-level :custom-form :custom-set :custom-save :custom-reset-current :custom-reset-saved :custom-reset-standard) boundp put custom-define-hook custom-type hook standard-value (nil) custom-add-to-group customize custom-variable custom-declare-group emacs "Customization of the One True Editor." (custom-manual "(emacs)Top") editing "Basic text editing facilities." abbrev "Abbreviation handling, typing shortcuts, macros." "Abbreviations" matching "Various sorts of searching and matching." emulations "Emulations of other editors." mouse "Mouse support." outlines "Support for hierarchical outlining." external "Interfacing to external utilities." bib "Code related to the `bib' bibliography processor." "Bibliography" processes "Process, subshell, compilation, and job control support." development convenience "Convenience features for faster editing." programming "Support for programming in other languages." languages "Specialized modes for editing programming languages." lisp "Lisp support, including Emacs Lisp." c "Support for the C language and related languages." tools "Programming tools." oop "Support for object-oriented programming." applications "Applications written in Emacs." calendar "Calendar and time management support." mail "Modes for electronic-mail handling." news "Support for netnews reading and posting." games "Games, jokes and amusements." "Support for further development of Emacs." docs "Support for Emacs documentation." extensions "Emacs Lisp language extensions." internal "Code for Emacs internals, build process, defaults." maint "Maintenance aids for the Emacs development group." "Maintenance" environment "Fitting Emacs with its environment." comm "Communications, networking, remote access to files." "Communication" hardware "Support for interfacing with exotic hardware." terminals "Support for terminal types." unix "Front-ends/assistants for, or emulators of, UNIX features." vms "Support code for vms." i18n "Internationalization and alternate character-set support." x "The X Window system." frames "Support for Emacs frames and window systems." data "Support editing files of data." files "Support editing files." wp "Word processing." tex "Code related to the TeX formatter." faces "Support for multiple fonts." hypermedia "Support for links between text or other media types." help "Support for on-line help systems." local "Code local to your site." ((widgets custom-group)) "Customization of the Customization support." (custom-manual "(custom)Top") (url-link :tag "Development Page" "http://www.dina.kvl.dk/~abraham/custom/") "custom-" custom-faces "Faces used by customize." custom-browse "Control customize browser." custom-buffer "Control customize buffers." custom-menu "Control customize menus." abbrev-mode "Word abbreviations mode." alloc "Storage allocation and gc for GNU Emacs Lisp interpreter." "Storage Allocation" undo "Undoing changes in buffers." modeline "Content of the modeline." fill "Indenting and filling text." editing-basics "Most basic editing facilities." display "How characters are displayed in buffers." execute "Executing external commands." installation "The Emacs installation." dired "Directory editing." limits "Internal Emacs limits." debug "Debugging Emacs itself." minibuffer "Controling the behaviour of the minibuffer." keyboard "Input from the keyboard." "Input from the mouse." menu "Input from the menus." auto-save "Preventing accidential loss of data." processes-basics "Basic stuff dealing with processes." mule "MULE Emacs internationalization." windows "Windows within a frame."] 13)
#@105 Returns the last link in the list LIST.
With optional argument N, returns Nth-to-last link (default 1).
(defalias 'custom-last #[(x &optional n) "\2033 \304	\n:\203 T\n\211A\210\202 \304X\203\" \n\2021 W\2030 Z	\233\2021 	*\207	A:\203A 	\211A\210\2023 	\207" [n x p m 0] 2 (#$ . 7075)])
#@40 Quote SEXP iff it is not self quoting.
(defalias 'custom-quote #[(sexp) "\301>\2047 9\203 \302!\303H\304=\2047 <\203! @\305>\2047 ;\2047 \247\2047 \306\307!\2039 \307!\2039 \207\310D\207" [sexp (t nil) symbol-name 0 58 (lambda) fboundp characterp quote] 2 (#$ . 7382)])
#@195 If REGEXP is a string, split it to a list at `\|'.
You can get the original back with from the result with: 
  (mapconcat 'identity result "\|")

IF REGEXP is not a string, return it unchanged.
(defalias 'custom-split-regexp-maybe #[(regexp) ";\203( \303\304\305\306\n#\203 \n\303\224O	B\303\225\202	 \n\304O	B\237*\207\207" [regexp all start 0 nil string-match "\\\\|"] 4 (#$ . 7670)])
#@110 Prompt for a variable, defaulting to the variable at point.
Return a list suitable for use in `interactive'.
(defalias 'custom-variable-prompt #[nil "\304 \305\306\307\n9\203 \310\311\n\"\202 \312\313\305$\211\314\232\203) \n9\205, \n\202, \315!+C\207" [val enable-recursive-minibuffers v obarray variable-at-point t nil completing-read format "Customize option: (default %s) " "Customize variable: " #[(symbol) "\301!\205 \302N\206 \303!\207" [symbol boundp custom-type user-variable-p] 2] "" intern] 6 (#$ . 8074)])
#@173 Convert MENU to the form used by `widget-choose'.
MENU should be in the same format as `custom-variable-menu'.
WIDGET is the widget to apply the filter entries of MENU on.
(defalias 'custom-menu-filter #[(menu widget) "\306\211\211\211\211\203: @\211@A@\3078A\203* !\2033 \n	B\fB\202\n \n\fB\202\n \f\237-\207" [filter action name current result menu nil 2 widget] 6 (#$ . 8612)])
#@63 List of prefixes that should be ignored by `custom-unlispify'
(defvar custom-prefix-list nil (#$ . 9020))
#@62 Display menu entries as words instead of symbols if non nil.
(custom-declare-variable 'custom-unlispify-menu-entries 't '(#$ . 9132) :group 'custom-menu :type 'boolean)
#@66 Non-nil means remove group prefixes from option names in buffer.
(custom-declare-variable 'custom-unlispify-remove-prefixes 'nil '(#$ . 9307) :group 'custom-menu :type 'boolean)
#@35 Convert symbol into a menu entry.
(defalias 'custom-unlispify-menu-entry #[(symbol &optional no-suffix) "\204 \306	!\207	\307N\203 \n\203 	\307N\207	\307N\310P\207\212\311\312!q\210\313 \210\314	p\"\210eb\210	\315N\316=\203F \317\320\321\322#\203F \323\324\322\211#\210eb\210\203w \f\321\203v @\325`G\\\322#\203m \321e`|\210\202O A\211\204T *\326ed\327\330\322%\210\331ed\"\210\n\204\216 db\210\310c\210\332 )\207" [custom-unlispify-menu-entries symbol no-suffix custom-unlispify-remove-prefixes custom-prefix-list prefix symbol-name custom-tag "..." get-buffer-create " *Custom-Work*" erase-buffer princ custom-type boolean re-search-forward "-p\\'" nil t replace-match "" search-forward subst-char-in-region 45 32 capitalize-region buffer-string prefixes] 7 (#$ . 9491)])
#@59 Display tag names as words instead of symbols if non nil.
(custom-declare-variable 'custom-unlispify-tag-names 't '(#$ . 10292) :group 'custom-buffer :type 'boolean)
#@35 Convert symbol into a menu entry.
(defalias 'custom-unlispify-tag-name #[(symbol) "\303\n\304\")\207" [custom-unlispify-tag-names custom-unlispify-menu-entries symbol custom-unlispify-menu-entry t] 3 (#$ . 10464)])
(defalias 'custom-prefix-add #[(symbol prefixes) "\302N\206 \303!\304P	B\207" [symbol prefixes custom-prefix symbol-name "-"] 2])
#@322 Alist of (MATCH TYPE).

MATCH should be a regexp matching the name of a symbol, and TYPE should 
be a widget suitable for editing the value of that symbol.  The TYPE
of the first entry where MATCH matches the name of the symbol will be
used. 

This is used for guessing the type of variables not declared with
customize.
(custom-declare-variable 'custom-guess-name-alist ''(("-p\\'" boolean) ("-hook\\'" hook) ("-face\\'" face) ("-file\\'" file) ("-function\\'" function) ("-functions\\'" (repeat function)) ("-list\\'" (repeat sexp)) ("-alist\\'" (repeat (cons sexp sexp)))) '(#$ . 10821) :type '(repeat (group (regexp :tag "Match") (sexp :tag "Type"))) :group 'customize)
#@352 Alist of (MATCH TYPE).

MATCH should be a regexp matching a documentation string, and TYPE
should be a widget suitable for editing the value of a variable with
that documentation string.  The TYPE of the first entry where MATCH
matches the name of the symbol will be used.

This is used for guessing the type of variables not declared with
customize.
(custom-declare-variable 'custom-guess-doc-alist ''(("\\`\\*?Non-nil " boolean)) '(#$ . 11502) :type '(repeat (group (regexp :tag "Match") (sexp :tag "Type"))) :group 'customize)
#@187 Guess a widget suitable for editing the value of SYMBOL.
This is done by matching SYMBOL with `custom-guess-name-alist' and 
if that fails, the doc string with `custom-guess-doc-alist'.
(defalias 'custom-guess-type #[(symbol) "\306!	\307\211\f\203& \f@\fA\310@\"\203\n A@\307\211\204 \n\204[ \311\312\"\f\211\203Z \f\203Z \f@\fA\f\310@\"\2038 A@\307\211\f\204= *\n,\207" [symbol custom-guess-name-alist found current names name symbol-name nil string-match documentation-property variable-documentation custom-guess-doc-alist docs doc] 5 (#$ . 12039)])
#@70 If non-nil, sort members of each customization group alphabetically.
(custom-declare-variable 'custom-browse-sort-alphabetically 'nil '(#$ . 12628) :type 'boolean :group 'custom-browse)
#@152 If non-nil, order group members within each customization group.
If `first', order groups before non-groups.
If `last', order groups after non-groups.
(custom-declare-variable 'custom-browse-order-groups 'nil '(#$ . 12821) :type '(choice (const first) (const last) (const :tag "none" nil)) :group 'custom-browse)
#@70 If non-nil, show group members only within each customization group.
(custom-declare-variable 'custom-browse-only-groups 'nil '(#$ . 13140) :type 'boolean :group 'custom-browse)
#@70 If non-nil, sort members of each customization group alphabetically.
(custom-declare-variable 'custom-buffer-sort-alphabetically 'nil '(#$ . 13324) :type 'boolean :group 'custom-buffer)
#@152 If non-nil, order group members within each customization group.
If `first', order groups before non-groups.
If `last', order groups after non-groups.
(custom-declare-variable 'custom-buffer-order-groups ''last '(#$ . 13517) :type '(choice (const first) (const last) (const :tag "none" nil)) :group 'custom-buffer)
#@70 If non-nil, sort members of each customization group alphabetically.
(custom-declare-variable 'custom-menu-sort-alphabetically 'nil '(#$ . 13838) :type 'boolean :group 'custom-menu)
#@152 If non-nil, order group members within each customization group.
If `first', order groups before non-groups.
If `last', order groups after non-groups.
(custom-declare-variable 'custom-menu-order-groups ''first '(#$ . 14027) :type '(choice (const first) (const last) (const :tag "none" nil)) :group 'custom-menu)
#@263 Return a sorted copy of ITEMS.
ITEMS should be a `custom-group' property.
If SORT-ALPHABETICALLY non-nil, sort alphabetically.
If ORDER-GROUPS is `first' order groups before non-groups, if `last' order
groups after non-groups, if nil do not order groups at all.
(defalias 'custom-sort-items #[(items sort-alphabetically order-groups) "\301\302!\303\"\207" [items sort copy-sequence #[(a b) "A@	A@\306@!\306	@!\n\204\" \205U \n\231\202U \307=\203@ \f\307=\2039 \205U \n\231\202U \n\310=\202U \f\307=\203M \n\311=\202U \205U \n\231,\207" [a b nameb namea typeb typea symbol-name custom-group first last order-groups sort-alphabetically] 5]] 3 (#$ . 14346)])
#@46 Customization widgets in the current buffer.
(defvar custom-options nil (#$ . 15028))
#@38 Set changes in all modified options.
(defalias 'Custom-set #[nil "\302\303	\")\207" [custom-options children mapcar #[(child) "\303	\"\304=\205 \305\n\"\207" [child :custom-state :custom-set widget-get modified widget-apply] 3]] 3 (#$ . 15120) nil])
#@47 Set all modified group members and save them.
(defalias 'Custom-save #[nil "\302\303	\"\210)\304 \207" [custom-options children mapcar #[(child) "\303	\"\304>\205 \305\n\"\207" [child :custom-state :custom-save widget-get (modified set) widget-apply] 3] custom-save-all] 3 (#$ . 15381) nil])
#@206 Alist of actions for the `Reset' button.
The key is a string containing the name of the action, the value is a
lisp function taking the widget as an element which will be called
when the action is chosen.
(defvar custom-reset-menu '(("Current" . Custom-reset-current) ("Saved" . Custom-reset-saved) ("Standard Settings" . Custom-reset-standard)) (#$ . 15685))
#@30 Select item from reset menu.
(defalias 'custom-reset #[(event) "\304\305\306	\n#\211\205  *\207" [completion-ignore-case custom-reset-menu event answer t widget-choose "Reset to"] 5 (#$ . 16051)])
#@58 Reset all modified group members to their current value.
(defalias 'Custom-reset-current #[(&rest ignore) "\302\303	\")\207" [custom-options children mapcar #[(child) "\303	\"\304=\205 \305\n\"\207" [child :custom-state :custom-reset-current widget-get modified widget-apply] 3]] 3 (#$ . 16258) nil])
#@63 Reset all modified or set group members to their saved value.
(defalias 'Custom-reset-saved #[(&rest ignore) "\302\303	\")\207" [custom-options children mapcar #[(child) "\303	\"\304=\205 \305\n\"\207" [child :custom-state :custom-reset-saved widget-get modified widget-apply] 3]] 3 (#$ . 16570) nil])
#@77 Reset all modified, set, or saved group members to their standard settings.
(defalias 'Custom-reset-standard #[(&rest ignore) "\302\303	\")\207" [custom-options children mapcar #[(child) "\303	\"\304=\205 \305\n\"\207" [child :custom-state :custom-reset-standard widget-get modified widget-apply] 3]] 3 (#$ . 16883) nil])
#@525 Prompt for a variable and a value and return them as a list.
PROMPT-VAR is the prompt for the variable, and PROMPT-VAL is the
prompt for the value.  The %s escape in PROMPT-VAL is replaced with
the name of the variable.

If the variable has a `variable-interactive' property, that is used as if
it were the arg to `interactive' (which see) to interactively read the value.

If the variable has a `custom-type' property, it must be a widget and the
`:prompt-value' property of that widget will be used for reading the value.
(defalias 'custom-prompt-variable #[(prompt-var prompt-val) "\306!\307	\211\310N	\311N\312	\"<\204 C\203/ \313\314\315\316D\317F!\202I \203F \320\f\321	!\205> 	J\321	!?$\202I \322\f!-D\207" [prompt-var var minibuffer-help-form prompt-val prompt type read-variable (describe-variable var) variable-interactive custom-type format call-interactively lambda (arg) interactive arg widget-prompt-value boundp eval-minibuffer prop] 7 (#$ . 17217)])
#@345 Set VARIABLE to VALUE.  VALUE is a Lisp object.

If VARIABLE has a `variable-interactive' property, that is used as if
it were the arg to `interactive' (which see) to interactively read the value.

If VARIABLE has a `custom-type' property, it must be a widget and the
`:prompt-value' property of that widget will be used for reading the value.
(defalias 'customize-set-value #[(var val) "	L\207" [var val] 2 (#$ . 18208) (custom-prompt-variable "Set variable: " "Set %s to value: ")])
#@588 Set the default for VARIABLE to VALUE.  VALUE is a Lisp object.

If VARIABLE has a `custom-set' property, that is used for setting
VARIABLE, otherwise `set-default' is used.

The `customized-value' property of the VARIABLE will be set to a list
with a quoted VALUE as its sole list member.

If VARIABLE has a `variable-interactive' property, that is used as if
it were the arg to `interactive' (which see) to interactively read the value.

If VARIABLE has a `custom-type' property, it must be a widget and the
`:prompt-value' property of that widget will be used for reading the value. 
(defalias 'customize-set-variable #[(var val) "\302N\206 \303	\"\210\304\305\306	!C#\207" [var val custom-set set-default put customized-value custom-quote] 5 (#$ . 18701) (custom-prompt-variable "Set variable: " "Set customized value for %s to: ")])
#@595 Set the default for VARIABLE to VALUE, and save it for future sessions.
If VARIABLE has a `custom-set' property, that is used for setting
VARIABLE, otherwise `set-default' is used.

The `customized-value' property of the VARIABLE will be set to a list
with a quoted VALUE as its sole list member.

If VARIABLE has a `variable-interactive' property, that is used as if
it were the arg to `interactive' (which see) to interactively read the value.

If VARIABLE has a `custom-type' property, it must be a widget and the
`:prompt-value' property of that widget will be used for reading the value. 
(defalias 'customize-save-variable #[(var val) "\302N\206 \303	\"\210\304\305\306	!C#\210\307 \207" [var val custom-set set-default put saved-value custom-quote custom-save-all] 5 (#$ . 19550) (custom-prompt-variable "Set and ave variable: " "Set and save value for %s as: ")])
#@244 Select a customization buffer which you can use to set user options.
User options are structured into "groups".
Initially the top-level group `Emacs' and its immediate subgroups
are shown; the contents of those subgroups are initially hidden.
(defalias 'customize #[nil "\300\301!\207" [customize-group emacs] 2 (#$ . 20433) nil])
#@55 Customize GROUP, which must be a customization group.
(defalias 'customize-group #[(group) ";\203 \302\230\203 \303\202 \304!\305N\204 \306!\210\307\310\311!\"\312	!\2031 \313	!\202= \314\305DC	\315\311!P#)\207" [group name "" emacs intern custom-group custom-load-symbol format "*Customize Group: %s*" custom-unlispify-tag-name get-buffer pop-to-buffer custom-buffer-create " for group "] 6 (#$ . 20770) (list (let ((completion-ignore-case t)) (completing-read "Customize group: (default emacs) " obarray (lambda (symbol) (or (get symbol 'custom-loads) (get symbol 'custom-group))) t)))])
#@55 Customize GROUP, which must be a customization group.
(defalias 'customize-group-other-window #[(group) ";\203 \303\230\203 \304\202 \305!\306N\204 \307!\210\310\311\312!\"\313	!\2039 \314 \315	!\210\316\n!)\202E \317\306DC	\320\312!P#)\207" [group name window "" emacs intern custom-group custom-load-symbol format "*Customize Group: %s*" custom-unlispify-tag-name get-buffer selected-window pop-to-buffer select-window custom-buffer-create-other-window " for group "] 6 (#$ . 21381) (list (let ((completion-ignore-case t)) (completing-read "Customize group: (default emacs) " obarray (lambda (symbol) (or (get symbol 'custom-loads) (get symbol 'custom-group))) t)))])
(defalias 'customize-variable 'customize-option)
#@57 Customize SYMBOL, which must be a user option variable.
(defalias 'customize-option #[(symbol) "\301\302DC\303\304\305!\"\"\207" [symbol custom-buffer-create custom-variable format "*Customize Option: %s*" custom-unlispify-tag-name] 6 (#$ . 22122) (custom-variable-prompt)])
#@160 Customize all user option variables whose default values changed recently.
This means, in other words, variables and groups defined with a `:version' 
option.
(defalias 'customize-changed-options #[(since-version) "\305\232\203 \306\306\211\307\310!\210\n\204 \311\312!\202N \306	\2032 \313\314	@\f\"A!B	A\211\204  \315\304\316\317\320\"#\210)\321\304!\210\315\304\316\306#\210\322\323\n\324\325#\326\"*\207" [since-version versions found flist custom-versions-load-alist "" nil mapatoms #[(symbol) "\305!\204 \306N\204 \307N\205M \310N\211\2054 \n\203% \311\n	\"\2054 	\235\203/ \312\2024 	B\211)\205M \307N\203F \313D\fB\202K \314D\fB\211\207" [symbol version since-version versions found boundp standard-value group-documentation custom-version customize-version-lessp t custom-group custom-variable] 4] error "No user options have changed defaults in recent Emacs versions" copy-sequence assoc put custom-loads apply nconc custom-load-symbol custom-buffer-create custom-sort-items t first "*Customize Changed Options*"] 7 (#$ . 22406) "sCustomize options changed, since version (default all versions): "])
(defalias 'customize-version-lessp #[(version1 version2) "\306\211\211\211\307\310\f\"\210\311\312\313\f\"!\311\312\314\f\"!\307\310\"\210\311\312\313\"!\311\312\314\"!\nW\206= \nU\205= 	W,\207" [minor2 minor1 major2 major1 version1 version2 nil string-match "\\([0-9]+\\)[.]\\([0-9]+\\)" read match-string 1 2] 4])
(defalias 'customize-variable-other-window 'customize-option-other-window)
#@113 Customize SYMBOL, which must be a user option variable.
Show the buffer in another window, but don't select it.
(defalias 'customize-option-other-window #[(symbol) "\301\302DC\303\304\305!\"\"\207" [symbol custom-buffer-create-other-window custom-variable format "*Customize Option: %s*" custom-unlispify-tag-name] 6 (#$ . 23953) (custom-variable-prompt)])
#@94 Customize SYMBOL, which should be a face name or nil.
If SYMBOL is nil, customize all faces.
(defalias 'customize-face #[(&optional symbol) "\203 ;\203 G\301U\203 \302\303\304\305\306 \"\307\310#\311\"\207;\203& \312!9\2040 \313\314\"\210\302\315DC\316\317\320!\"\"\207" [symbol 0 custom-buffer-create custom-sort-items mapcar #[(symbol) "\301D\207" [symbol custom-face] 2] face-list t nil "*Customize Faces*" intern error "Should be a symbol %S" custom-face format "*Customize Face: %s*" custom-unlispify-tag-name] 6 (#$ . 24318) (list (completing-read "Customize face: (default all) " obarray 'custom-facep))])
#@53 Show customization buffer for FACE in other window.
(defalias 'customize-face-other-window #[(&optional symbol) "?\206 ;\205 G\301U?\2051 ;\203 \302!9\204% \303\304\"\210\305\306DC\307\310\311!\"\"\207" [symbol 0 intern error "Should be a symbol %S" custom-buffer-create-other-window custom-face format "*Customize Face: %s*" custom-unlispify-tag-name] 6 (#$ . 24951) (list (completing-read "Customize face: " obarray 'custom-facep))])
#@69 Customize all user options set since the last save in this session.
(defalias 'customize-customized #[nil "\301\302\303!\210\204 \304\305!\202 \306\307\310\301#\311\")\207" [found nil mapatoms #[(symbol) "\302N\203 \303!\203 \304D	B\305N\205% \306!\205% \307D	B\211\207" [symbol found customized-face custom-facep custom-face customized-value boundp custom-variable] 2] error "No customized user options" custom-buffer-create custom-sort-items t "*Customize Customized*"] 5 (#$ . 25406) nil])
#@43 Customize all already saved user options.
(defalias 'customize-saved #[nil "\301\302\303!\210\204 \304\305!\202 \306\307\310\301#\311\")\207" [found nil mapatoms #[(symbol) "\302N\203 \303!\203 \304D	B\305N\205% \306!\205% \307D	B\211\207" [symbol found saved-face custom-facep custom-face saved-value boundp custom-variable] 2] error "No saved user options" custom-buffer-create custom-sort-items t "*Customize Saved*"] 5 (#$ . 25920) nil])
#@288 Customize all user options matching REGEXP.
If ALL is `options', include only options.
If ALL is `faces', include only faces.
If ALL is `groups', include only groups.
If ALL is t (interactively, with prefix arg), include options which are not
user-settable, as well as faces and groups.
(defalias 'customize-apropos #[(regexp &optional all) "\302\303\304!\210\204 \305\306!\202 \307\310\311	#\312\")\207" [found custom-buffer-order-groups nil mapatoms #[(symbol) "\304\305	!\"\205_ \n\306>\204 	\307N\203 	\307DB\n\310>\204- \311	!\203- 	\312DB\n\313>?\205_ \314	!\205_ 	\315N\204X 	\316N\204X \n\317>\203R \320	!\202U 	\321N\205_ 	\322DB\211\207" [regexp symbol all found string-match symbol-name (faces options) custom-group (options groups) custom-facep custom-face (groups faces) boundp saved-value standard-value (nil options) user-variable-p variable-documentation custom-variable] 4] error "No matches" custom-buffer-create custom-sort-items t "*Customize Apropos*"] 5 (#$ . 26384) "sCustomize regexp: \nP"])
#@107 Customize all user options matching REGEXP.
With prefix arg, include options which are not user-settable.
(defalias 'customize-apropos-options #[(regexp &optional arg) "\302	\206 \303\"\207" [regexp arg customize-apropos options] 3 (#$ . 27421) "sCustomize regexp: \nP"])
#@43 Customize all user faces matching REGEXP.
(defalias 'customize-apropos-faces #[(regexp) "\301\302\"\207" [regexp customize-apropos faces] 3 (#$ . 27701) "sCustomize regexp: \n"])
#@44 Customize all user groups matching REGEXP.
(defalias 'customize-apropos-groups #[(regexp) "\301\302\"\207" [regexp customize-apropos groups] 3 (#$ . 27887) "sCustomize regexp: \n"])
#@207 Control the presentation style for customization buffers.
The value should be a symbol, one of:

brackets: groups nest within each other with big horizontal brackets.
links: groups have links to subgroups.
(custom-declare-variable 'custom-buffer-style ''links '(#$ . 28077) :type '(radio (const brackets) (const links)) :group 'custom-buffer)
#@43 Number of spaces to indent nested groups.
(custom-declare-variable 'custom-buffer-indent '3 '(#$ . 28426) :type 'integer :group 'custom-buffer)
#@227 Create a buffer containing OPTIONS.
Optional NAME is the name of the buffer.
OPTIONS should be an alist of the form ((SYMBOL WIDGET)...), where
SYMBOL is a customization option, and WIDGET is a widget for editing
that option.
(defalias 'custom-buffer-create #[(options &optional name description) "\204 \303\304\305!!\210\306\305!!\210\307	\n\"\207" [name options description "*Customization*" kill-buffer get-buffer-create pop-to-buffer custom-buffer-create-internal] 3 (#$ . 28577)])
#@227 Create a buffer containing OPTIONS.
Optional NAME is the name of the buffer.
OPTIONS should be an alist of the form ((SYMBOL WIDGET)...), where
SYMBOL is a customization option, and WIDGET is a widget for editing
that option.
(defalias 'custom-buffer-create-other-window #[(options &optional name description) "\204 \306\307\310!!\210\311 \312\313\211\211\211\314\310!!\210\315\"\210\316!.\207" [name same-window-regexps same-window-buffer-names special-display-regexps special-display-buffer-names pop-up-windows "*Customization*" kill-buffer get-buffer-create selected-window t nil pop-to-buffer custom-buffer-create-internal select-window window options description] 6 (#$ . 29075)])
#@129 If non-nil, only show a single reset button in customize buffers.
This button will have a menu with all three reset operations.
(custom-declare-variable 'custom-reset-button-menu 'nil '(#$ . 29788) :type 'boolean :group 'custom-buffer)
(defalias 'custom-buffer-create-internal #[(options &optional description) "\306\307!\210\310 \210\311\312!\210\203 \311!\210\311\313!\210\314\315	\316\n\317\320&\210\311\321!\210\306\322!\210\311\323!\210\314\324	\325\n\326\327&\210\311\330!\210\314\324	\331\n\332\333&\210\f\203_ \311\330!\210\314\324	\334\n\335\336\337&	\210\202\214 \311\340!\210\314\324	\334\n\341\342&\210\311\330!\210\314\324	\343\n\344\345&\210\311\330!\210\314\324	\346\n\347\350&\210\311\351!\210\314\324	\352\n\353\354&\210\311\355!\210\306\356!\210=G\357U\203\263 \360\361=\"\202\301 \362=G>?\360\363=\"*@h\364=\204\315 \311\365!\210\306\366\367\"\210A\370=\204\337 \360\371@\"\210\306\372!\210\373 \210eb\210\306\374!\207" [description :tag :help-echo :action custom-reset-button-menu :mouse-down-action message "Creating customization buffer..." custom-mode widget-insert "This is a customization buffer" ".\nSquare brackets show active fields; type RET or click mouse-1\non an active field to invoke its action.  Editing an option value\nchanges the text in the buffer; invoke the State button and\nchoose the Set operation to set the option value.\nInvoke " widget-create info-link "Help" "Read the online help." "(emacs)Easy Customization" " for more information.\n\n" "Creating customization buttons..." "Operate on everything in this buffer:\n " push-button "Set for Current Session" "Make your editing in this buffer take effect for this session." #[(widget &optional event) "\300 \207" [Custom-set] 1] " " "Save for Future Sessions" "Make your editing in this buffer take effect for future Emacs sessions." #[(widget &optional event) "\300 \207" [Custom-save] 1] "Reset" "Show a menu with reset operations." #[(&rest junk) "\300\207" [t] 1] #[(widget &optional event) "\301!\207" [event custom-reset] 2] "\n " "Reset all edited text in this buffer to reflect current values." Custom-reset-current "Reset to Saved" "Reset all values in this buffer to their saved settings." Custom-reset-saved "Reset to Standard" "Reset all values in this buffer to their standard settings." Custom-reset-standard "   " "Bury Buffer" "Bury the buffer." #[(widget &optional event) "\300 \207" [bury-buffer] 1] "\n\n" "Creating customization items..." 1 mapcar #[(entry) "\305A@	\306\n\307\310@!\f@&	\207" [entry :documentation-shown :custom-state :tag :value widget-create t unknown custom-unlispify-tag-name] 10] 0 #[(entry) "\305\306\307_	\245\"\210\310\nA@\311\n@!\f\n@%Th\312=\204# \313\314!\210\313\314!\210\207" [count length entry :tag :value message "Creating customization items ...%2d%%" 100.0 widget-create custom-unlispify-tag-name 10 widget-insert "\n"] 6] 10 "\n" "Creating customization items ...%2d%%done" 100 tree custom-magic-reset "Creating customization setup..." widget-setup "Creating customization buffer...done" options length count custom-options custom-buffer-style] 10])
#@52 Create a tree browser for the customize hierarchy.
(defalias 'customize-browse #[(&optional group) "\204 \306\307\310\311	!!\210\312\311	!!\210)\313 \210\314\315!\210\n\203' \314\316!\210\202X \314\317!\210\320\321\322\f\323\324&\210\314\325!\210\320\321\322\f\326\327&\210\314\330!\210\320\321\322\f\331\332&\210\314\333!\210\334!\320\335\"\336#\337\f\340!$&	\210)eb\207" [group name custom-browse-only-groups :format :tag :tag-glyph emacs "*Customize Browser*" kill-buffer get-buffer-create pop-to-buffer custom-mode widget-insert "Square brackets show active fields; type RET or click mouse-1\non an active field to invoke its action.\nInvoke [+] below to expand a group, and [-] to collapse an expanded group.\n" "Invoke the [Group] button below to edit that item in another window.\n\n" "Invoke the " widget-create item "%t" "[Group]" "folder" ", " "[Face]" "face" ", and " "[Option]" "option" " buttons below to edit that\nitem in another window.\n\n" tree custom-group t unknown custom-unlispify-tag-name custom-buffer-style :custom-last :custom-state :value] 10 (#$ . 32933) nil])
(define-widget 'custom-browse-visibility 'item "Control visibility of items in the customize tree browser." :format "%[[%t]%]" :action 'custom-browse-visibility-action)
(defalias 'custom-browse-visibility-action #[(widget &rest ignore) "\302\303	!)\207" [custom-buffer-style widget tree custom-toggle-parent] 2])
(define-widget 'custom-browse-group-tag 'push-button "Show parent in other window when activated." :tag "Group" :tag-glyph "folder" :action 'custom-browse-group-tag-action)
(defalias 'custom-browse-group-tag-action #[(widget &rest ignore) "\303	\"\304\305\n!!)\207" [widget :parent parent widget-get customize-group-other-window widget-value] 3])
(define-widget 'custom-browse-variable-tag 'push-button "Show parent in other window when activated." :tag "Option" :tag-glyph "option" :action 'custom-browse-variable-tag-action)
(defalias 'custom-browse-variable-tag-action #[(widget &rest ignore) "\303	\"\304\305\n!!)\207" [widget :parent parent widget-get customize-variable-other-window widget-value] 3])
(define-widget 'custom-browse-face-tag 'push-button "Show parent in other window when activated." :tag "Face" :tag-glyph "face" :action 'custom-browse-face-tag-action)
(defalias 'custom-browse-face-tag-action #[(widget &rest ignore) "\303	\"\304\305\n!!)\207" [widget :parent parent widget-get customize-face-other-window widget-value] 3])
(byte-code "\302\300	B\300\207" [custom-browse-alist current-load-list (("   " "space") (" | " "vertical") ("-\\ " "top") (" |-" "middle") (" `-" "bottom"))] 2)
#@56 Insert PREFIX.  On XEmacs convert it to line graphics.
(defalias 'custom-browse-insert-prefix #[(prefix) "c\207" [prefix] 1 (#$ . 35577)])
(byte-code "\304\305\306N\307#\210\304\310\306N\311#\210\304\312\306N\307#\210\313\314\315\316	\317\n\320&\210\321\322\323\324\325\326&\210\327\330\331\332\322%\210\327\333\334\335\322%\210\327\336\337\340\322%\210\327\341\342\343\322%\210\327\344\345\346\322%\210\327\347\350\351\322%\207" [:custom-show :help-echo :tag :group widget-put item widget-type t editable-field #[(widget value) "\302!\303\304	\"\203 \305\202 	G\306V\203 \305\202 \307)\207" [value pp pp-to-string string-match "\n" nil 40 t] 3] menu-choice define-widget custom-manual info-link "Link to the manual entry for this customization option." "Read the manual entry for this option." "Manual" custom-declare-group custom-magic-faces nil "Faces used by the magic button." custom-faces custom-buffer custom-declare-face custom-invalid-face ((((class color)) (:foreground "yellow" :background "red")) (t (:bold t :italic t :underline t))) "Face used when the customize item is invalid." custom-rogue-face ((((class color)) (:foreground "pink" :background "black")) (t (:underline t))) "Face used when the customize item is not defined for customization." custom-modified-face ((((class color)) (:foreground "white" :background "blue")) (t (:italic t :bold))) "Face used when the customize item has been modified." custom-set-face ((((class color)) (:foreground "blue" :background "white")) (t (:italic t))) "Face used when the customize item has been set." custom-changed-face ((((class color)) (:foreground "white" :background "blue")) (t (:italic t))) "Face used when the customize item has been changed." custom-saved-face ((t (:underline t))) "Face used when the customize item has been saved."] 8)
#@1130 Alist of customize option states.
Each entry is of the form (STATE MAGIC FACE ITEM-DESC [ GROUP-DESC ]), where 

STATE is one of the following symbols:

`nil'
   For internal use, should never occur.
`unknown'
   For internal use, should never occur.
`hidden'
   This item is not being displayed. 
`invalid'
   This item is modified, but has an invalid form.
`modified'
   This item is modified, and has a valid form.
`set'
   This item has been set but not saved.
`changed'
   The current value of this item has been changed temporarily.
`saved'
   This item is marked for saving.
`rogue'
   This item has no customization information.
`standard'
   This item is unchanged from the standard setting.

MAGIC is a string used to present that state.

FACE is a face used to present the state.

ITEM-DESC is a string describing the state for options.

GROUP-DESC is a string describing the state for groups.  If this is
left out, ITEM-DESC will be used.

The string %c in either description will be replaced with the
category of the item.  These are `group'. `option', and `face'.

The list should be sorted most significant first.
(defconst custom-magic-alist '((nil "#" underline "uninitialized, you should not see this.") (unknown "?" italic "unknown, you should not see this.") (hidden "-" default "hidden, invoke \"Show\" in the previous line to show." "group now hidden, invoke \"Show\", above, to show contents.") (invalid "x" custom-invalid-face "the value displayed for this %c is invalid and cannot be set.") (modified "*" custom-modified-face "you have edited the value as text, but you have not set the %c." "you have edited something in this group, but not set it.") (set "+" custom-set-face "you have set this %c, but not saved it for future sessions." "something in this group has been set, but not saved.") (changed ":" custom-changed-face "this %c has been changed outside the customize buffer." "something in this group has been changed outside customize.") (saved "!" custom-saved-face "this %c has been set and saved." "something in this group has been set and saved.") (rogue "@" custom-rogue-face "this %c has not been changed with customize." "something in this group is not prepared for customization.") (standard " " nil "this %c is unchanged from its standard setting." "visible group members are all at standard settings.")) (#$ . 37416))
#@112 If non-nil, show textual description of the state.
If `long', show a full-line description, not just one word.
(custom-declare-variable 'custom-magic-show ''long '(#$ . 39786) :type '(choice (const :tag "no" nil) (const long) (other :tag "short" short)) :group 'custom-buffer)
#@213 Control whether the State button is shown for hidden items.
The value should be a list with the custom categories where the State
button should be visible.  Possible categories are `group', `option',
and `face'.
(custom-declare-variable 'custom-magic-show-hidden ''(option face) '(#$ . 40070) :type '(set (const group) (const option) (const face)) :group 'custom-buffer)
#@74 Show a "magic" button indicating the state of each customization option.
(custom-declare-variable 'custom-magic-show-button 'nil '(#$ . 40447) :type 'boolean :group 'custom-buffer)
(define-widget 'custom-magic 'default "Show and manipulate state for a customization option." :format "%v" :action 'widget-parent-action :notify 'ignore :value-get 'ignore :value-create 'custom-magic-value-create :value-delete 'widget-children-value-delete)
(defalias 'widget-magic-mouse-down-action #[(widget &optional event) "\303\211\211	\"	\"\n\"\304=?\207" [widget :parent :custom-state widget-get hidden] 5])
(defalias 'custom-magic-value-create #[(widget) "\306	\"\306\n\"\211\305=\f1\236\2112A@3\30728%\306\n4\"\2115\310=\2033 \31128\2067 \312286\306\n7\"8\3139\314\3156\"\203_ \316\3176\"\3205!\316\3076\"Q6\202C :\203\367 \203p 5;>\203\367 \321c\2105\310=\203\227 <\322=\203\213 \306\n=\"\317V\204\227 \323\324>\306\n=\"_\"\210\325\326?\327@\203\247 \330\202\250 \331A\332B\333C\334D\335&9B9\336c\210`E:\337=\203\317 6c\210\202\324 \320\f!c\2108\340=\203\341 \341c\210\202\353 8\342=\203\353 \343c\210\344E`\345\346$\210)\347c\2105\310=\203<\322=\203\306\n=\"\317V\204\323\324>\306\n=\"_\"\210F\203u:\2037\306\nG\"\211H\2036\323\324H\"\210)\325\326C\334I%A\350B\350?\351@\203T\330\202U\331D8\352>\203f\3533\354Q\202k\3553\356Q&9B9\357c\210\360J9#.\n\207" [widget :parent parent :custom-state state hidden widget-get 2 group 4 3 nil string-match "\\`\\(.*\\)%c\\(.*\\)\\'" match-string 1 symbol-name "   " links insert-char 32 widget-create-child-and-convert choice-item "Change the state of this item." "%t" "%[%t%]" widget-push-button-prefix widget-push-button-suffix widget-magic-mouse-down-action "State" ": " long lisp " (lisp)" mismatch " (mismatch)" put-text-property face custom-state-face "\n" "" "Change the state." (lisp mismatch) "(" ")" "[" "]" " " widget-put custom-magic-alist entry magic :custom-category category text :custom-form form children custom-magic-show custom-magic-show-hidden custom-buffer-style :custom-level custom-buffer-indent :help-echo :format :button-prefix :button-suffix :mouse-down-action :tag start custom-magic-show-button :indent indent :button-face :children] 20])
#@46 Redraw the :custom-magic property of WIDGET.
(defalias 'custom-magic-reset #[(widget) "\303	\"\304\n\305\n!\")\207" [widget :custom-magic magic widget-get widget-value-set widget-value] 4 (#$ . 42743)])
(byte-code "\306\307\310\311\312%\210\306\313\310\314\312%\210\306\315\316\317\312%\210\320\321\322\323	\324\n\325\326\f\327\330\331 \332!\332\"\333#\334$\335%\336&\207" [:group :format :convert-widget :notify :custom-prefix :custom-level custom-declare-face custom-button-face nil "Face used for buttons in customization buffers." custom-faces custom-documentation-face "Face used for documentation strings in customization buffers." custom-state-face ((((class color) (background dark)) (:foreground "lime green")) (((class color) (background light)) (:foreground "dark green")) (t nil)) "Face used for State descriptions in the customize buffer." define-widget custom default "Customize a user option." "%v" custom-convert-widget custom-notify "" 1 hidden widget-subclass-responsibility widget-children-value-delete widget-value-value-get widget-children-validate #[(widget value) "9\207" [value] 1] :custom-state :documentation-property :value-create :value-delete :value-get :validate :match] 28)
(defalias 'custom-convert-widget #[(widget) "\306	\"\211\203# \307\310\f\n@##\210\307\311\n@!#\210\307	\312#\210)\207" [widget :args args :value :value-to-internal :tag widget-get widget-put widget-apply custom-unlispify-tag-name nil] 8])
#@24 Keep track of changes.
(defalias 'custom-notify #[(widget &rest args) "\304	\"\211\305=?\205! \n\306>\204 \307	\305#\210\310!\210\311\312#)\207" [widget :custom-state state args widget-get modified (nil unknown hidden) widget-put custom-magic-reset apply widget-default-notify] 5 (#$ . 44219)])
#@38 Redraw WIDGET with current settings.
(defalias 'custom-redraw #[(widget) "\306e`\"i`\307\310	\"!\307\310\n\"!\212\311\312!\"\210\313!\210)\fY\2056 X\2056 \314\315\316\217-\207" [widget :from :to to from pos count-lines marker-position widget-get widget-value-set widget-value custom-redraw-magic nil (byte-code "\302V\203 \303	!\210\202 \303	T!\210\304!\207" [column line 0 goto-line move-to-column] 2) ((error)) column line] 8 (#$ . 44527)])
#@44 Redraw WIDGET state with current settings.
(defalias 'custom-redraw-magic #[(widget) "\203* \304	\"\211\203$ \305\n\306\n!\"\210\304\"\211\203& \307!\210\202& \310)\202  \311 \207" [widget :custom-magic magic :group widget-get widget-value-set widget-value custom-group-state-update nil widget-setup] 5 (#$ . 44995)])
#@58 Non-nil if WIDGET should be shown with VALUE by default.
(defalias 'custom-show #[(widget value) "\304	\"\211\204 \305\202 \n\306=\203 \306\202 \n\")\207" [widget :custom-show show value widget-get nil t] 4 (#$ . 45327)])
#@39 Hack to avoid recursive dependencies.
(defvar custom-load-recursion nil (#$ . 45563))
#@35 Load all dependencies for SYMBOL.
(defalias 'custom-load-symbol #[(symbol) "?\205I \306	\307N\310\205H @A\n9\203$ \310\311\312\217\210\202 \313\304!\2030 \n\f\235\204 \314\n\"\204 \314\315\n!\"\204 \310\316\317\217\210\202 +\207" [custom-load-recursion symbol load loads preloaded-file-list load-history t custom-loads nil (require load) ((error)) boundp assoc locate-library (byte-code "\301\232\204\n \302!\210\302\207" [load "cus-edit" load-library] 2) ((error))] 3 (#$ . 45655)])
#@35 Load all dependencies for WIDGET.
(defalias 'custom-load-widget #[(widget) "\301\302!!\207" [widget custom-load-symbol widget-value] 3 (#$ . 46163)])
#@71 Return non-nil if the dependencies of SYMBOL has not yet been loaded.
(defalias 'custom-unloaded-symbol-p #[(symbol) "\305\306N\305\n\203> \n@\nA	9\203\" \307	!\204 \310\202 \311	\f\"\204 \311\312	!\f\"\2039 \313\305!\210\202 \310\202 +\207" [symbol load loads found load-history nil custom-loads featurep t assoc locate-library message] 3 (#$ . 46320)])
#@71 Return non-nil if the dependencies of WIDGET has not yet been loaded.
(defalias 'custom-unloaded-widget-p #[(widget) "\301\302!!\207" [widget custom-unloaded-symbol-p widget-value] 3 (#$ . 46695)])
#@30 Toggle visibility of WIDGET.
(defalias 'custom-toggle-hide #[(widget) "\304!\210\305	\"\211\306>\203 \307\310!\210\2021 \n\311=\203% \312	\313#\210\2021 \312\314#\210\312	\311#\210\315!\210\316 )\207" [widget :custom-state state :documentation-shown custom-load-widget widget-get (invalid modified) error "There are unset changes" hidden widget-put unknown nil custom-redraw widget-setup] 5 (#$ . 46900)])
#@40 Toggle visibility of parent of WIDGET.
(defalias 'custom-toggle-parent #[(widget &rest ignore) "\302\303	\"!\207" [widget :parent custom-toggle-hide widget-get] 4 (#$ . 47321)])
#@86 Add `See also ...' to WIDGET if there are any links.
Insert PREFIX first if non-nil.
(defalias 'custom-add-see-also #[(widget &optional prefix) "\306	\"\211\307N\211G\310V\306\"\306\"\205r \203* \311\312\"\210\2033 c\210\313c\210\203l \314@\"BA\211\204Q \315c\210\2026 A\204f \f\203` \316c\210\2026 \317c\210\2026 \320c\210\2026 \321#-\207" [widget :value symbol links many :buttons widget-get custom-links 2 insert-char 32 "See also " widget-create-child-and-convert ".\n" ", and " " and " ", " widget-put buttons :indent indent prefix] 5 (#$ . 47506)])
#@179 Add "Parent groups: ..." to WIDGET if the group has parents.
The value if non-nil if any parents were found.
If INITIAL-STRING is non-nil, use that rather than "Parent groups:".
(defalias 'custom-add-parent-links #[(widget &optional initial-string) "\306!\211@)\307	\"`\310\206 \311c\210\312\313!\210\314	\f#\210\n\2030 \315c\210\2024 `|\210\n-\207" [widget :buttons found start buttons type widget-value widget-get nil "Parent groups:" mapatoms #[(symbol) "	\306N\236\211A@=\205# \307c\210\310\f\311\312	!	%\fB\f\313\211)\207" [name symbol entry type widget :tag custom-group " " widget-create-child-and-convert custom-group-link custom-unlispify-tag-name t buttons found] 7] widget-put "\n" name initial-string] 6 (#$ . 48104)])
(byte-code "\301\302\303\304\305%\210\301\306\307\310\305%\207" [:group custom-declare-face custom-variable-tag-face ((((class color) (background dark)) (:foreground "light blue" :underline t)) (((class color) (background light)) (:foreground "blue" :underline t)) (t (:underline t))) "Face used for unpushable variable tags." custom-faces custom-variable-button-face ((t (:underline t :bold t))) "Face used for pushable variable tags."] 6)
#@45 Default form of displaying variable values.
(custom-declare-variable 'custom-variable-default-form ''edit '(#$ . 49307) :type '(choice (const edit) (const lisp)) :group 'custom-buffer :version "20.3")
(define-widget 'custom-variable 'custom "Customize variable." :format "%v" :help-echo "Set or reset this variable." :documentation-property 'variable-documentation :custom-category 'option :custom-state nil :custom-menu 'custom-variable-menu-create :custom-form nil :value-create 'custom-variable-value-create :action 'custom-variable-action :custom-set 'custom-variable-set :custom-save 'custom-variable-save :custom-reset-current 'custom-redraw :custom-reset-saved 'custom-variable-reset-saved :custom-reset-standard 'custom-variable-reset-standard)
#@167 Return a widget suitable for editing the value of SYMBOL.
If SYMBOL has a `custom-type' property, use that.  
Otherwise, look up symbol in `custom-guess-type-alist'.
(defalias 'custom-variable-type #[(symbol) "\305N\206 \306N\204 \307!\206 \310\311N	<\203# \312	!\202% 	C\n\2030 \313\f\n#\210+\207" [symbol type options tmp :options custom-type standard-value custom-guess-type sexp custom-options copy-sequence widget-put] 4 (#$ . 50067)])
#@45 Here is where you edit the variables value.
(defalias 'custom-variable-value-create #[(widget) "\306!\210\307	\"\204 \310	\n#\210\307\"\307\"=\307	\">\307?\"@\307A\"B\307C\"D\311B!E\312E!FB\313N\206K \314G\307H\"I\307J\"K\315B!\203j GB!\202p \307FA\"L@\204\211 \316EL\"\203\206 \317@\202\211 \320@@\317=\203\236 \321FML#\204\236 \322>N\323=\203\313 IK\203\260 \324\202\261 \325\261\210\326\327\"\fB\330D\331\261\210\310\f#\210\202\341@\320=\203\371 \326\332O\333P\334CDQ&\n\fB\326\335R\336S\337\340&\fB\202\341>\341>\203tB\342N\203B\342N@\2027B\343N\203B\343N@\2027\315B!\203/\344GB!!\2027\344\307FA\"!L\345B!\346\261\210\326\335R\347S\337\350&\fB\330c\210\326\351T\352O\353C\345B!QAL&\f=B=)\202\341\307EO\"U\340V\340W\354\355U\"\204\216\356\357!\210U\360\211\225OVU\360\225\340OW\326\332OVS\361R\362X\363T\352P\334D&\fB\330c\210\326\335R\347S\337\350&\fB\326EOWAL&=B=+N\323=?\205Ph\364=\204\363\365\331!\210@\320=\203\310?@#\210\202	\366!\210\326\367\340#Y\310ZY#\210Y\fB)\310	>#\210\310\f#\210\310=#\210\370\371\"\210@\320=?\205P\307[\"\372=\203M\373!\210\374!.\f\207" [widget :custom-form custom-variable-default-form :buttons buttons :children custom-load-widget widget-get widget-put custom-variable-type widget-convert custom-get default-value default-boundp custom-show unknown hidden widget-apply mismatch tree " `--- " " |--- " widget-create-child-and-convert custom-browse-variable-tag " " "\n" item "%{%t%}: " custom-variable-tag-face visibility "Show the value of this option." custom-toggle-parent nil (lisp mismatch) saved-value standard-value custom-quote symbol-name ": " "Hide the value of this option." t sexp custom-variable-button-face "%v" string-match ":" error "Bad format" 0 custom-tag-action "Change value of this option." custom-tag-mouse-down-action 10 widget-insert custom-variable-state-set custom-magic widget-default-format-handler 104 1 custom-add-parent-links custom-add-see-also children form :custom-state state :value symbol :tag tag type conv get :custom-prefix prefix :custom-last last value :match custom-buffer-style :format :sample-face :parent :help-echo :action :button-face format tag-format value-format :mouse-down-action magic :custom-magic :custom-level] 16 (#$ . 50526)])
#@49 Pass :action to first child of WIDGET's parent.
(defalias 'custom-tag-action #[(widget &rest args) "\305\306\307\211	\"\n\"@\f$\207" [widget :parent :children :action args apply widget-apply widget-get] 6 (#$ . 52936)])
#@60 Pass :mouse-down-action to first child of WIDGET's parent.
(defalias 'custom-tag-mouse-down-action #[(widget &rest args) "\305\306\307\211	\"\n\"@\f$\207" [widget :parent :children :mouse-down-action args apply widget-apply widget-get] 6 (#$ . 53164)])
#@26 Set the state of WIDGET.
(defalias 'custom-variable-state-set #[(widget) "\306!\211\307N\206 \310\311	!\203 \n	!\202 \312\"\313	\314N\211\2036 \313\315\316\217\2032 \317\202e \320\202e 	\321N\211\203M \313\322\323\217\203I \324\202e \320\202e 	\325N\211\203d \313\326\327\217\203` \330\202e \320\202e \331\332#-\207" [widget symbol get :value value tmp widget-value custom-get default-value default-boundp widget-get nil customized-value (byte-code "\302	@!\232\207" [value tmp eval] 3) ((error)) set changed saved-value (byte-code "\302	@!\232\207" [value tmp eval] 3) ((error)) saved standard-value (byte-code "\302	@!\232\207" [value tmp eval] 3) ((error)) standard rogue widget-put state :custom-state] 5 (#$ . 53425)])
#@389 Alist of actions for the `custom-variable' widget.
Each entry has the form (NAME ACTION FILTER) where NAME is the name of
the menu entry, ACTION is the function to call on the widget when the
menu is selected, and FILTER is a predicate which takes a `custom-variable'
widget as an argument, and returns non-nil if ACTION is valid on that
widget. If FILTER is nil, ACTION is always valid.
(defvar custom-variable-menu '(("Set for Current Session" custom-variable-set (lambda (widget) (eq (widget-get widget :custom-state) 'modified))) ("Save for Future Sessions" custom-variable-save (lambda (widget) (memq (widget-get widget :custom-state) '(modified set changed rogue)))) ("Reset to Current" custom-redraw (lambda (widget) (and (default-boundp (widget-value widget)) (memq (widget-get widget :custom-state) '(modified changed))))) ("Reset to Saved" custom-variable-reset-saved (lambda (widget) (and (get (widget-value widget) 'saved-value) (memq (widget-get widget :custom-state) '(modified set changed rogue))))) ("Reset to Standard Settings" custom-variable-reset-standard (lambda (widget) (and (get (widget-value widget) 'standard-value) (memq (widget-get widget :custom-state) '(modified set changed saved rogue))))) ("---" ignore ignore) ("Don't show as Lisp expression" custom-variable-edit (lambda (widget) (eq (widget-get widget :custom-form) 'lisp))) ("Show initial Lisp expression" custom-variable-edit-lisp (lambda (widget) (eq (widget-get widget :custom-form) 'edit)))) (#$ . 54179))
#@90 Show the menu for `custom-variable' WIDGET.
Optional EVENT is the location for the menu.
(defalias 'custom-variable-action #[(widget &optional event) "\306	\"\307=\203 \310!\207\306	\"\311=\204 \312!\210\313!\210\314\315\316\317\306\"!P\320\f\"#\211\2059 !*\207" [widget :custom-state completion-ignore-case :value custom-variable-menu event widget-get hidden custom-toggle-hide modified custom-variable-state-set custom-redraw-magic t widget-choose "Operation on " custom-unlispify-tag-name custom-menu-filter answer] 7 (#$ . 55682)])
#@23 Edit value of WIDGET.
(defalias 'custom-variable-edit #[(widget) "\303	\304#\210\303\n\305#\210\306!\207" [widget :custom-state :custom-form widget-put unknown edit custom-redraw] 4 (#$ . 56241)])
#@54 Edit the lisp representation of the value of WIDGET.
(defalias 'custom-variable-edit-lisp #[(widget) "\303	\304#\210\303\n\305#\210\306!\207" [widget :custom-state :custom-form widget-put unknown lisp custom-redraw] 4 (#$ . 56447)])
#@64 Set the current value for the variable being edited by WIDGET.
(defalias 'custom-variable-set #[(widget) "\306	\"\306\"\306\"@\307!\211\310N\206 \311\312\f\313=\203/ \314\315!\210\202\211 \316\"\211\203P \306\"b\210\314\317\306\"\"\210\202\211 \n\320>\203q \321\307!\211!\"\210\322\323C#\210\202\211 \307!\211\"\210\322\323\324!C#\210\325!\210\326!.\207" [widget :custom-form form :custom-state state :children widget-get widget-value custom-set set-default nil hidden error "Cannot set hidden variable" widget-apply "%s" (lisp mismatch) eval put customized-value custom-quote custom-variable-state-set custom-redraw-magic child symbol set val :validate :from :error] 6 (#$ . 56689)])
#@65 Set and save the value for the variable being edited by WIDGET.
(defalias 'custom-variable-save #[(widget) "\306	\"\306\"\306\"@\307!\211\310N\206 \311\312\f\313=\203/ \314\315!\210\202\207 \316\"\211\203P \306\"b\210\314\317\306\"\"\210\202\207 \n\320>\203p \321\322\307!C#\210\323\307!!\"\210\202\207 \321\322\324\307!!C#\210\307!\"\210\321\325\312#\210\326 \210\327!\210\330!.\207" [widget :custom-form form :custom-state state :children widget-get widget-value custom-set set-default nil hidden error "Cannot set hidden variable" widget-apply "%s" (lisp mismatch) put saved-value eval custom-quote customized-value custom-save-all custom-variable-state-set custom-redraw-magic child symbol set val :validate :from :error] 7 (#$ . 57438)])
#@66 Restore the saved value for the variable being edited by WIDGET.
(defalias 'custom-variable-reset-saved #[(widget) "\304!\211\305N\206 \306	\307N\203 \310\311\312\217\210\202 \313\314	\"\210\315	\316\310#\210\317\320#\210\321!*\207" [widget symbol set :custom-state widget-value custom-set set-default saved-value nil (byte-code "	\302	\303N@!\"\207" [set symbol eval saved-value] 5) ((error)) error "No saved value for %s" put customized-value widget-put unknown custom-redraw] 5 (#$ . 58243)])
#@71 Restore the standard setting for the variable being edited by WIDGET.
(defalias 'custom-variable-reset-standard #[(widget) "\304!\211\305N\206 \306	\307N\203 \n	\310	\307N@!\"\210\202$ \311\312	\"\210\313	\314\315#\210	\316N\2039 \313	\316\315#\210\317 \210\320\321#\210\322!*\207" [widget symbol set :custom-state widget-value custom-set set-default standard-value eval error "No standard setting known for %S" put customized-value nil saved-value custom-save-all widget-put unknown custom-redraw] 6 (#$ . 58755)])
(byte-code "\306\307\310\311\312	\313\n\314\315\f\316\317\"&\210\306\320\321\322	\323\324\325\f\326&\210\327\330\331\332\333%\207" [:format :tag :extra-offset :button-args :args custom-face-attributes define-widget custom-face-edit checklist "Edit face attributes." "%t: %v" "Attributes" 12 (:help-echo "Control whether this attribute have any effect.") mapcar #[(att) "\305\306	\307\nA@	\"\310\311\f\n@\257\nA@\257\207" [:inline :sibling-args att :format :value group t widget-get const ""] 10] custom-display menu-choice "Select a display type." "Display" t "Specify frames where the face attributes should be used." ((const :tag "all" t) (checklist :offset 0 :extra-offset 9 :args ((group :sibling-args (:help-echo "Only match the specified window systems.") (const :format "Type: " type) (checklist :inline t :offset 0 (const :format "X " :sibling-args (:help-echo "The X11 Window System.") x) (const :format "PM " :sibling-args (:help-echo "OS/2 Presentation Manager.") pm) (const :format "W32 " :sibling-args (:help-echo "Windows NT/9X.") w32) (const :format "DOS " :sibling-args (:help-echo "Plain MS-DOS.") pc) (const :format "TTY%n" :sibling-args (:help-echo "Plain text terminals.") tty))) (group :sibling-args (:help-echo "Only match the frames with the specified color support.") (const :format "Class: " class) (checklist :inline t :offset 0 (const :format "Color " :sibling-args (:help-echo "Match color frames.") color) (const :format "Grayscale " :sibling-args (:help-echo "Match grayscale frames.") grayscale) (const :format "Monochrome%n" :sibling-args (:help-echo "Match frames with no color support.") mono))) (group :sibling-args (:help-echo "Only match frames with the specified intensity.") (const :format "Background brightness: " background) (checklist :inline t :offset 0 (const :format "Light " :sibling-args (:help-echo "Match frames with light backgrounds.") light) (const :format "Dark\n" :sibling-args (:help-echo "Match frames with dark backgrounds.") dark)))))) custom-declare-face custom-face-tag-face ((t (:underline t))) "Face used for face tags." custom-faces :value :help-echo :group] 16)
#@45 Default form of displaying face definition.
(custom-declare-variable 'custom-face-default-form ''selected '(#$ . 61427) :type '(choice (const all) (const selected) (const lisp)) :group 'custom-buffer :version "20.3")
(byte-code "\306\307\310\311\312	\313\n\314\315\f\316\317\320 \321!\322\"\323#\324$\325%\326&\210\306\327\330\331&\332'\333(\334)\335*\336&\207" [:sample-face :help-echo :documentation-property :value-create :action :custom-category define-widget custom-face custom "Customize face." custom-face-tag-face "Set or reset this face." (lambda (face) (face-doc-string face)) custom-face-value-create custom-face-action face nil custom-face-set custom-face-save custom-redraw custom-face-reset-saved custom-face-reset-standard custom-face-menu-create custom-face-all editable-list "An editable list of display specifications and attributes." "%i %d %v" (:help-echo "Insert new display specification here.") (:help-echo "Append new display specification here.") (:help-echo "Delete this display specification.") ((group :format "%v" custom-display custom-face-edit)) :custom-form :custom-set :custom-save :custom-reset-current :custom-reset-saved :custom-reset-standard :custom-menu :entry-format :insert-button-args :append-button-args :delete-button-args :args] 30)
#@52 Converted version of the `custom-face-all' widget.
(defconst custom-face-all (widget-convert 'custom-face-all) (#$ . 62729))
(define-widget 'custom-display-unselected 'item "A display specification that doesn't match the selected display." :match 'custom-display-unselected-match)
#@58 Non-nil if VALUE is an unselected display specification.
(defalias 'custom-display-unselected-match #[(widget value) "\301\302 \"?\207" [value face-spec-set-match-display selected-frame] 3 (#$ . 63016)])
(define-widget 'custom-face-selected 'group "Edit the attributes of the selected display in a face specification." :args '((repeat :format "" :inline t (group custom-display-unselected sexp)) (group (sexp :format "") custom-face-edit) (repeat :format "" :inline t sexp)))
#@57 Converted version of the `custom-face-selected' widget.
(defconst custom-face-selected (widget-convert 'custom-face-selected) (#$ . 63499))
#@57 Create a list of the display specifications for WIDGET.
(defalias 'custom-face-value-create #[(widget) "\306	\"\306\n\"\306\"\306\f\"`\306\"\306<\"=>?@ABCA\2043 \307B!AD\310=\203b =>\203E \311\202F \312\261\210\313\314\"CBC\315A\316\261\210\317	C#\202\305Ac\210D\320=\203s \315c\210\202} \321?`#\210\322c\210\323\324E\"\203\222 \325B!\204\222 \326\327B\"\210\313\330F\331GB\332&CBC\315c\210\313\333H\334I\335@\336=?&CBC\316c\210\313\337\340#J\317KJ#\210JCBC)\317	C#\210\341\342\"\210@\336=\204\374 \306L\"\343=\203\370 \344!\210\345!\210h\346=\204\316c\210@\336=?\205\305\347\350!\210\351!\210\306M\"\204%\317MN#\210\352!\211B\353N\206@B\354N\206@\355\356B\357 \"DCO\306M\"P\306Q\"R\340S\360BO\357 #\204i\355\361B\357 \"DCO\313P\362=\203\214\3636TO#\203\214R\203\210\364\365R\"\210\366\202\256P\367=\204\242\3638TO#\203\242\370\202\256R\203\255\364\365R\"\210\371\nO$S\372!\210\317USC#\210-\347\373!.\207" [widget :buttons :value :tag :custom-state :custom-last widget-get prin1-to-string tree " `--- " " |--- " widget-create-child-and-convert custom-browse-face-tag " " "\n" widget-put face widget-specify-sample ": " string-match "XEmacs" custom-facep copy-face custom-face-empty item "(%{%t%})" "sample" visibility "Hide or show this face." custom-toggle-parent hidden custom-magic nil widget-default-format-handler 104 1 custom-add-parent-links custom-add-see-also 10 message "Creating face editor..." custom-load-widget widget-value saved-face face-defface-spec t custom-face-attributes-get selected-frame face-spec-match-p face-attr-construct selected widget-apply insert-char 32 custom-face-selected lisp custom-face-all sexp custom-face-state-set "Creating face editor...done" :custom-prefix prefix is-last begin state tag symbol buttons custom-buffer-style emacs-version :format :sample-face :help-echo :action magic :custom-magic :custom-level :custom-form custom-face-default-form spec form :indent indent edit :match :children] 10 (#$ . 63645)])
#@381 Alist of actions for the `custom-face' widget.
Each entry has the form (NAME ACTION FILTER) where NAME is the name of
the menu entry, ACTION is the function to call on the widget when the
menu is selected, and FILTER is a predicate which takes a `custom-face'
widget as an argument, and returns non-nil if ACTION is valid on that
widget. If FILTER is nil, ACTION is always valid.
(defvar custom-face-menu '(("Set for Current Session" custom-face-set) ("Save for Future Sessions" custom-face-save-command) ("Reset to Saved" custom-face-reset-saved (lambda (widget) (get (widget-value widget) 'saved-face))) ("Reset to Standard Setting" custom-face-reset-standard (lambda (widget) (get (widget-value widget) 'face-defface-spec))) ("---" ignore ignore) ("Show all display specs" custom-face-edit-all (lambda (widget) (not (eq (widget-get widget :custom-form) 'all)))) ("Just current attributes" custom-face-edit-selected (lambda (widget) (not (eq (widget-get widget :custom-form) 'selected)))) ("Show as Lisp expression" custom-face-edit-lisp (lambda (widget) (not (eq (widget-get widget :custom-form) 'lisp))))) (#$ . 65737))
#@50 Edit selected attributes of the value of WIDGET.
(defalias 'custom-face-edit-selected #[(widget) "\303	\304#\210\303\n\305#\210\306!\207" [widget :custom-state :custom-form widget-put unknown selected custom-redraw] 4 (#$ . 66867)])
#@45 Edit all attributes of the value of WIDGET.
(defalias 'custom-face-edit-all #[(widget) "\303	\304#\210\303\n\305#\210\306!\207" [widget :custom-state :custom-form widget-put unknown all custom-redraw] 4 (#$ . 67109)])
#@54 Edit the lisp representation of the value of WIDGET.
(defalias 'custom-face-edit-lisp #[(widget) "\303	\304#\210\303\n\305#\210\306!\207" [widget :custom-state :custom-form widget-put unknown lisp custom-redraw] 4 (#$ . 67336)])
#@26 Set the state of WIDGET.
(defalias 'custom-face-state-set #[(widget) "\303!\304\n	\305N\203 \306\202& 	\307N\203 \310\202& 	\311N\203% \312\202& \313#)\207" [widget symbol :custom-state widget-value widget-put customized-face set saved-face saved face-defface-spec standard rogue] 5 (#$ . 67574)])
#@86 Show the menu for `custom-face' WIDGET.
Optional EVENT is the location for the menu.
(defalias 'custom-face-action #[(widget &optional event) "\306	\"\307=\203 \310!\207\311\306\"\312\313\314\f!P\315\"#\211\205+ !+\207" [widget :custom-state completion-ignore-case :value symbol custom-face-menu widget-get hidden custom-toggle-hide t widget-choose "Operation on " custom-unlispify-tag-name custom-menu-filter event answer] 6 (#$ . 67883)])
#@49 Make the face attributes in WIDGET take effect.
(defalias 'custom-face-set #[(widget) "\305!\306\n\"@\305!\307	\310\f#\210\311	\f\"\210\312!\210\313!+\207" [widget symbol :children child value widget-value widget-get put customized-face face-spec-set custom-face-state-set custom-redraw-magic] 4 (#$ . 68346)])
#@49 Save in `.emacs' the face attributes in WIDGET.
(defalias 'custom-face-save-command #[(widget) "\301!\210\302 \207" [widget custom-face-save custom-save-all] 2 (#$ . 68671)])
#@72 Prepare for saving WIDGET's face attributes, but don't write `.emacs'.
(defalias 'custom-face-save #[(widget) "\305!\306\n\"@\305!\307	\f\"\210\310	\311\f#\210\310	\312\313#\210\314 \210\315!\210\316!+\207" [widget symbol :children child value widget-value widget-get face-spec-set put saved-face customized-face nil custom-save-all custom-face-state-set custom-redraw-magic] 4 (#$ . 68853)])
#@50 Restore WIDGET to the face's default attributes.
(defalias 'custom-face-reset-saved #[(widget) "\305!\306\n\"@	\307N\211\204 \310\311!\210\312	\313\314#\210\315	\f\"\210\316\f\"\210\317!\210\320!+\207" [widget symbol :children child value widget-value widget-get saved-face error "No saved value for this face" put customized-face nil face-spec-set widget-value-set custom-face-state-set custom-redraw-magic] 5 (#$ . 69260)])
#@49 Restore WIDGET to the face's standard settings.
(defalias 'custom-face-reset-standard #[(widget) "\305!\306\n\"@	\307N\211\204 \310\311!\210\312	\313\314#\210	\315N\203+ \312	\315\314#\210\316 \210\317	\f\"\210\320\f\"\210\321!\210\322!+\207" [widget symbol :children child value widget-value widget-get face-defface-spec error "No standard setting for this face" put customized-face nil saved-face custom-save-all face-spec-set widget-value-set custom-face-state-set custom-redraw-magic] 5 (#$ . 69701)])
(define-widget 'face 'default "Select and customize a face." :convert-widget 'widget-value-convert-widget :button-prefix 'widget-push-button-prefix :button-suffix 'widget-push-button-suffix :format "%t: %[select face%] %v" :tag "Face" :value 'default :value-create 'widget-face-value-create :value-delete 'widget-face-value-delete :value-get 'widget-value-value-get :validate 'widget-children-validate :action 'widget-face-action :match '(lambda (widget value) (symbolp value)))
(defalias 'widget-face-value-create #[(widget) "\306!\307\310\311\312\f	&\313!\210B\314C#+\207" [widget symbol custom-buffer-style :custom-level :value child widget-value face widget-create-child-and-convert custom-face nil custom-magic-reset widget-put custom-options :children] 7])
(defalias 'widget-face-value-delete #[(widget) "\304	\"@\305\n\"\306!)\207" [widget :children child custom-options widget-get delq widget-children-value-delete] 3])
#@32 History of entered face names.
(defvar face-history nil (#$ . 71172))
#@20 Prompt for a face.
(defalias 'widget-face-action #[(widget &optional event) "\304\305\306\307\310 \"\311\211\211\312&\211G\313U?\205& \314	\315!\"\210\316	\n	$\210\317 )\207" [answer widget :notify event completing-read "Face: " mapcar #[(face) "\301!C\207" [face symbol-name] 2] face-list nil face-history 0 widget-value-set intern widget-apply widget-setup] 8 (#$ . 71248)])
(define-widget 'hook 'list "A emacs lisp hook" :value-to-internal #[(widget value) "\203\f 9\203\f C\207\207" [value] 1] :match #[(widget value) "9\206	 \302	\"\207" [value widget widget-group-match] 3] :convert-widget 'custom-hook-convert-widget :tag "Hook")
(defalias 'custom-hook-convert-widget #[(widget) "\306	\"\307\n\203 \310\311\312\313\314\n\"BBBD\202 C\315\f#\210+\207" [widget :options options other args :args widget-get (editable-list :inline t :entry-format "%i %d%v" (function :format " %v")) checklist :inline t mapcar #[(entry) "\301D\207" [entry function-item] 2] widget-put] 6])
(define-widget 'custom-group-link 'link "Show parent in other window when activated." :help-echo "Create customization buffer for this group." :action 'custom-group-link-action)
(defalias 'custom-group-link-action #[(widget &rest ignore) "\301\302!!\207" [widget customize-group widget-value] 3])
#@176 Face used for group tags.
The first member is used for level 1 groups, the second for level 2,
and so forth.  The remaining group tags are shown with
`custom-group-tag-face'.
(custom-declare-variable 'custom-group-tag-faces 'nil '(#$ . 72551) :type '(repeat face) :group 'custom-faces)
(byte-code "\306\307\310\311#\210\306\312\313\314\315%\210\316\317\320\321	\322\n\323\324\f\325\326\327 \330!\331\"\332#\333$\334%\335&\336&\207" [:group :format :sample-face-get :documentation-property :help-echo :value-create custom-declare-face custom-group-tag-face-1 ((((class color) (background dark)) (:foreground "pink" :underline t)) (((class color) (background light)) (:foreground "red" :underline t)) (t (:underline t))) "Face used for group tags." custom-group-tag-face ((((class color) (background dark)) (:foreground "light blue" :underline t)) (((class color) (background light)) (:foreground "blue" :underline t)) (t (:underline t))) "Face used for low level group tags." custom-faces define-widget custom-group custom "Customize group." "%v" custom-group-sample-face-get group-documentation "Set or reset all members of this group." custom-group-value-create custom-group-action group custom-group-set custom-group-save custom-group-reset-current custom-group-reset-saved custom-group-reset-standard custom-group-menu-create :action :custom-category :custom-set :custom-save :custom-reset-current :custom-reset-saved :custom-reset-standard :custom-menu] 30)
(defalias 'custom-group-sample-face-get #[(widget) "\303	\"S\n8\206 \304\207" [widget :custom-level custom-group-tag-faces widget-get custom-group-tag-face] 3])
(define-widget 'custom-group-visibility 'visibility "An indicator and manipulator for hidden group contents." :create 'custom-group-visibility-create)
(defalias 'custom-group-visibility-create #[(widget) "\302!\211\203 \303c\210)\304!\207" [widget visible widget-value "--------" widget-default-create] 3])
#@106 Return SYMBOL's custom group members.
If GROUPS-ONLY non-nil, return only those members that are groups.
(defalias 'custom-group-members #[(symbol groups-only) "\204 	\305N\207\306	\305N\306\211\203* \f@\211A@\305=\203# \nB\fA\211\204 *\n\237)\207" [groups-only symbol members entry #1=#:--dolist-temp--24002 custom-group nil] 3 (#$ . 74507)])
#@60 Insert a customize group for WIDGET in the current buffer.
(defalias 'custom-group-value-create #[(widget) "\306	\"\306\"\306\"@\306A\"B\306C\"D\307!E\310EF\311=\205/ G\"HF\311=\203x \n\312=\203x H\204J \313!\203x \314@!\210\315\316C\317$BBB\320c\210\315\321\"BBB\322D\323\261\210\324AB#\202<F\311=\203\251 HG\325U\203\251 \314@!\210\326c\210\315\321\"BBB\322D\323\261\210\324AB#\202<F\311=\203\222\314@!\210\327!\210HG\325U\203\343 \314@!\210\326c\210\315\321\"BBB\322D\323\261\210\324AB#\202<\315\316C\330$BBB\331c\210\315\321\"BBB\322D\323\261\210\324AB#\210\332\333!\210\334HIJ#H\306K\"L\335EL\"M\306N\"\2033\336\2024\337O@OP@\340P\340QH\203\200H@QHAH\315QA@RC\341Q@!KM\fTNH?SQ@@&PBP\202C\324T\342P!#\210.\332\343!\202<\n\312=\203&F\344=\204\253\345\346U\fS_\"\210\320c\210`VDc\210\347V`#\210)\350c\210F\344=\203\325\315\351C\352E%BBB\202\351\315\353W\354X\355\n\312=?&BBB\356c\210\315\357\340#Y\324ZY#\210YBBB)\324AB#\210F\344=\203\f\360V\203\324[\325#\210\361\362\"\202<\f\360=\2036\363\364\"\2036\323c\210\345\346U\fS_\"\210\365c\210`\\Dc\210\347\\`#\210)\350c\210F\344=\204u\366c\210\315\367W\370X\355\n\312=?&BBB\322c\210\345\371\372iZU\f_Z\"\210\373c\210\315\357]\325\340%Y\324ZY#\210YBBB)\324AB#\210\361\362\"\210\374\375U\f_\346\"\"\210\332\333!\210\327!\210\334H^_#H\306K\"L\335EL\"MHG`\325a\376\377H\"P\332\201b !\210\376\201c P\"\210\332\201d !\210\324TP#\210\201e !\210\332\201f !\210.\323c\210\345\346U\fS_\"\210\201g \306C\"\201h \261\210\345\371\201i iZU\f_Z\"\210\201j c.\207" [widget :custom-state state :custom-level level :custom-prefix widget-get widget-value custom-group-members tree hidden custom-unloaded-widget-p custom-browse-insert-prefix widget-create-child-and-convert custom-browse-visibility "+" "-- " custom-browse-group-tag " " "\n" widget-put 0 "[ ]-- " custom-load-widget "-" "-\\ " message "Creating group..." custom-sort-items custom-prefix-add "   " " | " nil custom-unlispify-tag-name reverse "Creating group...done" links insert-char 32 widget-specify-sample " group: " custom-group-link "Go to Group" custom-group-visibility "Show members of this group." custom-toggle-parent " \n" custom-magic 1 widget-default-format-handler 104 custom-add-parent-links "Go to parent group:" "/- " "--------" visibility "Hide members of this group." 45 76 "\\\n" custom-add-see-also make-string mapcar #[(entry) "\306\307!\210\310\311\312_	\245\"\210T\313\nA@\f\n\314@!T@&\fh\315=\2045 \306\307!\210\207" [count length widget entry :group :tag widget-insert "\n" message "Creating group members... %2d%%" 100.0 widget-create-child-and-convert custom-unlispify-tag-name 10 :custom-prefixes custom-prefix-list :custom-level level :value] 13] prefix :buttons buttons :tag tag symbol custom-buffer-style custom-browse-only-groups members custom-browse-sort-alphabetically custom-browse-order-groups :custom-prefixes prefixes custom-prefix-list :custom-last extra-prefix children entry :group :value :children custom-buffer-indent begin :help-echo :action magic :custom-magic :documentation-indent start :indent custom-buffer-sort-alphabetically custom-buffer-order-groups length count "Creating group magic..." custom-magic-reset "Creating group state..." custom-group-state-update "Creating group... done" "\\- " " group end " 75 "/\n"] 17 (#$ . 74867)])
#@383 Alist of actions for the `custom-group' widget.
Each entry has the form (NAME ACTION FILTER) where NAME is the name of
the menu entry, ACTION is the function to call on the widget when the
menu is selected, and FILTER is a predicate which takes a `custom-group'
widget as an argument, and returns non-nil if ACTION is valid on that
widget. If FILTER is nil, ACTION is always valid.
(defvar custom-group-menu '(("Set for Current Session" custom-group-set (lambda (widget) (eq (widget-get widget :custom-state) 'modified))) ("Save for Future Sessions" custom-group-save (lambda (widget) (memq (widget-get widget :custom-state) '(modified set)))) ("Reset to Current" custom-group-reset-current (lambda (widget) (memq (widget-get widget :custom-state) '(modified)))) ("Reset to Saved" custom-group-reset-saved (lambda (widget) (memq (widget-get widget :custom-state) '(modified set)))) ("Reset to standard setting" custom-group-reset-standard (lambda (widget) (memq (widget-get widget :custom-state) '(modified set saved))))) (#$ . 78401))
#@87 Show the menu for `custom-group' WIDGET.
Optional EVENT is the location for the menu.
(defalias 'custom-group-action #[(widget &optional event) "\306	\"\307=\203 \310!\207\311\312\313\314\306\"!P\315\f\"#\211\205( !*\207" [widget :custom-state completion-ignore-case :value custom-group-menu event widget-get hidden custom-toggle-hide t widget-choose "Operation on " custom-unlispify-tag-name custom-menu-filter answer] 7 (#$ . 79443)])
#@44 Set changes in all modified group members.
(defalias 'custom-group-set #[(widget) "\303	\"\304\305\n\")\207" [widget :children children widget-get mapcar #[(child) "\303	\"\304=\205 \305\n\"\207" [child :custom-state :custom-set widget-get modified widget-apply] 3]] 3 (#$ . 79899)])
#@34 Save all modified group members.
(defalias 'custom-group-save #[(widget) "\303	\"\304\305\n\")\207" [widget :children children widget-get mapcar #[(child) "\303	\"\304>\205 \305\n\"\207" [child :custom-state :custom-save widget-get (modified set) widget-apply] 3]] 3 (#$ . 80194)])
#@35 Reset all modified group members.
(defalias 'custom-group-reset-current #[(widget) "\303	\"\304\305\n\")\207" [widget :children children widget-get mapcar #[(child) "\303	\"\304=\205 \305\n\"\207" [child :custom-state :custom-reset-current widget-get modified widget-apply] 3]] 3 (#$ . 80487)])
#@42 Reset all modified or set group members.
(defalias 'custom-group-reset-saved #[(widget) "\303	\"\304\305\n\")\207" [widget :children children widget-get mapcar #[(child) "\303	\"\304>\205 \305\n\"\207" [child :custom-state :custom-reset-saved widget-get (modified set) widget-apply] 3]] 3 (#$ . 80793)])
#@50 Reset all modified, set, or saved group members.
(defalias 'custom-group-reset-standard #[(widget) "\303	\"\304\305\n\")\207" [widget :children children widget-get mapcar #[(child) "\303	\"\304>\205 \305\n\"\207" [child :custom-state :custom-reset-standard widget-get (modified set saved) widget-apply] 3]] 3 (#$ . 81108)])
#@15 Update magic.
(defalias 'custom-group-state-update #[(widget) "\306	\"\307=\204L \306\n\"\310\311\"\312\203D @@\211\307=\204; \f>\203; \313\202@ A)\202 \314	#\210,\315!\207" [widget :custom-state :children children states custom-magic-alist widget-get hidden mapcar #[(child) "\302	\"\207" [child :custom-state widget-get] 3] standard nil widget-put custom-magic-reset magics found magic] 5 (#$ . 81443)])
#@242 File used for storing customization information.
The default is nil, which means to use your init file
as specified by `user-init-file'.  If you specify some other file,
you need to explicitly load that file for the settings to take effect.
(custom-declare-variable 'custom-file 'nil '(#$ . 81890) :type '(choice (const :tag "Your Emacs init file" nil) file) :group 'customize)
#@49 Return the file name for saving customizations.
(defalias 'custom-file #[nil "\206 	\206 \302\303\304\305\211\306%\211\207" [custom-file user-init-file read-file-name "File for customizations: " "~/" nil ".emacs"] 6 (#$ . 82274)])
#@118 Delete the call to SYMBOL from `custom-file'.
Leave point at the location of the call, or after the last expression.
(defalias 'custom-save-delete #[(symbol) "\301\302\303 !q\210)eb\210\304\305\215\207" [default-major-mode nil find-file-noselect custom-file found (byte-code "\302\303\304\217\211<\203 @	=\203 \212\305 \210`)`|\210\306\307\302\"\210)\202  " [sexp symbol nil (byte-code "\300p!\207" [read] 2) ((end-of-file (byte-code "\300\301\302\"\207" [throw found nil] 3))) backward-sexp throw found] 4)] 2 (#$ . 82516)])
#@49 Save all customized variables in `custom-file'.
(defalias 'custom-save-variables #[nil "\212\301\302!\210pn\204 \303\304!\210\303\305!\210\306\307!\210\303\310!\210\311\304!?\205% \303\304!*\207" [standard-output custom-save-delete custom-set-variables princ "\n" "(custom-set-variables" mapatoms #[(symbol) "\304N\305N\306N\206 \307!?\205 \310N??\211\205Z \311\312!\210\311!\210\311\313!\210\314@!\210\n\203M 	\203? \311\315!\210\202C \311\316!\210\314\n!\210\311\317!\202Z 	\203W \311\320!\202Z \311\317!+\207" [symbol now requests value saved-value custom-requests standard-value boundp force-value princ "\n '(" " " prin1 " t " " nil " ")" " t)"] 5] ")" looking-at] 2 (#$ . 83053)])
#@45 Save all customized faces in `custom-file'.
(defalias 'custom-save-faces #[nil "\212\302\303!\210pn\204 \304\305!\210\304\306!\210\307\310N\211\203@ \304\311!\210\312	!\210\307\313N\2045 \314\307!\204< \307\315N\204< \304\316!\210\202@ \304\317!\210)\320\321!\210\304\316!\210\322\305!?\205S \304\305!*\207" [standard-output value custom-save-delete custom-set-faces princ "\n" "(custom-set-faces" default saved-face "\n '(default " prin1 face-defface-spec custom-facep force-face ")" " t)" mapatoms #[(symbol) "\302N\303=?\205: 	\205: \304\305!\210\304!\210\304\306!\210\307	!\210\310N\2041 \311!\2047 \312N\2047 \304\313!\202: \304\314!)\207" [symbol value saved-face default princ "\n '(" " " prin1 face-defface-spec custom-facep force-face ")" " t)"] 2] looking-at] 3 (#$ . 83760)])
#@60 Save all user options which have been set in this session.
(defalias 'customize-save-customized #[nil "\300\301!\210\302 \207" [mapatoms #[(symbol) "\303N\304N\211\203 \305\306\n#\210\305\303\307#\210	\205' \305\310	#\210\305\304\307#*\207" [symbol value face customized-face customized-value put saved-face nil saved-value] 5] custom-save-all] 2 (#$ . 84563) nil])
#@43 Save all customizations in `custom-file'.
(defalias 'custom-save-all #[nil "\302\303 \210\304 \210\212\305\306\307 !q\210)\310 *\207" [inhibit-read-only default-major-mode t custom-save-variables custom-save-faces nil find-file-noselect custom-file save-buffer] 2 (#$ . 84944)])
#@34 Maximum nesting in custom menus.
(custom-declare-variable 'custom-menu-nesting '2 '(#$ . 85231) :type 'integer :group 'custom-menu)
#@69 Ignoring WIDGET, create a menu entry for customization face SYMBOL.
(defalias 'custom-face-menu-create #[(widget symbol) "\301\302!\303\304DD\305#\207" [symbol vector custom-unlispify-menu-entry customize-face quote t] 5 (#$ . 85369)])
#@73 Ignoring WIDGET, create a menu entry for customization variable SYMBOL.
(defalias 'custom-variable-menu-create #[(widget symbol) "\303N\211<\204\f 	C	\203 \304	\n\"\203 \305	\n#\202* \306\307!\310\311DD\312#)\207" [symbol type :custom-menu custom-type widget-get widget-apply vector custom-unlispify-menu-entry customize-variable quote t] 6 (#$ . 85613)])
(byte-code "\302\303\304N\305#\210\306\307	\"\203 \310\311M\210\202 \310\312M\210\302\207" [:custom-menu emacs-version widget-put boolean widget-type #[(widget symbol) "\301\302!\303\304DD\305\306\307&\207" [symbol vector custom-unlispify-menu-entry customize-variable quote :style toggle :selected] 7] string-match "XEmacs" custom-group-menu-create #[(widget symbol) "\301\302\"\303\304\305\306\307\310DDDEE\207" [symbol custom-unlispify-menu-entry t :filter lambda (&rest junk) cdr custom-menu-create quote] 8 "Ignoring WIDGET, create a menu entry for customization group SYMBOL."] #[(widget symbol) "S\302	!)\207" [custom-menu-nesting symbol custom-menu-create] 2 "Ignoring WIDGET, create a menu entry for customization group SYMBOL."]] 4)
#@103 Create menu for customization group SYMBOL.
The menu is in a format applicable to `easy-menu-define'.
(defalias 'custom-menu-create #[(symbol) "\306\307!\310\311DD\312#\313\302!\203 \n\314Y\203F \315NGW\203F \316\f\"\317\315N#\320!\210\307\312\"	\321\322\323\"*BBB\202G 	)\207" [symbol item custom-menu-nesting widget-menu-max-size custom-prefix-list custom-menu-sort-alphabetically vector custom-unlispify-menu-entry customize-group quote t boundp 0 custom-group custom-prefix-add custom-sort-items custom-load-symbol "--" mapcar #[(entry) "\302A@<\203 A@\202 A@C	@#\207" [entry :custom-menu widget-apply] 4] custom-menu-order-groups members] 6 (#$ . 86738)])
#@221 Return a customize menu for customization group SYMBOL.
If optional NAME is given, use that as the name of the menu. 
Otherwise the menu will be named `Customize'.
The format is suitable for use with `easy-menu-define'.
(defalias 'customize-menu-create #[(symbol &optional name) "\204 \303\304\305	\"\203 \306\307\310\311\312\313\nDDDEE\207\312\n!AB\207" [name emacs-version symbol "Customize" string-match "XEmacs" :filter lambda (&rest junk) cdr custom-menu-create quote] 8 (#$ . 87430)])
#@27 Keymap for `custom-mode'.
(defvar custom-mode-map nil (#$ . 87933))
(byte-code "\204: \302 \303	\"\210\304!\210\305\306\307#\210\305\310\311#\210\305\312\313#\210\305\314\315#\210\305\316\317#\210\305\320\321#\210\305\322\323#\210\302\207" [custom-mode-map widget-keymap make-sparse-keymap set-keymap-parent suppress-keymap define-key " " scroll-up "" scroll-down "q" bury-buffer "u" Custom-goto-parent "n" widget-forward "p" widget-backward [mouse-1] Custom-move-and-invoke] 4)
#@67 Move to where you click, and if it is an active field, invoke it.
(defalias 'Custom-move-and-invoke #[(event) "\303!\210\304!\205 \304!\305	\302\"\211\205 \306!*\207" [event pos button mouse-set-point widget-event-point get-char-property widget-button-click] 4 (#$ . 88430) "e"])
#@37 Menu used in customization buffers.
(defvar Custom-mode-menu nil (#$ . 88724))
(byte-code "\301\302\303\304\305\306!\307BB$\207" [custom-mode-map easy-menu-do-define Custom-mode-menu "Menu used in customization buffers." "Custom" customize-menu-create customize (["Set" Custom-set t] ["Save" Custom-save t] ["Reset to Current" Custom-reset-current t] ["Reset to Saved" Custom-reset-saved t] ["Reset to Standard Settings" Custom-reset-standard t] ["Info" (Info-goto-node "(custom)The Customization Buffer") t])] 7)
#@114 Go to the parent group listed at the top of this buffer.
If several parents are listed, go to the first of them.
(defalias 'Custom-goto-parent #[nil "\212eb\210\303\304\305\306#\205 \307`\300\"\310	\"\227\311\n!*)\207" [button :tag parent search-forward "\nGo to parent group: " nil t get-char-property widget-get customize-group] 4 (#$ . 89246) nil])
#@40 Hook called when entering custom-mode.
(custom-declare-variable 'custom-mode-hook 'nil '(#$ . 89608) :type 'hook :group 'custom-buffer)
(defalias 'custom-state-buffer-message #[(widget) "\303\211	\"\n\"\304=\205 \305\306!\207" [widget :parent :custom-state widget-get modified message "To install your edits, invoke [State] and choose the Set operation"] 4])
#@778 Major mode for editing customization buffers.

The following commands are available:

Move to next button or editable field.     \[widget-forward]
Move to previous button or editable field. \[widget-backward]
\<widget-field-keymap>Complete content of editable text field.   \[widget-complete]
\<custom-mode-map>Invoke button under the mouse pointer.     \[Custom-move-and-invoke]
Invoke button under point.		   \[widget-button-press]
Set all modifications.			   \[Custom-set]
Make all modifications default.		   \[Custom-save]
Reset all modified options. 		   \[Custom-reset-current]
Reset all modified or set options.	   \[Custom-reset-saved]
Reset all options.			   \[Custom-reset-standard]

Entry to this mode calls the value of `custom-mode-hook'
if that value is non-nil.
(defalias 'custom-mode #[nil "\306 \210\307\310\311\n!\210\312!\210\313\314!\210\313\304!\210\315\313\305!\210\316\317\320!\210\321\320\322\323\324$\210\325\326!\207" [major-mode mode-name custom-mode-map Custom-mode-menu widget-documentation-face widget-button-face kill-all-local-variables custom-mode "Custom" use-local-map easy-menu-add make-local-variable custom-options custom-documentation-face custom-button-face make-local-hook widget-edit-functions add-hook custom-state-buffer-message nil t run-hooks custom-mode-hook] 5 (#$ . 89976)])
(provide 'cus-edit)
