Mercurial > emacs
annotate lisp/=tpu-doc.el @ 16834:ec390b34ddc0
(command_loop_1, read_char):
Run Qecho_area_clear_hook when clearing echo area.
(Qecho_area_clear_hook): New variable.
(syms_of_keyboard): Initialize it.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sun, 05 Jan 1997 23:05:46 +0000 |
parents | c8cc0e969eaa |
children |
rev | line source |
---|---|
4421 | 1 ;;; tpu-doc.el --- Documentation for TPU-edt |
4526
a614db8afa56
Added section on local variables.
Richard M. Stallman <rms@gnu.org>
parents:
4502
diff
changeset
|
2 |
7983
c8cc0e969eaa
(tpu-doc-revision): Variable deleted.
Richard M. Stallman <rms@gnu.org>
parents:
5188
diff
changeset
|
3 ;; Copyright (C) 1993, 1994 Free Software Foundation, Inc. |
4421 | 4 |
5 ;; Author: Rob Riepel <riepel@networking.stanford.edu> | |
6 ;; Maintainer: Rob Riepel <riepel@networking.stanford.edu> | |
5140 | 7 ;; Keywords: emulations |
4421 | 8 |
4450 | 9 ;; This file is part of GNU Emacs. |
10 | |
11 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
12 ;; it under the terms of the GNU General Public License as published by | |
13 ;; the Free Software Foundation; either version 2, or (at your option) | |
14 ;; any later version. | |
4421 | 15 |
4450 | 16 ;; GNU Emacs is distributed in the hope that it will be useful, |
17 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
18 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
19 ;; GNU General Public License for more details. | |
20 | |
21 ;; You should have received a copy of the GNU General Public License | |
22 ;; along with GNU Emacs; see the file COPYING. If not, write to | |
23 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | |
4421 | 24 |
25 | |
26 ;; This is documentation for the TPU-edt editor for GNU emacs. Major | |
27 ;; sections of this document are separated with lines that begin with | |
28 ;; ";; %% <topic>", where <topic> is what is discussed in that section. | |
29 | |
30 | |
31 ;; %% Contents | |
32 | |
33 ;; % Introduction | |
34 ;; % Terminal Support | |
35 ;; % X-windows Support | |
36 ;; % Differences Between TPU-edt and the Real Thing | |
37 ;; % Starting TPU-edt | |
38 ;; % TPU-edt Default Editing Keypad, Control and Gold Key Bindings | |
39 ;; % Optional TPU-edt Extensions | |
40 ;; % Customizing TPU-edt using the Emacs Initialization File | |
41 ;; % Compiling TPU-edt | |
42 ;; % Regular expressions in TPU-edt | |
43 ;; % Etcetera | |
44 | |
45 | |
46 ;; %% Introduction | |
47 | |
7983
c8cc0e969eaa
(tpu-doc-revision): Variable deleted.
Richard M. Stallman <rms@gnu.org>
parents:
5188
diff
changeset
|
48 ;; TPU-edt is based on tpu.el by Jeff Kowalski and Bob Covey. TPU-edt |
c8cc0e969eaa
(tpu-doc-revision): Variable deleted.
Richard M. Stallman <rms@gnu.org>
parents:
5188
diff
changeset
|
49 ;; endeavors to be even more like TPU's EDT emulation than the original |
c8cc0e969eaa
(tpu-doc-revision): Variable deleted.
Richard M. Stallman <rms@gnu.org>
parents:
5188
diff
changeset
|
50 ;; tpu.el. Considerable effort has been expended to that end. Still, |
c8cc0e969eaa
(tpu-doc-revision): Variable deleted.
Richard M. Stallman <rms@gnu.org>
parents:
5188
diff
changeset
|
51 ;; emacs is emacs and there are differences between TPU-edt and the |
c8cc0e969eaa
(tpu-doc-revision): Variable deleted.
Richard M. Stallman <rms@gnu.org>
parents:
5188
diff
changeset
|
52 ;; real thing. Please read the "Differences Between TPU-edt and the |
c8cc0e969eaa
(tpu-doc-revision): Variable deleted.
Richard M. Stallman <rms@gnu.org>
parents:
5188
diff
changeset
|
53 ;; Real Thing" and "Starting TPU-edt" sections before running TPU-edt. |
4421 | 54 |
55 | |
56 ;; %% Terminal Support | |
57 | |
58 ;; TPU-edt, like it's VMS cousin, works on VT-series terminals with | |
59 ;; DEC style keyboards. VT terminal emulators, including xterm with | |
60 ;; the appropriate key translations, work just fine too. | |
61 | |
62 | |
63 ;; %% X-windows Support | |
64 | |
65 ;; Starting with version 19 of emacs, TPU-edt works with X-windows. | |
66 ;; This is accomplished through a TPU-edt X keymap. The emacs lisp | |
67 ;; program tpu-mapper.el creates this map and stores it in a file. | |
68 ;; Tpu-mapper will be run automatically the first time you invoke | |
69 ;; the X-windows version of emacs, or you can run it by hand. See | |
70 ;; the commentary in tpu-mapper.el for details. | |
71 | |
72 | |
73 ;; %% Differences Between TPU-edt and the Real Thing (not Coke (r)) | |
74 | |
75 ;; Emacs (version 18.58) doesn't support text highlighting, so selected | |
76 ;; regions are not shown in inverse video. Emacs uses the concept of | |
77 ;; "the mark". The mark is set at one end of a selected region; the | |
78 ;; cursor is at the other. The letter "M" appears in the mode line | |
79 ;; when the mark is set. The native emacs command ^X^X (Control-X | |
80 ;; twice) exchanges the cursor with the mark; this provides a handy | |
81 ;; way to find the location of the mark. | |
82 | |
83 ;; In TPU the cursor can be either bound or free. Bound means the | |
84 ;; cursor cannot wander outside the text of the file being edited. | |
85 ;; Free means the arrow keys can move the cursor past the ends of | |
86 ;; lines. Free is the default mode in TPU; bound is the only mode | |
87 ;; in EDT. Bound is the only mode in the base version of TPU-edt; | |
88 ;; optional extensions add an approximation of free mode. | |
89 | |
90 ;; Like TPU, emacs uses multiple buffers. Some buffers are used to | |
91 ;; hold files you are editing; other "internal" buffers are used for | |
92 ;; emacs' own purposes (like showing you help). Here are some commands | |
93 ;; for dealing with buffers. | |
94 | |
95 ;; Gold-B moves to next buffer, including internal buffers | |
96 ;; Gold-N moves to next buffer containing a file | |
97 ;; Gold-M brings up a buffer menu (like TPU "show buffers") | |
98 | |
99 ;; Emacs is very fond of throwing up new windows. Dealing with all | |
100 ;; these windows can be a little confusing at first, so here are a few | |
101 ;; commands to that may help: | |
102 | |
103 ;; Gold-Next_Scr moves to the next window on the screen | |
104 ;; Gold-Prev_Scr moves to the previous window on the screen | |
105 ;; Gold-TAB also moves to the next window on the screen | |
106 | |
107 ;; Control-x 1 deletes all but the current window | |
108 ;; Control-x 0 deletes the current window | |
109 | |
110 ;; Note that the buffers associated with deleted windows still exist! | |
111 | |
112 ;; Like TPU, TPU-edt has a "command" function, invoked with Gold-KP7 or | |
113 ;; Do. Most of the commands available are emacs commands. Some TPU | |
114 ;; commands are available, they are: replace, exit, quit, include, and | |
115 ;; Get (unfortunately, "get" is an internal emacs function, so we are | |
116 ;; stuck with "Get" - to make life easier, Get is available as Gold-g). | |
117 | |
118 ;; Support for recall of commands, file names, and search strings was | |
119 ;; added to emacs in version 19. For version 18 of emacs, optional | |
120 ;; extensions are available to add this recall capability (see "Optional | |
121 ;; TPU-edt Extensions" below). The history of strings recalled in both | |
122 ;; versions of emacs differs slightly from TPU/edt, but it is still very | |
123 ;; convenient. | |
124 | |
125 ;; Help is available! The traditional help keys (Help and PF2) display | |
126 ;; a three page help file showing the default keypad layout, control key | |
127 ;; functions, and Gold key functions. Pressing any key inside of help | |
128 ;; splits the screen and prints a description of the function of the | |
129 ;; pressed key. Gold-PF2 invokes the native emacs help, with it's | |
130 ;; zillions of options. Gold-Help shows all the current key bindings. | |
131 | |
132 ;; Thanks to emacs, TPU-edt has some extensions that may make your life | |
133 ;; easier, or at least more interesting. For example, Gold-r toggles | |
134 ;; TPU-edt rectangular mode. In rectangular mode, Remove and Insert work | |
135 ;; on rectangles. Likewise, Gold-* toggles TPU-edt regular expression | |
136 ;; mode. In regular expression mode Find, Find Next, and the line-mode | |
137 ;; replace command work with regular expressions. [A regular expression | |
138 ;; is a pattern that denotes a set of strings; like VMS wildcards.] | |
139 | |
140 ;; Emacs also gives TPU-edt the undo and occur functions. Undo does | |
141 ;; what it says; it undoes the last change. Multiple undos in a row | |
142 ;; undo multiple changes. For your convenience, undo is available on | |
143 ;; Gold-u. Occur shows all the lines containing a specific string in | |
144 ;; another window. Moving to that window, and typing ^C^C (Control-C | |
145 ;; twice) on a particular line moves you back to the original window | |
146 ;; at that line. Occur is on Gold-o. | |
147 | |
148 ;; Finally, as you edit, remember that all the power of emacs is at | |
149 ;; your disposal. It really is a fantastic tool. You may even want to | |
150 ;; take some time and read the emacs tutorial; perhaps not to learn the | |
151 ;; native emacs key bindings, but to get a feel for all the things | |
152 ;; emacs can do for you. The emacs tutorial is available from the | |
153 ;; emacs help function: "Gold-PF2 t" | |
154 | |
155 | |
156 ;; %% Starting TPU-edt | |
157 | |
158 ;; In order to use TPU-edt, the TPU-edt editor definitions, contained | |
159 ;; in tpu-edt.el, need to be loaded when emacs is run. This can be | |
160 ;; done in a couple of ways. The first is by explicitly requesting | |
161 ;; loading of the TPU-edt emacs definition file on the command line: | |
162 | |
163 ;; prompt> emacs -l /path/to/definitions/tpu-edt.el | |
164 | |
165 ;; If TPU-edt is installed on your system, that is, if tpu-edt.el is in | |
166 ;; a directory like /usr/local/emacs/lisp, along with dozens of other | |
167 ;; .el files, you should be able to use the command: | |
168 | |
169 ;; prompt> emacs -l tpu-edt | |
170 | |
171 ;; If you like TPU-edt and want to use it all the time, you can load | |
172 ;; the TPU-edt definitions using the emacs initialization file, .emacs. | |
173 ;; Simply create a .emacs file in your home directory containing the | |
174 ;; line: | |
175 | |
176 ;; (load "/path/to/definitions/tpu-edt") | |
177 | |
178 ;; or, if (as above) TPU-edt is installed on your system: | |
179 | |
180 ;; (load "tpu-edt") | |
181 | |
182 ;; Once TPU-edt has been loaded, you will be using an editor with the | |
183 ;; interface shown in the next section (A section that is suitable for | |
184 ;; cutting out of this document and pasting next to your terminal!). | |
185 | |
186 | |
187 ;; %% TPU-edt Default Editing Keypad, Control and Gold Key Bindings | |
188 ;; | |
189 ;; _______________________ _______________________________ | |
190 ;; | HELP | Do | | | | | | | |
191 ;; |KeyDefs| | | | | | | | |
192 ;; |_______|_______________| |_______|_______|_______|_______| | |
193 ;; _______________________ _______________________________ | |
194 ;; | Find |Insert |Remove | | Gold | HELP |FndNxt | Del L | | |
195 ;; | | |Sto Tex| | key |E-Help | Find |Undel L| | |
196 ;; |_______|_______|_______| |_______|_______|_______|_______| | |
197 ;; |Select |Pre Scr|Nex Scr| | Page | Sect |Append | Del W | | |
198 ;; | Reset |Pre Win|Nex Win| | Do | Fill |Replace|Undel W| | |
199 ;; |_______|_______|_______| |_______|_______|_______|_______| | |
200 ;; |Move up| |Forward|Reverse|Remove | Del C | | |
201 ;; | Top | |Bottom | Top |Insert |Undel C| | |
202 ;; _______|_______|_______ |_______|_______|_______|_______| | |
203 ;; |Mov Lef|Mov Dow|Mov Rig| | Word | EOL | Char | | | |
204 ;; |StaOfLi|Bottom |EndOfLi| |ChngCas|Del EOL|SpecIns| Enter | | |
205 ;; |_______|_______|_______| |_______|_______|_______| | | |
206 ;; | Line |Select | Subs | | |
207 ;; | Open Line | Reset | | | |
208 ;; |_______________|_______|_______| | |
209 ;; Control Characters | |
210 ;; | |
211 ;; ^A toggle insert and overwrite ^L insert page break | |
212 ;; ^B recall ^R remember, re-center | |
213 ;; ^E end of line ^U delete to beginning of line | |
214 ;; ^G cancel current operation ^V quote | |
215 ;; ^H beginning of line ^W refresh | |
216 ;; ^J delete previous word ^Z exit | |
217 ;; ^K learn ^X^X exchange point and mark | |
218 ;; | |
219 ;; | |
220 ;; Gold-<key> Functions | |
221 ;; ----------------------------------------------------------------- | |
222 ;; W Write - save current buffer | |
223 ;; K Kill buffer - abandon edits and delete buffer | |
224 ;; | |
225 ;; E Exit - save current buffer and ask about others | |
226 ;; X eXit - save all modified buffers and exit | |
227 ;; Q Quit - exit without saving anything | |
228 ;; | |
229 ;; G Get - load a file into a new edit buffer | |
230 ;; I Include - include a file in this buffer | |
231 ;; | |
232 ;; B next Buffer - display the next buffer (all buffers) | |
233 ;; N Next file buffer - display next buffer containing a file | |
234 ;; M buffer Menu - display a list of all buffers | |
235 ;; | |
236 ;; U Undo - undo the last edit | |
237 ;; C Recall - edit and possibly repeat previous commands | |
238 ;; | |
239 ;; O Occur - show following lines containing REGEXP | |
240 ;; S Search and substitute - line mode REPLACE command | |
241 ;; | |
242 ;; ? Spell check - check spelling in a region or entire buffer | |
243 ;; | |
244 ;; R Toggle Rectangular mode for remove and insert | |
245 ;; * Toggle regular expression mode for search and substitute | |
246 ;; | |
247 ;; V Show TPU-edt version | |
248 ;; ----------------------------------------------------------------- | |
249 | |
250 | |
251 ;; %% Optional TPU-edt Extensions | |
252 | |
253 ;; Several optional packages have been included in this distribution | |
254 ;; of TPU-edt. The following is a brief description of each package. | |
255 ;; See the {package}.el file for more detailed information and usage | |
256 ;; instructions. | |
257 | |
258 ;; tpu-extras - TPU/edt scroll margins and free cursor mode. | |
259 ;; tpu-recall - String, file name, and command history. | |
260 ;; vt-control - VTxxx terminal width and keypad controls. | |
261 | |
262 ;; Packages are normally loaded from the emacs initialization file | |
263 ;; (discussed below). If a package is not installed in the emacs | |
264 ;; lisp directory, it can be loaded by specifying the complete path | |
265 ;; to the package file. However, it is preferable to modify the | |
266 ;; emacs load-path variable to include the directory where packages | |
267 ;; are stored. This way, packages can be loaded by name, just as if | |
268 ;; they were installed. The first part of the sample .emacs file | |
269 ;; below shows how to make such a modification. | |
270 | |
271 | |
272 ;; %% Customizing TPU-edt using the Emacs Initialization File | |
273 | |
274 ;; .emacs - a sample emacs initialization file | |
275 | |
276 ;; This is a sample emacs initialization file. It shows how to invoke | |
277 ;; TPU-edt, and how to customize it. | |
278 | |
279 ;; The load-path is where emacs looks for files to fulfill load requests. | |
280 ;; If TPU-edt is not installed in a standard emacs directory, the load-path | |
281 ;; should be updated to include the directory where the TPU-edt files are | |
282 ;; stored. Modify and un-comment the following section if TPU-ed is not | |
283 ;; installed on your system - be sure to leave the double quotes! | |
284 | |
285 ;; (setq load-path | |
286 ;; (append (list (expand-file-name "/path/to/tpu-edt/files")) | |
287 ;; load-path)) | |
288 | |
289 ;; Load TPU-edt | |
290 (load "tpu-edt") | |
291 | |
292 ;; Load the optional goodies - scroll margins, free cursor mode, command | |
293 ;; and string recall. But don't complain if the file aren't available. | |
294 (load "tpu-extras" t) | |
295 (load "tpu-recall" t) | |
296 | |
297 ;; Uncomment this line to set scroll margins 10% (top) and 15% (bottom). | |
5188
403fae0cb21b
Add sample test for tpu-set-scroll-margins.
Richard M. Stallman <rms@gnu.org>
parents:
5140
diff
changeset
|
298 ;(and (fboundp 'tpu-set-scroll-margins) (tpu-set-scroll-margins "10%" "15%")) |
4421 | 299 |
300 ;; Load the vtxxx terminal control functions, but don't complain if | |
301 ;; if the file is not found. | |
302 (load "vt-control" t) | |
303 | |
304 ;; TPU-edt treats words like EDT; here's how to add word separators. | |
305 ;; Note that backslash (\) and double quote (") are quoted with '\'. | |
306 (tpu-add-word-separators "]\\[-_,.\"=+()'/*#:!&;$") | |
307 | |
308 ;; Emacs is happy to save files without a final newline; other Unix programs | |
309 ;; hate that! This line will make sure that files end with newlines. | |
310 (setq require-final-newline t) | |
311 | |
4526
a614db8afa56
Added section on local variables.
Richard M. Stallman <rms@gnu.org>
parents:
4502
diff
changeset
|
312 ;; Emacs has the ability to automatically run code embedded in files |
a614db8afa56
Added section on local variables.
Richard M. Stallman <rms@gnu.org>
parents:
4502
diff
changeset
|
313 ;; you edit. This line makes emacs ask if you want to run the code. |
a614db8afa56
Added section on local variables.
Richard M. Stallman <rms@gnu.org>
parents:
4502
diff
changeset
|
314 (if tpu-emacs19-p (setq enable-local-variables "ask") |
a614db8afa56
Added section on local variables.
Richard M. Stallman <rms@gnu.org>
parents:
4502
diff
changeset
|
315 (setq inhibit-local-variables t)) |
a614db8afa56
Added section on local variables.
Richard M. Stallman <rms@gnu.org>
parents:
4502
diff
changeset
|
316 |
4421 | 317 ;; Emacs uses Control-s and Control-q. Problems can occur when using emacs |
318 ;; on terminals that use these codes for flow control (Xon/Xoff flow control). | |
319 ;; These lines disable emacs' use of these characters. | |
320 (global-unset-key "\C-s") | |
321 (global-unset-key "\C-q") | |
322 | |
323 ;; top, bottom, bol, eol seem like a waste of Gold-arrow functions. The | |
324 ;; following section re-maps up and down arrow keys to top and bottom of | |
325 ;; screen, and left and right arrow keys to pan left and right (pan-left, | |
326 ;; right moves the screen 16 characters left or right - try it, you'll | |
327 ;; like it!). | |
328 | |
329 ;; Re-map the Gold-arrow functions | |
330 (define-key GOLD-CSI-map "A" 'tpu-beginning-of-window) ; up-arrow | |
331 (define-key GOLD-CSI-map "B" 'tpu-end-of-window) ; down-arrow | |
332 (define-key GOLD-CSI-map "C" 'tpu-pan-right) ; right-arrow | |
333 (define-key GOLD-CSI-map "D" 'tpu-pan-left) ; left-arrow | |
334 (define-key GOLD-SS3-map "A" 'tpu-beginning-of-window) ; up-arrow | |
335 (define-key GOLD-SS3-map "B" 'tpu-end-of-window) ; down-arrow | |
336 (define-key GOLD-SS3-map "C" 'tpu-pan-right) ; right-arrow | |
337 (define-key GOLD-SS3-map "D" 'tpu-pan-left) ; left-arrow | |
338 | |
339 ;; Re-map the Gold-arrow functions for X-windows TPU-edt (emacs version 19) | |
340 (cond | |
341 ((and tpu-emacs19-p window-system) | |
342 (define-key GOLD-map [up] 'tpu-beginning-of-window) ; up-arrow | |
343 (define-key GOLD-map [down] 'tpu-end-of-window) ; down-arrow | |
344 (define-key GOLD-map [right] 'tpu-pan-right) ; right-arrow | |
345 (define-key GOLD-map [left] 'tpu-pan-left))) ; left-arrow | |
346 | |
347 ;; The emacs universal-argument function is very useful for native emacs | |
348 ;; commands. This line maps universal-argument to Gold-PF1 | |
349 (define-key GOLD-SS3-map "P" 'universal-argument) ; Gold-PF1 | |
350 | |
351 ;; Make KP7 move by paragraphs, instead of pages. | |
352 (define-key SS3-map "w" 'tpu-paragraph) ; KP7 | |
353 | |
354 ;; TPU-edt assumes you have the ispell spelling checker; | |
355 ;; Un-comment this line if you don't. | |
356 ;(setq tpu-have-spell nil) | |
357 | |
358 ;; Display the TPU-edt version. | |
359 (tpu-version) | |
360 | |
361 ;; End of .emacs - a sample emacs initialization file | |
362 | |
363 ;; After initialization with the .emacs file shown above, the editing | |
364 ;; keys have been re-mapped to look like this: | |
365 | |
366 ;; _______________________ _______________________________ | |
367 ;; | HELP | Do | | | | | | | |
368 ;; |KeyDefs| | | | | | | | |
369 ;; |_______|_______________| |_______|_______|_______|_______| | |
370 ;; _______________________ _______________________________ | |
371 ;; | Find |Insert |Remove | | Gold | HELP |FndNxt | Del L | | |
372 ;; | | |Sto Tex| | U Arg |E-Help | Find |Undel L| | |
373 ;; |_______|_______|_______| |_______|_______|_______|_______| | |
374 ;; |Select |Pre Scr|Nex Scr| |Paragra| Sect |Append | Del W | | |
375 ;; | Reset |Pre Win|Nex Win| | Do | Fill |Replace|Undel W| | |
376 ;; |_______|_______|_______| |_______|_______|_______|_______| | |
377 ;; |Move up| |Forward|Reverse|Remove | Del C | | |
378 ;; |Tscreen| |Bottom | Top |Insert |Undel C| | |
379 ;; _______|_______|_______ |_______|_______|_______|_______| | |
380 ;; |Mov Lef|Mov Dow|Mov Rig| | Word | EOL | Char | | | |
381 ;; |PanLeft|Bscreen|PanRigh| |ChngCas|Del EOL|SpecIns| Enter | | |
382 ;; |_______|_______|_______| |_______|_______|_______| | | |
383 ;; | Line |Select | Subs | | |
384 ;; | Open Line | Reset | | | |
385 ;; |_______________|_______|_______| | |
386 | |
387 ;; Astute emacs hackers will realize that on systems where TPU-edt is | |
388 ;; installed, this documentation file can be loaded to produce the above | |
389 ;; editing keypad layout. In fact, to get all the changes in the sample | |
390 ;; initialization file, you only need a one line initialization file: | |
391 | |
392 ;; (load "tpu-doc") | |
393 | |
394 ;; wow! | |
395 | |
396 | |
397 ;; %% Compiling TPU-edt | |
398 | |
399 ;; It is not necessary to compile (byte-compile in emacs parlance) | |
400 ;; TPU-edt to use it. However, byte-compiled code loads and runs | |
401 ;; faster, and takes up less memory when loaded. To byte compile | |
402 ;; TPU-edt, use the following command. | |
403 | |
404 ;; emacs -batch -f batch-byte-compile tpu-edt.el | |
405 | |
406 ;; This will produce a file named tpu-edt.elc. This new file can be | |
407 ;; used in place of the original tpu-edt.el file. In commands where | |
408 ;; the file type is not specified, emacs always attempts to use the | |
409 ;; byte-compiled version before resorting to the source. | |
410 | |
411 | |
412 ;; %% Regular expressions in TPU-edt | |
413 | |
414 ;; Gold-* toggles TPU-edt regular expression mode. In regular expression | |
415 ;; mode, find, find next, replace, and substitute accept emacs regular | |
416 ;; expressions. A complete list of emacs regular expressions can be | |
417 ;; found using the emacs "info" command (it's somewhat like the VMS help | |
418 ;; command). Try the following sequence of commands: | |
419 | |
420 ;; DO info <enter info mode> | |
421 ;; m regex <select the "regular expression" topic> | |
422 ;; m directives <select the "directives" topic> | |
423 | |
424 ;; Type "q" to quit out of info mode. | |
425 | |
426 ;; There is a problem in regular expression mode when searching for | |
427 ;; empty strings, like beginning-of-line (^) and end-of-line ($). | |
428 ;; When searching for these strings, find-next may find the current | |
429 ;; string, instead of the next one. This can cause global replace and | |
430 ;; substitute commands to loop forever in the same location. For this | |
431 ;; reason, commands like | |
432 | |
433 ;; replace "^" "> " <add "> " to beginning of line> | |
434 ;; replace "$" "00711" <add "00711" to end of line> | |
435 | |
436 ;; may not work properly. | |
437 | |
438 ;; Commands like those above are very useful for adding text to the | |
439 ;; beginning or end of lines. They might work on a line-by-line basis, | |
440 ;; but go into an infinite loop if the "all" response is specified. If | |
441 ;; the goal is to add a string to the beginning or end of a particular | |
442 ;; set of lines TPU-edt provides functions to do this. | |
443 | |
444 ;; Gold-^ Add a string at BOL in region or buffer | |
445 ;; Gold-$ Add a string at EOL in region or buffer | |
446 | |
447 ;; There is also a TPU-edt interface to the native emacs string | |
448 ;; replacement commands. Gold-/ invokes this command. It accepts | |
449 ;; regular expressions if TPU-edt is in regular expression mode. Given | |
450 ;; a repeat count, it will perform the replacement without prompting | |
451 ;; for confirmation. | |
452 | |
453 ;; This command replaces empty strings correctly, however, it has its | |
454 ;; drawbacks. As a native emacs command, it has a different interface | |
455 ;; than the emulated TPU commands. Also, it works only in the forward | |
456 ;; direction, regardless of the current TPU-edt direction. | |
457 | |
458 | |
459 ;; %% Etcetera | |
460 | |
461 ;; That's TPU-edt in a nutshell... | |
462 | |
463 ;; Please send any bug reports, feature requests, or cookies to the | |
464 ;; author, Rob Riepel, at the address shown by the tpu-version command | |
465 ;; (Gold-V). | |
466 | |
467 ;; Share and enjoy... Rob Riepel 7/93 | |
468 | |
469 ;;; tpu-doc.el ends here |