Mercurial > emacs
comparison lisp/cus-edit.el @ 89909:68c22ea6027c
Sync to HEAD
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Fri, 16 Apr 2004 12:51:06 +0000 |
parents | 375f2633d815 |
children | 4c90ffeb71c5 |
comparison
equal
deleted
inserted
replaced
89908:ee1402f7b568 | 89909:68c22ea6027c |
---|---|
1 ;;; cus-edit.el --- tools for customizing Emacs and Lisp packages | 1 ;;; cus-edit.el --- tools for customizing Emacs and Lisp packages |
2 ;; | 2 ;; |
3 ;; Copyright (C) 1996,97,1999,2000,01,02,2003 Free Software Foundation, Inc. | 3 ;; Copyright (C) 1996,97,1999,2000,01,02,03,2004 Free Software Foundation, Inc. |
4 ;; | 4 ;; |
5 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk> | 5 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk> |
6 ;; Maintainer: FSF | 6 ;; Maintainer: FSF |
7 ;; Keywords: help, faces | 7 ;; Keywords: help, faces |
8 | 8 |
72 "Various sorts of searching and matching." | 72 "Various sorts of searching and matching." |
73 :group 'editing) | 73 :group 'editing) |
74 | 74 |
75 (defgroup emulations nil | 75 (defgroup emulations nil |
76 "Emulations of other editors." | 76 "Emulations of other editors." |
77 :link '(custom-manual "(emacs)Emulation") | |
77 :group 'editing) | 78 :group 'editing) |
78 | 79 |
79 (defgroup mouse nil | 80 (defgroup mouse nil |
80 "Mouse support." | 81 "Mouse support." |
81 :group 'editing) | 82 :group 'editing) |
85 :group 'editing) | 86 :group 'editing) |
86 | 87 |
87 (defgroup external nil | 88 (defgroup external nil |
88 "Interfacing to external utilities." | 89 "Interfacing to external utilities." |
89 :group 'emacs) | 90 :group 'emacs) |
90 | |
91 (defgroup bib nil | |
92 "Code related to the `bib' bibliography processor." | |
93 :tag "Bibliography" | |
94 :group 'external) | |
95 | 91 |
96 (defgroup processes nil | 92 (defgroup processes nil |
97 "Process, subshell, compilation, and job control support." | 93 "Process, subshell, compilation, and job control support." |
98 :group 'external | 94 :group 'external |
99 :group 'development) | 95 :group 'development) |
115 :group 'languages | 111 :group 'languages |
116 :group 'development) | 112 :group 'development) |
117 | 113 |
118 (defgroup c nil | 114 (defgroup c nil |
119 "Support for the C language and related languages." | 115 "Support for the C language and related languages." |
116 :link '(custom-manual "(ccmode)") | |
120 :group 'languages) | 117 :group 'languages) |
121 | 118 |
122 (defgroup tools nil | 119 (defgroup tools nil |
123 "Programming tools." | 120 "Programming tools." |
124 :group 'programming) | 121 :group 'programming) |
139 "Modes for electronic-mail handling." | 136 "Modes for electronic-mail handling." |
140 :group 'applications) | 137 :group 'applications) |
141 | 138 |
142 (defgroup news nil | 139 (defgroup news nil |
143 "Support for netnews reading and posting." | 140 "Support for netnews reading and posting." |
141 :link '(custom-manual "(gnus)") | |
144 :group 'applications) | 142 :group 'applications) |
145 | 143 |
146 (defgroup games nil | 144 (defgroup games nil |
147 "Games, jokes and amusements." | 145 "Games, jokes and amusements." |
148 :group 'applications) | 146 :group 'applications) |
193 "Support code for vms." | 191 "Support code for vms." |
194 :group 'environment) | 192 :group 'environment) |
195 | 193 |
196 (defgroup i18n nil | 194 (defgroup i18n nil |
197 "Internationalization and alternate character-set support." | 195 "Internationalization and alternate character-set support." |
196 :link '(custom-manual "(emacs)International") | |
198 :group 'environment | 197 :group 'environment |
199 :group 'editing) | 198 :group 'editing) |
200 | 199 |
201 (defgroup x nil | 200 (defgroup x nil |
202 "The X Window system." | 201 "The X Window system." |
243 :group 'emacs) | 242 :group 'emacs) |
244 | 243 |
245 (defgroup customize '((widgets custom-group)) | 244 (defgroup customize '((widgets custom-group)) |
246 "Customization of the Customization support." | 245 "Customization of the Customization support." |
247 :link '(custom-manual "(elisp)Customization") | 246 :link '(custom-manual "(elisp)Customization") |
248 :link '(url-link :tag "(Old?) Development Page" | |
249 "http://www.dina.kvl.dk/~abraham/custom/") | |
250 :prefix "custom-" | 247 :prefix "custom-" |
251 :group 'help) | 248 :group 'help) |
252 | 249 |
253 (defgroup custom-faces nil | 250 (defgroup custom-faces nil |
254 "Faces used by customize." | 251 "Faces used by customize." |
270 :prefix "custom-" | 267 :prefix "custom-" |
271 :group 'customize) | 268 :group 'customize) |
272 | 269 |
273 (defgroup abbrev-mode nil | 270 (defgroup abbrev-mode nil |
274 "Word abbreviations mode." | 271 "Word abbreviations mode." |
272 :link '(custom-manual "(emacs)Abbrevs") | |
275 :group 'abbrev) | 273 :group 'abbrev) |
276 | 274 |
277 (defgroup alloc nil | 275 (defgroup alloc nil |
278 "Storage allocation and gc for GNU Emacs Lisp interpreter." | 276 "Storage allocation and gc for GNU Emacs Lisp interpreter." |
279 :tag "Storage Allocation" | 277 :tag "Storage Allocation" |
280 :group 'internal) | 278 :group 'internal) |
281 | 279 |
282 (defgroup undo nil | 280 (defgroup undo nil |
283 "Undoing changes in buffers." | 281 "Undoing changes in buffers." |
282 :link '(custom-manual "(emacs)Undo") | |
284 :group 'editing) | 283 :group 'editing) |
285 | 284 |
286 (defgroup modeline nil | 285 (defgroup modeline nil |
287 "Content of the modeline." | 286 "Content of the modeline." |
288 :group 'environment) | 287 :group 'environment) |
289 | 288 |
290 (defgroup fill nil | |
291 "Indenting and filling text." | |
292 :group 'editing) | |
293 | |
294 (defgroup editing-basics nil | 289 (defgroup editing-basics nil |
295 "Most basic editing facilities." | 290 "Most basic editing facilities." |
296 :group 'editing) | 291 :group 'editing) |
297 | 292 |
298 (defgroup display nil | 293 (defgroup display nil |
319 "Debugging Emacs itself." | 314 "Debugging Emacs itself." |
320 :group 'development) | 315 :group 'development) |
321 | 316 |
322 (defgroup minibuffer nil | 317 (defgroup minibuffer nil |
323 "Controling the behaviour of the minibuffer." | 318 "Controling the behaviour of the minibuffer." |
319 :link '(custom-manual "(emacs)Minibuffer") | |
324 :group 'environment) | 320 :group 'environment) |
325 | 321 |
326 (defgroup keyboard nil | 322 (defgroup keyboard nil |
327 "Input from the keyboard." | 323 "Input from the keyboard." |
328 :group 'environment) | 324 :group 'environment) |
347 "MULE Emacs internationalization." | 343 "MULE Emacs internationalization." |
348 :group 'i18n) | 344 :group 'i18n) |
349 | 345 |
350 (defgroup windows nil | 346 (defgroup windows nil |
351 "Windows within a frame." | 347 "Windows within a frame." |
348 :link '(custom-manual "(emacs)Windows") | |
352 :group 'environment) | 349 :group 'environment) |
353 | 350 |
354 ;;; Utilities. | 351 ;;; Utilities. |
355 | 352 |
356 (defun custom-quote (sexp) | 353 (defun custom-quote (sexp) |
1952 If INITIAL-STRING is non-nil, use that rather than \"Parent groups:\"." | 1949 If INITIAL-STRING is non-nil, use that rather than \"Parent groups:\"." |
1953 (let ((name (widget-value widget)) | 1950 (let ((name (widget-value widget)) |
1954 (type (widget-type widget)) | 1951 (type (widget-type widget)) |
1955 (buttons (widget-get widget :buttons)) | 1952 (buttons (widget-get widget :buttons)) |
1956 (start (point)) | 1953 (start (point)) |
1957 found) | 1954 (parents nil)) |
1958 (insert (or initial-string "Parent groups:")) | 1955 (insert (or initial-string "Parent groups:")) |
1959 (mapatoms (lambda (symbol) | 1956 (mapatoms (lambda (symbol) |
1960 (let ((entry (assq name (get symbol 'custom-group)))) | 1957 (let ((entry (assq name (get symbol 'custom-group)))) |
1961 (when (eq (nth 1 entry) type) | 1958 (when (eq (nth 1 entry) type) |
1962 (insert " ") | 1959 (insert " ") |
1963 (push (widget-create-child-and-convert | 1960 (push (widget-create-child-and-convert |
1964 widget 'custom-group-link | 1961 widget 'custom-group-link |
1965 :tag (custom-unlispify-tag-name symbol) | 1962 :tag (custom-unlispify-tag-name symbol) |
1966 symbol) | 1963 symbol) |
1967 buttons) | 1964 buttons) |
1968 (setq found t))))) | 1965 (setq parents (cons symbol parents)))))) |
1966 (and (null (get name 'custom-links)) ;No links of its own. | |
1967 (= (length parents) 1) ;A single parent. | |
1968 (let* ((links (get (car parents) 'custom-links)) | |
1969 (many (> (length links) 2))) | |
1970 (when links | |
1971 (insert "\nParent documentation: ") | |
1972 (while links | |
1973 (push (widget-create-child-and-convert widget (car links)) | |
1974 buttons) | |
1975 (setq links (cdr links)) | |
1976 (cond ((null links) | |
1977 (insert ".\n")) | |
1978 ((null (cdr links)) | |
1979 (if many | |
1980 (insert ", and ") | |
1981 (insert " and "))) | |
1982 (t | |
1983 (insert ", "))))))) | |
1984 (if parents | |
1985 (insert "\n") | |
1986 (delete-region start (point))) | |
1969 (widget-put widget :buttons buttons) | 1987 (widget-put widget :buttons buttons) |
1970 (if found | 1988 parents)) |
1971 (insert "\n") | |
1972 (delete-region start (point))) | |
1973 found)) | |
1974 | 1989 |
1975 ;;; The `custom-comment' Widget. | 1990 ;;; The `custom-comment' Widget. |
1976 | 1991 |
1977 ;; like the editable field | 1992 ;; like the editable field |
1978 (defface custom-comment-face '((((class grayscale color) | 1993 (defface custom-comment-face '((((class grayscale color) |
4109 | 4124 |
4110 ;;; The End. | 4125 ;;; The End. |
4111 | 4126 |
4112 (provide 'cus-edit) | 4127 (provide 'cus-edit) |
4113 | 4128 |
4129 ;;; arch-tag: 64533aa4-1b1a-48c3-8812-f9dc718e8a6f | |
4114 ;;; cus-edit.el ends here | 4130 ;;; cus-edit.el ends here |