aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman1997-04-12 04:15:03 +0000
committerRichard M. Stallman1997-04-12 04:15:03 +0000
commitfcad51995cb19634708db88b2efcbed581be979f (patch)
tree0874ef32e156ad94df0bd799dc0947efe44cb090
parent9848f0caff0f651eb3025b8c22e611b6e62f985a (diff)
downloademacs-fcad51995cb19634708db88b2efcbed581be979f.tar.gz
emacs-fcad51995cb19634708db88b2efcbed581be979f.zip
Add defgroup's; use defcustom for user vars.
-rw-r--r--lisp/add-log.el43
-rw-r--r--lisp/emacs-lisp/cl-indent.el23
-rw-r--r--lisp/progmodes/f90.el110
-rw-r--r--lisp/progmodes/fortran.el164
4 files changed, 236 insertions, 104 deletions
diff --git a/lisp/add-log.el b/lisp/add-log.el
index ef0e83dbca1..4dbea700940 100644
--- a/lisp/add-log.el
+++ b/lisp/add-log.el
@@ -1,6 +1,6 @@
1;;; add-log.el --- change log maintenance commands for Emacs 1;;; add-log.el --- change log maintenance commands for Emacs
2 2
3;; Copyright (C) 1985, 1986, 1988, 1993, 1994 Free Software Foundation, Inc. 3;; Copyright (C) 1985, 86, 88, 93, 94, 1997 Free Software Foundation, Inc.
4 4
5;; Keywords: maint 5;; Keywords: maint
6 6
@@ -27,24 +27,43 @@
27 27
28;;; Code: 28;;; Code:
29 29
30(defvar change-log-default-name nil 30(defgroup change-log nil
31 "*Name of a change log file for \\[add-change-log-entry].") 31 "Change log maintenance"
32 :group 'tools
33 :prefix "change-log-"
34 :prefix "add-log-")
32 35
33(defvar add-log-current-defun-function nil 36
37(defcustom change-log-default-name nil
38 "*Name of a change log file for \\[add-change-log-entry]."
39 :type '(choice (const :tag "default" nil)
40 string)
41 :group 'change-log)
42
43(defcustom add-log-current-defun-function nil
34 "\ 44 "\
35*If non-nil, function to guess name of current function from surrounding text. 45*If non-nil, function to guess name of current function from surrounding text.
36\\[add-change-log-entry] calls this function (if nil, `add-log-current-defun' 46\\[add-change-log-entry] calls this function (if nil, `add-log-current-defun'
37instead) with no arguments. It returns a string or nil if it cannot guess.") 47instead) with no arguments. It returns a string or nil if it cannot guess."
48 :type 'boolean
49 :group 'change-log)
38 50
39;;;###autoload 51;;;###autoload
40(defvar add-log-full-name nil 52(defcustom add-log-full-name nil
41 "*Full name of user, for inclusion in ChangeLog daily headers. 53 "*Full name of user, for inclusion in ChangeLog daily headers.
42This defaults to the value returned by the `user-full-name' function.") 54This defaults to the value returned by the `user-full-name' function."
55 :type '(choice (const :tag "Default" nil)
56 string)
57 :group 'change-log)
43 58
44;;;###autoload 59;;;###autoload
45(defvar add-log-mailing-address nil 60(defcustom add-log-mailing-address nil
46 "*Electronic mail address of user, for inclusion in ChangeLog daily headers. 61 "*Electronic mail address of user, for inclusion in ChangeLog daily headers.
47This defaults to the value of `user-mail-address'.") 62This defaults to the value of `user-mail-address'."
63 :type '(choice (const :tag "Default" nil)
64 string)
65 :group 'change-log)
66
48 67
49(defvar change-log-font-lock-keywords 68(defvar change-log-font-lock-keywords
50 '(;; 69 '(;;
@@ -361,9 +380,11 @@ Prefix arg means justify as well."
361 (fill-region beg end justify) 380 (fill-region beg end justify)
362 t)) 381 t))
363 382
364(defvar add-log-current-defun-header-regexp 383(defcustom add-log-current-defun-header-regexp
365 "^\\([A-Z][A-Z_ ]*[A-Z_]\\|[-_a-zA-Z]+\\)[ \t]*[:=]" 384 "^\\([A-Z][A-Z_ ]*[A-Z_]\\|[-_a-zA-Z]+\\)[ \t]*[:=]"
366 "*Heuristic regexp used by `add-log-current-defun' for unknown major modes.") 385 "*Heuristic regexp used by `add-log-current-defun' for unknown major modes."
386 :type 'regexp
387 :group 'change-log)
367 388
368;;;###autoload 389;;;###autoload
369(defun add-log-current-defun () 390(defun add-log-current-defun ()
diff --git a/lisp/emacs-lisp/cl-indent.el b/lisp/emacs-lisp/cl-indent.el
index 8d199c14452..9e179432de4 100644
--- a/lisp/emacs-lisp/cl-indent.el
+++ b/lisp/emacs-lisp/cl-indent.el
@@ -48,16 +48,25 @@
48 48
49;;; Code: 49;;; Code:
50 50
51(defvar lisp-indent-maximum-backtracking 3 51(defgroup lisp-indent nil
52 "Indentation in Lisp"
53 :group 'lisp)
54
55
56(defcustom lisp-indent-maximum-backtracking 3
52 "*Maximum depth to backtrack out from a sublist for structured indentation. 57 "*Maximum depth to backtrack out from a sublist for structured indentation.
53If this variable is 0, no backtracking will occur and forms such as flet 58If this variable is 0, no backtracking will occur and forms such as flet
54may not be correctly indented.") 59may not be correctly indented."
60 :type 'integer
61 :group 'lisp-indent)
55 62
56(defvar lisp-tag-indentation 1 63(defcustom lisp-tag-indentation 1
57 "*Indentation of tags relative to containing list. 64 "*Indentation of tags relative to containing list.
58This variable is used by the function `lisp-indent-tagbody'.") 65This variable is used by the function `lisp-indent-tagbody'."
66 :type 'integer
67 :group 'lisp-indent)
59 68
60(defvar lisp-tag-body-indentation 3 69(defcustom lisp-tag-body-indentation 3
61 "*Indentation of non-tagged lines relative to containing list. 70 "*Indentation of non-tagged lines relative to containing list.
62This variable is used by the function `lisp-indent-tagbody' to indent normal 71This variable is used by the function `lisp-indent-tagbody' to indent normal
63lines (lines without tags). 72lines (lines without tags).
@@ -65,7 +74,9 @@ The indentation is relative to the indentation of the parenthesis enclosing
65the special form. If the value is t, the body of tags will be indented 74the special form. If the value is t, the body of tags will be indented
66as a block at the same indentation as the first s-expression following 75as a block at the same indentation as the first s-expression following
67the tag. In this case, any forms before the first tag are indented 76the tag. In this case, any forms before the first tag are indented
68by `lisp-body-indent'.") 77by `lisp-body-indent'."
78 :type 'integer
79 :group 'lisp-indent)
69 80
70 81
71;;;###autoload 82;;;###autoload
diff --git a/lisp/progmodes/f90.el b/lisp/progmodes/f90.el
index ada277ffc05..0fd525b07bc 100644
--- a/lisp/progmodes/f90.el
+++ b/lisp/progmodes/f90.el
@@ -1,6 +1,6 @@
1;;; f90.el --- Fortran-90 mode (free format) 1;;; f90.el --- Fortran-90 mode (free format)
2 2
3;; Copyright (C) 1995, 1996 Free Software Foundation, Inc. 3;; Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
4 4
5;; Author: Torbj\"orn Einarsson <T.Einarsson@clab.ericsson.se> 5;; Author: Torbj\"orn Einarsson <T.Einarsson@clab.ericsson.se>
6;; Last Change: Oct. 14, 1996 6;; Last Change: Oct. 14, 1996
@@ -148,54 +148,96 @@
148 "Address of mailing list for F90 mode bugs.") 148 "Address of mailing list for F90 mode bugs.")
149 149
150;; User options 150;; User options
151(defvar f90-do-indent 3
152 "*Extra indentation applied to DO blocks.")
153 151
154(defvar f90-if-indent 3 152(defgroup f90 nil
155 "*Extra indentation applied to IF, SELECT CASE, WHERE and FORALL blocks.") 153 "Fortran-90 mode"
154 :group 'fortran)
156 155
157(defvar f90-type-indent 3 156(defgroup f90-indent nil
158 "*Extra indentation applied to TYPE, INTERFACE and BLOCK DATA blocks.") 157 "Fortran-90 indentation"
158 :prefix "f90-"
159 :group 'f90)
159 160
160(defvar f90-program-indent 2
161 "*Extra indentation applied to PROGRAM/MODULE/SUBROUTINE/FUNCTION blocks.")
162 161
163(defvar f90-continuation-indent 5 162(defcustom f90-do-indent 3
164 "*Extra indentation applied to F90 continuation lines.") 163 "*Extra indentation applied to DO blocks."
164 :type 'integer
165 :group 'f90-indent)
165 166
166(defvar f90-comment-region "!!$" 167(defcustom f90-if-indent 3
167 "*String inserted by \\[f90-comment-region]\ 168 "*Extra indentation applied to IF, SELECT CASE, WHERE and FORALL blocks."
168 at start of each line in region.") 169 :type 'integer
170 :group 'f90-indent)
169 171
170(defvar f90-indented-comment-re "!" 172(defcustom f90-type-indent 3
171 "*Regexp saying which comments to be indented like code.") 173 "*Extra indentation applied to TYPE, INTERFACE and BLOCK DATA blocks."
174 :type 'integer
175 :group 'f90-indent)
172 176
173(defvar f90-directive-comment-re "!hpf\\$" 177(defcustom f90-program-indent 2
174 "*Regexp of comment-like directive like \"!HPF\\\\$\", not to be indented.") 178 "*Extra indentation applied to PROGRAM/MODULE/SUBROUTINE/FUNCTION blocks."
179 :type 'integer
180 :group 'f90-indent)
175 181
176(defvar f90-beginning-ampersand t 182(defcustom f90-continuation-indent 5
177 "*t makes automatic insertion of \& at beginning of continuation line.") 183 "*Extra indentation applied to F90 continuation lines."
184 :type 'integer
185 :group 'f90-indent)
178 186
179(defvar f90-smart-end 'blink 187(defcustom f90-comment-region "!!$"
188 "*String inserted by \\[f90-comment-region]\
189 at start of each line in region."
190 :type 'string
191 :group 'f90-indent)
192
193(defcustom f90-indented-comment-re "!"
194 "*Regexp saying which comments to be indented like code."
195 :type 'regexp
196 :group 'f90-indent)
197
198(defcustom f90-directive-comment-re "!hpf\\$"
199 "*Regexp of comment-like directive like \"!HPF\\\\$\", not to be indented."
200 :type 'regexp
201 :group 'f90-indent)
202
203(defcustom f90-beginning-ampersand t
204 "*t makes automatic insertion of \& at beginning of continuation line."
205 :type 'boolean
206 :group 'f90)
207
208(defcustom f90-smart-end 'blink
180 "*From an END statement, check and fill the end using matching block start. 209 "*From an END statement, check and fill the end using matching block start.
181Allowed values are 'blink, 'no-blink, and nil, which determine 210Allowed values are 'blink, 'no-blink, and nil, which determine
182whether to blink the matching beginning.") 211whether to blink the matching beginning."
212 :type '(choice (const blink) (const no-blink) (const nil))
213 :group 'f90)
183 214
184(defvar f90-break-delimiters "[-+\\*/><=,% \t]" 215(defcustom f90-break-delimiters "[-+\\*/><=,% \t]"
185 "*Regexp holding list of delimiters at which lines may be broken.") 216 "*Regexp holding list of delimiters at which lines may be broken."
217 :type 'regexp
218 :group 'f90)
186 219
187(defvar f90-break-before-delimiters t 220(defcustom f90-break-before-delimiters t
188 "*Non-nil causes `f90-do-auto-fill' to break lines before delimiters.") 221 "*Non-nil causes `f90-do-auto-fill' to break lines before delimiters."
222 :type 'regexp
223 :group 'f90)
189 224
190(defvar f90-auto-keyword-case nil 225(defcustom f90-auto-keyword-case nil
191 "*Automatic case conversion of keywords. 226 "*Automatic case conversion of keywords.
192 The options are 'downcase-word, 'upcase-word, 'capitalize-word and nil") 227 The options are 'downcase-word, 'upcase-word, 'capitalize-word and nil"
193 228 :type '(choice (const downcase-word) (const upcase-word)
194(defvar f90-leave-line-no nil 229 (const capitalize-word) (const nil))
195 "*If nil, left-justify linenumbers.") 230 :group 'f90)
196 231
197(defvar f90-startup-message t 232(defcustom f90-leave-line-no nil
198 "*Non-nil displays a startup message when F90 mode is first called.") 233 "*If nil, left-justify linenumbers."
234 :type 'boolean
235 :group 'f90)
236
237(defcustom f90-startup-message t
238 "*Non-nil displays a startup message when F90 mode is first called."
239 :type 'boolean
240 :group 'f90)
199 241
200(defconst f90-keywords-re 242(defconst f90-keywords-re
201 ;;("allocate" "allocatable" "assign" "assignment" "backspace" "block" 243 ;;("allocate" "allocatable" "assign" "assignment" "backspace" "block"
diff --git a/lisp/progmodes/fortran.el b/lisp/progmodes/fortran.el
index 1c255b12a8c..bf79414dd70 100644
--- a/lisp/progmodes/fortran.el
+++ b/lisp/progmodes/fortran.el
@@ -1,6 +1,6 @@
1;;; fortran.el --- Fortran mode for GNU Emacs 1;;; fortran.el --- Fortran mode for GNU Emacs
2 2
3;; Copyright (c) 1986, 1993, 1994, 1995 Free Software Foundation, Inc. 3;; Copyright (c) 1986, 1993, 1994, 1995, 1997 Free Software Foundation, Inc.
4 4
5;; Author: Michael D. Prange <prange@erl.mit.edu> 5;; Author: Michael D. Prange <prange@erl.mit.edu>
6;; Maintainer: bug-fortran-mode@erl.mit.edu (Steve Gildea and others) 6;; Maintainer: bug-fortran-mode@erl.mit.edu (Steve Gildea and others)
@@ -51,88 +51,144 @@
51 51
52(defconst fortran-mode-version "version 1.30.6") 52(defconst fortran-mode-version "version 1.30.6")
53 53
54(defgroup fortran nil
55 "Fortran mode for Emacs"
56 :group 'languages)
57
58(defgroup fortran-indent nil
59 "Indentation variables in Fortran mode"
60 :prefix "fortran-"
61 :group 'fortran)
62
63(defgroup fortran-comment nil
64 "Comment-handling variables in Fortran mode"
65 :prefix "fortran-"
66 :group 'fortran)
67
68
54;;;###autoload 69;;;###autoload
55(defvar fortran-tab-mode-default nil 70(defcustom fortran-tab-mode-default nil
56 "*Default tabbing/carriage control style for empty files in Fortran mode. 71 "*Default tabbing/carriage control style for empty files in Fortran mode.
57A value of t specifies tab-digit style of continuation control. 72A value of t specifies tab-digit style of continuation control.
58A value of nil specifies that continuation lines are marked 73A value of nil specifies that continuation lines are marked
59with a character in column 6.") 74with a character in column 6."
75 :type 'boolean
76 :group 'fortran-indent)
60 77
61;; Buffer local, used to display mode line. 78;; Buffer local, used to display mode line.
62(defvar fortran-tab-mode-string nil 79(defcustom fortran-tab-mode-string nil
63 "String to appear in mode line when TAB format mode is on.") 80 "String to appear in mode line when TAB format mode is on."
64 81 :type '(choice (const nil) string)
65(defvar fortran-do-indent 3 82 :group 'fortran-indent)
66 "*Extra indentation applied to DO blocks.") 83
67 84(defcustom fortran-do-indent 3
68(defvar fortran-if-indent 3 85 "*Extra indentation applied to DO blocks."
69 "*Extra indentation applied to IF blocks.") 86 :type 'integer
70 87 :group 'fortran-indent)
71(defvar fortran-structure-indent 3 88
72 "*Extra indentation applied to STRUCTURE, UNION, MAP and INTERFACE blocks.") 89(defcustom fortran-if-indent 3
73 90 "*Extra indentation applied to IF blocks."
74(defvar fortran-continuation-indent 5 91 :type 'integer
75 "*Extra indentation applied to Fortran continuation lines.") 92 :group 'fortran-indent)
76 93
77(defvar fortran-comment-indent-style 'fixed 94(defcustom fortran-structure-indent 3
95 "*Extra indentation applied to STRUCTURE, UNION, MAP and INTERFACE blocks."
96 :type 'integer
97 :group 'fortran-indent)
98
99(defcustom fortran-continuation-indent 5
100 "*Extra indentation applied to Fortran continuation lines."
101 :type 'integer
102 :group 'fortran-indent)
103
104(defcustom fortran-comment-indent-style 'fixed
78 "*nil forces comment lines not to be touched, 105 "*nil forces comment lines not to be touched,
79'fixed makes fixed comment indentation to `fortran-comment-line-extra-indent' 106'fixed makes fixed comment indentation to `fortran-comment-line-extra-indent'
80columns beyond `fortran-minimum-statement-indent-fixed' (for 107columns beyond `fortran-minimum-statement-indent-fixed' (for
81`indent-tabs-mode' of nil) or `fortran-minimum-statement-indent-tab' (for 108`indent-tabs-mode' of nil) or `fortran-minimum-statement-indent-tab' (for
82`indent-tabs-mode' of t), and 'relative indents to current 109`indent-tabs-mode' of t), and 'relative indents to current
83Fortran indentation plus `fortran-comment-line-extra-indent'.") 110Fortran indentation plus `fortran-comment-line-extra-indent'."
84 111 :type '(radio (const nil) (const fixed) (const relative))
85(defvar fortran-comment-line-extra-indent 0 112 :group 'fortran-indent)
86 "*Amount of extra indentation for text within full-line comments.") 113
87 114(defcustom fortran-comment-line-extra-indent 0
88(defvar comment-line-start nil 115 "*Amount of extra indentation for text within full-line comments."
89 "*Delimiter inserted to start new full-line comment.") 116 :type 'integer
90 117 :group 'fortran-indent
91(defvar comment-line-start-skip nil 118 :group 'fortran-comment)
92 "*Regexp to match the start of a full-line comment.") 119
93 120(defcustom comment-line-start nil
94(defvar fortran-minimum-statement-indent-fixed 6 121 "*Delimiter inserted to start new full-line comment."
95 "*Minimum statement indentation for fixed format continuation style.") 122 :type '(choice string (const nil))
96 123 :group 'fortran-comment)
97(defvar fortran-minimum-statement-indent-tab (max tab-width 6) 124
98 "*Minimum statement indentation for TAB format continuation style.") 125(defcustom comment-line-start-skip nil
126 "*Regexp to match the start of a full-line comment."
127 :type '(choice string (const nil))
128 :group 'fortran-comment)
129
130(defcustom fortran-minimum-statement-indent-fixed 6
131 "*Minimum statement indentation for fixed format continuation style."
132 :type 'integer
133 :group 'fortran-indent)
134
135(defcustom fortran-minimum-statement-indent-tab (max tab-width 6)
136 "*Minimum statement indentation for TAB format continuation style."
137 :type 'integer
138 :group 'fortran-indent)
99 139
100;; Note that this is documented in the v18 manuals as being a string 140;; Note that this is documented in the v18 manuals as being a string
101;; of length one rather than a single character. 141;; of length one rather than a single character.
102;; The code in this file accepts either format for compatibility. 142;; The code in this file accepts either format for compatibility.
103(defvar fortran-comment-indent-char " " 143(defcustom fortran-comment-indent-char " "
104 "*Single-character string inserted for Fortran comment indentation. 144 "*Single-character string inserted for Fortran comment indentation.
105Normally a space.") 145Normally a space."
146 :type 'string
147 :group 'fortran-comment)
106 148
107(defvar fortran-line-number-indent 1 149(defcustom fortran-line-number-indent 1
108 "*Maximum indentation for Fortran line numbers. 150 "*Maximum indentation for Fortran line numbers.
1095 means right-justify them within their five-column field.") 1515 means right-justify them within their five-column field."
152 :type 'integer
153 :group 'fortran-indent)
110 154
111(defvar fortran-check-all-num-for-matching-do nil 155(defcustom fortran-check-all-num-for-matching-do nil
112 "*Non-nil causes all numbered lines to be treated as possible DO loop ends.") 156 "*Non-nil causes all numbered lines to be treated as possible DO loop ends."
157 :type 'boolean
158 :group 'fortran)
113 159
114(defvar fortran-blink-matching-if nil 160(defcustom fortran-blink-matching-if nil
115 "*Non-nil causes \\[fortran-indent-line] on ENDIF statement to blink on matching IF. 161 "*Non-nil causes \\[fortran-indent-line] on ENDIF statement to blink on matching IF.
116Also, from an ENDDO statement blink on matching DO [WHILE] statement.") 162Also, from an ENDDO statement blink on matching DO [WHILE] statement."
163 :type 'boolean
164 :group 'fortran)
117 165
118(defvar fortran-continuation-string "$" 166(defcustom fortran-continuation-string "$"
119 "*Single-character string used for Fortran continuation lines. 167 "*Single-character string used for Fortran continuation lines.
120In fixed format continuation style, this character is inserted in 168In fixed format continuation style, this character is inserted in
121column 6 by \\[fortran-split-line] to begin a continuation line. 169column 6 by \\[fortran-split-line] to begin a continuation line.
122Also, if \\[fortran-indent-line] finds this at the beginning of a line, it will 170Also, if \\[fortran-indent-line] finds this at the beginning of a line, it will
123convert the line into a continuation line of the appropriate style. 171convert the line into a continuation line of the appropriate style.
124Normally $.") 172Normally $."
173 :type 'string
174 :group 'fortran)
125 175
126(defvar fortran-comment-region "c$$$" 176(defcustom fortran-comment-region "c$$$"
127 "*String inserted by \\[fortran-comment-region]\ 177 "*String inserted by \\[fortran-comment-region]\
128 at start of each line in region.") 178 at start of each line in region."
179 :type 'string
180 :group 'fortran-comment)
129 181
130(defvar fortran-electric-line-number t 182(defcustom fortran-electric-line-number t
131 "*Non-nil causes line number digits to be moved to the correct column as\ 183 "*Non-nil causes line number digits to be moved to the correct column as\
132 typed.") 184 typed."
185 :type 'boolean
186 :group 'fortran)
133 187
134(defvar fortran-startup-message t 188(defcustom fortran-startup-message t
135 "*Non-nil displays a startup message when Fortran mode is first called.") 189 "*Non-nil displays a startup message when Fortran mode is first called."
190 :type 'boolean
191 :group 'fortran)
136 192
137(defvar fortran-column-ruler-fixed 193(defvar fortran-column-ruler-fixed
138 "0 4 6 10 20 30 40 5\ 194 "0 4 6 10 20 30 40 5\
@@ -160,8 +216,10 @@ This variable used in TAB format mode.")
160 "Number of lines to scan to determine whether to use fixed or TAB format\ 216 "Number of lines to scan to determine whether to use fixed or TAB format\
161 style.") 217 style.")
162 218
163(defvar fortran-break-before-delimiters t 219(defcustom fortran-break-before-delimiters t
164 "*Non-nil causes `fortran-fill' to break lines before delimiters.") 220 "*Non-nil causes `fortran-fill' to break lines before delimiters."
221 :type 'boolean
222 :group 'fortran)
165 223
166(if fortran-mode-syntax-table 224(if fortran-mode-syntax-table
167 () 225 ()