Mercurial > emacs
annotate src/casefiddle.c @ 11696:d43754b30133
(bcopy, bzero, bcmp): Don't let string.h prototype these.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 05 May 1995 02:21:21 +0000 |
parents | e8c880f2723e |
children | f7cb17ca1815 |
rev | line source |
---|---|
118 | 1 /* GNU Emacs case conversion functions. |
7307 | 2 Copyright (C) 1985, 1994 Free Software Foundation, Inc. |
118 | 3 |
4 This file is part of GNU Emacs. | |
5 | |
6 GNU Emacs is free software; you can redistribute it and/or modify | |
7 it under the terms of the GNU General Public License as published by | |
8 the Free Software Foundation; either version 1, or (at your option) | |
9 any later version. | |
10 | |
11 GNU Emacs is distributed in the hope that it will be useful, | |
12 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 GNU General Public License for more details. | |
15 | |
16 You should have received a copy of the GNU General Public License | |
17 along with GNU Emacs; see the file COPYING. If not, write to | |
18 the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ | |
19 | |
20 | |
4696
1fc792473491
Include <config.h> instead of "config.h".
Roland McGrath <roland@gnu.org>
parents:
2822
diff
changeset
|
21 #include <config.h> |
118 | 22 #include "lisp.h" |
23 #include "buffer.h" | |
24 #include "commands.h" | |
25 #include "syntax.h" | |
26 | |
27 enum case_action {CASE_UP, CASE_DOWN, CASE_CAPITALIZE, CASE_CAPITALIZE_UP}; | |
28 | |
29 Lisp_Object | |
30 casify_object (flag, obj) | |
31 enum case_action flag; | |
32 Lisp_Object obj; | |
33 { | |
34 register int i, c, len; | |
35 register int inword = flag == CASE_DOWN; | |
36 | |
37 while (1) | |
38 { | |
9137
412e94c1dbf2
(casify_object): Use type test macros.
Karl Heuer <kwzh@gnu.org>
parents:
9053
diff
changeset
|
39 if (INTEGERP (obj)) |
118 | 40 { |
41 c = XINT (obj); | |
42 if (c >= 0 && c <= 0400) | |
43 { | |
44 if (inword) | |
9299
e8c880f2723e
(casify_object, operate_on_word, Fupcase_word, Fdowncase_word,
Karl Heuer <kwzh@gnu.org>
parents:
9137
diff
changeset
|
45 XSETFASTINT (obj, DOWNCASE (c)); |
118 | 46 else if (!UPPERCASEP (c)) |
9299
e8c880f2723e
(casify_object, operate_on_word, Fupcase_word, Fdowncase_word,
Karl Heuer <kwzh@gnu.org>
parents:
9137
diff
changeset
|
47 XSETFASTINT (obj, UPCASE1 (c)); |
118 | 48 } |
49 return obj; | |
50 } | |
9137
412e94c1dbf2
(casify_object): Use type test macros.
Karl Heuer <kwzh@gnu.org>
parents:
9053
diff
changeset
|
51 if (STRINGP (obj)) |
118 | 52 { |
53 obj = Fcopy_sequence (obj); | |
54 len = XSTRING (obj)->size; | |
55 for (i = 0; i < len; i++) | |
56 { | |
57 c = XSTRING (obj)->data[i]; | |
9052
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
58 if (inword && flag != CASE_CAPITALIZE_UP) |
118 | 59 c = DOWNCASE (c); |
9052
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
60 else if (!UPPERCASEP (c) |
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
61 && (!inword || flag != CASE_CAPITALIZE_UP)) |
118 | 62 c = UPCASE1 (c); |
63 XSTRING (obj)->data[i] = c; | |
9052
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
64 if ((int) flag >= (int) CASE_CAPITALIZE) |
118 | 65 inword = SYNTAX (c) == Sword; |
66 } | |
67 return obj; | |
68 } | |
1926
952f2a18f83d
* callint.c (Fcall_interactively): Pass the correct number of
Jim Blandy <jimb@redhat.com>
parents:
1505
diff
changeset
|
69 obj = wrong_type_argument (Qchar_or_string_p, obj); |
118 | 70 } |
71 } | |
72 | |
73 DEFUN ("upcase", Fupcase, Supcase, 1, 1, 0, | |
74 "Convert argument to upper case and return that.\n\ | |
75 The argument may be a character or string. The result has the same type.\n\ | |
9053
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
76 The argument object is not altered--the value is a copy.\n\ |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
77 See also `capitalize', `downcase' and `upcase-initials'.") |
118 | 78 (obj) |
79 Lisp_Object obj; | |
80 { | |
81 return casify_object (CASE_UP, obj); | |
82 } | |
83 | |
84 DEFUN ("downcase", Fdowncase, Sdowncase, 1, 1, 0, | |
85 "Convert argument to lower case and return that.\n\ | |
86 The argument may be a character or string. The result has the same type.\n\ | |
9053
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
87 The argument object is not altered--the value is a copy.") |
118 | 88 (obj) |
89 Lisp_Object obj; | |
90 { | |
91 return casify_object (CASE_DOWN, obj); | |
92 } | |
93 | |
94 DEFUN ("capitalize", Fcapitalize, Scapitalize, 1, 1, 0, | |
95 "Convert argument to capitalized form and return that.\n\ | |
96 This means that each word's first character is upper case\n\ | |
97 and the rest is lower case.\n\ | |
98 The argument may be a character or string. The result has the same type.\n\ | |
9053
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
99 The argument object is not altered--the value is a copy.") |
118 | 100 (obj) |
101 Lisp_Object obj; | |
102 { | |
103 return casify_object (CASE_CAPITALIZE, obj); | |
104 } | |
9052
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
105 |
9053
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
106 DEFUN ("upcase-initials", Fupcase_initials, Supcase_initials, 1, 1, 0, |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
107 "Convert the initial of each word in the argument to upper case.\n\ |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
108 Do not change the other letters of each word.\n\ |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
109 The argument may be a character or string. The result has the same type.\n\ |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
110 The argument object is not altered--the value is a copy.") |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
111 (obj) |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
112 Lisp_Object obj; |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
113 { |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
114 return casify_object (CASE_CAPITALIZE_UP, obj); |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
115 } |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
116 |
9052
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
117 /* Like Fcapitalize but change only the initials. */ |
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
118 |
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
119 Lisp_Object |
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
120 upcase_initials (obj) |
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
121 Lisp_Object obj; |
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
122 { |
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
123 return casify_object (CASE_CAPITALIZE_UP, obj); |
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
124 } |
118 | 125 |
126 /* flag is CASE_UP, CASE_DOWN or CASE_CAPITALIZE or CASE_CAPITALIZE_UP. | |
127 b and e specify range of buffer to operate on. */ | |
128 | |
129 casify_region (flag, b, e) | |
130 enum case_action flag; | |
131 Lisp_Object b, e; | |
132 { | |
133 register int i; | |
134 register int c; | |
135 register int inword = flag == CASE_DOWN; | |
136 | |
137 if (EQ (b, e)) | |
138 /* Not modifying because nothing marked */ | |
139 return; | |
140 | |
141 validate_region (&b, &e); | |
2783
789c11177579
The text property routines can now modify buffers other
Jim Blandy <jimb@redhat.com>
parents:
1926
diff
changeset
|
142 modify_region (current_buffer, XFASTINT (b), XFASTINT (e)); |
2822
153a269b1315
(casify_region): Remove mistaken arg to record_change.
Richard M. Stallman <rms@gnu.org>
parents:
2783
diff
changeset
|
143 record_change (XFASTINT (b), XFASTINT (e) - XFASTINT (b)); |
118 | 144 |
145 for (i = XFASTINT (b); i < XFASTINT (e); i++) | |
146 { | |
147 c = FETCH_CHAR (i); | |
148 if (inword && flag != CASE_CAPITALIZE_UP) | |
149 c = DOWNCASE (c); | |
150 else if (!UPPERCASEP (c) | |
151 && (!inword || flag != CASE_CAPITALIZE_UP)) | |
152 c = UPCASE1 (c); | |
153 FETCH_CHAR (i) = c; | |
154 if ((int) flag >= (int) CASE_CAPITALIZE) | |
155 inword = SYNTAX (c) == Sword; | |
156 } | |
157 | |
158 signal_after_change (XFASTINT (b), | |
159 XFASTINT (e) - XFASTINT (b), | |
160 XFASTINT (e) - XFASTINT (b)); | |
161 } | |
162 | |
163 DEFUN ("upcase-region", Fupcase_region, Supcase_region, 2, 2, "r", | |
164 "Convert the region to upper case. In programs, wants two arguments.\n\ | |
165 These arguments specify the starting and ending character numbers of\n\ | |
166 the region to operate on. When used as a command, the text between\n\ | |
167 point and the mark is operated on.\n\ | |
168 See also `capitalize-region'.") | |
169 (b, e) | |
170 Lisp_Object b, e; | |
171 { | |
172 casify_region (CASE_UP, b, e); | |
173 return Qnil; | |
174 } | |
175 | |
176 DEFUN ("downcase-region", Fdowncase_region, Sdowncase_region, 2, 2, "r", | |
177 "Convert the region to lower case. In programs, wants two arguments.\n\ | |
178 These arguments specify the starting and ending character numbers of\n\ | |
179 the region to operate on. When used as a command, the text between\n\ | |
180 point and the mark is operated on.") | |
181 (b, e) | |
182 Lisp_Object b, e; | |
183 { | |
184 casify_region (CASE_DOWN, b, e); | |
185 return Qnil; | |
186 } | |
187 | |
188 DEFUN ("capitalize-region", Fcapitalize_region, Scapitalize_region, 2, 2, "r", | |
189 "Convert the region to capitalized form.\n\ | |
190 Capitalized form means each word's first character is upper case\n\ | |
191 and the rest of it is lower case.\n\ | |
192 In programs, give two arguments, the starting and ending\n\ | |
193 character positions to operate on.") | |
194 (b, e) | |
195 Lisp_Object b, e; | |
196 { | |
197 casify_region (CASE_CAPITALIZE, b, e); | |
198 return Qnil; | |
199 } | |
200 | |
9053
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
201 DEFUN ("upcase-initials-region", Fupcase_initials_region, |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
202 Supcase_initials_region, 2, 2, "r", |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
203 "Upcase the initial of each word in the region.\n\ |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
204 Subsequent letters of each word are not changed.\n\ |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
205 In programs, give two arguments, the starting and ending\n\ |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
206 character positions to operate on.") |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
207 (b, e) |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
208 Lisp_Object b, e; |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
209 { |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
210 casify_region (CASE_CAPITALIZE_UP, b, e); |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
211 return Qnil; |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
212 } |
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
213 |
9052
6de22822cf72
(upcase_initials): New function.
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
214 /* Like Fcapitalize_region but change only the initials. */ |
118 | 215 |
216 Lisp_Object | |
217 upcase_initials_region (b, e) | |
218 Lisp_Object b, e; | |
219 { | |
220 casify_region (CASE_CAPITALIZE_UP, b, e); | |
221 return Qnil; | |
222 } | |
223 | |
224 Lisp_Object | |
6221
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
225 operate_on_word (arg, newpoint) |
118 | 226 Lisp_Object arg; |
6221
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
227 int *newpoint; |
118 | 228 { |
1505
4f138b03e5ab
* casefiddle.c (operate_on_word): Declare end to be an int, not a
Jim Blandy <jimb@redhat.com>
parents:
484
diff
changeset
|
229 Lisp_Object val; |
6221
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
230 int farend; |
118 | 231 |
232 CHECK_NUMBER (arg, 0); | |
233 farend = scan_words (point, XINT (arg)); | |
234 if (!farend) | |
235 farend = XINT (arg) > 0 ? ZV : BEGV; | |
236 | |
6221
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
237 *newpoint = point > farend ? point : farend; |
9299
e8c880f2723e
(casify_object, operate_on_word, Fupcase_word, Fdowncase_word,
Karl Heuer <kwzh@gnu.org>
parents:
9137
diff
changeset
|
238 XSETFASTINT (val, farend); |
118 | 239 |
240 return val; | |
241 } | |
242 | |
243 DEFUN ("upcase-word", Fupcase_word, Supcase_word, 1, 1, "p", | |
244 "Convert following word (or ARG words) to upper case, moving over.\n\ | |
245 With negative argument, convert previous words but do not move.\n\ | |
246 See also `capitalize-word'.") | |
247 (arg) | |
248 Lisp_Object arg; | |
249 { | |
6221
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
250 Lisp_Object beg, end; |
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
251 int newpoint; |
9299
e8c880f2723e
(casify_object, operate_on_word, Fupcase_word, Fdowncase_word,
Karl Heuer <kwzh@gnu.org>
parents:
9137
diff
changeset
|
252 XSETFASTINT (beg, point); |
6221
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
253 end = operate_on_word (arg, &newpoint); |
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
254 casify_region (CASE_UP, beg, end); |
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
255 SET_PT (newpoint); |
118 | 256 return Qnil; |
257 } | |
258 | |
259 DEFUN ("downcase-word", Fdowncase_word, Sdowncase_word, 1, 1, "p", | |
260 "Convert following word (or ARG words) to lower case, moving over.\n\ | |
261 With negative argument, convert previous words but do not move.") | |
262 (arg) | |
263 Lisp_Object arg; | |
264 { | |
6221
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
265 Lisp_Object beg, end; |
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
266 int newpoint; |
9299
e8c880f2723e
(casify_object, operate_on_word, Fupcase_word, Fdowncase_word,
Karl Heuer <kwzh@gnu.org>
parents:
9137
diff
changeset
|
267 XSETFASTINT (beg, point); |
6221
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
268 end = operate_on_word (arg, &newpoint); |
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
269 casify_region (CASE_DOWN, beg, end); |
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
270 SET_PT (newpoint); |
118 | 271 return Qnil; |
272 } | |
273 | |
274 DEFUN ("capitalize-word", Fcapitalize_word, Scapitalize_word, 1, 1, "p", | |
275 "Capitalize the following word (or ARG words), moving over.\n\ | |
276 This gives the word(s) a first character in upper case\n\ | |
277 and the rest lower case.\n\ | |
278 With negative argument, capitalize previous words but do not move.") | |
279 (arg) | |
280 Lisp_Object arg; | |
281 { | |
6221
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
282 Lisp_Object beg, end; |
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
283 int newpoint; |
9299
e8c880f2723e
(casify_object, operate_on_word, Fupcase_word, Fdowncase_word,
Karl Heuer <kwzh@gnu.org>
parents:
9137
diff
changeset
|
284 XSETFASTINT (beg, point); |
6221
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
285 end = operate_on_word (arg, &newpoint); |
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
286 casify_region (CASE_CAPITALIZE, beg, end); |
c2d29681d218
(operate_on_word): Don't move point; store in *NEWPOINT.
Richard M. Stallman <rms@gnu.org>
parents:
4696
diff
changeset
|
287 SET_PT (newpoint); |
118 | 288 return Qnil; |
289 } | |
290 | |
291 syms_of_casefiddle () | |
292 { | |
293 defsubr (&Supcase); | |
294 defsubr (&Sdowncase); | |
295 defsubr (&Scapitalize); | |
9053
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
296 defsubr (&Supcase_initials); |
118 | 297 defsubr (&Supcase_region); |
298 defsubr (&Sdowncase_region); | |
299 defsubr (&Scapitalize_region); | |
9053
4887fc1a2dda
(Fupcase_initials_region): New function.
Richard M. Stallman <rms@gnu.org>
parents:
9052
diff
changeset
|
300 defsubr (&Supcase_initials_region); |
118 | 301 defsubr (&Supcase_word); |
302 defsubr (&Sdowncase_word); | |
303 defsubr (&Scapitalize_word); | |
304 } | |
305 | |
306 keys_of_casefiddle () | |
307 { | |
308 initial_define_key (control_x_map, Ctl('U'), "upcase-region"); | |
484 | 309 Fput (intern ("upcase-region"), Qdisabled, Qt); |
118 | 310 initial_define_key (control_x_map, Ctl('L'), "downcase-region"); |
484 | 311 Fput (intern ("downcase-region"), Qdisabled, Qt); |
312 | |
118 | 313 initial_define_key (meta_map, 'u', "upcase-word"); |
314 initial_define_key (meta_map, 'l', "downcase-word"); | |
315 initial_define_key (meta_map, 'c', "capitalize-word"); | |
316 } |