aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Kangas2021-02-13 05:18:55 +0100
committerStefan Kangas2021-02-13 07:17:20 +0100
commitb4b9ecdfe366c64a7b95c4fd295b583c3f3c7aa9 (patch)
tree65360c882a1620a73585172bfbc6941a1f80bb72
parentca0842347e5437bcaeeded4a7fd55e0e48ed4bad (diff)
downloademacs-b4b9ecdfe366c64a7b95c4fd295b583c3f3c7aa9.tar.gz
emacs-b4b9ecdfe366c64a7b95c4fd295b583c3f3c7aa9.zip
Remove redundant :group args in progmodes/*.el
* lisp/progmodes/bug-reference.el: * lisp/progmodes/cfengine.el: * lisp/progmodes/cmacexp.el: * lisp/progmodes/cpp.el: * lisp/progmodes/cwarn.el: * lisp/progmodes/dcl-mode.el: * lisp/progmodes/executable.el: * lisp/progmodes/flymake.el: * lisp/progmodes/gud.el: * lisp/progmodes/hideshow.el: * lisp/progmodes/icon.el: * lisp/progmodes/inf-lisp.el: * lisp/progmodes/js.el: * lisp/progmodes/ld-script.el: * lisp/progmodes/make-mode.el: * lisp/progmodes/modula2.el: * lisp/progmodes/pascal.el: * lisp/progmodes/perl-mode.el: * lisp/progmodes/prog-mode.el: * lisp/progmodes/simula.el: * lisp/progmodes/xscheme.el: Remove redundant :group args.
-rw-r--r--lisp/progmodes/bug-reference.el3
-rw-r--r--lisp/progmodes/cfengine.el4
-rw-r--r--lisp/progmodes/cmacexp.el12
-rw-r--r--lisp/progmodes/cpp.el43
-rw-r--r--lisp/progmodes/cwarn.el9
-rw-r--r--lisp/progmodes/dcl-mode.el75
-rw-r--r--lisp/progmodes/executable.el21
-rw-r--r--lisp/progmodes/flymake.el2
-rw-r--r--lisp/progmodes/gud.el28
-rw-r--r--lisp/progmodes/hideshow.el7
-rw-r--r--lisp/progmodes/icon.el21
-rw-r--r--lisp/progmodes/inf-lisp.el15
-rw-r--r--lisp/progmodes/js.el52
-rw-r--r--lisp/progmodes/ld-script.el3
-rw-r--r--lisp/progmodes/make-mode.el69
-rw-r--r--lisp/progmodes/modula2.el15
-rw-r--r--lisp/progmodes/pascal.el30
-rw-r--r--lisp/progmodes/perl-mode.el4
-rw-r--r--lisp/progmodes/prog-mode.el6
-rw-r--r--lisp/progmodes/simula.el33
-rw-r--r--lisp/progmodes/xscheme.el16
21 files changed, 148 insertions, 320 deletions
diff --git a/lisp/progmodes/bug-reference.el b/lisp/progmodes/bug-reference.el
index a759394abeb..4d4becf780a 100644
--- a/lisp/progmodes/bug-reference.el
+++ b/lisp/progmodes/bug-reference.el
@@ -73,8 +73,7 @@ so that it is considered safe, see `enable-local-variables'.")
73 "Regular expression matching bug references. 73 "Regular expression matching bug references.
74The second subexpression should match the bug reference (usually a number)." 74The second subexpression should match the bug reference (usually a number)."
75 :type 'regexp 75 :type 'regexp
76 :version "24.3" ; previously defconst 76 :version "24.3") ; previously defconst
77 :group 'bug-reference)
78 77
79;;;###autoload 78;;;###autoload
80(put 'bug-reference-bug-regexp 'safe-local-variable 'stringp) 79(put 'bug-reference-bug-regexp 'safe-local-variable 'stringp)
diff --git a/lisp/progmodes/cfengine.el b/lisp/progmodes/cfengine.el
index f516664f7f4..bef99f2484b 100644
--- a/lisp/progmodes/cfengine.el
+++ b/lisp/progmodes/cfengine.el
@@ -69,7 +69,6 @@
69 69
70(defcustom cfengine-indent 2 70(defcustom cfengine-indent 2
71 "Size of a CFEngine indentation step in columns." 71 "Size of a CFEngine indentation step in columns."
72 :group 'cfengine
73 :type 'integer) 72 :type 'integer)
74 73
75(defcustom cfengine-cf-promises 74(defcustom cfengine-cf-promises
@@ -86,7 +85,6 @@ Used for syntax discovery and checking. Set to nil to disable
86the `compile-command' override. In that case, the ElDoc support 85the `compile-command' override. In that case, the ElDoc support
87will use a fallback syntax definition." 86will use a fallback syntax definition."
88 :version "24.4" 87 :version "24.4"
89 :group 'cfengine
90 :type '(choice file (const nil))) 88 :type '(choice file (const nil)))
91 89
92(defcustom cfengine-parameters-indent '(promise pname 2) 90(defcustom cfengine-parameters-indent '(promise pname 2)
@@ -145,7 +143,6 @@ bundle agent rcfiles
145} 143}
146" 144"
147 :version "24.4" 145 :version "24.4"
148 :group 'cfengine
149 :type '(list 146 :type '(list
150 (choice (const :tag "Anchor at beginning of promise" promise) 147 (choice (const :tag "Anchor at beginning of promise" promise)
151 (const :tag "Anchor at beginning of line" bol)) 148 (const :tag "Anchor at beginning of line" bol))
@@ -799,7 +796,6 @@ bundle agent rcfiles
799 796
800(defcustom cfengine-mode-abbrevs nil 797(defcustom cfengine-mode-abbrevs nil
801 "Abbrevs for CFEngine2 mode." 798 "Abbrevs for CFEngine2 mode."
802 :group 'cfengine
803 :type '(repeat (list (string :tag "Name") 799 :type '(repeat (list (string :tag "Name")
804 (string :tag "Expansion") 800 (string :tag "Expansion")
805 (choice :tag "Hook" (const nil) function)))) 801 (choice :tag "Hook" (const nil) function))))
diff --git a/lisp/progmodes/cmacexp.el b/lisp/progmodes/cmacexp.el
index 1a45b1cb838..820867ab41f 100644
--- a/lisp/progmodes/cmacexp.el
+++ b/lisp/progmodes/cmacexp.el
@@ -99,13 +99,11 @@
99 99
100(defcustom c-macro-shrink-window-flag nil 100(defcustom c-macro-shrink-window-flag nil
101 "Non-nil means shrink the *Macroexpansion* window to fit its contents." 101 "Non-nil means shrink the *Macroexpansion* window to fit its contents."
102 :type 'boolean 102 :type 'boolean)
103 :group 'c-macro)
104 103
105(defcustom c-macro-prompt-flag nil 104(defcustom c-macro-prompt-flag nil
106 "Non-nil makes `c-macro-expand' prompt for preprocessor arguments." 105 "Non-nil makes `c-macro-expand' prompt for preprocessor arguments."
107 :type 'boolean 106 :type 'boolean)
108 :group 'c-macro)
109 107
110(defcustom c-macro-preprocessor 108(defcustom c-macro-preprocessor
111 (cond ;; Solaris has it in an unusual place. 109 (cond ;; Solaris has it in an unusual place.
@@ -129,13 +127,11 @@
129 127
130If you change this, be sure to preserve the `-C' (don't strip comments) 128If you change this, be sure to preserve the `-C' (don't strip comments)
131option, or to set an equivalent one." 129option, or to set an equivalent one."
132 :type 'string 130 :type 'string)
133 :group 'c-macro)
134 131
135(defcustom c-macro-cppflags "" 132(defcustom c-macro-cppflags ""
136 "Preprocessor flags used by `c-macro-expand'." 133 "Preprocessor flags used by `c-macro-expand'."
137 :type 'string 134 :type 'string)
138 :group 'c-macro)
139 135
140(defconst c-macro-buffer-name "*Macroexpansion*") 136(defconst c-macro-buffer-name "*Macroexpansion*")
141 137
diff --git a/lisp/progmodes/cpp.el b/lisp/progmodes/cpp.el
index b2c2e8dab57..6602a79b2a4 100644
--- a/lisp/progmodes/cpp.el
+++ b/lisp/progmodes/cpp.el
@@ -53,8 +53,7 @@
53 53
54(defcustom cpp-config-file (convert-standard-filename ".cpp.el") 54(defcustom cpp-config-file (convert-standard-filename ".cpp.el")
55 "File name to save cpp configuration." 55 "File name to save cpp configuration."
56 :type 'file 56 :type 'file)
57 :group 'cpp)
58 57
59(define-widget 'cpp-face 'lazy 58(define-widget 'cpp-face 'lazy
60 "Either a face or the special symbol `invisible'." 59 "Either a face or the special symbol `invisible'."
@@ -62,13 +61,11 @@
62 61
63(defcustom cpp-known-face 'invisible 62(defcustom cpp-known-face 'invisible
64 "Face used for known cpp symbols." 63 "Face used for known cpp symbols."
65 :type 'cpp-face 64 :type 'cpp-face)
66 :group 'cpp)
67 65
68(defcustom cpp-unknown-face 'highlight 66(defcustom cpp-unknown-face 'highlight
69 "Face used for unknown cpp symbols." 67 "Face used for unknown cpp symbols."
70 :type 'cpp-face 68 :type 'cpp-face)
71 :group 'cpp)
72 69
73(defcustom cpp-face-type 'light 70(defcustom cpp-face-type 'light
74 "Indicate what background face type you prefer. 71 "Indicate what background face type you prefer.
@@ -76,18 +73,15 @@ Can be either light or dark for color screens, mono for monochrome
76screens, and none if you don't use a window system and don't have 73screens, and none if you don't use a window system and don't have
77a color-capable display." 74a color-capable display."
78 :options '(light dark mono nil) 75 :options '(light dark mono nil)
79 :type 'symbol 76 :type 'symbol)
80 :group 'cpp)
81 77
82(defcustom cpp-known-writable t 78(defcustom cpp-known-writable t
83 "Non-nil means you are allowed to modify the known conditionals." 79 "Non-nil means you are allowed to modify the known conditionals."
84 :type 'boolean 80 :type 'boolean)
85 :group 'cpp)
86 81
87(defcustom cpp-unknown-writable t 82(defcustom cpp-unknown-writable t
88 "Non-nil means you are allowed to modify the unknown conditionals." 83 "Non-nil means you are allowed to modify the unknown conditionals."
89 :type 'boolean 84 :type 'boolean)
90 :group 'cpp)
91 85
92(defcustom cpp-edit-list nil 86(defcustom cpp-edit-list nil
93 "Alist of cpp macros and information about how they should be displayed. 87 "Alist of cpp macros and information about how they should be displayed.
@@ -101,15 +95,13 @@ Each entry is a list with the following elements:
101 (cpp-face :tag "False") 95 (cpp-face :tag "False")
102 (choice (const :tag "True branch writable" t) 96 (choice (const :tag "True branch writable" t)
103 (const :tag "False branch writable" nil) 97 (const :tag "False branch writable" nil)
104 (const :tag "Both branches writable" both)))) 98 (const :tag "Both branches writable" both)))))
105 :group 'cpp)
106 99
107(defcustom cpp-message-min-time-interval 1.0 100(defcustom cpp-message-min-time-interval 1.0
108 "Minimum time interval in seconds for `cpp-progress-message' messages. 101 "Minimum time interval in seconds for `cpp-progress-message' messages.
109If nil, `cpp-progress-message' prints no progress messages." 102If nil, `cpp-progress-message' prints no progress messages."
110 :type '(choice (const :tag "Disable progress messages" nil) 103 :type '(choice (const :tag "Disable progress messages" nil)
111 float) 104 float)
112 :group 'cpp
113 :version "26.1") 105 :version "26.1")
114 106
115(defvar-local cpp-overlay-list nil 107(defvar-local cpp-overlay-list nil
@@ -153,36 +145,31 @@ or a cons cell (background-color . COLOR)."
153 :value-type (choice face 145 :value-type (choice face
154 (const invisible) 146 (const invisible)
155 (cons (const background-color) 147 (cons (const background-color)
156 (string :tag "Color")))) 148 (string :tag "Color")))))
157 :group 'cpp)
158 149
159(defcustom cpp-face-light-name-list 150(defcustom cpp-face-light-name-list
160 '("light gray" "light blue" "light cyan" "light yellow" "light pink" 151 '("light gray" "light blue" "light cyan" "light yellow" "light pink"
161 "pale green" "beige" "orange" "magenta" "violet" "medium purple" 152 "pale green" "beige" "orange" "magenta" "violet" "medium purple"
162 "turquoise") 153 "turquoise")
163 "Background colors useful with dark foreground colors." 154 "Background colors useful with dark foreground colors."
164 :type '(repeat string) 155 :type '(repeat string))
165 :group 'cpp)
166 156
167(defcustom cpp-face-dark-name-list 157(defcustom cpp-face-dark-name-list
168 '("dim gray" "blue" "cyan" "yellow" "red" 158 '("dim gray" "blue" "cyan" "yellow" "red"
169 "dark green" "brown" "dark orange" "dark khaki" "dark violet" "purple" 159 "dark green" "brown" "dark orange" "dark khaki" "dark violet" "purple"
170 "dark turquoise") 160 "dark turquoise")
171 "Background colors useful with light foreground colors." 161 "Background colors useful with light foreground colors."
172 :type '(repeat string) 162 :type '(repeat string))
173 :group 'cpp)
174 163
175(defcustom cpp-face-light-list nil 164(defcustom cpp-face-light-list nil
176 "Alist of names and faces to be used for light backgrounds." 165 "Alist of names and faces to be used for light backgrounds."
177 :type '(repeat (cons string (choice face 166 :type '(repeat (cons string (choice face
178 (cons (const background-color) string)))) 167 (cons (const background-color) string)))))
179 :group 'cpp)
180 168
181(defcustom cpp-face-dark-list nil 169(defcustom cpp-face-dark-list nil
182 "Alist of names and faces to be used for dark backgrounds." 170 "Alist of names and faces to be used for dark backgrounds."
183 :type '(repeat (cons string (choice face 171 :type '(repeat (cons string (choice face
184 (cons (const background-color) string)))) 172 (cons (const background-color) string)))))
185 :group 'cpp)
186 173
187(defcustom cpp-face-mono-list 174(defcustom cpp-face-mono-list
188 '(("bold" . bold) 175 '(("bold" . bold)
@@ -190,15 +177,13 @@ or a cons cell (background-color . COLOR)."
190 ("italic" . italic) 177 ("italic" . italic)
191 ("underline" . underline)) 178 ("underline" . underline))
192 "Alist of names and faces to be used for monochrome screens." 179 "Alist of names and faces to be used for monochrome screens."
193 :type '(repeat (cons string face)) 180 :type '(repeat (cons string face)))
194 :group 'cpp)
195 181
196(defcustom cpp-face-none-list 182(defcustom cpp-face-none-list
197 '(("default" . default) 183 '(("default" . default)
198 ("invisible" . invisible)) 184 ("invisible" . invisible))
199 "Alist of names and faces available even if you don't use a window system." 185 "Alist of names and faces available even if you don't use a window system."
200 :type '(repeat (cons string cpp-face)) 186 :type '(repeat (cons string cpp-face)))
201 :group 'cpp)
202 187
203(defvar cpp-face-all-list 188(defvar cpp-face-all-list
204 (append cpp-face-light-list 189 (append cpp-face-light-list
diff --git a/lisp/progmodes/cwarn.el b/lisp/progmodes/cwarn.el
index 042030da396..63b344bea16 100644
--- a/lisp/progmodes/cwarn.el
+++ b/lisp/progmodes/cwarn.el
@@ -128,8 +128,7 @@ on one of three forms:
128 128
129See variable `cwarn-font-lock-feature-keywords-alist' for available 129See variable `cwarn-font-lock-feature-keywords-alist' for available
130features." 130features."
131 :type '(repeat sexp) 131 :type '(repeat sexp))
132 :group 'cwarn)
133 132
134(defcustom cwarn-font-lock-feature-keywords-alist 133(defcustom cwarn-font-lock-feature-keywords-alist
135 '((assign . cwarn-font-lock-assignment-keywords) 134 '((assign . cwarn-font-lock-assignment-keywords)
@@ -142,15 +141,13 @@ keyword list."
142 :type '(alist :key-type (choice (const assign) 141 :type '(alist :key-type (choice (const assign)
143 (const semicolon) 142 (const semicolon)
144 (const reference)) 143 (const reference))
145 :value-type (sexp :tag "Value")) 144 :value-type (sexp :tag "Value")))
146 :group 'cwarn)
147 145
148(defcustom cwarn-verbose t 146(defcustom cwarn-verbose t
149 "When nil, CWarn mode will not generate any messages. 147 "When nil, CWarn mode will not generate any messages.
150 148
151Currently, messages are generated when the mode is activated and 149Currently, messages are generated when the mode is activated and
152deactivated." 150deactivated."
153 :group 'cwarn
154 :type 'boolean) 151 :type 'boolean)
155 152
156(defcustom cwarn-mode-text " CWarn" 153(defcustom cwarn-mode-text " CWarn"
@@ -158,13 +155,11 @@ deactivated."
158 155
159\(When the string is not empty, make sure that it has a leading space.)" 156\(When the string is not empty, make sure that it has a leading space.)"
160 :tag "CWarn mode text" ; To separate it from `global-...' 157 :tag "CWarn mode text" ; To separate it from `global-...'
161 :group 'cwarn
162 :type 'string) 158 :type 'string)
163 159
164(defcustom cwarn-load-hook nil 160(defcustom cwarn-load-hook nil
165 "Functions to run when CWarn mode is first loaded." 161 "Functions to run when CWarn mode is first loaded."
166 :tag "Load Hook" 162 :tag "Load Hook"
167 :group 'cwarn
168 :type 'hook) 163 :type 'hook)
169(make-obsolete-variable 'cwarn-load-hook 164(make-obsolete-variable 'cwarn-load-hook
170 "use `with-eval-after-load' instead." "28.1") 165 "use `with-eval-after-load' instead." "28.1")
diff --git a/lisp/progmodes/dcl-mode.el b/lisp/progmodes/dcl-mode.el
index 8943d8b6d01..4a8a20a2969 100644
--- a/lisp/progmodes/dcl-mode.el
+++ b/lisp/progmodes/dcl-mode.el
@@ -97,8 +97,7 @@ dcl-block-begin-regexp and dcl-block-end-regexp.
97 97
98The meaning of this variable may be changed if 98The meaning of this variable may be changed if
99dcl-calc-command-indent-function is set to a function." 99dcl-calc-command-indent-function is set to a function."
100 :type 'integer 100 :type 'integer)
101 :group 'dcl)
102 101
103 102
104(defcustom dcl-continuation-offset 6 103(defcustom dcl-continuation-offset 6
@@ -107,8 +106,7 @@ A continuation line is a line that follows a line ending with `-'.
107 106
108The meaning of this variable may be changed if 107The meaning of this variable may be changed if
109dcl-calc-cont-indent-function is set to a function." 108dcl-calc-cont-indent-function is set to a function."
110 :type 'integer 109 :type 'integer)
111 :group 'dcl)
112 110
113 111
114(defcustom dcl-margin-offset 8 112(defcustom dcl-margin-offset 8
@@ -117,37 +115,32 @@ The first command line in a file or after a SUBROUTINE statement is indented
117this much. Other command lines are indented the same number of columns as 115this much. Other command lines are indented the same number of columns as
118the preceding command line. 116the preceding command line.
119A command line is a line that starts with `$'." 117A command line is a line that starts with `$'."
120 :type 'integer 118 :type 'integer)
121 :group 'dcl)
122 119
123 120
124(defcustom dcl-margin-label-offset 2 121(defcustom dcl-margin-label-offset 2
125 "Number of columns to indent a margin label in DCL. 122 "Number of columns to indent a margin label in DCL.
126A margin label is a label that doesn't begin or end a block, i.e. it 123A margin label is a label that doesn't begin or end a block, i.e. it
127doesn't match dcl-block-begin-regexp or dcl-block-end-regexp." 124doesn't match dcl-block-begin-regexp or dcl-block-end-regexp."
128 :type 'integer 125 :type 'integer)
129 :group 'dcl)
130 126
131 127
132(defcustom dcl-comment-line-regexp "^\\$!" 128(defcustom dcl-comment-line-regexp "^\\$!"
133 "Regexp describing the start of a comment line in DCL. 129 "Regexp describing the start of a comment line in DCL.
134Comment lines are not indented." 130Comment lines are not indented."
135 :type 'regexp 131 :type 'regexp)
136 :group 'dcl)
137 132
138 133
139(defcustom dcl-block-begin-regexp "loop[0-9]*:" 134(defcustom dcl-block-begin-regexp "loop[0-9]*:"
140 "Regexp describing a command that begins an indented block in DCL. 135 "Regexp describing a command that begins an indented block in DCL.
141Set to nil to only indent at THEN-ELSE-ENDIF." 136Set to nil to only indent at THEN-ELSE-ENDIF."
142 :type 'regexp 137 :type 'regexp)
143 :group 'dcl)
144 138
145 139
146(defcustom dcl-block-end-regexp "endloop[0-9]*:" 140(defcustom dcl-block-end-regexp "endloop[0-9]*:"
147 "Regexp describing a command that ends an indented block in DCL. 141 "Regexp describing a command that ends an indented block in DCL.
148Set to nil to only indent at THEN-ELSE-ENDIF." 142Set to nil to only indent at THEN-ELSE-ENDIF."
149 :type 'regexp 143 :type 'regexp)
150 :group 'dcl)
151 144
152 145
153(defcustom dcl-calc-command-indent-function nil 146(defcustom dcl-calc-command-indent-function nil
@@ -178,8 +171,7 @@ CUR-INDENT + EXTRA-INDENT.
178This package includes two functions suitable for this: 171This package includes two functions suitable for this:
179 dcl-calc-command-indent-multiple 172 dcl-calc-command-indent-multiple
180 dcl-calc-command-indent-hang" 173 dcl-calc-command-indent-hang"
181 :type '(choice (const nil) function) 174 :type '(choice (const nil) function))
182 :group 'dcl)
183 175
184 176
185(defcustom dcl-calc-cont-indent-function 'dcl-calc-cont-indent-relative 177(defcustom dcl-calc-cont-indent-function 'dcl-calc-cont-indent-relative
@@ -196,8 +188,7 @@ CUR-INDENT + EXTRA-INDENT.
196 188
197This package includes one function suitable for this: 189This package includes one function suitable for this:
198 dcl-calc-cont-indent-relative" 190 dcl-calc-cont-indent-relative"
199 :type 'function 191 :type 'function)
200 :group 'dcl)
201 192
202 193
203(defcustom dcl-tab-always-indent t 194(defcustom dcl-tab-always-indent t
@@ -206,50 +197,41 @@ If t, pressing TAB always indents the current line.
206If nil, pressing TAB indents the current line if point is at the left margin. 197If nil, pressing TAB indents the current line if point is at the left margin.
207Data lines (i.e. lines not part of a command line or continuation line) are 198Data lines (i.e. lines not part of a command line or continuation line) are
208never indented." 199never indented."
209 :type 'boolean 200 :type 'boolean)
210 :group 'dcl)
211 201
212 202
213(defcustom dcl-electric-characters t 203(defcustom dcl-electric-characters t
214 "Non-nil means reindent immediately when a label, ELSE or ENDIF is inserted." 204 "Non-nil means reindent immediately when a label, ELSE or ENDIF is inserted."
215 :type 'boolean 205 :type 'boolean)
216 :group 'dcl)
217 206
218 207
219(defcustom dcl-tempo-comma ", " 208(defcustom dcl-tempo-comma ", "
220 "Text to insert when a comma is needed in a template, in DCL mode." 209 "Text to insert when a comma is needed in a template, in DCL mode."
221 :type 'string 210 :type 'string)
222 :group 'dcl)
223 211
224(defcustom dcl-tempo-left-paren "(" 212(defcustom dcl-tempo-left-paren "("
225 "Text to insert when a left parenthesis is needed in a template in DCL." 213 "Text to insert when a left parenthesis is needed in a template in DCL."
226 :type 'string 214 :type 'string)
227 :group 'dcl)
228 215
229 216
230(defcustom dcl-tempo-right-paren ")" 217(defcustom dcl-tempo-right-paren ")"
231 "Text to insert when a right parenthesis is needed in a template in DCL." 218 "Text to insert when a right parenthesis is needed in a template in DCL."
232 :type 'string 219 :type 'string)
233 :group 'dcl)
234 220
235; I couldn't decide what looked best, so I'll let you decide... 221; I couldn't decide what looked best, so I'll let you decide...
236; Remember, you can also customize this with imenu-submenu-name-format. 222; Remember, you can also customize this with imenu-submenu-name-format.
237(defcustom dcl-imenu-label-labels "Labels" 223(defcustom dcl-imenu-label-labels "Labels"
238 "Imenu menu title for sub-listing with label names." 224 "Imenu menu title for sub-listing with label names."
239 :type 'string 225 :type 'string)
240 :group 'dcl)
241(defcustom dcl-imenu-label-goto "GOTO" 226(defcustom dcl-imenu-label-goto "GOTO"
242 "Imenu menu title for sub-listing with GOTO statements." 227 "Imenu menu title for sub-listing with GOTO statements."
243 :type 'string 228 :type 'string)
244 :group 'dcl)
245(defcustom dcl-imenu-label-gosub "GOSUB" 229(defcustom dcl-imenu-label-gosub "GOSUB"
246 "Imenu menu title for sub-listing with GOSUB statements." 230 "Imenu menu title for sub-listing with GOSUB statements."
247 :type 'string 231 :type 'string)
248 :group 'dcl)
249(defcustom dcl-imenu-label-call "CALL" 232(defcustom dcl-imenu-label-call "CALL"
250 "Imenu menu title for sub-listing with CALL statements." 233 "Imenu menu title for sub-listing with CALL statements."
251 :type 'string 234 :type 'string)
252 :group 'dcl)
253 235
254(defcustom dcl-imenu-generic-expression 236(defcustom dcl-imenu-generic-expression
255 `((nil "^\\$[ \t]*\\([A-Za-z0-9_$]+\\):[ \t]+SUBROUTINE\\b" 1) 237 `((nil "^\\$[ \t]*\\([A-Za-z0-9_$]+\\):[ \t]+SUBROUTINE\\b" 1)
@@ -263,14 +245,12 @@ never indented."
263The default includes SUBROUTINE labels in the main listing and 245The default includes SUBROUTINE labels in the main listing and
264sub-listings for other labels, CALL, GOTO and GOSUB statements. 246sub-listings for other labels, CALL, GOTO and GOSUB statements.
265See `imenu-generic-expression' for details." 247See `imenu-generic-expression' for details."
266 :type '(repeat (sexp :tag "Imenu Expression")) 248 :type '(repeat (sexp :tag "Imenu Expression")))
267 :group 'dcl)
268 249
269 250
270(defcustom dcl-mode-hook nil 251(defcustom dcl-mode-hook nil
271 "Hook called by `dcl-mode'." 252 "Hook called by `dcl-mode'."
272 :type 'hook 253 :type 'hook)
273 :group 'dcl)
274 254
275 255
276;;; *** Global variables **************************************************** 256;;; *** Global variables ****************************************************
@@ -354,16 +334,14 @@ See `imenu-generic-expression' for details."
354 "Regular expression describing white space in a DCL command line. 334 "Regular expression describing white space in a DCL command line.
355White space is any number of continued lines with only space,tab,endcomment 335White space is any number of continued lines with only space,tab,endcomment
356followed by space or tab." 336followed by space or tab."
357 :type 'regexp 337 :type 'regexp)
358 :group 'dcl)
359 338
360 339
361(defcustom dcl-label-r 340(defcustom dcl-label-r
362 "[a-zA-Z0-9_$]*:\\([ \t!]\\|$\\)" 341 "[a-zA-Z0-9_$]*:\\([ \t!]\\|$\\)"
363 "Regular expression describing a label. 342 "Regular expression describing a label.
364A label is a name followed by a colon followed by white-space or end-of-line." 343A label is a name followed by a colon followed by white-space or end-of-line."
365 :type 'regexp 344 :type 'regexp)
366 :group 'dcl)
367 345
368 346
369(defcustom dcl-cmd-r 347(defcustom dcl-cmd-r
@@ -373,8 +351,7 @@ A line starting with $, optionally followed by continuation lines,
373followed by the end of the command line. 351followed by the end of the command line.
374A continuation line is any characters followed by `-', 352A continuation line is any characters followed by `-',
375optionally followed by a comment, followed by a newline." 353optionally followed by a comment, followed by a newline."
376 :type 'regexp 354 :type 'regexp)
377 :group 'dcl)
378 355
379 356
380(defcustom dcl-command-regexp 357(defcustom dcl-command-regexp
@@ -384,8 +361,7 @@ A line starting with $, optionally followed by continuation lines,
384followed by the end of the command line. 361followed by the end of the command line.
385A continuation line is any characters followed by `-', 362A continuation line is any characters followed by `-',
386optionally followed by a comment, followed by a newline." 363optionally followed by a comment, followed by a newline."
387 :type 'regexp 364 :type 'regexp)
388 :group 'dcl)
389 365
390 366
391(defcustom dcl-electric-reindent-regexps 367(defcustom dcl-electric-reindent-regexps
@@ -397,8 +373,7 @@ is defined as dcl-electric-character.
397E.g.: if this list contains `endif', the key `f' is defined as 373E.g.: if this list contains `endif', the key `f' is defined as
398dcl-electric-character and you have just typed the `f' in 374dcl-electric-character and you have just typed the `f' in
399`endif', the line will be reindented." 375`endif', the line will be reindented."
400 :type '(repeat regexp) 376 :type '(repeat regexp))
401 :group 'dcl)
402 377
403 378
404(defvar dcl-option-alist 379(defvar dcl-option-alist
diff --git a/lisp/progmodes/executable.el b/lisp/progmodes/executable.el
index fa5724a3800..b1cd3303c5b 100644
--- a/lisp/progmodes/executable.el
+++ b/lisp/progmodes/executable.el
@@ -65,8 +65,7 @@ update the magic number."
65;;; :type '(choice (const :tag "off" nil) 65;;; :type '(choice (const :tag "off" nil)
66;;; (const :tag "on" t) 66;;; (const :tag "on" t)
67;;; symbol) 67;;; symbol)
68 :type 'boolean 68 :type 'boolean)
69 :group 'executable)
70 69
71 70
72(defcustom executable-query 'function 71(defcustom executable-query 'function
@@ -74,21 +73,18 @@ update the magic number."
74When this is `function', only ask when called non-interactively." 73When this is `function', only ask when called non-interactively."
75 :type '(choice (const :tag "Don't Ask" nil) 74 :type '(choice (const :tag "Don't Ask" nil)
76 (const :tag "Ask when non-interactive" function) 75 (const :tag "Ask when non-interactive" function)
77 (other :tag "Ask" t)) 76 (other :tag "Ask" t)))
78 :group 'executable)
79 77
80 78
81(defcustom executable-magicless-file-regexp "/[Mm]akefile$\\|/\\.\\(z?profile\\|bash_profile\\|z?login\\|bash_login\\|z?logout\\|bash_logout\\|.+shrc\\|esrc\\|rcrc\\|[kz]shenv\\)$" 79(defcustom executable-magicless-file-regexp "/[Mm]akefile$\\|/\\.\\(z?profile\\|bash_profile\\|z?login\\|bash_login\\|z?logout\\|bash_logout\\|.+shrc\\|esrc\\|rcrc\\|[kz]shenv\\)$"
82 "On files with this kind of name no magic is inserted or changed." 80 "On files with this kind of name no magic is inserted or changed."
83 :type 'regexp 81 :type 'regexp)
84 :group 'executable)
85 82
86(defcustom executable-prefix "#!" 83(defcustom executable-prefix "#!"
87 "Interpreter magic number prefix inserted when there was no magic number. 84 "Interpreter magic number prefix inserted when there was no magic number.
88Use of `executable-prefix-env' is preferable to this option." 85Use of `executable-prefix-env' is preferable to this option."
89 :version "26.1" ; deprecated 86 :version "26.1" ; deprecated
90 :type 'string 87 :type 'string)
91 :group 'executable)
92 88
93(defcustom executable-prefix-env nil 89(defcustom executable-prefix-env nil
94 "If non-nil, use \"/usr/bin/env\" in interpreter magic number. 90 "If non-nil, use \"/usr/bin/env\" in interpreter magic number.
@@ -96,8 +92,7 @@ If this variable is non-nil, the interpreter magic number inserted
96by `executable-set-magic' will be \"#!/usr/bin/env INTERPRETER\", 92by `executable-set-magic' will be \"#!/usr/bin/env INTERPRETER\",
97otherwise it will be \"#!/path/to/INTERPRETER\"." 93otherwise it will be \"#!/path/to/INTERPRETER\"."
98 :version "26.1" 94 :version "26.1"
99 :type 'boolean 95 :type 'boolean)
100 :group 'executable)
101 96
102(defcustom executable-chmod 73 97(defcustom executable-chmod 73
103 "After saving, if the file is not executable, set this mode. 98 "After saving, if the file is not executable, set this mode.
@@ -105,8 +100,7 @@ This mode passed to `set-file-modes' is taken absolutely when negative, or
105relative to the files existing modes. Do nothing if this is nil. 100relative to the files existing modes. Do nothing if this is nil.
106Typical values are 73 (+x) or -493 (rwxr-xr-x)." 101Typical values are 73 (+x) or -493 (rwxr-xr-x)."
107 :type '(choice integer 102 :type '(choice integer
108 (const nil)) 103 (const nil)))
109 :group 'executable)
110 104
111 105
112(defvar executable-command nil) 106(defvar executable-command nil)
@@ -114,8 +108,7 @@ Typical values are 73 (+x) or -493 (rwxr-xr-x)."
114(defcustom executable-self-display "tail" 108(defcustom executable-self-display "tail"
115 "Command you use with argument `-n+2' to make text files self-display. 109 "Command you use with argument `-n+2' to make text files self-display.
116Note that the like of `more' doesn't work too well under Emacs \\[shell]." 110Note that the like of `more' doesn't work too well under Emacs \\[shell]."
117 :type 'string 111 :type 'string)
118 :group 'executable)
119 112
120(make-obsolete-variable 'executable-self-display nil "25.1" 'set) 113(make-obsolete-variable 'executable-self-display nil "25.1" 'set)
121 114
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el
index 5d96c62b418..b8c8a827eed 100644
--- a/lisp/progmodes/flymake.el
+++ b/lisp/progmodes/flymake.el
@@ -1198,7 +1198,6 @@ default) no filter is applied."
1198 '(" " flymake-mode-line-title flymake-mode-line-exception 1198 '(" " flymake-mode-line-title flymake-mode-line-exception
1199 flymake-mode-line-counters) 1199 flymake-mode-line-counters)
1200 "Mode line construct for customizing Flymake information." 1200 "Mode line construct for customizing Flymake information."
1201 :group 'flymake
1202 :type '(repeat (choice string symbol))) 1201 :type '(repeat (choice string symbol)))
1203 1202
1204(defcustom flymake-mode-line-counter-format 1203(defcustom flymake-mode-line-counter-format
@@ -1210,7 +1209,6 @@ default) no filter is applied."
1210This is a suitable place for placing the `flymake-error-counter', 1209This is a suitable place for placing the `flymake-error-counter',
1211`flymake-warning-counter' and `flymake-note-counter' constructs. 1210`flymake-warning-counter' and `flymake-note-counter' constructs.
1212Separating each of these with space is not necessary." 1211Separating each of these with space is not necessary."
1213 :group 'flymake
1214 :type '(repeat (choice string symbol))) 1212 :type '(repeat (choice string symbol)))
1215 1213
1216(defvar flymake-mode-line-title '(:eval (flymake--mode-line-title)) 1214(defvar flymake-mode-line-title '(:eval (flymake--mode-line-title))
diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el
index eb114acdabc..b105cbaa0ef 100644
--- a/lisp/progmodes/gud.el
+++ b/lisp/progmodes/gud.el
@@ -64,8 +64,7 @@ pdb (Python), and jdb."
64 64
65(defcustom gud-key-prefix "\C-x\C-a" 65(defcustom gud-key-prefix "\C-x\C-a"
66 "Prefix of all GUD commands valid in C buffers." 66 "Prefix of all GUD commands valid in C buffers."
67 :type 'key-sequence 67 :type 'key-sequence)
68 :group 'gud)
69 68
70(global-set-key (vconcat gud-key-prefix "\C-l") 'gud-refresh) 69(global-set-key (vconcat gud-key-prefix "\C-l") 'gud-refresh)
71;; (define-key ctl-x-map " " 'gud-break); backward compatibility hack 70;; (define-key ctl-x-map " " 'gud-break); backward compatibility hack
@@ -1074,8 +1073,7 @@ The file names should be absolute, or relative to the directory
1074containing the executable being debugged." 1073containing the executable being debugged."
1075 :type '(choice (const :tag "Current Directory" nil) 1074 :type '(choice (const :tag "Current Directory" nil)
1076 (repeat :value ("") 1075 (repeat :value ("")
1077 directory)) 1076 directory)))
1078 :group 'gud)
1079 1077
1080(defun gud-dbx-massage-args (_file args) 1078(defun gud-dbx-massage-args (_file args)
1081 (nconc (let ((directories gud-dbx-directories) 1079 (nconc (let ((directories gud-dbx-directories)
@@ -1380,8 +1378,7 @@ The file names should be absolute, or relative to the directory
1380containing the executable being debugged." 1378containing the executable being debugged."
1381 :type '(choice (const :tag "Current Directory" nil) 1379 :type '(choice (const :tag "Current Directory" nil)
1382 (repeat :value ("") 1380 (repeat :value ("")
1383 directory)) 1381 directory)))
1384 :group 'gud)
1385 1382
1386(defun gud-xdb-massage-args (_file args) 1383(defun gud-xdb-massage-args (_file args)
1387 (nconc (let ((directories gud-xdb-directories) 1384 (nconc (let ((directories gud-xdb-directories)
@@ -1563,8 +1560,7 @@ into one that invokes an Emacs-enabled debugging session.
1563 1560
1564(defcustom gud-perldb-command-name "perl -d" 1561(defcustom gud-perldb-command-name "perl -d"
1565 "Default command to execute a Perl script under debugger." 1562 "Default command to execute a Perl script under debugger."
1566 :type 'string 1563 :type 'string)
1567 :group 'gud)
1568 1564
1569;;;###autoload 1565;;;###autoload
1570(defun perldb (command-line) 1566(defun perldb (command-line)
@@ -1677,8 +1673,7 @@ and source-file directory for your debugger."
1677 (if (executable-find "pdb") "pdb" "python -m pdb") 1673 (if (executable-find "pdb") "pdb" "python -m pdb")
1678 "Command that executes the Python debugger." 1674 "Command that executes the Python debugger."
1679 :version "27.1" 1675 :version "27.1"
1680 :type 'string 1676 :type 'string)
1681 :group 'gud)
1682 1677
1683;;;###autoload 1678;;;###autoload
1684(defun pdb (command-line) 1679(defun pdb (command-line)
@@ -1759,8 +1754,7 @@ directory and source-file directory for your debugger."
1759 "File name for executing the Guile debugger. 1754 "File name for executing the Guile debugger.
1760This should be an executable on your path, or an absolute file name." 1755This should be an executable on your path, or an absolute file name."
1761 :version "25.1" 1756 :version "25.1"
1762 :type 'string 1757 :type 'string)
1763 :group 'gud)
1764 1758
1765;;;###autoload 1759;;;###autoload
1766(defun guiler (command-line) 1760(defun guiler (command-line)
@@ -1883,8 +1877,7 @@ and source-file directory for your debugger."
1883 1877
1884(defcustom gud-jdb-command-name "jdb" 1878(defcustom gud-jdb-command-name "jdb"
1885 "Command that executes the Java debugger." 1879 "Command that executes the Java debugger."
1886 :type 'string 1880 :type 'string)
1887 :group 'gud)
1888 1881
1889(defcustom gud-jdb-use-classpath t 1882(defcustom gud-jdb-use-classpath t
1890 "If non-nil, search for Java source files in classpath directories. 1883 "If non-nil, search for Java source files in classpath directories.
@@ -1899,8 +1892,7 @@ and parsing all Java files for class information.
1899 1892
1900Set to nil to use `gud-jdb-directories' to scan java sources for 1893Set to nil to use `gud-jdb-directories' to scan java sources for
1901class information on jdb startup (original method)." 1894class information on jdb startup (original method)."
1902 :type 'boolean 1895 :type 'boolean)
1903 :group 'gud)
1904 1896
1905(defvar gud-jdb-classpath nil 1897(defvar gud-jdb-classpath nil
1906 "Java/jdb classpath directories list. 1898 "Java/jdb classpath directories list.
@@ -2584,7 +2576,6 @@ Commands:
2584 2576
2585(defcustom gud-chdir-before-run t 2577(defcustom gud-chdir-before-run t
2586 "Non-nil if GUD should `cd' to the debugged executable." 2578 "Non-nil if GUD should `cd' to the debugged executable."
2587 :group 'gud
2588 :type 'boolean) 2579 :type 'boolean)
2589 2580
2590;; Perform initializations common to all debuggers. 2581;; Perform initializations common to all debuggers.
@@ -3419,7 +3410,6 @@ Treats actions as defuns."
3419 python-mode) 3410 python-mode)
3420 "List of modes for which to enable GUD tooltips." 3411 "List of modes for which to enable GUD tooltips."
3421 :type '(repeat (symbol :tag "Major mode")) 3412 :type '(repeat (symbol :tag "Major mode"))
3422 :group 'gud
3423 :group 'tooltip) 3413 :group 'tooltip)
3424 3414
3425(defcustom gud-tooltip-display 3415(defcustom gud-tooltip-display
@@ -3431,13 +3421,11 @@ Forms in the list are combined with AND. The default is to display
3431only tooltips in the buffer containing the overlay arrow." 3421only tooltips in the buffer containing the overlay arrow."
3432 :type 'sexp 3422 :type 'sexp
3433 :risky t 3423 :risky t
3434 :group 'gud
3435 :group 'tooltip) 3424 :group 'tooltip)
3436 3425
3437(defcustom gud-tooltip-echo-area nil 3426(defcustom gud-tooltip-echo-area nil
3438 "Use the echo area instead of frames for GUD tooltips." 3427 "Use the echo area instead of frames for GUD tooltips."
3439 :type 'boolean 3428 :type 'boolean
3440 :group 'gud
3441 :group 'tooltip) 3429 :group 'tooltip)
3442 3430
3443(make-obsolete-variable 'gud-tooltip-echo-area 3431(make-obsolete-variable 'gud-tooltip-echo-area
diff --git a/lisp/progmodes/hideshow.el b/lisp/progmodes/hideshow.el
index 73d09e00591..81ba0d86954 100644
--- a/lisp/progmodes/hideshow.el
+++ b/lisp/progmodes/hideshow.el
@@ -232,13 +232,11 @@
232 232
233(defcustom hs-hide-comments-when-hiding-all t 233(defcustom hs-hide-comments-when-hiding-all t
234 "Hide the comments too when you do an `hs-hide-all'." 234 "Hide the comments too when you do an `hs-hide-all'."
235 :type 'boolean 235 :type 'boolean)
236 :group 'hideshow)
237 236
238(defcustom hs-minor-mode-hook nil 237(defcustom hs-minor-mode-hook nil
239 "Hook called when hideshow minor mode is activated or deactivated." 238 "Hook called when hideshow minor mode is activated or deactivated."
240 :type 'hook 239 :type 'hook
241 :group 'hideshow
242 :version "21.1") 240 :version "21.1")
243 241
244(defcustom hs-isearch-open 'code 242(defcustom hs-isearch-open 'code
@@ -254,8 +252,7 @@ This has effect only if `search-invisible' is set to `open'."
254 :type '(choice (const :tag "open only code blocks" code) 252 :type '(choice (const :tag "open only code blocks" code)
255 (const :tag "open only comment blocks" comment) 253 (const :tag "open only comment blocks" comment)
256 (const :tag "open both code and comment blocks" t) 254 (const :tag "open both code and comment blocks" t)
257 (const :tag "don't open any of them" nil)) 255 (const :tag "don't open any of them" nil)))
258 :group 'hideshow)
259 256
260;;;###autoload 257;;;###autoload
261(defvar hs-special-modes-alist 258(defvar hs-special-modes-alist
diff --git a/lisp/progmodes/icon.el b/lisp/progmodes/icon.el
index 933cb333dfb..a36f020439d 100644
--- a/lisp/progmodes/icon.el
+++ b/lisp/progmodes/icon.el
@@ -86,42 +86,35 @@
86 86
87(defcustom icon-indent-level 4 87(defcustom icon-indent-level 4
88 "Indentation of Icon statements with respect to containing block." 88 "Indentation of Icon statements with respect to containing block."
89 :type 'integer 89 :type 'integer)
90 :group 'icon)
91 90
92(defcustom icon-brace-imaginary-offset 0 91(defcustom icon-brace-imaginary-offset 0
93 "Imagined indentation of an Icon open brace that actually follows a statement." 92 "Imagined indentation of an Icon open brace that actually follows a statement."
94 :type 'integer 93 :type 'integer)
95 :group 'icon)
96 94
97(defcustom icon-brace-offset 0 95(defcustom icon-brace-offset 0
98 "Extra indentation for braces, compared with other text in same context." 96 "Extra indentation for braces, compared with other text in same context."
99 :type 'integer 97 :type 'integer)
100 :group 'icon)
101 98
102(defcustom icon-continued-statement-offset 4 99(defcustom icon-continued-statement-offset 4
103 "Extra indent for Icon lines not starting new statements." 100 "Extra indent for Icon lines not starting new statements."
104 :type 'integer 101 :type 'integer)
105 :group 'icon)
106 102
107(defcustom icon-continued-brace-offset 0 103(defcustom icon-continued-brace-offset 0
108 "Extra indent for Icon substatements that start with open-braces. 104 "Extra indent for Icon substatements that start with open-braces.
109This is in addition to `icon-continued-statement-offset'." 105This is in addition to `icon-continued-statement-offset'."
110 :type 'integer 106 :type 'integer)
111 :group 'icon)
112 107
113(defcustom icon-auto-newline nil 108(defcustom icon-auto-newline nil
114 "Non-nil means automatically newline before and after braces Icon code. 109 "Non-nil means automatically newline before and after braces Icon code.
115This applies when braces are inserted." 110This applies when braces are inserted."
116 :type 'boolean 111 :type 'boolean)
117 :group 'icon)
118 112
119(defcustom icon-tab-always-indent t 113(defcustom icon-tab-always-indent t
120 "Non-nil means TAB in Icon mode should always reindent the current line. 114 "Non-nil means TAB in Icon mode should always reindent the current line.
121It will then reindent, regardless of where in the line point is 115It will then reindent, regardless of where in the line point is
122when the TAB command is used." 116when the TAB command is used."
123 :type 'boolean 117 :type 'boolean)
124 :group 'icon)
125 118
126(defvar icon-imenu-generic-expression 119(defvar icon-imenu-generic-expression
127 '((nil "^[ \t]*procedure[ \t]+\\(\\sw+\\)[ \t]*(" 1)) 120 '((nil "^[ \t]*procedure[ \t]+\\(\\sw+\\)[ \t]*(" 1))
diff --git a/lisp/progmodes/inf-lisp.el b/lisp/progmodes/inf-lisp.el
index ac230596240..146ed4dca4a 100644
--- a/lisp/progmodes/inf-lisp.el
+++ b/lisp/progmodes/inf-lisp.el
@@ -76,8 +76,7 @@
76Input matching this regexp is not saved on the input history in Inferior Lisp 76Input matching this regexp is not saved on the input history in Inferior Lisp
77mode. Default is whitespace followed by 0 or 1 single-letter colon-keyword 77mode. Default is whitespace followed by 0 or 1 single-letter colon-keyword
78\(as in :a, :c, etc.)" 78\(as in :a, :c, etc.)"
79 :type 'regexp 79 :type 'regexp)
80 :group 'inferior-lisp)
81 80
82(defvar inferior-lisp-mode-map 81(defvar inferior-lisp-mode-map
83 (let ((map (copy-keymap comint-mode-map))) 82 (let ((map (copy-keymap comint-mode-map)))
@@ -155,8 +154,7 @@ mode. Default is whitespace followed by 0 or 1 single-letter colon-keyword
155 154
156(defcustom inferior-lisp-program "lisp" 155(defcustom inferior-lisp-program "lisp"
157 "Program name for invoking an inferior Lisp in Inferior Lisp mode." 156 "Program name for invoking an inferior Lisp in Inferior Lisp mode."
158 :type 'string 157 :type 'string)
159 :group 'inferior-lisp)
160 158
161(defcustom inferior-lisp-load-command "(load \"%s\")\n" 159(defcustom inferior-lisp-load-command "(load \"%s\")\n"
162 "Format-string for building a Lisp expression to load a file. 160 "Format-string for building a Lisp expression to load a file.
@@ -166,8 +164,7 @@ to load that file. The default works acceptably on most Lisps.
166The string \"(progn (load \\\"%s\\\" :verbose nil :print t) (values))\\n\" 164The string \"(progn (load \\\"%s\\\" :verbose nil :print t) (values))\\n\"
167produces cosmetically superior output for this application, 165produces cosmetically superior output for this application,
168but it works only in Common Lisp." 166but it works only in Common Lisp."
169 :type 'string 167 :type 'string)
170 :group 'inferior-lisp)
171 168
172(defcustom inferior-lisp-prompt "^[^> \n]*>+:? *" 169(defcustom inferior-lisp-prompt "^[^> \n]*>+:? *"
173 "Regexp to recognize prompts in the Inferior Lisp mode. 170 "Regexp to recognize prompts in the Inferior Lisp mode.
@@ -182,8 +179,7 @@ More precise choices:
182Lucid Common Lisp: \"^\\\\(>\\\\|\\\\(->\\\\)+\\\\) *\" 179Lucid Common Lisp: \"^\\\\(>\\\\|\\\\(->\\\\)+\\\\) *\"
183franz: \"^\\\\(->\\\\|<[0-9]*>:\\\\) *\" 180franz: \"^\\\\(->\\\\|<[0-9]*>:\\\\) *\"
184kcl: \"^>+ *\"" 181kcl: \"^>+ *\""
185 :type 'regexp 182 :type 'regexp)
186 :group 'inferior-lisp)
187 183
188(defvar inferior-lisp-buffer nil "*The current inferior-lisp process buffer. 184(defvar inferior-lisp-buffer nil "*The current inferior-lisp process buffer.
189 185
@@ -487,8 +483,7 @@ describing the last `lisp-load-file' or `lisp-compile-file' command.")
487If it's loaded into a buffer that is in one of these major modes, it's 483If it's loaded into a buffer that is in one of these major modes, it's
488considered a Lisp source file by `lisp-load-file' and `lisp-compile-file'. 484considered a Lisp source file by `lisp-load-file' and `lisp-compile-file'.
489Used by these commands to determine defaults." 485Used by these commands to determine defaults."
490 :type '(repeat symbol) 486 :type '(repeat symbol))
491 :group 'inferior-lisp)
492 487
493(defun lisp-load-file (file-name) 488(defun lisp-load-file (file-name)
494 "Load a Lisp file into the inferior Lisp process." 489 "Load a Lisp file into the inferior Lisp process."
diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el
index cdf6536fc7e..21bda086801 100644
--- a/lisp/progmodes/js.el
+++ b/lisp/progmodes/js.el
@@ -427,22 +427,19 @@ Match group 1 is the name of the macro.")
427(defcustom js-indent-level 4 427(defcustom js-indent-level 4
428 "Number of spaces for each indentation step in `js-mode'." 428 "Number of spaces for each indentation step in `js-mode'."
429 :type 'integer 429 :type 'integer
430 :safe 'integerp 430 :safe 'integerp)
431 :group 'js)
432 431
433(defcustom js-expr-indent-offset 0 432(defcustom js-expr-indent-offset 0
434 "Number of additional spaces for indenting continued expressions. 433 "Number of additional spaces for indenting continued expressions.
435The value must be no less than minus `js-indent-level'." 434The value must be no less than minus `js-indent-level'."
436 :type 'integer 435 :type 'integer
437 :safe 'integerp 436 :safe 'integerp)
438 :group 'js)
439 437
440(defcustom js-paren-indent-offset 0 438(defcustom js-paren-indent-offset 0
441 "Number of additional spaces for indenting expressions in parentheses. 439 "Number of additional spaces for indenting expressions in parentheses.
442The value must be no less than minus `js-indent-level'." 440The value must be no less than minus `js-indent-level'."
443 :type 'integer 441 :type 'integer
444 :safe 'integerp 442 :safe 'integerp
445 :group 'js
446 :version "24.1") 443 :version "24.1")
447 444
448(defcustom js-square-indent-offset 0 445(defcustom js-square-indent-offset 0
@@ -450,7 +447,6 @@ The value must be no less than minus `js-indent-level'."
450The value must be no less than minus `js-indent-level'." 447The value must be no less than minus `js-indent-level'."
451 :type 'integer 448 :type 'integer
452 :safe 'integerp 449 :safe 'integerp
453 :group 'js
454 :version "24.1") 450 :version "24.1")
455 451
456(defcustom js-curly-indent-offset 0 452(defcustom js-curly-indent-offset 0
@@ -458,7 +454,6 @@ The value must be no less than minus `js-indent-level'."
458The value must be no less than minus `js-indent-level'." 454The value must be no less than minus `js-indent-level'."
459 :type 'integer 455 :type 'integer
460 :safe 'integerp 456 :safe 'integerp
461 :group 'js
462 :version "24.1") 457 :version "24.1")
463 458
464(defcustom js-switch-indent-offset 0 459(defcustom js-switch-indent-offset 0
@@ -466,26 +461,22 @@ The value must be no less than minus `js-indent-level'."
466The value must not be negative." 461The value must not be negative."
467 :type 'integer 462 :type 'integer
468 :safe 'integerp 463 :safe 'integerp
469 :group 'js
470 :version "24.4") 464 :version "24.4")
471 465
472(defcustom js-flat-functions nil 466(defcustom js-flat-functions nil
473 "Treat nested functions as top-level functions in `js-mode'. 467 "Treat nested functions as top-level functions in `js-mode'.
474This applies to function movement, marking, and so on." 468This applies to function movement, marking, and so on."
475 :type 'boolean 469 :type 'boolean)
476 :group 'js)
477 470
478(defcustom js-indent-align-list-continuation t 471(defcustom js-indent-align-list-continuation t
479 "Align continuation of non-empty ([{ lines in `js-mode'." 472 "Align continuation of non-empty ([{ lines in `js-mode'."
480 :version "26.1" 473 :version "26.1"
481 :type 'boolean 474 :type 'boolean
482 :safe 'booleanp 475 :safe 'booleanp)
483 :group 'js)
484 476
485(defcustom js-comment-lineup-func #'c-lineup-C-comments 477(defcustom js-comment-lineup-func #'c-lineup-C-comments
486 "Lineup function for `cc-mode-style', for C comments in `js-mode'." 478 "Lineup function for `cc-mode-style', for C comments in `js-mode'."
487 :type 'function 479 :type 'function)
488 :group 'js)
489 480
490(defcustom js-enabled-frameworks js--available-frameworks 481(defcustom js-enabled-frameworks js--available-frameworks
491 "Frameworks recognized by `js-mode'. 482 "Frameworks recognized by `js-mode'.
@@ -493,30 +484,26 @@ To improve performance, you may turn off some frameworks you
493seldom use, either globally or on a per-buffer basis." 484seldom use, either globally or on a per-buffer basis."
494 :type (cons 'set (mapcar (lambda (x) 485 :type (cons 'set (mapcar (lambda (x)
495 (list 'const x)) 486 (list 'const x))
496 js--available-frameworks)) 487 js--available-frameworks)))
497 :group 'js)
498 488
499(defcustom js-js-switch-tabs 489(defcustom js-js-switch-tabs
500 (and (memq system-type '(darwin)) t) 490 (and (memq system-type '(darwin)) t)
501 "Whether `js-mode' should display tabs while selecting them. 491 "Whether `js-mode' should display tabs while selecting them.
502This is useful only if the windowing system has a good mechanism 492This is useful only if the windowing system has a good mechanism
503for preventing Firefox from stealing the keyboard focus." 493for preventing Firefox from stealing the keyboard focus."
504 :type 'boolean 494 :type 'boolean)
505 :group 'js)
506 495
507(defcustom js-js-tmpdir 496(defcustom js-js-tmpdir
508 "~/.emacs.d/js/js" 497 "~/.emacs.d/js/js"
509 "Temporary directory used by `js-mode' to communicate with Mozilla. 498 "Temporary directory used by `js-mode' to communicate with Mozilla.
510This directory must be readable and writable by both Mozilla and Emacs." 499This directory must be readable and writable by both Mozilla and Emacs."
511 :type 'directory 500 :type 'directory)
512 :group 'js)
513 501
514(defcustom js-js-timeout 5 502(defcustom js-js-timeout 5
515 "Reply timeout for executing commands in Mozilla via `js-mode'. 503 "Reply timeout for executing commands in Mozilla via `js-mode'.
516The value is given in seconds. Increase this value if you are 504The value is given in seconds. Increase this value if you are
517getting timeout messages." 505getting timeout messages."
518 :type 'integer 506 :type 'integer)
519 :group 'js)
520 507
521(defcustom js-indent-first-init nil 508(defcustom js-indent-first-init nil
522 "Non-nil means specially indent the first variable declaration's initializer. 509 "Non-nil means specially indent the first variable declaration's initializer.
@@ -557,8 +544,7 @@ don't indent the first one's initializer; otherwise, indent it.
557 bar = 2;" 544 bar = 2;"
558 :version "25.1" 545 :version "25.1"
559 :type '(choice (const nil) (const t) (const dynamic)) 546 :type '(choice (const nil) (const t) (const dynamic))
560 :safe 'symbolp 547 :safe 'symbolp)
561 :group 'js)
562 548
563(defcustom js-chain-indent nil 549(defcustom js-chain-indent nil
564 "Use \"chained\" indentation. 550 "Use \"chained\" indentation.
@@ -571,8 +557,7 @@ then the \".\"s will be lined up:
571" 557"
572 :version "26.1" 558 :version "26.1"
573 :type 'boolean 559 :type 'boolean
574 :safe 'booleanp 560 :safe 'booleanp)
575 :group 'js)
576 561
577(defcustom js-jsx-detect-syntax t 562(defcustom js-jsx-detect-syntax t
578 "When non-nil, automatically detect whether JavaScript uses JSX. 563 "When non-nil, automatically detect whether JavaScript uses JSX.
@@ -581,8 +566,7 @@ t. The detection strategy can be customized by adding elements
581to `js-jsx-regexps', which see." 566to `js-jsx-regexps', which see."
582 :version "27.1" 567 :version "27.1"
583 :type 'boolean 568 :type 'boolean
584 :safe 'booleanp 569 :safe 'booleanp)
585 :group 'js)
586 570
587(defcustom js-jsx-syntax nil 571(defcustom js-jsx-syntax nil
588 "When non-nil, parse JavaScript with consideration for JSX syntax. 572 "When non-nil, parse JavaScript with consideration for JSX syntax.
@@ -600,8 +584,7 @@ When `js-mode' is already enabled, you should call
600It is set to be buffer-local (and t) when in `js-jsx-mode'." 584It is set to be buffer-local (and t) when in `js-jsx-mode'."
601 :version "27.1" 585 :version "27.1"
602 :type 'boolean 586 :type 'boolean
603 :safe 'booleanp 587 :safe 'booleanp)
604 :group 'js)
605 588
606(defcustom js-jsx-align->-with-< t 589(defcustom js-jsx-align->-with-< t
607 "When non-nil, “>” will be indented to the opening “<” in JSX. 590 "When non-nil, “>” will be indented to the opening “<” in JSX.
@@ -625,8 +608,7 @@ When this is disabled, JSX indentation looks like this:
625 />" 608 />"
626 :version "27.1" 609 :version "27.1"
627 :type 'boolean 610 :type 'boolean
628 :safe 'booleanp 611 :safe 'booleanp)
629 :group 'js)
630 612
631(defcustom js-jsx-indent-level nil 613(defcustom js-jsx-indent-level nil
632 "When non-nil, indent JSX by this value, instead of like JS. 614 "When non-nil, indent JSX by this value, instead of like JS.
@@ -655,8 +637,7 @@ indentation looks like this (different):
655 :version "27.1" 637 :version "27.1"
656 :type '(choice integer 638 :type '(choice integer
657 (const :tag "Not Set" nil)) 639 (const :tag "Not Set" nil))
658 :safe (lambda (x) (or (null x) (integerp x))) 640 :safe (lambda (x) (or (null x) (integerp x))))
659 :group 'js)
660;; This is how indentation behaved out-of-the-box until Emacs 27. JSX 641;; This is how indentation behaved out-of-the-box until Emacs 27. JSX
661;; indentation was controlled with `sgml-basic-offset', which defaults 642;; indentation was controlled with `sgml-basic-offset', which defaults
662;; to 2, whereas `js-indent-level' defaults to 4. Users who had the 643;; to 2, whereas `js-indent-level' defaults to 4. Users who had the
@@ -685,8 +666,7 @@ indentation looks like this:
685This variable is like `sgml-attribute-offset'." 666This variable is like `sgml-attribute-offset'."
686 :version "27.1" 667 :version "27.1"
687 :type 'integer 668 :type 'integer
688 :safe 'integerp 669 :safe 'integerp)
689 :group 'js)
690 670
691;;; KeyMap 671;;; KeyMap
692 672
diff --git a/lisp/progmodes/ld-script.el b/lisp/progmodes/ld-script.el
index c4ea8e158d8..485e64e2492 100644
--- a/lisp/progmodes/ld-script.el
+++ b/lisp/progmodes/ld-script.el
@@ -35,8 +35,7 @@
35(defvar ld-script-location-counter-face 'ld-script-location-counter) 35(defvar ld-script-location-counter-face 'ld-script-location-counter)
36(defface ld-script-location-counter 36(defface ld-script-location-counter
37 '((t :weight bold :inherit font-lock-builtin-face)) 37 '((t :weight bold :inherit font-lock-builtin-face))
38 "Face for location counter in GNU ld script." 38 "Face for location counter in GNU ld script.")
39 :group 'ld-script)
40 39
41;; Syntax rules 40;; Syntax rules
42(defvar ld-script-mode-syntax-table 41(defvar ld-script-mode-syntax-table
diff --git a/lisp/progmodes/make-mode.el b/lisp/progmodes/make-mode.el
index e382d6edcd2..3d1e7d634a2 100644
--- a/lisp/progmodes/make-mode.el
+++ b/lisp/progmodes/make-mode.el
@@ -101,14 +101,12 @@
101(defface makefile-space 101(defface makefile-space
102 '((((class color)) (:background "hotpink")) 102 '((((class color)) (:background "hotpink"))
103 (t (:reverse-video t))) 103 (t (:reverse-video t)))
104 "Face to use for highlighting leading spaces in Font-Lock mode." 104 "Face to use for highlighting leading spaces in Font-Lock mode.")
105 :group 'makefile)
106 105
107(defface makefile-targets 106(defface makefile-targets
108 ;; This needs to go along both with foreground and background colors (i.e. shell) 107 ;; This needs to go along both with foreground and background colors (i.e. shell)
109 '((t (:inherit font-lock-function-name-face))) 108 '((t (:inherit font-lock-function-name-face)))
110 "Face to use for additionally highlighting rule targets in Font-Lock mode." 109 "Face to use for additionally highlighting rule targets in Font-Lock mode."
111 :group 'makefile
112 :version "22.1") 110 :version "22.1")
113 111
114(defface makefile-shell 112(defface makefile-shell
@@ -116,7 +114,6 @@
116 ;;'((((class color) (min-colors 88) (background light)) (:background "seashell1")) 114 ;;'((((class color) (min-colors 88) (background light)) (:background "seashell1"))
117 ;; (((class color) (min-colors 88) (background dark)) (:background "seashell4"))) 115 ;; (((class color) (min-colors 88) (background dark)) (:background "seashell4")))
118 "Face to use for additionally highlighting Shell commands in Font-Lock mode." 116 "Face to use for additionally highlighting Shell commands in Font-Lock mode."
119 :group 'makefile
120 :version "22.1") 117 :version "22.1")
121 118
122(defface makefile-makepp-perl 119(defface makefile-makepp-perl
@@ -124,19 +121,16 @@
124 (((class color) (background dark)) (:background "DarkBlue")) 121 (((class color) (background dark)) (:background "DarkBlue"))
125 (t (:reverse-video t))) 122 (t (:reverse-video t)))
126 "Face to use for additionally highlighting Perl code in Font-Lock mode." 123 "Face to use for additionally highlighting Perl code in Font-Lock mode."
127 :group 'makefile
128 :version "22.1") 124 :version "22.1")
129 125
130(defcustom makefile-browser-buffer-name "*Macros and Targets*" 126(defcustom makefile-browser-buffer-name "*Macros and Targets*"
131 "Name of the macro- and target browser buffer." 127 "Name of the macro- and target browser buffer."
132 :type 'string 128 :type 'string)
133 :group 'makefile)
134 129
135(defcustom makefile-target-colon ":" 130(defcustom makefile-target-colon ":"
136 "String to append to all target names inserted by `makefile-insert-target'. 131 "String to append to all target names inserted by `makefile-insert-target'.
137\":\" or \"::\" are common values." 132\":\" or \"::\" are common values."
138 :type 'string 133 :type 'string)
139 :group 'makefile)
140 134
141(defcustom makefile-macro-assign " = " 135(defcustom makefile-macro-assign " = "
142 "String to append to all macro names inserted by `makefile-insert-macro'. 136 "String to append to all macro names inserted by `makefile-insert-macro'.
@@ -144,70 +138,58 @@ The normal value should be \" = \", since this is what
144standard make expects. However, newer makes such as dmake 138standard make expects. However, newer makes such as dmake
145allow a larger variety of different macro assignments, so you 139allow a larger variety of different macro assignments, so you
146might prefer to use \" += \" or \" := \" ." 140might prefer to use \" += \" or \" := \" ."
147 :type 'string 141 :type 'string)
148 :group 'makefile)
149 142
150(defcustom makefile-electric-keys nil 143(defcustom makefile-electric-keys nil
151 "If non-nil, Makefile mode should install electric keybindings. 144 "If non-nil, Makefile mode should install electric keybindings.
152Default is nil." 145Default is nil."
153 :type 'boolean 146 :type 'boolean)
154 :group 'makefile)
155 147
156(defcustom makefile-use-curly-braces-for-macros-p nil 148(defcustom makefile-use-curly-braces-for-macros-p nil
157 "Controls the style of generated macro references. 149 "Controls the style of generated macro references.
158Non-nil means macro references should use curly braces, like `${this}'. 150Non-nil means macro references should use curly braces, like `${this}'.
159nil means use parentheses, like `$(this)'." 151nil means use parentheses, like `$(this)'."
160 :type 'boolean 152 :type 'boolean)
161 :group 'makefile)
162 153
163(defcustom makefile-tab-after-target-colon t 154(defcustom makefile-tab-after-target-colon t
164 "If non-nil, insert a TAB after a target colon. 155 "If non-nil, insert a TAB after a target colon.
165Otherwise, a space is inserted. 156Otherwise, a space is inserted.
166The default is t." 157The default is t."
167 :type 'boolean 158 :type 'boolean)
168 :group 'makefile)
169 159
170(defcustom makefile-browser-leftmost-column 10 160(defcustom makefile-browser-leftmost-column 10
171 "Number of blanks to the left of the browser selection mark." 161 "Number of blanks to the left of the browser selection mark."
172 :type 'integer 162 :type 'integer)
173 :group 'makefile)
174 163
175(defcustom makefile-browser-cursor-column 10 164(defcustom makefile-browser-cursor-column 10
176 "Column the cursor goes to when it moves up or down in the Makefile browser." 165 "Column the cursor goes to when it moves up or down in the Makefile browser."
177 :type 'integer 166 :type 'integer)
178 :group 'makefile)
179 167
180(defcustom makefile-backslash-column 48 168(defcustom makefile-backslash-column 48
181 "Column in which `makefile-backslash-region' inserts backslashes." 169 "Column in which `makefile-backslash-region' inserts backslashes."
182 :type 'integer 170 :type 'integer)
183 :group 'makefile)
184 171
185(defcustom makefile-backslash-align t 172(defcustom makefile-backslash-align t
186 "If non-nil, `makefile-backslash-region' will align backslashes." 173 "If non-nil, `makefile-backslash-region' will align backslashes."
187 :type 'boolean 174 :type 'boolean)
188 :group 'makefile)
189 175
190(defcustom makefile-browser-selected-mark "+ " 176(defcustom makefile-browser-selected-mark "+ "
191 "String used to mark selected entries in the Makefile browser." 177 "String used to mark selected entries in the Makefile browser."
192 :type 'string 178 :type 'string)
193 :group 'makefile)
194 179
195(defcustom makefile-browser-unselected-mark " " 180(defcustom makefile-browser-unselected-mark " "
196 "String used to mark unselected entries in the Makefile browser." 181 "String used to mark unselected entries in the Makefile browser."
197 :type 'string 182 :type 'string)
198 :group 'makefile)
199 183
200(defcustom makefile-browser-auto-advance-after-selection-p t 184(defcustom makefile-browser-auto-advance-after-selection-p t
201 "If non-nil, cursor will move after item is selected in Makefile browser." 185 "If non-nil, cursor will move after item is selected in Makefile browser."
202 :type 'boolean 186 :type 'boolean)
203 :group 'makefile)
204 187
205(defcustom makefile-pickup-everything-picks-up-filenames-p nil 188(defcustom makefile-pickup-everything-picks-up-filenames-p nil
206 "If non-nil, `makefile-pickup-everything' picks up filenames as targets. 189 "If non-nil, `makefile-pickup-everything' picks up filenames as targets.
207This means it calls `makefile-pickup-filenames-as-targets'. 190This means it calls `makefile-pickup-filenames-as-targets'.
208Otherwise filenames are omitted." 191Otherwise filenames are omitted."
209 :type 'boolean 192 :type 'boolean)
210 :group 'makefile)
211 193
212(defcustom makefile-cleanup-continuations nil 194(defcustom makefile-cleanup-continuations nil
213 "If non-nil, automatically clean up continuation lines when saving. 195 "If non-nil, automatically clean up continuation lines when saving.
@@ -215,13 +197,11 @@ A line is cleaned up by removing all whitespace following a trailing
215backslash. This is done silently. 197backslash. This is done silently.
216IMPORTANT: Please note that enabling this option causes Makefile mode 198IMPORTANT: Please note that enabling this option causes Makefile mode
217to MODIFY A FILE WITHOUT YOUR CONFIRMATION when \"it seems necessary\"." 199to MODIFY A FILE WITHOUT YOUR CONFIRMATION when \"it seems necessary\"."
218 :type 'boolean 200 :type 'boolean)
219 :group 'makefile)
220 201
221(defcustom makefile-mode-hook nil 202(defcustom makefile-mode-hook nil
222 "Normal hook run by `makefile-mode'." 203 "Normal hook run by `makefile-mode'."
223 :type 'hook 204 :type 'hook)
224 :group 'makefile)
225 205
226(defvar makefile-browser-hook '()) 206(defvar makefile-browser-hook '())
227 207
@@ -240,8 +220,7 @@ to MODIFY A FILE WITHOUT YOUR CONFIRMATION when \"it seems necessary\"."
240 "List of special targets. 220 "List of special targets.
241You will be offered to complete on one of those in the minibuffer whenever 221You will be offered to complete on one of those in the minibuffer whenever
242you enter a \".\" at the beginning of a line in `makefile-mode'." 222you enter a \".\" at the beginning of a line in `makefile-mode'."
243 :type '(repeat string) 223 :type '(repeat string))
244 :group 'makefile)
245(put 'makefile-special-targets-list 'risky-local-variable t) 224(put 'makefile-special-targets-list 'risky-local-variable t)
246 225
247(defcustom makefile-runtime-macros-list 226(defcustom makefile-runtime-macros-list
@@ -250,8 +229,7 @@ you enter a \".\" at the beginning of a line in `makefile-mode'."
250If you insert a macro reference using `makefile-insert-macro-ref', the name 229If you insert a macro reference using `makefile-insert-macro-ref', the name
251of the macro is checked against this list. If it can be found its name will 230of the macro is checked against this list. If it can be found its name will
252not be enclosed in { } or ( )." 231not be enclosed in { } or ( )."
253 :type '(repeat (list string)) 232 :type '(repeat (list string)))
254 :group 'makefile)
255 233
256;; Note that the first big subexpression is used by font lock. Note 234;; Note that the first big subexpression is used by font lock. Note
257;; that if you change this regexp you might have to fix the imenu 235;; that if you change this regexp you might have to fix the imenu
@@ -563,8 +541,7 @@ not be enclosed in { } or ( )."
563(defcustom makefile-brave-make "make" 541(defcustom makefile-brave-make "make"
564 "How to invoke make, for `makefile-query-targets'. 542 "How to invoke make, for `makefile-query-targets'.
565This should identify a `make' command that can handle the `-q' option." 543This should identify a `make' command that can handle the `-q' option."
566 :type 'string 544 :type 'string)
567 :group 'makefile)
568 545
569(defvaralias 'makefile-query-one-target-method 546(defvaralias 'makefile-query-one-target-method
570 'makefile-query-one-target-method-function) 547 'makefile-query-one-target-method-function)
@@ -584,13 +561,11 @@ The function must satisfy this calling convention:
584* It must return the integer value 0 (zero) if the given target 561* It must return the integer value 0 (zero) if the given target
585 should be considered up-to-date in the context of the given 562 should be considered up-to-date in the context of the given
586 makefile, any nonzero integer value otherwise." 563 makefile, any nonzero integer value otherwise."
587 :type 'function 564 :type 'function)
588 :group 'makefile)
589 565
590(defcustom makefile-up-to-date-buffer-name "*Makefile Up-to-date overview*" 566(defcustom makefile-up-to-date-buffer-name "*Makefile Up-to-date overview*"
591 "Name of the Up-to-date overview buffer." 567 "Name of the Up-to-date overview buffer."
592 :type 'string 568 :type 'string)
593 :group 'makefile)
594 569
595;;; --- end of up-to-date-overview configuration ------------------ 570;;; --- end of up-to-date-overview configuration ------------------
596 571
diff --git a/lisp/progmodes/modula2.el b/lisp/progmodes/modula2.el
index a77a4e2b216..536d3be0056 100644
--- a/lisp/progmodes/modula2.el
+++ b/lisp/progmodes/modula2.el
@@ -51,23 +51,19 @@
51 51
52(defcustom m2-compile-command "m2c" 52(defcustom m2-compile-command "m2c"
53 "Command to compile Modula-2 programs." 53 "Command to compile Modula-2 programs."
54 :type 'string 54 :type 'string)
55 :group 'modula2)
56 55
57(defcustom m2-link-command "m2l" 56(defcustom m2-link-command "m2l"
58 "Command to link Modula-2 programs." 57 "Command to link Modula-2 programs."
59 :type 'string 58 :type 'string)
60 :group 'modula2)
61 59
62(defcustom m2-link-name nil 60(defcustom m2-link-name nil
63 "Name of the Modula-2 executable." 61 "Name of the Modula-2 executable."
64 :type '(choice (const nil) string) 62 :type '(choice (const nil) string))
65 :group 'modula2)
66 63
67(defcustom m2-end-comment-column 75 64(defcustom m2-end-comment-column 75
68 "Column for aligning the end of a comment, in Modula-2." 65 "Column for aligning the end of a comment, in Modula-2."
69 :type 'integer 66 :type 'integer)
70 :group 'modula2)
71 67
72;;; Added by TEP 68;;; Added by TEP
73(defvar m2-mode-map 69(defvar m2-mode-map
@@ -105,8 +101,7 @@
105 101
106(defcustom m2-indent 5 102(defcustom m2-indent 5
107 "This variable gives the indentation in Modula-2 mode." 103 "This variable gives the indentation in Modula-2 mode."
108 :type 'integer 104 :type 'integer)
109 :group 'modula2)
110(put 'm2-indent 'safe-local-variable 105(put 'm2-indent 'safe-local-variable
111 (lambda (v) (or (null v) (integerp v)))) 106 (lambda (v) (or (null v) (integerp v))))
112 107
diff --git a/lisp/progmodes/pascal.el b/lisp/progmodes/pascal.el
index 59f90d7293b..e6e6e40aa19 100644
--- a/lisp/progmodes/pascal.el
+++ b/lisp/progmodes/pascal.el
@@ -199,38 +199,32 @@
199 199
200(defcustom pascal-indent-level 3 200(defcustom pascal-indent-level 3
201 "Indentation of Pascal statements with respect to containing block." 201 "Indentation of Pascal statements with respect to containing block."
202 :type 'integer 202 :type 'integer)
203 :group 'pascal)
204 203
205(defcustom pascal-case-indent 2 204(defcustom pascal-case-indent 2
206 "Indentation for case statements." 205 "Indentation for case statements."
207 :type 'integer 206 :type 'integer)
208 :group 'pascal)
209 207
210(defcustom pascal-auto-newline nil 208(defcustom pascal-auto-newline nil
211 "Non-nil means automatically insert newlines in certain cases. 209 "Non-nil means automatically insert newlines in certain cases.
212These include after semicolons and after the punctuation mark after an `end'." 210These include after semicolons and after the punctuation mark after an `end'."
213 :type 'boolean 211 :type 'boolean)
214 :group 'pascal)
215 212
216(defcustom pascal-indent-nested-functions t 213(defcustom pascal-indent-nested-functions t
217 "Non-nil means nested functions are indented." 214 "Non-nil means nested functions are indented."
218 :type 'boolean 215 :type 'boolean)
219 :group 'pascal)
220 216
221(defcustom pascal-tab-always-indent t 217(defcustom pascal-tab-always-indent t
222 "Non-nil means TAB in Pascal mode should always reindent the current line. 218 "Non-nil means TAB in Pascal mode should always reindent the current line.
223If this is nil, TAB inserts a tab if it is at the end of the line 219If this is nil, TAB inserts a tab if it is at the end of the line
224and follows non-whitespace text." 220and follows non-whitespace text."
225 :type 'boolean 221 :type 'boolean)
226 :group 'pascal)
227 222
228(defcustom pascal-auto-endcomments t 223(defcustom pascal-auto-endcomments t
229 "Non-nil means automatically insert comments after certain `end's. 224 "Non-nil means automatically insert comments after certain `end's.
230Specifically, this is done after the ends of case statements and functions. 225Specifically, this is done after the ends of case statements and functions.
231The name of the function or case is included between the braces." 226The name of the function or case is included between the braces."
232 :type 'boolean 227 :type 'boolean)
233 :group 'pascal)
234 228
235(defcustom pascal-auto-lineup '(all) 229(defcustom pascal-auto-lineup '(all)
236 "List of contexts where auto lineup of :'s or ='s should be done. 230 "List of contexts where auto lineup of :'s or ='s should be done.
@@ -243,8 +237,7 @@ will do all lineups."
243 (const :tag "Everything" all) 237 (const :tag "Everything" all)
244 (const :tag "Parameter lists" paramlist) 238 (const :tag "Parameter lists" paramlist)
245 (const :tag "Declarations" declaration) 239 (const :tag "Declarations" declaration)
246 (const :tag "Case statements" case)) 240 (const :tag "Case statements" case)))
247 :group 'pascal)
248 241
249(defvar pascal-toggle-completions nil 242(defvar pascal-toggle-completions nil
250 "If non-nil, `pascal-complete-word' tries all possible completions. 243 "If non-nil, `pascal-complete-word' tries all possible completions.
@@ -260,8 +253,7 @@ completions.")
260These include integer, real, char, etc. 253These include integer, real, char, etc.
261The types defined within the Pascal program 254The types defined within the Pascal program
262are handled in another way, and should not be added to this list." 255are handled in another way, and should not be added to this list."
263 :type '(repeat (string :tag "Keyword")) 256 :type '(repeat (string :tag "Keyword")))
264 :group 'pascal)
265 257
266(defcustom pascal-start-keywords 258(defcustom pascal-start-keywords
267 '("begin" "end" "function" "procedure" "repeat" "until" "while" 259 '("begin" "end" "function" "procedure" "repeat" "until" "while"
@@ -270,8 +262,7 @@ are handled in another way, and should not be added to this list."
270These are keywords such as begin, repeat, until, readln. 262These are keywords such as begin, repeat, until, readln.
271The procedures and variables defined within the Pascal program 263The procedures and variables defined within the Pascal program
272are handled in another way, and should not be added to this list." 264are handled in another way, and should not be added to this list."
273 :type '(repeat (string :tag "Keyword")) 265 :type '(repeat (string :tag "Keyword")))
274 :group 'pascal)
275 266
276(defcustom pascal-separator-keywords 267(defcustom pascal-separator-keywords
277 '("downto" "else" "mod" "div" "then") 268 '("downto" "else" "mod" "div" "then")
@@ -279,8 +270,7 @@ are handled in another way, and should not be added to this list."
279These are keywords such as downto, else, mod, then. 270These are keywords such as downto, else, mod, then.
280Variables and function names defined within the Pascal program 271Variables and function names defined within the Pascal program
281are handled in another way, and should not be added to this list." 272are handled in another way, and should not be added to this list."
282 :type '(repeat (string :tag "Keyword")) 273 :type '(repeat (string :tag "Keyword")))
283 :group 'pascal)
284 274
285 275
286;;; 276;;;
diff --git a/lisp/progmodes/perl-mode.el b/lisp/progmodes/perl-mode.el
index 0120e4a7cd1..c7fa5ab84b0 100644
--- a/lisp/progmodes/perl-mode.el
+++ b/lisp/progmodes/perl-mode.el
@@ -98,8 +98,7 @@
98(defface perl-non-scalar-variable 98(defface perl-non-scalar-variable
99 '((t :inherit font-lock-variable-name-face :underline t)) 99 '((t :inherit font-lock-variable-name-face :underline t))
100 "Face used for non-scalar variables." 100 "Face used for non-scalar variables."
101 :version "28.1" 101 :version "28.1")
102 :group 'perl)
103 102
104(defvar perl-mode-abbrev-table nil 103(defvar perl-mode-abbrev-table nil
105 "Abbrev table in use in perl-mode buffers.") 104 "Abbrev table in use in perl-mode buffers.")
@@ -640,7 +639,6 @@ This is a non empty list of strings, the checker tool possibly
640followed by required arguments. Once launched it will receive 639followed by required arguments. Once launched it will receive
641the Perl source to be checked as its standard input." 640the Perl source to be checked as its standard input."
642 :version "26.1" 641 :version "26.1"
643 :group 'perl
644 :type '(repeat string)) 642 :type '(repeat string))
645 643
646(defvar-local perl--flymake-proc nil) 644(defvar-local perl--flymake-proc nil)
diff --git a/lisp/progmodes/prog-mode.el b/lisp/progmodes/prog-mode.el
index d88d3505586..19de7545bf3 100644
--- a/lisp/progmodes/prog-mode.el
+++ b/lisp/progmodes/prog-mode.el
@@ -41,8 +41,7 @@
41 :type 'hook 41 :type 'hook
42 :options '(flyspell-prog-mode abbrev-mode flymake-mode 42 :options '(flyspell-prog-mode abbrev-mode flymake-mode
43 display-line-numbers-mode 43 display-line-numbers-mode
44 prettify-symbols-mode) 44 prettify-symbols-mode))
45 :group 'prog-mode)
46 45
47(defvar prog-mode-map 46(defvar prog-mode-map
48 (let ((map (make-sparse-keymap))) 47 (let ((map (make-sparse-keymap)))
@@ -166,8 +165,7 @@ on the symbol."
166 :version "25.1" 165 :version "25.1"
167 :type '(choice (const :tag "Never unprettify" nil) 166 :type '(choice (const :tag "Never unprettify" nil)
168 (const :tag "Unprettify when point is inside" t) 167 (const :tag "Unprettify when point is inside" t)
169 (const :tag "Unprettify when point is inside or at right edge" right-edge)) 168 (const :tag "Unprettify when point is inside or at right edge" right-edge)))
170 :group 'prog-mode)
171 169
172(defun prettify-symbols--post-command-hook () 170(defun prettify-symbols--post-command-hook ()
173 (cl-labels ((get-prop-as-list 171 (cl-labels ((get-prop-as-list
diff --git a/lisp/progmodes/simula.el b/lisp/progmodes/simula.el
index a863e7eb4b4..fab600f83f4 100644
--- a/lisp/progmodes/simula.el
+++ b/lisp/progmodes/simula.el
@@ -51,16 +51,14 @@ the run of whitespace at the beginning of the line.")
51 "Non-nil means TAB in SIMULA mode should always reindent the current line. 51 "Non-nil means TAB in SIMULA mode should always reindent the current line.
52Otherwise TAB indents only when point is within 52Otherwise TAB indents only when point is within
53the run of whitespace at the beginning of the line." 53the run of whitespace at the beginning of the line."
54 :type 'boolean 54 :type 'boolean)
55 :group 'simula)
56 55
57(defconst simula-indent-level-default 3 56(defconst simula-indent-level-default 3
58 "Indentation of SIMULA statements with respect to containing block.") 57 "Indentation of SIMULA statements with respect to containing block.")
59 58
60(defcustom simula-indent-level simula-indent-level-default 59(defcustom simula-indent-level simula-indent-level-default
61 "Indentation of SIMULA statements with respect to containing block." 60 "Indentation of SIMULA statements with respect to containing block."
62 :type 'integer 61 :type 'integer)
63 :group 'simula)
64 62
65 63
66(defconst simula-substatement-offset-default 3 64(defconst simula-substatement-offset-default 3
@@ -68,8 +66,7 @@ the run of whitespace at the beginning of the line."
68 66
69(defcustom simula-substatement-offset simula-substatement-offset-default 67(defcustom simula-substatement-offset simula-substatement-offset-default
70 "Extra indentation after DO, THEN, ELSE, WHEN and OTHERWISE." 68 "Extra indentation after DO, THEN, ELSE, WHEN and OTHERWISE."
71 :type 'integer 69 :type 'integer)
72 :group 'simula)
73 70
74(defconst simula-continued-statement-offset-default 3 71(defconst simula-continued-statement-offset-default 3
75 "Extra indentation for lines not starting a statement or substatement. 72 "Extra indentation for lines not starting a statement or substatement.
@@ -83,16 +80,14 @@ the previous line of the statement.")
83If value is a list, each line in a multipleline continued statement 80If value is a list, each line in a multipleline continued statement
84will have the car of the list extra indentation with respect to 81will have the car of the list extra indentation with respect to
85the previous line of the statement." 82the previous line of the statement."
86 :type 'integer 83 :type 'integer)
87 :group 'simula)
88 84
89(defconst simula-label-offset-default -4711 85(defconst simula-label-offset-default -4711
90 "Offset of SIMULA label lines relative to usual indentation.") 86 "Offset of SIMULA label lines relative to usual indentation.")
91 87
92(defcustom simula-label-offset simula-label-offset-default 88(defcustom simula-label-offset simula-label-offset-default
93 "Offset of SIMULA label lines relative to usual indentation." 89 "Offset of SIMULA label lines relative to usual indentation."
94 :type 'integer 90 :type 'integer)
95 :group 'simula)
96 91
97(defconst simula-if-indent-default '(0 . 0) 92(defconst simula-if-indent-default '(0 . 0)
98 "Extra indentation of THEN and ELSE with respect to the starting IF. 93 "Extra indentation of THEN and ELSE with respect to the starting IF.
@@ -103,8 +98,7 @@ extra ELSE indentation. IF after ELSE is indented as the starting IF.")
103 "Extra indentation of THEN and ELSE with respect to the starting IF. 98 "Extra indentation of THEN and ELSE with respect to the starting IF.
104Value is a cons cell, the car is extra THEN indentation and the cdr 99Value is a cons cell, the car is extra THEN indentation and the cdr
105extra ELSE indentation. IF after ELSE is indented as the starting IF." 100extra ELSE indentation. IF after ELSE is indented as the starting IF."
106 :type '(cons integer integer) 101 :type '(cons integer integer))
107 :group 'simula)
108 102
109(defconst simula-inspect-indent-default '(0 . 0) 103(defconst simula-inspect-indent-default '(0 . 0)
110 "Extra indentation of WHEN and OTHERWISE with respect to the INSPECT. 104 "Extra indentation of WHEN and OTHERWISE with respect to the INSPECT.
@@ -115,16 +109,14 @@ and the cdr extra OTHERWISE indentation.")
115 "Extra indentation of WHEN and OTHERWISE with respect to the INSPECT. 109 "Extra indentation of WHEN and OTHERWISE with respect to the INSPECT.
116Value is a cons cell, the car is extra WHEN indentation 110Value is a cons cell, the car is extra WHEN indentation
117and the cdr extra OTHERWISE indentation." 111and the cdr extra OTHERWISE indentation."
118 :type '(cons integer integer) 112 :type '(cons integer integer))
119 :group 'simula)
120 113
121(defconst simula-electric-indent-default nil 114(defconst simula-electric-indent-default nil
122 "Non-nil means `simula-indent-line' function may reindent previous line.") 115 "Non-nil means `simula-indent-line' function may reindent previous line.")
123 116
124(defcustom simula-electric-indent simula-electric-indent-default 117(defcustom simula-electric-indent simula-electric-indent-default
125 "Non-nil means `simula-indent-line' function may reindent previous line." 118 "Non-nil means `simula-indent-line' function may reindent previous line."
126 :type 'boolean 119 :type 'boolean)
127 :group 'simula)
128 120
129(defconst simula-abbrev-keyword-default 'upcase 121(defconst simula-abbrev-keyword-default 'upcase
130 "Specify how to convert case for SIMULA keywords. 122 "Specify how to convert case for SIMULA keywords.
@@ -135,8 +127,7 @@ Value is one of the symbols `upcase', `downcase', `capitalize',
135 "Specify how to convert case for SIMULA keywords. 127 "Specify how to convert case for SIMULA keywords.
136Value is one of the symbols `upcase', `downcase', `capitalize', 128Value is one of the symbols `upcase', `downcase', `capitalize',
137\(as in) `abbrev-table' or nil if they should not be changed." 129\(as in) `abbrev-table' or nil if they should not be changed."
138 :type '(choice (const upcase) (const downcase) (const capitalize)(const nil)) 130 :type '(choice (const upcase) (const downcase) (const capitalize)(const nil)))
139 :group 'simula)
140 131
141(defconst simula-abbrev-stdproc-default 'abbrev-table 132(defconst simula-abbrev-stdproc-default 'abbrev-table
142 "Specify how to convert case for standard SIMULA procedure and class names. 133 "Specify how to convert case for standard SIMULA procedure and class names.
@@ -148,16 +139,14 @@ Value is one of the symbols `upcase', `downcase', `capitalize',
148Value is one of the symbols `upcase', `downcase', `capitalize', 139Value is one of the symbols `upcase', `downcase', `capitalize',
149\(as in) `abbrev-table', or nil if they should not be changed." 140\(as in) `abbrev-table', or nil if they should not be changed."
150 :type '(choice (const upcase) (const downcase) (const capitalize) 141 :type '(choice (const upcase) (const downcase) (const capitalize)
151 (const abbrev-table) (const nil)) 142 (const abbrev-table) (const nil)))
152 :group 'simula)
153 143
154(defcustom simula-abbrev-file nil 144(defcustom simula-abbrev-file nil
155 "File with extra abbrev definitions for use in SIMULA mode. 145 "File with extra abbrev definitions for use in SIMULA mode.
156These are used together with the standard abbrev definitions for SIMULA. 146These are used together with the standard abbrev definitions for SIMULA.
157Please note that the standard definitions are required 147Please note that the standard definitions are required
158for SIMULA mode to function correctly." 148for SIMULA mode to function correctly."
159 :type '(choice file (const nil)) 149 :type '(choice file (const nil)))
160 :group 'simula)
161 150
162(defvar simula-mode-syntax-table nil 151(defvar simula-mode-syntax-table nil
163 "Syntax table in SIMULA mode buffers.") 152 "Syntax table in SIMULA mode buffers.")
diff --git a/lisp/progmodes/xscheme.el b/lisp/progmodes/xscheme.el
index e85e3cfdbbd..613863dd613 100644
--- a/lisp/progmodes/xscheme.el
+++ b/lisp/progmodes/xscheme.el
@@ -104,20 +104,17 @@ reading-string reading prompt string")
104 104
105(defcustom scheme-band-name nil 105(defcustom scheme-band-name nil
106 "Band loaded by the `run-scheme' command." 106 "Band loaded by the `run-scheme' command."
107 :type '(choice (const nil) string) 107 :type '(choice (const nil) string))
108 :group 'xscheme)
109 108
110(defcustom scheme-program-arguments nil 109(defcustom scheme-program-arguments nil
111 "Arguments passed to the Scheme program by the `run-scheme' command." 110 "Arguments passed to the Scheme program by the `run-scheme' command."
112 :type '(choice (const nil) string) 111 :type '(choice (const nil) string))
113 :group 'xscheme)
114 112
115(defcustom xscheme-allow-pipelined-evaluation t 113(defcustom xscheme-allow-pipelined-evaluation t
116 "If non-nil, an expression may be transmitted while another is evaluating. 114 "If non-nil, an expression may be transmitted while another is evaluating.
117Otherwise, attempting to evaluate an expression before the previous expression 115Otherwise, attempting to evaluate an expression before the previous expression
118has finished evaluating will signal an error." 116has finished evaluating will signal an error."
119 :type 'boolean 117 :type 'boolean)
120 :group 'xscheme)
121 118
122(defcustom xscheme-startup-message 119(defcustom xscheme-startup-message
123 "This is the Scheme process buffer. 120 "This is the Scheme process buffer.
@@ -128,19 +125,16 @@ Type \\[describe-mode] for more information.
128" 125"
129 "String to insert into Scheme process buffer first time it is started. 126 "String to insert into Scheme process buffer first time it is started.
130Is processed with `substitute-command-keys' first." 127Is processed with `substitute-command-keys' first."
131 :type 'string 128 :type 'string)
132 :group 'xscheme)
133 129
134(defcustom xscheme-signal-death-message nil 130(defcustom xscheme-signal-death-message nil
135 "If non-nil, causes a message to be generated when the Scheme process dies." 131 "If non-nil, causes a message to be generated when the Scheme process dies."
136 :type 'boolean 132 :type 'boolean)
137 :group 'xscheme)
138 133
139(defcustom xscheme-start-hook nil 134(defcustom xscheme-start-hook nil
140 "If non-nil, a procedure to call when the Scheme process is started. 135 "If non-nil, a procedure to call when the Scheme process is started.
141When called, the current buffer will be the Scheme process-buffer." 136When called, the current buffer will be the Scheme process-buffer."
142 :type 'hook 137 :type 'hook
143 :group 'xscheme
144 :version "20.3") 138 :version "20.3")
145 139
146(defun xscheme-evaluation-commands (keymap) 140(defun xscheme-evaluation-commands (keymap)