annotate lisp/emulation/tpu-edt.el @ 96627:ae085a544367

Use more correct IPA characters for English pronunciation. Add the combining acute accent after the accented vowel in the Russian example like it is used in dictionaries.
author Juri Linkov <juri@jurta.org>
date Sat, 12 Jul 2008 20:41:45 +0000
parents f8e080083e06
children ab6494b53df0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1 ;;; tpu-edt.el --- Emacs emulating TPU emulating EDT
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
2
74466
1d4b1a32fd66 Update copyright years.
Glenn Morris <rgm@gnu.org>
parents: 73743
diff changeset
3 ;; Copyright (C) 1993, 1994, 1995, 2000, 2001, 2002, 2003, 2004,
87569
a9700a12dbad (tpu-load-xkeys): Recommend to run the
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 86531
diff changeset
4 ;; 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
5
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
6 ;; Author: Rob Riepel <riepel@networking.stanford.edu>
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
7 ;; Maintainer: Rob Riepel <riepel@networking.stanford.edu>
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
8 ;; Version: 4.5
5140
9cde7d7fea1f Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 4549
diff changeset
9 ;; Keywords: emulations
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
10
4450
325bc5407213 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4421
diff changeset
11 ;; This file is part of GNU Emacs.
325bc5407213 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4421
diff changeset
12
94658
eb7b2376cae5 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 94152
diff changeset
13 ;; GNU Emacs is free software: you can redistribute it and/or modify
4450
325bc5407213 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4421
diff changeset
14 ;; it under the terms of the GNU General Public License as published by
94658
eb7b2376cae5 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 94152
diff changeset
15 ;; the Free Software Foundation, either version 3 of the License, or
eb7b2376cae5 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 94152
diff changeset
16 ;; (at your option) any later version.
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
17
4450
325bc5407213 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4421
diff changeset
18 ;; GNU Emacs is distributed in the hope that it will be useful,
325bc5407213 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4421
diff changeset
19 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
325bc5407213 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4421
diff changeset
20 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
325bc5407213 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4421
diff changeset
21 ;; GNU General Public License for more details.
325bc5407213 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4421
diff changeset
22
325bc5407213 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4421
diff changeset
23 ;; You should have received a copy of the GNU General Public License
94658
eb7b2376cae5 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 94152
diff changeset
24 ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
25
7982
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
26 ;; TPU-edt is based on tpu.el by Jeff Kowalski and Bob Covey.
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
27
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
28 ;;; Commentary:
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
29
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
30 ;; %% TPU-edt -- Emacs emulating TPU emulating EDT
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
31
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
32 ;; %% Contents
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
33
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
34 ;; % Introduction
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
35 ;; % Differences Between TPU-edt and DEC TPU/edt
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
36 ;; % Starting TPU-edt
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
37 ;; % Customizing TPU-edt using the Emacs Initialization File
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
38 ;; % Regular Expressions in TPU-edt
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
39
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
40
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
41 ;; %% Introduction
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
42
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
43 ;; TPU-edt emulates the popular DEC VMS editor EDT (actually, it emulates
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
44 ;; DEC TPU's EDT emulation, hence the name TPU-edt). TPU-edt features the
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
45 ;; following TPU/edt functionality:
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
46
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
47 ;; . EDT keypad
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
48 ;; . On-line help
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
49 ;; . Repeat counts
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
50 ;; . Scroll margins
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
51 ;; . Learn sequences
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
52 ;; . Free cursor mode
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
53 ;; . Rectangular cut and paste
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
54 ;; . Multiple windows and buffers
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
55 ;; . TPU line-mode REPLACE command
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
56 ;; . Wild card search and substitution
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
57 ;; . Configurable through an initialization file
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
58 ;; . History recall of search strings, file names, and commands
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
59
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
60 ;; Please note that TPU-edt does NOT emulate TPU. It emulates TPU's EDT
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
61 ;; emulation. Very few TPU line-mode commands are supported.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
62
16423
ecbb741d054c (tpu-load-xkeys): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents: 16307
diff changeset
63 ;; TPU-edt, like its VMS cousin, works on VT-series terminals with DEC
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
64 ;; style keyboards. VT terminal emulators, including xterm with the
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
65 ;; appropriate key translations, work just fine too.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
66
87569
a9700a12dbad (tpu-load-xkeys): Recommend to run the
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 86531
diff changeset
67 ;; TPU-edt works with X-windows. This is accomplished through a TPU-edt
a9700a12dbad (tpu-load-xkeys): Recommend to run the
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 86531
diff changeset
68 ;; X key map. The tpu-mapper command creates this map and stores it in a
a9700a12dbad (tpu-load-xkeys): Recommend to run the
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 86531
diff changeset
69 ;; file. See the tpu-mapper command help for more information, or just
a9700a12dbad (tpu-load-xkeys): Recommend to run the
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 86531
diff changeset
70 ;; run it and follow the directions.
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
71
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
72
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
73 ;; %% Differences Between TPU-edt and DEC TPU/edt
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
74
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
75 ;; In some cases, Emacs doesn't support text highlighting, so selected
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
76 ;; regions are not shown in inverse video. Emacs uses the concept of "the
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
77 ;; mark". The mark is set at one end of a selected region; the cursor is
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
78 ;; at the other. In cases where the selected region cannot be shown in
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
79 ;; inverse video an at sign (@) appears in the mode line when mark is set.
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
80 ;; The native Emacs command ^X^X (Control-X twice) exchanges the cursor
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
81 ;; with the mark; this provides a handy way to find the location of the
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
82 ;; mark.
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
83
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
84 ;; In TPU the cursor can be either bound or free. Bound means the cursor
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
85 ;; cannot wander outside the text of the file being edited. Free means
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
86 ;; the arrow keys can move the cursor past the ends of lines. Free is the
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
87 ;; default mode in TPU; bound is the only mode in EDT. Bound is the only
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
88 ;; mode in the base version of TPU-edt; optional extensions add an
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
89 ;; approximation of free mode, see the commentary in tpu-extras.el for
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
90 ;; details.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
91
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
92 ;; Like TPU, Emacs uses multiple buffers. Some buffers are used to hold
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
93 ;; files you are editing; other "internal" buffers are used for Emacs' own
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
94 ;; purposes (like showing you help). Here are some commands for dealing
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
95 ;; with buffers.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
96
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
97 ;; Gold-B moves to next buffer, including internal buffers
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
98 ;; Gold-N moves to next buffer containing a file
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
99 ;; Gold-M brings up a buffer menu (like TPU "show buffers")
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
100
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
101 ;; Emacs is very fond of throwing up new windows. Dealing with all these
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
102 ;; windows can be a little confusing at first, so here are a few commands
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
103 ;; to that may help:
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
104
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
105 ;; Gold-Next_Scr moves to the next window on the screen
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
106 ;; Gold-Prev_Scr moves to the previous window on the screen
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
107 ;; Gold-TAB also moves to the next window on the screen
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
108
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
109 ;; Control-x 1 deletes all but the current window
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
110 ;; Control-x 0 deletes the current window
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
111
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
112 ;; Note that the buffers associated with deleted windows still exist!
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
113
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
114 ;; Like TPU, TPU-edt has a "command" function, invoked with Gold-KP7 or
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
115 ;; Do. Most of the commands available are Emacs commands. Some TPU
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
116 ;; commands are available, they are: replace, exit, quit, include, and
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
117 ;; Get (unfortunately, "get" is an internal Emacs function, so we are
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
118 ;; stuck with "Get" - to make life easier, Get is available as Gold-g).
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
119
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
120 ;; TPU-edt supports the recall of commands, file names, and search
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
121 ;; strings. The history of strings recalled differs slightly from
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
122 ;; TPU/edt, but it is still very convenient.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
123
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
124 ;; Help is available! The traditional help keys (Help and PF2) display
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
125 ;; a small help file showing the default keypad layout, control key
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
126 ;; functions, and Gold key functions. Pressing any key inside of help
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
127 ;; splits the screen and prints a description of the function of the
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
128 ;; pressed key. Gold-PF2 invokes the native Emacs help, with its
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
129 ;; zillions of options.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
130
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
131 ;; Thanks to Emacs, TPU-edt has some extensions that may make your life
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
132 ;; easier, or at least more interesting. For example, Gold-r toggles
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
133 ;; TPU-edt rectangular mode. In rectangular mode, Remove and Insert work
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
134 ;; on rectangles. Likewise, Gold-* toggles TPU-edt regular expression
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
135 ;; mode. In regular expression mode Find, Find Next, and the line-mode
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
136 ;; replace command work with regular expressions. [A regular expression
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
137 ;; is a pattern that denotes a set of strings; like VMS wildcards.]
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
138
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
139 ;; Emacs also gives TPU-edt the undo and occur functions. Undo does
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
140 ;; what it says; it undoes the last change. Multiple undos in a row
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
141 ;; undo multiple changes. For your convenience, undo is available on
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
142 ;; Gold-u. Occur shows all the lines containing a specific string in
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
143 ;; another window. Moving to that window, and typing ^C^C (Control-C
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
144 ;; twice) on a particular line moves you back to the original window
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
145 ;; at that line. Occur is on Gold-o.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
146
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
147 ;; Finally, as you edit, remember that all the power of Emacs is at
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
148 ;; your disposal. It really is a fantastic tool. You may even want to
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
149 ;; take some time and read the Emacs tutorial; perhaps not to learn the
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
150 ;; native Emacs key bindings, but to get a feel for all the things
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
151 ;; Emacs can do for you. The Emacs tutorial is available from the
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
152 ;; Emacs help function: "Gold-PF2 t"
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
153
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
154
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
155 ;; %% Starting TPU-edt
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
156
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
157 ;; All you have to do to start TPU-edt, is turn it on. This can be
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
158 ;; done from the command line when running Emacs.
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
159
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
160 ;; prompt> emacs -f tpu-edt
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
161
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
162 ;; If you've already started Emacs, turn on TPU-edt using the tpu-edt
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
163 ;; command. First press `M-x' (that's usually `ESC' followed by `x')
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
164 ;; and type `tpu-edt' followed by a carriage return.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
165
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
166 ;; If you like TPU-edt and want to use it all the time, you can start
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
167 ;; TPU-edt using the Emacs initialization file, .emacs. Simply create
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
168 ;; a .emacs file in your home directory containing the line:
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
169
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
170 ;; (tpu-edt)
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
171
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
172 ;; That's all you need to do to start TPU-edt.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
173
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
174
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
175 ;; %% Customizing TPU-edt using the Emacs Initialization File
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
176
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
177 ;; The following is a sample Emacs initialization file. It shows how to
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
178 ;; invoke TPU-edt, and how to customize it.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
179
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
180 ;; ; .emacs - a sample Emacs initialization file
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
181
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
182 ;; ; Turn on TPU-edt
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
183 ;; (tpu-edt)
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
184
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
185 ;; ; Set scroll margins 10% (top) and 15% (bottom).
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
186 ;; (tpu-set-scroll-margins "10%" "15%")
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
187
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
188 ;; ; Load the vtxxx terminal control functions.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
189 ;; (load "vt-control" t)
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
190
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
191 ;; ; TPU-edt treats words like EDT; here's how to add word separators.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
192 ;; ; Note that backslash (\) and double quote (") are quoted with '\'.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
193 ;; (tpu-add-word-separators "]\\[-_,.\"=+()'/*#:!&;$")
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
194
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
195 ;; ; Emacs is happy to save files without a final newline; other Unix
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
196 ;; ; programs hate that! Here we make sure that files end with newlines.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
197 ;; (setq require-final-newline t)
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
198
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
199 ;; ; Emacs uses Control-s and Control-q. Problems can occur when using
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
200 ;; ; Emacs on terminals that use these codes for flow control (Xon/Xoff
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
201 ;; ; flow control). These lines disable Emacs' use of these characters.
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
202 ;; (global-unset-key "\C-s")
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
203 ;; (global-unset-key "\C-q")
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
204
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
205 ;; ; The Emacs universal-argument function is very useful.
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
206 ;; ; This line maps universal-argument to Gold-PF1.
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
207 ;; (define-key tpu-gold-map [kp_f1] 'universal-argument) ; Gold-PF1
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
208
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
209 ;; ; Make KP7 move by paragraphs, instead of pages.
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
210 ;; (define-key tpu-global-map [kf_7] 'tpu-paragraph) ; KP7
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
211
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
212 ;; ; Repeat the preceding mappings for X-windows.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
213 ;; (cond
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
214 ;; (window-system
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
215 ;; (define-key tpu-global-map [kp_7] 'tpu-paragraph) ; KP7
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
216 ;; (define-key tpu-gold-map [kp_f1] 'universal-argument))) ; GOLD-PF1
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
217
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
218 ;; ; Display the TPU-edt version.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
219 ;; (tpu-version)
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
220
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
221
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
222 ;; %% Regular Expressions in TPU-edt
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
223
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
224 ;; Gold-* toggles TPU-edt regular expression mode. In regular expression
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
225 ;; mode, find, find next, replace, and substitute accept Emacs regular
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
226 ;; expressions. A complete list of Emacs regular expressions can be found
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
227 ;; using the Emacs "info" command (it's somewhat like the VMS help
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
228 ;; command). Try the following sequence of commands:
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
229
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
230 ;; DO info <enter info mode>
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
231 ;; m emacs <select the "emacs" topic>
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
232 ;; m regexs <select the "regular expression" topic>
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
233
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
234 ;; Type "q" to quit out of info mode.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
235
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
236 ;; There is a problem in regular expression mode when searching for empty
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
237 ;; strings, like beginning-of-line (^) and end-of-line ($). When searching
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
238 ;; for these strings, find-next may find the current string, instead of the
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
239 ;; next one. This can cause global replace and substitute commands to loop
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
240 ;; forever in the same location. For this reason, commands like
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
241
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
242 ;; replace "^" "> " <add "> " to beginning of line>
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
243 ;; replace "$" "00711" <add "00711" to end of line>
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
244
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
245 ;; may not work properly.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
246
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
247 ;; Commands like those above are very useful for adding text to the
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
248 ;; beginning or end of lines. They might work on a line-by-line basis, but
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
249 ;; go into an infinite loop if the "all" response is specified. If the
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
250 ;; goal is to add a string to the beginning or end of a particular set of
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
251 ;; lines TPU-edt provides functions to do this.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
252
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
253 ;; Gold-^ Add a string at BOL in region or buffer
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
254 ;; Gold-$ Add a string at EOL in region or buffer
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
255
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
256 ;; There is also a TPU-edt interface to the native Emacs string replacement
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
257 ;; commands. Gold-/ invokes this command. It accepts regular expressions
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
258 ;; if TPU-edt is in regular expression mode. Given a repeat count, it will
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
259 ;; perform the replacement without prompting for confirmation.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
260
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
261 ;; This command replaces empty strings correctly, however, it has its
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
262 ;; drawbacks. As a native Emacs command, it has a different interface
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
263 ;; than the emulated TPU commands. Also, it works only in the forward
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
264 ;; direction, regardless of the current TPU-edt direction.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
265
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
266 ;;; Todo/Bugs:
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
267
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
268 ;; We shouldn't use vt100 ESC sequences since it is uselessly fighting
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
269 ;; against function-key-map. Better use real key names.
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
270
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
271 ;;; Code:
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
272
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
273 ;; we use picture-mode functions
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
274 (require 'picture)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
275
21628
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
276 (defgroup tpu nil
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
277 "Emacs emulating TPU emulating EDT."
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
278 :prefix "tpu-"
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
279 :group 'emulations)
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
280
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
281
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
282 ;;;
7982
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
283 ;;; Version Information
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
284 ;;;
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
285 (defconst tpu-version "4.5" "TPU-edt version number.")
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
286
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
287
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
288 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
289 ;;; User Configurable Variables
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
290 ;;;
21628
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
291 (defcustom tpu-have-ispell t
92084
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
292 "Non-nil means `tpu-spell-check' uses `ispell-region' for spell checking.
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
293 Otherwise, use `spell-region'."
21628
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
294 :type 'boolean
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
295 :group 'tpu)
94152
dddec8295783 (tpu-have-ispell): Fix typo in obsolescence declaration.
Juanma Barranquero <lekktu@gmail.com>
parents: 92084
diff changeset
296 (make-obsolete-variable 'tpu-have-ispell "the `spell' package is obsolete."
92084
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
297 "23.1")
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
298
21628
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
299 (defcustom tpu-kill-buffers-silently nil
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
300 "If non-nil, TPU-edt kills modified buffers without asking."
21628
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
301 :type 'boolean
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
302 :group 'tpu)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
303
21628
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
304 (defcustom tpu-percent-scroll 75
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
305 "Percentage of the screen to scroll for next/previous screen commands."
21628
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
306 :type 'integer
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
307 :group 'tpu)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
308
21628
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
309 (defcustom tpu-pan-columns 16
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
310 "Number of columns the tpu-pan functions scroll left or right."
21628
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
311 :type 'integer
4a3e3887c0dc Customize.
Stephen Eglen <stephen@gnu.org>
parents: 20128
diff changeset
312 :group 'tpu)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
313
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
314
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
315 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
316 ;;; Global Keymaps
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
317 ;;;
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
318
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
319 (defvar tpu-gold-map
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
320 (let ((map (make-keymap)))
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
321 ;; Previously we used escape sequences here. We now instead presume
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
322 ;; that term/*.el does its job to map the escape sequence to the right
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
323 ;; key-symbol.
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
324
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
325 (define-key map [up] 'tpu-move-to-beginning) ; up-arrow
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
326 (define-key map [down] 'tpu-move-to-end) ; down-arrow
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
327 (define-key map [right] 'end-of-line) ; right-arrow
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
328 (define-key map [left] 'beginning-of-line) ; left-arrow
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
329
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
330 ;; (define-key map [find] nil) ; Find
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
331 ;; (define-key map [insert] nil) ; Insert Here
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
332 (define-key map [delete] 'tpu-store-text) ; Remove
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
333 (define-key map [select] 'tpu-unselect) ; Select
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
334 (define-key map [prior] 'tpu-previous-window) ; Prev Screen
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
335 (define-key map [next] 'tpu-next-window) ; Next Screen
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
336
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
337 ;; (define-key map [f1] nil) ; F1
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
338 ;; (define-key map [f2] nil) ; F2
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
339 ;; (define-key map [f3] nil) ; F3
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
340 ;; (define-key map [f4] nil) ; F4
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
341 ;; (define-key map [f5] nil) ; F5
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
342 ;; (define-key map [f6] nil) ; F6
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
343 ;; (define-key map [f7] nil) ; F7
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
344 ;; (define-key map [f8] nil) ; F8
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
345 ;; (define-key map [f9] nil) ; F9
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
346 ;; (define-key map [f10] nil) ; F10
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
347 ;; (define-key map [f11] nil) ; F11
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
348 ;; (define-key map [f12] nil) ; F12
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
349 ;; (define-key map [f13] nil) ; F13
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
350 ;; (define-key map [f14] nil) ; F14
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
351 (define-key map [help] 'describe-bindings) ; HELP
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
352 ;; (define-key map [menu] nil) ; DO
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
353 (define-key map [f17] 'tpu-drop-breadcrumb) ; F17
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
354 ;; (define-key map [f18] nil) ; F18
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
355 ;; (define-key map [f19] nil) ; F19
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
356 ;; (define-key map [f20] nil) ; F20
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
357
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
358 (define-key map [kp-f1] 'keyboard-quit) ; PF1
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
359 (define-key map [kp-f2] 'help-for-help) ; PF2
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
360 (define-key map [kp-f3] 'tpu-search) ; PF3
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
361 (define-key map [kp-f4] 'tpu-undelete-lines) ; PF4
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
362 (define-key map [kp-0] 'open-line) ; KP0
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
363 (define-key map [kp-1] 'tpu-change-case) ; KP1
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
364 (define-key map [kp-2] 'tpu-delete-to-eol) ; KP2
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
365 (define-key map [kp-3] 'tpu-special-insert) ; KP3
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
366 (define-key map [kp-4] 'tpu-move-to-end) ; KP4
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
367 (define-key map [kp-5] 'tpu-move-to-beginning) ; KP5
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
368 (define-key map [kp-6] 'tpu-paste) ; KP6
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
369 (define-key map [kp-7] 'execute-extended-command) ; KP7
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
370 (define-key map [kp-8] 'tpu-fill) ; KP8
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
371 (define-key map [kp-9] 'tpu-replace) ; KP9
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
372 (define-key map [kp-subtract] 'tpu-undelete-words) ; KP-
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
373 (define-key map [kp-separator] 'tpu-undelete-char) ; KP,
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
374 (define-key map [kp-decimal] 'tpu-unselect) ; KP.
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
375 (define-key map [kp-enter] 'tpu-substitute) ; KPenter
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
376
73743
3d9ebd99f905 (tpu-help-text, tpu-save-all-buffers-kill-emacs, tpu-emacs-replace,
Juanma Barranquero <lekktu@gmail.com>
parents: 68648
diff changeset
377 ;;
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
378 (define-key map "\C-A" 'tpu-toggle-overwrite-mode) ; ^A
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
379 ;; (define-key map "\C-B" nil) ; ^B
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
380 ;; (define-key map "\C-C" nil) ; ^C
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
381 ;; (define-key map "\C-D" nil) ; ^D
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
382 ;; (define-key map "\C-E" nil) ; ^E
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
383 (define-key map "\C-F" 'set-visited-file-name) ; ^F
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
384 (define-key map "\C-g" 'keyboard-quit) ; safety first
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
385 (define-key map "\C-h" 'delete-other-windows) ; BS
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
386 (define-key map "\C-i" 'other-window) ; TAB
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
387 ;; (define-key map "\C-J" nil) ; ^J
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
388 (define-key map "\C-K" 'tpu-define-macro-key) ; ^K
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
389 (define-key map "\C-l" 'downcase-region) ; ^L
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
390 ;; (define-key map "\C-M" nil) ; ^M
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
391 ;; (define-key map "\C-N" nil) ; ^N
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
392 ;; (define-key map "\C-O" nil) ; ^O
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
393 ;; (define-key map "\C-P" nil) ; ^P
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
394 ;; (define-key map "\C-Q" nil) ; ^Q
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
395 ;; (define-key map "\C-R" nil) ; ^R
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
396 ;; (define-key map "\C-S" nil) ; ^S
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
397 (define-key map "\C-T" 'tpu-toggle-control-keys) ; ^T
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
398 (define-key map "\C-u" 'upcase-region) ; ^U
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
399 ;; (define-key map "\C-V" nil) ; ^V
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
400 (define-key map "\C-w" 'tpu-write-current-buffers) ; ^W
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
401 ;; (define-key map "\C-X" nil) ; ^X
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
402 ;; (define-key map "\C-Y" nil) ; ^Y
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
403 ;; (define-key map "\C-Z" nil) ; ^Z
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
404 (define-key map " " 'undo) ; SPC
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
405 ;; (define-key map "!" nil) ; !
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
406 ;; (define-key map "#" nil) ; #
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
407 (define-key map "$" 'tpu-add-at-eol) ; $
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
408 (define-key map "%" 'tpu-goto-percent) ; %
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
409 ;; (define-key map "&" nil) ; &
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
410 ;; (define-key map "(" nil) ; (
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
411 ;; (define-key map ")" nil) ; )
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
412 (define-key map "*" 'tpu-toggle-regexp) ; *
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
413 ;; (define-key map "+" nil) ; +
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
414 (define-key map "," 'tpu-goto-breadcrumb) ; ,
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
415 (define-key map "-" 'negative-argument) ; -
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
416 (define-key map "." 'tpu-drop-breadcrumb) ; .
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
417 (define-key map "/" 'tpu-emacs-replace) ; /
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
418 (define-key map "0" 'digit-argument) ; 0
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
419 (define-key map "1" 'digit-argument) ; 1
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
420 (define-key map "2" 'digit-argument) ; 2
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
421 (define-key map "3" 'digit-argument) ; 3
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
422 (define-key map "4" 'digit-argument) ; 4
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
423 (define-key map "5" 'digit-argument) ; 5
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
424 (define-key map "6" 'digit-argument) ; 6
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
425 (define-key map "7" 'digit-argument) ; 7
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
426 (define-key map "8" 'digit-argument) ; 8
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
427 (define-key map "9" 'digit-argument) ; 9
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
428 ;; (define-key map ":" nil) ; :
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
429 (define-key map ";" 'tpu-trim-line-ends) ; ;
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
430 ;; (define-key map "<" nil) ; <
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
431 ;; (define-key map "=" nil) ; =
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
432 ;; (define-key map ">" nil) ; >
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
433 (define-key map "?" 'tpu-spell-check) ; ?
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
434 ;; (define-key map "A" 'tpu-toggle-newline-and-indent) ; A
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
435 ;; (define-key map "B" 'tpu-next-buffer) ; B
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
436 ;; (define-key map "C" 'repeat-complex-command) ; C
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
437 ;; (define-key map "D" 'shell-command) ; D
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
438 ;; (define-key map "E" 'tpu-exit) ; E
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
439 ;; (define-key map "F" 'tpu-cursor-free-mode) ; F
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
440 ;; (define-key map "G" 'tpu-get) ; G
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
441 ;; (define-key map "H" nil) ; H
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
442 ;; (define-key map "I" 'tpu-include) ; I
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
443 ;; (define-key map "K" 'tpu-kill-buffer) ; K
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
444 (define-key map "L" 'tpu-what-line) ; L
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
445 ;; (define-key map "M" 'buffer-menu) ; M
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
446 ;; (define-key map "N" 'tpu-next-file-buffer) ; N
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
447 ;; (define-key map "O" 'occur) ; O
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
448 (define-key map "P" 'lpr-buffer) ; P
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
449 ;; (define-key map "Q" 'tpu-quit) ; Q
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
450 ;; (define-key map "R" 'tpu-toggle-rectangle) ; R
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
451 ;; (define-key map "S" 'replace) ; S
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
452 ;; (define-key map "T" 'tpu-line-to-top-of-window) ; T
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
453 ;; (define-key map "U" 'undo) ; U
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
454 ;; (define-key map "V" 'tpu-version) ; V
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
455 ;; (define-key map "W" 'save-buffer) ; W
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
456 ;; (define-key map "X" 'tpu-save-all-buffers-kill-emacs) ; X
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
457 ;; (define-key map "Y" 'copy-region-as-kill) ; Y
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
458 ;; (define-key map "Z" 'suspend-emacs) ; Z
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
459 (define-key map "[" 'blink-matching-open) ; [
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
460 ;; (define-key map "\\" nil) ; \
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
461 (define-key map "]" 'blink-matching-open) ; ]
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
462 (define-key map "^" 'tpu-add-at-bol) ; ^
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
463 (define-key map "_" 'split-window-vertically) ; -
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
464 (define-key map "`" 'what-line) ; `
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
465 (define-key map "a" 'tpu-toggle-newline-and-indent) ; a
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
466 (define-key map "b" 'tpu-next-buffer) ; b
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
467 (define-key map "c" 'repeat-complex-command) ; c
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
468 (define-key map "d" 'shell-command) ; d
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
469 (define-key map "e" 'tpu-exit) ; e
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
470 (define-key map "f" 'tpu-cursor-free-mode) ; f
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
471 (define-key map "g" 'tpu-get) ; g
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
472 ;; (define-key map "h" nil) ; h
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
473 (define-key map "i" 'tpu-include) ; i
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
474 (define-key map "k" 'tpu-kill-buffer) ; k
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
475 (define-key map "l" 'goto-line) ; l
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
476 (define-key map "m" 'buffer-menu) ; m
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
477 (define-key map "n" 'tpu-next-file-buffer) ; n
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
478 (define-key map "o" 'occur) ; o
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
479 (define-key map "p" 'lpr-region) ; p
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
480 (define-key map "q" 'tpu-quit) ; q
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
481 (define-key map "r" 'tpu-toggle-rectangle) ; r
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
482 (define-key map "s" 'replace) ; s
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
483 (define-key map "t" 'tpu-line-to-top-of-window) ; t
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
484 (define-key map "u" 'undo) ; u
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
485 (define-key map "v" 'tpu-version) ; v
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
486 (define-key map "w" 'save-buffer) ; w
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
487 (define-key map "x" 'tpu-save-all-buffers-kill-emacs) ; x
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
488 (define-key map "y" 'copy-region-as-kill) ; y
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
489 (define-key map "z" 'suspend-emacs) ; z
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
490 ;; (define-key map "{" nil) ; {
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
491 (define-key map "|" 'split-window-horizontally) ; |
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
492 ;; (define-key map "}" nil) ; }
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
493 (define-key map "~" 'exchange-point-and-mark) ; ~
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
494 (define-key map "\177" 'delete-window) ; <X]
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
495 map)
14012
8ade85f685c2 (GOLD-map, GOLD-CSI-map, GOLD-SS3-map, tpu-set-mark):
Karl Heuer <kwzh@gnu.org>
parents: 13377
diff changeset
496 "Maps the function keys on the VT100 keyboard preceded by PF1.
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
497 GOLD is the ASCII 7-bit escape sequence <ESC>OP.")
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
498 (define-obsolete-variable-alias 'GOLD-map 'tpu-gold-map "23.1")
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
499
77747
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
500 (defvar tpu-global-map
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
501 (let ((map (make-sparse-keymap)))
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
502
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
503 ;; Previously defined in CSI-map. We now presume that term/*.el does
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
504 ;; its job to map the escape sequence to the right key-symbol.
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
505 (define-key map [find] 'tpu-search) ; Find
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
506 (define-key map [insert] 'tpu-paste) ; Insert Here
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
507 (define-key map [delete] 'tpu-cut) ; Remove
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
508 (define-key map [select] 'tpu-select) ; Select
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
509 (define-key map [prior] 'tpu-scroll-window-down) ; Prev Screen
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
510 (define-key map [next] 'tpu-scroll-window-up) ; Next Screen
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
511
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
512 ;; (define-key map [f1] nil) ; F1
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
513 ;; (define-key map [f2] nil) ; F2
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
514 ;; (define-key map [f3] nil) ; F3
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
515 ;; (define-key map [f4] nil) ; F4
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
516 ;; (define-key map [f5] nil) ; F5
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
517 ;; (define-key map [f6] nil) ; F6
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
518 ;; (define-key map [f7] nil) ; F7
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
519 ;; (define-key map [f8] nil) ; F8
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
520 ;; (define-key map [f9] nil) ; F9
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
521 (define-key map [f10] 'tpu-exit) ; F10
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
522 (define-key map [f11] 'tpu-insert-escape) ; F11 (ESC)
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
523 (define-key map [f12] 'tpu-next-beginning-of-line) ; F12 (BS)
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
524 (define-key map [f13] 'tpu-delete-previous-word) ; F13 (LF)
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
525 (define-key map [f14] 'tpu-toggle-overwrite-mode) ; F14
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
526 (define-key map [help] 'tpu-help) ; HELP
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
527 (define-key map [menu] 'execute-extended-command) ; DO
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
528 (define-key map [f17] 'tpu-goto-breadcrumb) ; F17
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
529 ;; (define-key map [f18] nil) ; F18
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
530 ;; (define-key map [f19] nil) ; F19
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
531 ;; (define-key map [f20] nil) ; F20
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
532
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
533
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
534 ;; Previously defined in SS3-map. We now presume that term/*.el does
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
535 ;; its job to map the escape sequence to the right key-symbol.
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
536 (define-key map [kp-f1] tpu-gold-map) ; GOLD map
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
537 ;;
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
538 (define-key map [up] 'tpu-previous-line) ; up
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
539 (define-key map [down] 'tpu-next-line) ; down
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
540 (define-key map [right] 'tpu-forward-char) ; right
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
541 (define-key map [left] 'tpu-backward-char) ; left
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
542
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
543 (define-key map [kp-f2] 'tpu-help) ; PF2
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
544 (define-key map [kp-f3] 'tpu-search-again) ; PF3
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
545 (define-key map [kp-f4] 'tpu-delete-current-line) ; PF4
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
546 (define-key map [kp-0] 'tpu-line) ; KP0
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
547 (define-key map [kp-1] 'tpu-word) ; KP1
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
548 (define-key map [kp-2] 'tpu-end-of-line) ; KP2
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
549 (define-key map [kp-3] 'tpu-char) ; KP3
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
550 (define-key map [kp-4] 'tpu-advance-direction) ; KP4
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
551 (define-key map [kp-5] 'tpu-backup-direction) ; KP5
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
552 (define-key map [kp-6] 'tpu-cut) ; KP6
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
553 (define-key map [kp-7] 'tpu-page) ; KP7
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
554 (define-key map [kp-8] 'tpu-scroll-window) ; KP8
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
555 (define-key map [kp-9] 'tpu-append-region) ; KP9
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
556 (define-key map [kp-subtract] 'tpu-delete-current-word) ; KP-
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
557 (define-key map [kp-separator] 'tpu-delete-current-char) ; KP,
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
558 (define-key map [kp-decimal] 'tpu-select) ; KP.
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
559 (define-key map [kp-enter] 'newline) ; KPenter
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
560
77747
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
561 map)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
562 "TPU-edt global keymap.")
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
563
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
564
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
565 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
566 ;;; Global Variables
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
567 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
568 (defvar tpu-last-replaced-text ""
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
569 "Last text deleted by a TPU-edt replace command.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
570 (defvar tpu-last-deleted-region ""
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
571 "Last text deleted by a TPU-edt remove command.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
572 (defvar tpu-last-deleted-lines ""
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
573 "Last text deleted by a TPU-edt line-delete command.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
574 (defvar tpu-last-deleted-words ""
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
575 "Last text deleted by a TPU-edt word-delete command.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
576 (defvar tpu-last-deleted-char ""
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
577 "Last character deleted by a TPU-edt character-delete command.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
578
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
579 (defvar tpu-searching-forward t
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
580 "If non-nil, TPU-edt is searching in the forward direction.")
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
581 (defvar tpu-search-last-string ""
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
582 "Last text searched for by the TPU-edt search commands.")
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
583 (defvar tpu-search-overlay (make-overlay 1 1)
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
584 "Search highlight overlay.")
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
585 (overlay-put tpu-search-overlay 'face 'bold)
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
586
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
587 (defvar tpu-replace-overlay (make-overlay 1 1)
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
588 "Replace highlight overlay.")
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
589 (overlay-put tpu-replace-overlay 'face 'highlight)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
590
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
591 (defvar tpu-regexp-p nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
592 "If non-nil, TPU-edt uses regexp search and replace routines.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
593 (defvar tpu-rectangular-p nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
594 "If non-nil, TPU-edt removes and inserts rectangles.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
595 (defvar tpu-advance t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
596 "True when TPU-edt is operating in the forward direction.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
597 (defvar tpu-reverse nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
598 "True when TPU-edt is operating in the backward direction.")
12760
4bb9477d762a (tpu-control-keys): New initial value, nil.
Richard M. Stallman <rms@gnu.org>
parents: 12686
diff changeset
599 (defvar tpu-control-keys nil
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
600 "If non-nil, control keys are set to perform TPU functions.")
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
601 (defvar tpu-xkeys-file nil
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
602 "File containing TPU-edt X key map.")
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
603
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
604 (defvar tpu-rectangle-string nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
605 "Mode line string to identify rectangular mode.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
606 (defvar tpu-direction-string nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
607 "Mode line string to identify current direction.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
608
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
609 (defvar tpu-add-at-bol-hist nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
610 "History variable for tpu-edt-add-at-bol function.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
611 (defvar tpu-add-at-eol-hist nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
612 "History variable for tpu-edt-add-at-eol function.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
613 (defvar tpu-regexp-prompt-hist nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
614 "History variable for search and replace functions.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
615
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
616
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
617 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
618 ;;; Buffer Local Variables
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
619 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
620 (defvar tpu-newline-and-indent-p nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
621 "If non-nil, Return produces a newline and indents.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
622 (make-variable-buffer-local 'tpu-newline-and-indent-p)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
623
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
624 (defvar tpu-newline-and-indent-string nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
625 "Mode line string to identify AutoIndent mode.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
626 (make-variable-buffer-local 'tpu-newline-and-indent-string)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
627
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
628 (defvar tpu-saved-delete-func nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
629 "Saved value of the delete key.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
630 (make-variable-buffer-local 'tpu-saved-delete-func)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
631
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
632 (defvar tpu-buffer-local-map nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
633 "TPU-edt buffer local key map.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
634 (make-variable-buffer-local 'tpu-buffer-local-map)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
635
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
636
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
637 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
638 ;;; Mode Line - Modify the mode line to show the following
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
639 ;;;
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
640 ;;; o Mark state.
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
641 ;;; o Direction of motion.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
642 ;;; o Active rectangle mode.
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
643 ;;; o Active auto indent mode.
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
644 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
645 (defvar tpu-original-mm-alist minor-mode-alist)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
646
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
647 (defvar tpu-mark-flag "")
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
648 (make-variable-buffer-local 'tpu-mark-flag)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
649
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
650 (defun tpu-set-mode-line (for-tpu)
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
651 "Set ``minor-mode-alist'' for TPU-edt, or reset it to default Emacs."
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
652 (let ((entries '((tpu-newline-and-indent-p tpu-newline-and-indent-string)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
653 (tpu-rectangular-p tpu-rectangle-string)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
654 (tpu-direction-string tpu-direction-string)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
655 (tpu-mark-flag tpu-mark-flag))))
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
656 (dolist (entry entries)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
657 (if for-tpu
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
658 (add-to-list 'minor-mode-alist entry)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
659 (setq minor-mode-alist (remove entry minor-mode-alist))))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
660
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
661 (defun tpu-update-mode-line nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
662 "Make sure mode-line in the current buffer reflects all changes."
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
663 (setq tpu-mark-flag (if transient-mark-mode "" (if (tpu-mark) " @" " ")))
63960
4b67deb7c72e (tpu-emacs19-p): Var deleted. All references simplified.
Richard M. Stallman <rms@gnu.org>
parents: 63959
diff changeset
664 (force-mode-line-update))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
665
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
666 (cond ((featurep 'xemacs)
11546
66db15ec8ad8 Don't turn on tpu-edt mode.
Richard M. Stallman <rms@gnu.org>
parents: 8155
diff changeset
667 (add-hook 'zmacs-deactivate-region-hook 'tpu-update-mode-line)
66db15ec8ad8 Don't turn on tpu-edt mode.
Richard M. Stallman <rms@gnu.org>
parents: 8155
diff changeset
668 (add-hook 'zmacs-activate-region-hook 'tpu-update-mode-line))
63960
4b67deb7c72e (tpu-emacs19-p): Var deleted. All references simplified.
Richard M. Stallman <rms@gnu.org>
parents: 63959
diff changeset
669 (t
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
670 (add-hook 'activate-mark-hook 'tpu-update-mode-line)
11546
66db15ec8ad8 Don't turn on tpu-edt mode.
Richard M. Stallman <rms@gnu.org>
parents: 8155
diff changeset
671 (add-hook 'deactivate-mark-hook 'tpu-update-mode-line)))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
672
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
673
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
674 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
675 ;;; Match Markers -
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
676 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
677 ;;; Set in: Search
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
678 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
679 ;;; Used in: Replace, Substitute, Store-Text, Cut/Remove,
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
680 ;;; Append, and Change-Case
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
681 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
682 (defvar tpu-match-beginning-mark (make-marker))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
683 (defvar tpu-match-end-mark (make-marker))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
684
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
685 (defun tpu-set-match nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
686 "Set markers at match beginning and end."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
687 ;; Add one to beginning mark so it stays with the first character of
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
688 ;; the string even if characters are added just before the string.
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
689 (setq tpu-match-beginning-mark (copy-marker (match-beginning 0) t))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
690 (setq tpu-match-end-mark (copy-marker (match-end 0))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
691
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
692 (defun tpu-unset-match nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
693 "Unset match beginning and end markers."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
694 (set-marker tpu-match-beginning-mark nil)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
695 (set-marker tpu-match-end-mark nil))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
696
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
697 (defun tpu-match-beginning nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
698 "Return the location of the last match beginning."
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
699 (marker-position tpu-match-beginning-mark))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
700
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
701 (defun tpu-match-end nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
702 "Return the location of the last match end."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
703 (marker-position tpu-match-end-mark))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
704
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
705 (defun tpu-check-match nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
706 "Return t if point is between tpu-match markers.
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
707 Otherwise sets the tpu-match markers to nil and returns nil."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
708 ;; make sure 1- marker is in this buffer
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
709 ;; 2- point is at or after beginning marker
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
710 ;; 3- point is before ending marker, or in the case of
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
711 ;; zero length regions (like bol, or eol) that the
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
712 ;; beginning, end, and point are equal.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
713 (cond ((and
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
714 (equal (marker-buffer tpu-match-beginning-mark) (current-buffer))
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
715 (>= (point) (marker-position tpu-match-beginning-mark))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
716 (or
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
717 (< (point) (marker-position tpu-match-end-mark))
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
718 (and (= (marker-position tpu-match-beginning-mark)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
719 (marker-position tpu-match-end-mark))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
720 (= (marker-position tpu-match-end-mark) (point))))) t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
721 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
722 (tpu-unset-match) nil)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
723
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
724 (defun tpu-show-match-markers nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
725 "Show the values of the match markers."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
726 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
727 (if (markerp tpu-match-beginning-mark)
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
728 (message "(%s, %s) in %s -- current %s in %s"
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
729 (marker-position tpu-match-beginning-mark)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
730 (marker-position tpu-match-end-mark)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
731 (marker-buffer tpu-match-end-mark)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
732 (point) (current-buffer))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
733
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
734
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
735 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
736 ;;; Utilities
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
737 ;;;
63960
4b67deb7c72e (tpu-emacs19-p): Var deleted. All references simplified.
Richard M. Stallman <rms@gnu.org>
parents: 63959
diff changeset
738
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
739 (defun tpu-mark nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
740 "TPU-edt version of the mark function.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
741 Return the appropriate value of the mark for the current
11546
66db15ec8ad8 Don't turn on tpu-edt mode.
Richard M. Stallman <rms@gnu.org>
parents: 8155
diff changeset
742 version of Emacs."
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
743 (cond ((featurep 'xemacs) (mark (not zmacs-regions)))
63964
cb3452fe10a5 (tpu-mark): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents: 63962
diff changeset
744 (t (and mark-active (mark (not transient-mark-mode))))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
745
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
746 (defun tpu-set-mark (pos)
54205
5bf790e5e43a (tpu-set-mark): Fix typo.
Juanma Barranquero <lekktu@gmail.com>
parents: 52401
diff changeset
747 "TPU-edt version of the `set-mark' function.
14012
8ade85f685c2 (GOLD-map, GOLD-CSI-map, GOLD-SS3-map, tpu-set-mark):
Karl Heuer <kwzh@gnu.org>
parents: 13377
diff changeset
748 Sets the mark at POS and activates the region according to the
11546
66db15ec8ad8 Don't turn on tpu-edt mode.
Richard M. Stallman <rms@gnu.org>
parents: 8155
diff changeset
749 current version of Emacs."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
750 (set-mark pos)
87941
d77b6e5ee8af * sieve.el (sieve-make-overlay, sieve-overlay-put, sieve-overlays-at):
Dan Nicolaescu <dann@ics.uci.edu>
parents: 87729
diff changeset
751 (when (featurep 'xemacs) (when pos (zmacs-activate-region))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
752
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
753 (defun tpu-string-prompt (prompt history-symbol)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
754 "Read a string with PROMPT."
63960
4b67deb7c72e (tpu-emacs19-p): Var deleted. All references simplified.
Richard M. Stallman <rms@gnu.org>
parents: 63959
diff changeset
755 (read-from-minibuffer prompt nil nil nil history-symbol))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
756
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
757 (defvar tpu-last-answer nil "Most recent response to tpu-y-or-n-p.")
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
758
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
759 (defun tpu-y-or-n-p (prompt &optional not-yes)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
760 "Prompt for a y or n answer with positive default.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
761 Optional second argument NOT-YES changes default to negative.
11546
66db15ec8ad8 Don't turn on tpu-edt mode.
Richard M. Stallman <rms@gnu.org>
parents: 8155
diff changeset
762 Like Emacs `y-or-n-p', but also accepts space as y and DEL as n."
14344
1e97bcb05a16 (tpu-y-or-n-p): Delete format call inside message.
Karl Heuer <kwzh@gnu.org>
parents: 14227
diff changeset
763 (message "%s[%s]" prompt (if not-yes "n" "y"))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
764 (let ((doit t))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
765 (while doit
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
766 (setq doit nil)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
767 (let ((ans (read-char)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
768 (cond ((or (= ans ?y) (= ans ?Y) (= ans ?\ ))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
769 (setq tpu-last-answer t))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
770 ((or (= ans ?n) (= ans ?N) (= ans ?\C-?))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
771 (setq tpu-last-answer nil))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
772 ((= ans ?\r) (setq tpu-last-answer (not not-yes)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
773 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
774 (setq doit t) (beep)
14344
1e97bcb05a16 (tpu-y-or-n-p): Delete format call inside message.
Karl Heuer <kwzh@gnu.org>
parents: 14227
diff changeset
775 (message "Please answer y or n. %s[%s]"
1e97bcb05a16 (tpu-y-or-n-p): Delete format call inside message.
Karl Heuer <kwzh@gnu.org>
parents: 14227
diff changeset
776 prompt (if not-yes "n" "y")))))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
777 tpu-last-answer)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
778
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
779 (defun tpu-local-set-key (key func)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
780 "Replace a key in the TPU-edt local key map.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
781 Create the key map if necessary."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
782 (cond ((not (keymapp tpu-buffer-local-map))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
783 (setq tpu-buffer-local-map (if (current-local-map)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
784 (copy-keymap (current-local-map))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
785 (make-sparse-keymap)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
786 (use-local-map tpu-buffer-local-map)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
787 (local-set-key key func))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
788
78425
753756c6e4ec (tpu-current-line): Use posn-at-point and count-screen-lines.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78391
diff changeset
789 (defun tpu-current-line ()
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
790 "Return the vertical position of point in the selected window.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
791 Top line is 0. Counts each text line only once, even if it wraps."
78425
753756c6e4ec (tpu-current-line): Use posn-at-point and count-screen-lines.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78391
diff changeset
792 (or
753756c6e4ec (tpu-current-line): Use posn-at-point and count-screen-lines.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78391
diff changeset
793 (cdr (nth 6 (posn-at-point)))
753756c6e4ec (tpu-current-line): Use posn-at-point and count-screen-lines.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78391
diff changeset
794 (if (eq (window-start) (point)) 0
753756c6e4ec (tpu-current-line): Use posn-at-point and count-screen-lines.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78391
diff changeset
795 (1- (count-screen-lines (window-start) (point) 'count-final-newline)))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
796
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
797
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
798 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
799 ;;; Breadcrumbs
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
800 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
801 (defvar tpu-breadcrumb-plist nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
802 "The set of user-defined markers (breadcrumbs), as a plist.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
803
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
804 (defun tpu-drop-breadcrumb (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
805 "Drops a breadcrumb that can be returned to later with goto-breadcrumb."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
806 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
807 (put tpu-breadcrumb-plist num (list (current-buffer) (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
808 (message "Mark %d set." num))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
809
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
810 (defun tpu-goto-breadcrumb (num)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
811 "Return to a breadcrumb set with drop-breadcrumb."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
812 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
813 (cond ((get tpu-breadcrumb-plist num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
814 (switch-to-buffer (car (get tpu-breadcrumb-plist num)))
92084
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
815 (goto-char (cadr (get tpu-breadcrumb-plist num)))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
816 (message "mark %d found." num))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
817 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
818 (message "mark %d not found." num))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
819
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
820
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
821 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
822 ;;; Miscellaneous
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
823 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
824 (defun tpu-change-case (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
825 "Change the case of the character under the cursor or region.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
826 Accepts a prefix argument of the number of characters to invert."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
827 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
828 (cond ((tpu-mark)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
829 (let ((beg (region-beginning)) (end (region-end)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
830 (while (> end beg)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
831 (funcall (if (= (downcase (char-after beg)) (char-after beg))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
832 'upcase-region 'downcase-region)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
833 beg (1+ beg))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
834 (setq beg (1+ beg)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
835 (tpu-unselect t)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
836 ((tpu-check-match)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
837 (let ((beg (tpu-match-beginning)) (end (tpu-match-end)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
838 (while (> end beg)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
839 (funcall (if (= (downcase (char-after beg)) (char-after beg))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
840 'upcase-region 'downcase-region)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
841 beg (1+ beg))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
842 (setq beg (1+ beg)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
843 (tpu-unset-match)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
844 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
845 (while (> num 0)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
846 (funcall (if (= (downcase (following-char)) (following-char))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
847 'upcase-region 'downcase-region)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
848 (point) (1+ (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
849 (forward-char (if tpu-reverse -1 1))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
850 (setq num (1- num))))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
851
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
852 (defun tpu-fill (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
853 "Fill paragraph or marked region.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
854 With argument, fill and justify."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
855 (interactive "P")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
856 (cond ((tpu-mark)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
857 (fill-region (point) (tpu-mark) num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
858 (tpu-unselect t))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
859 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
860 (fill-paragraph num))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
861
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
862 (defun tpu-version nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
863 "Print the TPU-edt version number."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
864 (interactive)
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
865 (message
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
866 "TPU-edt version %s by Rob Riepel (riepel@networking.stanford.edu)"
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
867 tpu-version))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
868
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
869 (defun tpu-reset-screen-size (height width)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
870 "Set the screen size."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
871 (interactive "nnew screen height: \nnnew screen width: ")
42324
e6593c956da9 (tpu-reset-screen-size): Use set-frame-height and set-frame-width instead
Pavel Janík <Pavel@Janik.cz>
parents: 39734
diff changeset
872 (set-frame-height (selected-frame) height)
e6593c956da9 (tpu-reset-screen-size): Use set-frame-height and set-frame-width instead
Pavel Janík <Pavel@Janik.cz>
parents: 39734
diff changeset
873 (set-frame-width (selected-frame) width))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
874
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
875 (defun tpu-toggle-newline-and-indent nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
876 "Toggle between 'newline and indent' and 'simple newline'."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
877 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
878 (cond (tpu-newline-and-indent-p
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
879 (setq tpu-newline-and-indent-string "")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
880 (setq tpu-newline-and-indent-p nil)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
881 (tpu-local-set-key "\C-m" 'newline))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
882 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
883 (setq tpu-newline-and-indent-string " AutoIndent")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
884 (setq tpu-newline-and-indent-p t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
885 (tpu-local-set-key "\C-m" 'newline-and-indent)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
886 (tpu-update-mode-line)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
887 (and (interactive-p)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
888 (message "Carriage return inserts a newline%s"
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
889 (if tpu-newline-and-indent-p " and indents." "."))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
890
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
891 (defun tpu-spell-check nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
892 "Check the spelling of the region, or of the entire buffer,
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
893 if no region is selected."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
894 (interactive)
92084
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
895 (let ((m (tpu-mark)))
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
896 (apply (if tpu-have-ispell 'ispell-region
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
897 'spell-region)
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
898 (if m
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
899 (if (> m (point)) (list (point) m)
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
900 (list m (point)))
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
901 (list (point-min) (point-max))))
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
902 (if m (tpu-unselect t))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
903
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
904 (defun tpu-toggle-overwrite-mode nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
905 "Switch in and out of overwrite mode."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
906 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
907 (cond (overwrite-mode
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
908 (tpu-local-set-key "\177" tpu-saved-delete-func)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
909 (overwrite-mode 0))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
910 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
911 (setq tpu-saved-delete-func (local-key-binding "\177"))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
912 (tpu-local-set-key "\177" 'picture-backward-clear-column)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
913 (overwrite-mode 1))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
914
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
915 (defun tpu-special-insert (num)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
916 "Insert a character or control code according to its ASCII decimal value."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
917 (interactive "P")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
918 (if overwrite-mode (delete-char 1))
92084
0521c6a7dca0 (tpu-have-ispell): Doc fix. Make obsolete.
Glenn Morris <rgm@gnu.org>
parents: 87941
diff changeset
919 (insert (or num 0)))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
920
5186
d9bd01c95509 (tpu-quoted-insert): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5140
diff changeset
921 (defun tpu-quoted-insert (num)
d9bd01c95509 (tpu-quoted-insert): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5140
diff changeset
922 "Read next input character and insert it.
d9bd01c95509 (tpu-quoted-insert): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5140
diff changeset
923 This is useful for inserting control characters."
d9bd01c95509 (tpu-quoted-insert): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5140
diff changeset
924 (interactive "*p")
d9bd01c95509 (tpu-quoted-insert): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5140
diff changeset
925 (let ((char (read-char)) )
d9bd01c95509 (tpu-quoted-insert): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5140
diff changeset
926 (if overwrite-mode (delete-char num))
d9bd01c95509 (tpu-quoted-insert): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5140
diff changeset
927 (insert-char char num)))
d9bd01c95509 (tpu-quoted-insert): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5140
diff changeset
928
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
929
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
930 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
931 ;;; TPU line-mode commands
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
932 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
933 (defun tpu-include (file)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
934 "TPU-like include file."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
935 (interactive "fInclude file: ")
22454
2f4df08bf11d (tpu-include) Use insert-file-contents, remove save-excursion.
Richard M. Stallman <rms@gnu.org>
parents: 21628
diff changeset
936 (insert-file-contents file)
2f4df08bf11d (tpu-include) Use insert-file-contents, remove save-excursion.
Richard M. Stallman <rms@gnu.org>
parents: 21628
diff changeset
937 (message ""))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
938
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
939 (defun tpu-get (file)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
940 "TPU-like get file."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
941 (interactive "FFile to get: ")
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
942 (find-file file find-file-wildcards))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
943
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
944 (defun tpu-what-line nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
945 "Tell what line the point is on,
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
946 and the total number of lines in the buffer."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
947 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
948 (if (eobp)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
949 (message "You are at the End of Buffer. The last line is %d."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
950 (count-lines 1 (point-max)))
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
951 (let* ((cur (count-lines 1 (1+ (point))))
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
952 (max (count-lines 1 (point-max)))
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
953 (pct (/ (* 100 (+ cur (/ max 200))) max)))
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
954 (message "You are on line %d out of %d (%d%%)." cur max pct))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
955
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
956 (defun tpu-exit nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
957 "Exit the way TPU does, save current buffer and ask about others."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
958 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
959 (if (not (eq (recursion-depth) 0))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
960 (exit-recursive-edit)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
961 (progn (save-buffer) (save-buffers-kill-emacs))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
962
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
963 (defun tpu-quit nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
964 "Quit the way TPU does, ask to make sure changes should be abandoned."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
965 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
966 (let ((list (buffer-list))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
967 (working t))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
968 (while (and list working)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
969 (let ((buffer (car list)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
970 (if (and (buffer-file-name buffer) (buffer-modified-p buffer))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
971 (if (tpu-y-or-n-p
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
972 "Modifications will not be saved, continue quitting? ")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
973 (kill-emacs t) (setq working nil)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
974 (setq list (cdr list))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
975 (if working (kill-emacs t))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
976
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
977
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
978 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
979 ;;; Command and Function Aliases
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
980 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
981 ;;;###autoload
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
982 (define-minor-mode tpu-edt-mode
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
983 "TPU/edt emulation."
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
984 :global t
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
985 (if tpu-edt-mode (tpu-edt-on) (tpu-edt-off)))
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
986
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
987 (defalias 'TPU-EDT-MODE 'tpu-edt-mode)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
988
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
989 ;;;###autoload
39734
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
990 (defalias 'tpu-edt 'tpu-edt-on)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
991 (defalias 'TPU-EDT 'tpu-edt-on)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
992
39734
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
993 ;; Note: The following functions have no `tpu-' prefix. This is unavoidable.
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
994 ;; The real TPU/edt editor has interactive commands with these names,
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
995 ;; so tpu-edt.el users expect things like M-x exit RET and M-x help RET
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
996 ;; to work. Therefore it really is necessary to define these functions,
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
997 ;; even in cases where they redefine existing Emacs functions.
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
998
39734
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
999 (defalias 'exit 'tpu-exit)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1000 (defalias 'EXIT 'tpu-exit)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1001
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1002 (defalias 'Get 'tpu-get)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1003 (defalias 'GET 'tpu-get)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1004
39734
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1005 (defalias 'include 'tpu-include)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1006 (defalias 'INCLUDE 'tpu-include)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1007
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1008 (defalias 'quit 'tpu-quit)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1009 (defalias 'QUIT 'tpu-quit)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1010
39734
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1011 (defalias 'spell 'tpu-spell-check)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1012 (defalias 'SPELL 'tpu-spell-check)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1013
39734
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1014 (defalias 'what\ line 'tpu-what-line)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1015 (defalias 'WHAT\ LINE 'tpu-what-line)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1016
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1017 (defalias 'replace 'tpu-lm-replace)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1018 (defalias 'REPLACE 'tpu-lm-replace)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1019
39734
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1020 (defalias 'help 'tpu-help)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1021 (defalias 'HELP 'tpu-help)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1022
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1023 (defalias 'set\ cursor\ free 'tpu-set-cursor-free)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1024 (defalias 'SET\ CURSOR\ FREE 'tpu-set-cursor-free)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1025
39734
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1026 (defalias 'set\ cursor\ bound 'tpu-set-cursor-bound)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1027 (defalias 'SET\ CURSOR\ BOUND 'tpu-set-cursor-bound)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1028
39734
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1029 (defalias 'set\ scroll\ margins 'tpu-set-scroll-margins)
32f917f3edf7 use defalias instead of fset for user-visible commands.
Pavel Janík <Pavel@Janik.cz>
parents: 39540
diff changeset
1030 (defalias 'SET\ SCROLL\ MARGINS 'tpu-set-scroll-margins)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1031
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1032 ;; Real TPU error messages end in periods.
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1033 ;; Define this to avoid openly flouting Emacs coding standards.
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1034 (defalias 'tpu-error 'error)
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1035
5186
d9bd01c95509 (tpu-quoted-insert): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5140
diff changeset
1036
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1037 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1038 ;;; Help
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1039 ;;;
58628
62a7c13576b7 (tpu-help-keypad-map, tpu-help-text)
Luc Teirlinck <teirllm@auburn.edu>
parents: 54205
diff changeset
1040 (defvar tpu-help-keypad-map "\f
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1041 _______________________ _______________________________
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1042 | HELP | Do | | | | | |
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1043 |KeyDefs| | | | | | |
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1044 |_______|_______________| |_______|_______|_______|_______|
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1045 _______________________ _______________________________
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1046 | Find |Insert |Remove | | Gold | HELP |FndNxt | Del L |
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1047 | | |Sto Tex| | key |E-Help | Find |Undel L|
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1048 |_______|_______|_______| |_______|_______|_______|_______|
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1049 |Select |Pre Scr|Nex Scr| | Page | Sect |Append | Del W |
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1050 | Reset |Pre Win|Nex Win| | Do | Fill |Replace|Undel W|
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1051 |_______|_______|_______| |_______|_______|_______|_______|
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1052 |Move up| |Forward|Reverse|Remove | Del C |
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1053 | Top | |Bottom | Top |Insert |Undel C|
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1054 _______|_______|_______ |_______|_______|_______|_______|
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1055 |Mov Lef|Mov Dow|Mov Rig| | Word | EOL | Char | |
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1056 |StaOfLi|Bottom |EndOfLi| |ChngCas|Del EOL|SpecIns| Enter |
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1057 |_______|_______|_______| |_______|_______|_______| |
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1058 | Line |Select | Subs |
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1059 | Open Line | Reset | |
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1060 |_______________|_______|_______|
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1061 ")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1062
58628
62a7c13576b7 (tpu-help-keypad-map, tpu-help-text)
Luc Teirlinck <teirllm@auburn.edu>
parents: 54205
diff changeset
1063 (defvar tpu-help-text "
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1064 \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\f
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1065
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1066 Control Characters
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1067
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1068 ^A toggle insert and overwrite
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1069 ^B recall
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1070 ^E end of line
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1071
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1072 ^G Cancel current operation
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1073 ^H beginning of line
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1074 ^J delete previous word
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1075
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1076 ^K learn
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1077 ^L insert page break
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1078 ^R remember (during learn), re-center
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1079
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1080 ^U delete to beginning of line
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1081 ^V quote
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1082 ^W refresh
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1083
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1084 ^Z exit
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1085 ^X^X exchange point and mark - useful for checking region boundaries
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1086
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1087 \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\f
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1088 Gold-<key> Functions
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1089
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1090 B Next Buffer - display the next buffer (all buffers)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1091 C Recall - edit and possibly repeat previous commands
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1092 E Exit - save current buffer and ask about others
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1093 G Get - load a file into a new edit buffer
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1094
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1095 I Include - include a file in this buffer
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1096 K Kill Buffer - abandon edits and delete buffer
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1097 M Buffer Menu - display a list of all buffers
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1098 N Next File Buffer - display next buffer containing a file
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1099
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1100 O Occur - show following lines containing REGEXP
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1101 Q Quit - exit without saving anything
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1102 R Toggle rectangular mode for remove and insert
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1103 S Search and substitute - line mode REPLACE command
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1104
73743
3d9ebd99f905 (tpu-help-text, tpu-save-all-buffers-kill-emacs, tpu-emacs-replace,
Juanma Barranquero <lekktu@gmail.com>
parents: 68648
diff changeset
1105 ^T Toggle control key bindings between TPU and Emacs
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1106 U Undo - undo the last edit
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1107 W Write - save current buffer
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1108 X Exit - save all modified buffers and exit
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1109
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1110 \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\f
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1111
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1112 More extensive documentation on TPU-edt can be found in the `Commentary'
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1113 section of tpu-edt.el. This section can be accessed through the standard
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1114 Emacs help facility using the `p' option. Once you exit TPU-edt Help, one
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1115 of the following key sequences is sure to get you there.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1116
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1117 ^h p if you're not yet using TPU-edt
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1118 Gold-PF2 p if you're using TPU-edt
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1119
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1120 Alternatively, fire up Emacs help from the command prompt, with
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1121
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1122 M-x help-for-help <CR> p <CR>
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1123
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1124 Where `M-x' might be any of `Gold-KP7', 'Do', or 'ESC-x'.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1125
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1126 When you successfully invoke this part of the Emacs help facility, you
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1127 will see a buffer named `*Finder*' listing a number of topics. Look for
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1128 tpu-edt under `emulations'.
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1129
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1130 \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\f
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
1131
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1132 *** No more help, use P to view previous screen")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1133
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1134 (defvar tpu-help-enter (format "%s" "\eOM")) ; tpu-help enter key symbol
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1135 (defvar tpu-help-return (format "%s" "\r")) ; tpu-help enter key symbol
4549
076ad69b0c77 (tpu-help): Use variables for "n" and "p".
Richard M. Stallman <rms@gnu.org>
parents: 4523
diff changeset
1136 (defvar tpu-help-N "N") ; tpu-help "N" symbol
076ad69b0c77 (tpu-help): Use variables for "n" and "p".
Richard M. Stallman <rms@gnu.org>
parents: 4523
diff changeset
1137 (defvar tpu-help-n "n") ; tpu-help "n" symbol
076ad69b0c77 (tpu-help): Use variables for "n" and "p".
Richard M. Stallman <rms@gnu.org>
parents: 4523
diff changeset
1138 (defvar tpu-help-P "P") ; tpu-help "P" symbol
076ad69b0c77 (tpu-help): Use variables for "n" and "p".
Richard M. Stallman <rms@gnu.org>
parents: 4523
diff changeset
1139 (defvar tpu-help-p "p") ; tpu-help "p" symbol
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1140
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1141 (defun tpu-help nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1142 "Display TPU-edt help."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1143 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1144 ;; Save current window configuration
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1145 (save-window-excursion
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1146 ;; Create and fill help buffer if necessary
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1147 (if (not (get-buffer "*TPU-edt Help*"))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1148 (progn (generate-new-buffer "*TPU-edt Help*")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1149 (switch-to-buffer "*TPU-edt Help*")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1150 (insert tpu-help-keypad-map)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1151 (insert tpu-help-text)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1152 (setq buffer-read-only t)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1153
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1154 ;; Display the help buffer
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1155 (switch-to-buffer "*TPU-edt Help*")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1156 (delete-other-windows)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1157 (tpu-move-to-beginning)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1158 (forward-line 1)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1159 (tpu-line-to-top-of-window)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1160
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1161 ;; Prompt for keys to describe, based on screen state (split/not split)
4549
076ad69b0c77 (tpu-help): Use variables for "n" and "p".
Richard M. Stallman <rms@gnu.org>
parents: 4523
diff changeset
1162 (let ((key nil) (fkey nil) (split nil))
076ad69b0c77 (tpu-help): Use variables for "n" and "p".
Richard M. Stallman <rms@gnu.org>
parents: 4523
diff changeset
1163 (while (not (equal tpu-help-return fkey))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1164 (if split
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1165 (setq key
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1166 (read-key-sequence
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1167 "Press the key you want help on (RET=exit, ENTER=redisplay, N=next, P=prev): "))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1168 (setq key
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1169 (read-key-sequence
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1170 "Press the key you want help on (RET to exit, N next screen, P prev screen): ")))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1171
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1172 ;; Process the read key
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1173 ;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1174 ;; ENTER - Display just the help window
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1175 ;; N or n - Next help or describe-key screen
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1176 ;; P or p - Previous help or describe-key screen
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1177 ;; RETURN - Exit from TPU-help
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1178 ;; default - describe the key
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1179 ;;
4549
076ad69b0c77 (tpu-help): Use variables for "n" and "p".
Richard M. Stallman <rms@gnu.org>
parents: 4523
diff changeset
1180 (setq fkey (format "%s" key))
076ad69b0c77 (tpu-help): Use variables for "n" and "p".
Richard M. Stallman <rms@gnu.org>
parents: 4523
diff changeset
1181 (cond ((equal tpu-help-enter fkey)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1182 (setq split nil)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1183 (delete-other-windows))
4549
076ad69b0c77 (tpu-help): Use variables for "n" and "p".
Richard M. Stallman <rms@gnu.org>
parents: 4523
diff changeset
1184 ((or (equal tpu-help-N fkey) (equal tpu-help-n fkey))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1185 (cond (split
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1186 (condition-case nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1187 (scroll-other-window 8)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1188 (error nil)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1189 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1190 (forward-page)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1191 (forward-line 1)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1192 (tpu-line-to-top-of-window))))
4549
076ad69b0c77 (tpu-help): Use variables for "n" and "p".
Richard M. Stallman <rms@gnu.org>
parents: 4523
diff changeset
1193 ((or (equal tpu-help-P fkey) (equal tpu-help-p fkey))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1194 (cond (split
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1195 (condition-case nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1196 (scroll-other-window -8)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1197 (error nil)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1198 (t
34206
18117bc6bcdd (tpu-help): Fixed previous screen logic.
Gerd Moellmann <gerd@gnu.org>
parents: 34034
diff changeset
1199 (forward-line -1)
12760
4bb9477d762a (tpu-control-keys): New initial value, nil.
Richard M. Stallman <rms@gnu.org>
parents: 12686
diff changeset
1200 (backward-page)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1201 (forward-line 1)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1202 (tpu-line-to-top-of-window))))
4549
076ad69b0c77 (tpu-help): Use variables for "n" and "p".
Richard M. Stallman <rms@gnu.org>
parents: 4523
diff changeset
1203 ((not (equal tpu-help-return fkey))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1204 (setq split t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1205 (describe-key key)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1206 ;; If the key is undefined, leave the
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1207 ;; message in the mini-buffer for 3 seconds
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1208 (if (not (key-binding key)) (sit-for 3))))))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1209
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1210
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1211 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1212 ;;; Auto-insert
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1213 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1214 (defun tpu-insert-escape nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1215 "Insert an escape character, and so becomes the escape-key alias."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1216 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1217 (insert "\e"))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1218
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1219 (defun tpu-insert-formfeed nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1220 "Insert a formfeed character."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1221 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1222 (insert "\C-L"))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1223
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1224
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1225 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1226 ;;; Define key
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1227 ;;;
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
1228 (defvar tpu-saved-control-r nil "Saved value of Control-r.")
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
1229
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1230 (defun tpu-end-define-macro-key (key)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1231 "End the current macro definition."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1232 (interactive "kPress the key you want to use to do what was just learned: ")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1233 (end-kbd-macro nil)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1234 (global-set-key key last-kbd-macro)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1235 (global-set-key "\C-r" tpu-saved-control-r))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1236
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1237 (defun tpu-define-macro-key nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1238 "Bind a set of keystrokes to a single key, or key combination."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1239 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1240 (setq tpu-saved-control-r (global-key-binding "\C-r"))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1241 (global-set-key "\C-r" 'tpu-end-define-macro-key)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1242 (start-kbd-macro nil))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1243
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1244
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1245 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1246 ;;; Buffers and Windows
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1247 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1248 (defun tpu-kill-buffer nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1249 "Kill the current buffer. If tpu-kill-buffers-silently is non-nil,
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1250 kills modified buffers without asking."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1251 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1252 (if tpu-kill-buffers-silently (set-buffer-modified-p nil))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1253 (kill-buffer (current-buffer)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1254
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1255 (defun tpu-save-all-buffers-kill-emacs nil
73743
3d9ebd99f905 (tpu-help-text, tpu-save-all-buffers-kill-emacs, tpu-emacs-replace,
Juanma Barranquero <lekktu@gmail.com>
parents: 68648
diff changeset
1256 "Save all buffers and exit Emacs."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1257 (interactive)
8155
ad36865ac28e (tpu-save-all-buffers-kill-emacs):
Richard M. Stallman <rms@gnu.org>
parents: 7982
diff changeset
1258 (let ((delete-old-versions t))
ad36865ac28e (tpu-save-all-buffers-kill-emacs):
Richard M. Stallman <rms@gnu.org>
parents: 7982
diff changeset
1259 (save-buffers-kill-emacs t)))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1260
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1261 (defun tpu-write-current-buffers nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1262 "Save all modified buffers without exiting."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1263 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1264 (save-some-buffers t))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1265
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1266 (defun tpu-next-buffer nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1267 "Go to next buffer in ring."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1268 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1269 (switch-to-buffer (car (reverse (buffer-list)))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1270
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1271 (defun tpu-next-file-buffer nil
7982
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1272 "Go to next buffer in ring that is visiting a file or directory."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1273 (interactive)
7982
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1274 (let ((list (tpu-make-file-buffer-list (buffer-list))))
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1275 (setq list (delq (current-buffer) list))
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1276 (if (not list) (tpu-error "No other buffers."))
7982
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1277 (switch-to-buffer (car (reverse list)))))
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1278
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1279 (defun tpu-make-file-buffer-list (buffer-list)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1280 "Return names from BUFFER-LIST excluding those beginning with a space or star."
7982
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1281 (delq nil (mapcar '(lambda (b)
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1282 (if (or (= (aref (buffer-name b) 0) ? )
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1283 (= (aref (buffer-name b) 0) ?*)) nil b))
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1284 buffer-list)))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1285
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1286 (defun tpu-next-window nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1287 "Move to the next window."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1288 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1289 (if (one-window-p) (message "There is only one window on screen.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1290 (other-window 1)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1291
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1292 (defun tpu-previous-window nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1293 "Move to the previous window."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1294 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1295 (if (one-window-p) (message "There is only one window on screen.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1296 (select-window (previous-window))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1297
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1298
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1299 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1300 ;;; Search
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1301 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1302 (defun tpu-toggle-regexp nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1303 "Switch in and out of regular expression search and replace mode."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1304 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1305 (setq tpu-regexp-p (not tpu-regexp-p))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1306 (tpu-set-search)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1307 (and (interactive-p)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1308 (message "Regular expression search and substitute %sabled."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1309 (if tpu-regexp-p "en" "dis"))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1310
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1311 (defun tpu-regexp-prompt (prompt)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1312 "Read a string, adding 'RE' to the prompt if tpu-regexp-p is set."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1313 (let ((re-prompt (concat (if tpu-regexp-p "RE ") prompt)))
63960
4b67deb7c72e (tpu-emacs19-p): Var deleted. All references simplified.
Richard M. Stallman <rms@gnu.org>
parents: 63959
diff changeset
1314 (read-from-minibuffer re-prompt nil nil nil 'tpu-regexp-prompt-hist)))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1315
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1316 (defun tpu-search-highlight nil
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1317 (if (tpu-check-match)
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1318 (move-overlay tpu-search-overlay
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1319 (tpu-match-beginning) (tpu-match-end) (current-buffer))
34206
18117bc6bcdd (tpu-help): Fixed previous screen logic.
Gerd Moellmann <gerd@gnu.org>
parents: 34034
diff changeset
1320 (unless (equal (overlay-start tpu-search-overlay)
18117bc6bcdd (tpu-help): Fixed previous screen logic.
Gerd Moellmann <gerd@gnu.org>
parents: 34034
diff changeset
1321 (overlay-end tpu-search-overlay))
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
1322 (move-overlay tpu-search-overlay 1 1 (current-buffer)))))
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1323
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1324 (defun tpu-search nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1325 "Search for a string or regular expression.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1326 The search is performed in the current direction."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1327 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1328 (tpu-set-search)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1329 (tpu-search-internal ""))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1330
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1331 (defun tpu-search-forward nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1332 "Search for a string or regular expression.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1333 The search is begins in the forward direction."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1334 (interactive)
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
1335 (setq tpu-searching-forward t)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1336 (tpu-set-search t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1337 (tpu-search-internal ""))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1338
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1339 (defun tpu-search-reverse nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1340 "Search for a string or regular expression.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1341 The search is begins in the reverse direction."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1342 (interactive)
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
1343 (setq tpu-searching-forward nil)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1344 (tpu-set-search t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1345 (tpu-search-internal ""))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1346
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1347 (defun tpu-search-again nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1348 "Search for the same string or regular expression as last time.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1349 The search is performed in the current direction."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1350 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1351 (tpu-search-internal tpu-search-last-string))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1352
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1353 ;; tpu-set-search defines the search functions used by the TPU-edt internal
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1354 ;; search function. It should be called whenever the direction changes, or
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1355 ;; the regular expression mode is turned on or off. It can also be called
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1356 ;; to ensure that the next search will be in the current direction. It is
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1357 ;; called from:
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1358
7982
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1359 ;; tpu-advance tpu-backup
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1360 ;; tpu-toggle-regexp tpu-toggle-search-direction (t)
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1361 ;; tpu-search tpu-lm-replace
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1362 ;; tpu-search-forward (t) tpu-search-reverse (t)
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1363 ;; tpu-search-forward-exit (t) tpu-search-backward-exit (t)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1364
86531
da67dc2c4510 Don't require cl when compiling.
Glenn Morris <rgm@gnu.org>
parents: 85688
diff changeset
1365 (declare-function tpu-emacs-search "tpu-edt")
da67dc2c4510 Don't require cl when compiling.
Glenn Morris <rgm@gnu.org>
parents: 85688
diff changeset
1366 (declare-function tpu-emacs-rev-search "tpu-edt")
da67dc2c4510 Don't require cl when compiling.
Glenn Morris <rgm@gnu.org>
parents: 85688
diff changeset
1367
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1368 (defun tpu-set-search (&optional arg)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1369 "Set the search functions and set the search direction to the current direction.
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1370 If an argument is specified, don't set the search direction."
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
1371 (if (not arg) (setq tpu-searching-forward tpu-advance))
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
1372 (cond (tpu-searching-forward
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1373 (cond (tpu-regexp-p
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1374 (fset 'tpu-emacs-search 're-search-forward)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1375 (fset 'tpu-emacs-rev-search 're-search-backward))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1376 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1377 (fset 'tpu-emacs-search 'search-forward)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1378 (fset 'tpu-emacs-rev-search 'search-backward))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1379 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1380 (cond (tpu-regexp-p
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1381 (fset 'tpu-emacs-search 're-search-backward)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1382 (fset 'tpu-emacs-rev-search 're-search-forward))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1383 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1384 (fset 'tpu-emacs-search 'search-backward)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1385 (fset 'tpu-emacs-rev-search 'search-forward))))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1386
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1387 (defun tpu-search-internal (pat &optional quiet)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1388 "Search for a string or regular expression."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1389 (setq tpu-search-last-string
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1390 (if (not (string= "" pat)) pat (tpu-regexp-prompt "Search: ")))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1391
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1392 (tpu-unset-match)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1393 (tpu-adjust-search)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1394
11550
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1395 (let ((case-fold-search
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1396 (and case-fold-search (tpu-check-search-case tpu-search-last-string))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1397
11550
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1398 (cond ((tpu-emacs-search tpu-search-last-string nil t)
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1399 (tpu-set-match) (goto-char (tpu-match-beginning)))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1400
11550
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1401 (t
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1402 (tpu-adjust-search t)
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1403 (let ((found nil) (pos nil))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1404 (save-excursion
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1405 (let ((tpu-searching-forward (not tpu-searching-forward)))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1406 (tpu-adjust-search)
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1407 (setq found (tpu-emacs-rev-search tpu-search-last-string nil t))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1408 (setq pos (match-beginning 0))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1409
11550
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1410 (cond
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1411 (found
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1412 (cond ((tpu-y-or-n-p
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1413 (format "Found in %s direction. Go there? "
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1414 (if tpu-searching-forward "reverse" "forward")))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1415 (goto-char pos) (tpu-set-match)
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1416 (tpu-toggle-search-direction))))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1417
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1418 (t
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1419 (if (not quiet)
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1420 (message
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1421 "%sSearch failed: \"%s\""
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1422 (if tpu-regexp-p "RE " "") tpu-search-last-string)))))))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1423
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
1424 (defalias 'tpu-search-internal-core (symbol-function 'tpu-search-internal))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1425
11550
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1426 (defun tpu-check-search-case (string)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1427 "Return t if string contains upper case."
14012
8ade85f685c2 (GOLD-map, GOLD-CSI-map, GOLD-SS3-map, tpu-set-mark):
Karl Heuer <kwzh@gnu.org>
parents: 13377
diff changeset
1428 ;; if using regexp, eliminate upper case forms (\B \W \S.)
11550
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1429 (if tpu-regexp-p
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1430 (let ((pat (copy-sequence string)) (case-fold-search nil) (pos 0))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1431 (while (setq pos (string-match "\\\\\\\\" pat)) (aset pat (+ 1 pos) ?.))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1432 (while (setq pos (string-match "\\\\B" pat)) (aset pat (+ 1 pos) ?.))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1433 (while (setq pos (string-match "\\\\W" pat)) (aset pat (+ 1 pos) ?.))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1434 (while (setq pos (string-match "\\\\S." pat))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1435 (aset pat (+ 1 pos) ?.) (aset pat (+ 2 pos) ?.))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1436 (string-equal pat (downcase pat)))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1437 (string-equal string (downcase string))))
11a7257fc6fa (tpu-search-internal): Case-sensitive search if search
Richard M. Stallman <rms@gnu.org>
parents: 11546
diff changeset
1438
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1439 (defun tpu-adjust-search (&optional arg)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1440 "For forward searches, move forward a character before searching,
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1441 and backward a character after a failed search. Arg means end of search."
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
1442 (if tpu-searching-forward
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1443 (cond (arg (if (not (bobp)) (forward-char -1)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1444 (t (if (not (eobp)) (forward-char 1))))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1445
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1446 (defun tpu-toggle-search-direction nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1447 "Toggle the TPU-edt search direction.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1448 Used for reversing a search in progress."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1449 (interactive)
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
1450 (setq tpu-searching-forward (not tpu-searching-forward))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1451 (tpu-set-search t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1452 (and (interactive-p)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1453 (message "Searching %sward."
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
1454 (if tpu-searching-forward "for" "back"))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1455
7982
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1456 (defun tpu-search-forward-exit nil
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1457 "Set search direction forward and exit minibuffer."
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1458 (interactive)
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1459 (setq tpu-searching-forward t)
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1460 (tpu-set-search t)
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1461 (exit-minibuffer))
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1462
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1463 (defun tpu-search-backward-exit nil
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1464 "Set search direction backward and exit minibuffer."
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1465 (interactive)
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1466 (setq tpu-searching-forward nil)
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1467 (tpu-set-search t)
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1468 (exit-minibuffer))
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1469
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1470
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1471 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1472 ;;; Select / Unselect
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1473 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1474 (defun tpu-select (&optional quiet)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1475 "Set the mark to define one end of a region."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1476 (interactive "P")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1477 (cond ((tpu-mark)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1478 (tpu-unselect quiet))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1479 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1480 (tpu-set-mark (point))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1481 (tpu-update-mode-line)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1482 (if (not quiet) (message "Move the text cursor to select text.")))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1483
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1484 (defun tpu-unselect (&optional quiet)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1485 "Remove the mark to unselect the current region."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1486 (interactive "P")
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
1487 (deactivate-mark)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1488 (setq mark-ring nil)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1489 (tpu-set-mark nil)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1490 (tpu-update-mode-line)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1491 (if (not quiet) (message "Selection canceled.")))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1492
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1493
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1494 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1495 ;;; Delete / Cut
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1496 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1497 (defun tpu-toggle-rectangle nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1498 "Toggle rectangular mode for remove and insert."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1499 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1500 (setq tpu-rectangular-p (not tpu-rectangular-p))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1501 (setq tpu-rectangle-string (if tpu-rectangular-p " Rect" ""))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1502 (tpu-update-mode-line)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1503 (and (interactive-p)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1504 (message "Rectangular cut and paste %sabled."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1505 (if tpu-rectangular-p "en" "dis"))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1506
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1507 (defun tpu-arrange-rectangle nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1508 "Adjust point and mark to upper left and lower right corners of a rectangle."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1509 (let ((mc (current-column))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1510 (pc (progn (exchange-point-and-mark) (current-column))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1511
7982
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
1512 (cond ((> (point) (tpu-mark)) ; point on lower line
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1513 (cond ((> pc mc) ; point @ lower-right
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1514 (exchange-point-and-mark)) ; point -> upper-left
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1515
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1516 (t ; point @ lower-left
20128
a5d0f051dd57 (tpu-arrange-rectangle): Use FORCE arg of move-to-column.
Karl Heuer <kwzh@gnu.org>
parents: 18760
diff changeset
1517 (move-to-column mc t) ; point -> lower-right
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1518 (exchange-point-and-mark) ; point -> upper-right
20128
a5d0f051dd57 (tpu-arrange-rectangle): Use FORCE arg of move-to-column.
Karl Heuer <kwzh@gnu.org>
parents: 18760
diff changeset
1519 (move-to-column pc t)))) ; point -> upper-left
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1520
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1521 (t ; point on upper line
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1522 (cond ((> pc mc) ; point @ upper-right
20128
a5d0f051dd57 (tpu-arrange-rectangle): Use FORCE arg of move-to-column.
Karl Heuer <kwzh@gnu.org>
parents: 18760
diff changeset
1523 (move-to-column mc t) ; point -> upper-left
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1524 (exchange-point-and-mark) ; point -> lower-left
20128
a5d0f051dd57 (tpu-arrange-rectangle): Use FORCE arg of move-to-column.
Karl Heuer <kwzh@gnu.org>
parents: 18760
diff changeset
1525 (move-to-column pc t) ; point -> lower-right
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1526 (exchange-point-and-mark))))))) ; point -> upper-left
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1527
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1528 (defun tpu-cut-text nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1529 "Delete the selected region.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1530 The text is saved for the tpu-paste command."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1531 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1532 (cond ((tpu-mark)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1533 (cond (tpu-rectangular-p
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1534 (tpu-arrange-rectangle)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1535 (picture-clear-rectangle (point) (tpu-mark) (not overwrite-mode))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1536 (tpu-unselect t))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1537 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1538 (setq tpu-last-deleted-region
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1539 (buffer-substring (tpu-mark) (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1540 (delete-region (tpu-mark) (point))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1541 (tpu-unselect t))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1542 ((tpu-check-match)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1543 (let ((beg (tpu-match-beginning)) (end (tpu-match-end)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1544 (setq tpu-last-deleted-region (buffer-substring beg end))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1545 (delete-region beg end)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1546 (tpu-unset-match)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1547 (t
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1548 (tpu-error "No selection active."))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1549
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1550 (defun tpu-store-text nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1551 "Copy the selected region to the cut buffer without deleting it.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1552 The text is saved for the tpu-paste command."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1553 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1554 (cond ((tpu-mark)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1555 (cond (tpu-rectangular-p
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1556 (save-excursion
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1557 (tpu-arrange-rectangle)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1558 (setq picture-killed-rectangle
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1559 (extract-rectangle (point) (tpu-mark))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1560 (tpu-unselect t))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1561 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1562 (setq tpu-last-deleted-region
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1563 (buffer-substring (tpu-mark) (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1564 (tpu-unselect t))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1565 ((tpu-check-match)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1566 (setq tpu-last-deleted-region
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1567 (buffer-substring (tpu-match-beginning) (tpu-match-end)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1568 (tpu-unset-match))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1569 (t
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1570 (tpu-error "No selection active."))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1571
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1572 (defun tpu-cut (arg)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1573 "Copy selected region to the cut buffer.
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1574 In the absence of an argument, delete the selected region too."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1575 (interactive "P")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1576 (if arg (tpu-store-text) (tpu-cut-text)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1577
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1578 (defun tpu-append-region (arg)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1579 "Append selected region to the tpu-cut buffer.
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1580 In the absence of an argument, delete the selected region too."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1581 (interactive "P")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1582 (cond ((tpu-mark)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1583 (let ((beg (region-beginning)) (end (region-end)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1584 (setq tpu-last-deleted-region
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1585 (concat tpu-last-deleted-region
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1586 (buffer-substring beg end)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1587 (if (not arg) (delete-region beg end))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1588 (tpu-unselect t)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1589 ((tpu-check-match)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1590 (let ((beg (tpu-match-beginning)) (end (tpu-match-end)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1591 (setq tpu-last-deleted-region
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1592 (concat tpu-last-deleted-region
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1593 (buffer-substring beg end)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1594 (if (not arg) (delete-region beg end))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1595 (tpu-unset-match)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1596 (t
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1597 (tpu-error "No selection active."))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1598
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1599 (defun tpu-delete-current-line (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1600 "Delete one or specified number of lines after point.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1601 This includes the newline character at the end of each line.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1602 They are saved for the TPU-edt undelete-lines command."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1603 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1604 (let ((beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1605 (forward-line num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1606 (if (not (eq (preceding-char) ?\n))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1607 (insert "\n"))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1608 (setq tpu-last-deleted-lines
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1609 (buffer-substring beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1610 (delete-region beg (point))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1611
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1612 (defun tpu-delete-to-eol (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1613 "Delete text up to end of line.
46164
b9725f269733 (tpu-delete-to-eol): Fix typo.
Juanma Barranquero <lekktu@gmail.com>
parents: 42324
diff changeset
1614 With argument, delete up to the Nth line-end past point.
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1615 They are saved for the TPU-edt undelete-lines command."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1616 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1617 (let ((beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1618 (forward-char 1)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1619 (end-of-line num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1620 (setq tpu-last-deleted-lines
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1621 (buffer-substring beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1622 (delete-region beg (point))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1623
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1624 (defun tpu-delete-to-bol (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1625 "Delete text back to beginning of line.
46164
b9725f269733 (tpu-delete-to-eol): Fix typo.
Juanma Barranquero <lekktu@gmail.com>
parents: 42324
diff changeset
1626 With argument, delete up to the Nth line-end past point.
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1627 They are saved for the TPU-edt undelete-lines command."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1628 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1629 (let ((beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1630 (tpu-next-beginning-of-line num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1631 (setq tpu-last-deleted-lines
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1632 (buffer-substring (point) beg))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1633 (delete-region (point) beg)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1634
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1635 (defun tpu-delete-current-word (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1636 "Delete one or specified number of words after point.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1637 They are saved for the TPU-edt undelete-words command."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1638 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1639 (let ((beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1640 (tpu-forward-to-word num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1641 (setq tpu-last-deleted-words
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1642 (buffer-substring beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1643 (delete-region beg (point))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1644
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1645 (defun tpu-delete-previous-word (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1646 "Delete one or specified number of words before point.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1647 They are saved for the TPU-edt undelete-words command."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1648 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1649 (let ((beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1650 (tpu-backward-to-word num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1651 (setq tpu-last-deleted-words
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1652 (buffer-substring (point) beg))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1653 (delete-region beg (point))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1654
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1655 (defun tpu-delete-current-char (num)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1656 "Delete one or specified number of characters after point.
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1657 The last character deleted is saved for the TPU-edt undelete-char command."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1658 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1659 (while (and (> num 0) (not (eobp)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1660 (setq tpu-last-deleted-char (char-after (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1661 (cond (overwrite-mode
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1662 (picture-clear-column 1)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1663 (forward-char 1))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1664 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1665 (delete-char 1)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1666 (setq num (1- num))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1667
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1668
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1669 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1670 ;;; Undelete / Paste
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1671 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1672 (defun tpu-paste (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1673 "Insert the last region or rectangle of killed text.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1674 With argument reinserts the text that many times."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1675 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1676 (while (> num 0)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1677 (cond (tpu-rectangular-p
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1678 (let ((beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1679 (save-excursion
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1680 (picture-yank-rectangle (not overwrite-mode))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1681 (message ""))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1682 (goto-char beg)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1683 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1684 (insert tpu-last-deleted-region)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1685 (setq num (1- num))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1686
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1687 (defun tpu-undelete-lines (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1688 "Insert lines deleted by last TPU-edt line-deletion command.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1689 With argument reinserts lines that many times."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1690 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1691 (let ((beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1692 (while (> num 0)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1693 (insert tpu-last-deleted-lines)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1694 (setq num (1- num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1695 (goto-char beg)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1696
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1697 (defun tpu-undelete-words (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1698 "Insert words deleted by last TPU-edt word-deletion command.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1699 With argument reinserts words that many times."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1700 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1701 (let ((beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1702 (while (> num 0)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1703 (insert tpu-last-deleted-words)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1704 (setq num (1- num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1705 (goto-char beg)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1706
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1707 (defun tpu-undelete-char (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1708 "Insert character deleted by last TPU-edt character-deletion command.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1709 With argument reinserts the character that many times."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1710 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1711 (while (> num 0)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1712 (if overwrite-mode (prog1 (forward-char -1) (delete-char 1)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1713 (insert tpu-last-deleted-char)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1714 (forward-char -1)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1715 (setq num (1- num))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1716
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1717
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1718 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1719 ;;; Replace and Substitute
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1720 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1721 (defun tpu-replace nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1722 "Replace the selected region with the contents of the cut buffer."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1723 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1724 (cond ((tpu-mark)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1725 (let ((beg (region-beginning)) (end (region-end)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1726 (setq tpu-last-replaced-text (buffer-substring beg end))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1727 (delete-region beg end)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1728 (insert tpu-last-deleted-region)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1729 (tpu-unselect t)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1730 ((tpu-check-match)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1731 (let ((beg (tpu-match-beginning)) (end (tpu-match-end)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1732 (setq tpu-last-replaced-text (buffer-substring beg end))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1733 (replace-match tpu-last-deleted-region
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1734 (not case-replace) (not tpu-regexp-p))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1735 (tpu-unset-match)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1736 (t
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1737 (tpu-error "No selection active."))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1738
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1739 (defun tpu-substitute (num)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1740 "Replace the selected region with the contents of the cut buffer,
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1741 and repeat most recent search. A numeric argument serves as a repeat count.
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1742 A negative argument means replace all occurrences of the search string."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1743 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1744 (cond ((or (tpu-mark) (tpu-check-match))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1745 (while (and (not (= num 0)) (or (tpu-mark) (tpu-check-match)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1746 (let ((beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1747 (tpu-replace)
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
1748 (if tpu-searching-forward (forward-char -1) (goto-char beg))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1749 (if (= num 1) (tpu-search-internal tpu-search-last-string)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1750 (tpu-search-internal-core tpu-search-last-string)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1751 (setq num (1- num))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1752 (t
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1753 (tpu-error "No selection active."))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1754
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1755 (defun tpu-lm-replace (from to)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1756 "Interactively search for OLD-string and substitute NEW-string."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1757 (interactive (list (tpu-regexp-prompt "Old String: ")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1758 (tpu-regexp-prompt "New String: ")))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1759
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1760 (let ((doit t) (strings 0))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1761
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1762 ;; Can't replace null strings
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1763 (if (string= "" from) (tpu-error "No string to replace."))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1764
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1765 ;; Find the first occurrence
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1766 (tpu-set-search)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1767 (tpu-search-internal from t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1768
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1769 ;; Loop on replace question - yes, no, all, last, or quit.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1770 (while doit
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1771 (if (not (tpu-check-match)) (setq doit nil)
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1772 (progn
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1773 (move-overlay tpu-replace-overlay
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1774 (tpu-match-beginning) (tpu-match-end) (current-buffer))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1775 (message "Replace? Type Yes, No, All, Last, or Quit: ")
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1776 (let ((ans (read-char)))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1777
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1778 (cond ((or (= ans ?y) (= ans ?Y) (= ans ?\r) (= ans ?\ ))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1779 (let ((beg (point)))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1780 (replace-match to (not case-replace) (not tpu-regexp-p))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1781 (setq strings (1+ strings))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1782 (if tpu-searching-forward (forward-char -1) (goto-char beg)))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1783 (tpu-search-internal from t))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1784
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1785 ((or (= ans ?n) (= ans ?N) (= ans ?\C-?))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1786 (tpu-search-internal from t))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1787
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1788 ((or (= ans ?a) (= ans ?A))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1789 (save-excursion
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1790 (let ((beg (point)))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1791 (replace-match to (not case-replace) (not tpu-regexp-p))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1792 (setq strings (1+ strings))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1793 (if tpu-searching-forward (forward-char -1) (goto-char beg)))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1794 (tpu-search-internal-core from t)
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1795 (while (tpu-check-match)
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1796 (let ((beg (point)))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1797 (replace-match to (not case-replace) (not tpu-regexp-p))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1798 (setq strings (1+ strings))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1799 (if tpu-searching-forward (forward-char -1) (goto-char beg)))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1800 (tpu-search-internal-core from t)))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1801 (setq doit nil))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1802
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1803 ((or (= ans ?l) (= ans ?L))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1804 (let ((beg (point)))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1805 (replace-match to (not case-replace) (not tpu-regexp-p))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1806 (setq strings (1+ strings))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1807 (if tpu-searching-forward (forward-char -1) (goto-char beg)))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1808 (setq doit nil))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1809
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1810 ((or (= ans ?q) (= ans ?Q))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1811 (tpu-unset-match)
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1812 (setq doit nil)))))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1813
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
1814 (move-overlay tpu-replace-overlay 1 1 (current-buffer))
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
1815 (message "Replaced %s occurrence%s." strings (if (not (= 1 strings)) "s" ""))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1816
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1817 (defun tpu-emacs-replace (&optional dont-ask)
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1818 "A TPU-edt interface to the Emacs replace functions.
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1819 If TPU-edt is currently in regular expression mode, the Emacs regular
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1820 expression replace functions are used. If an argument is supplied,
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1821 replacements are performed without asking. Only works in forward direction."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1822 (interactive "P")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1823 (cond (dont-ask
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1824 (setq current-prefix-arg nil)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1825 (call-interactively
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1826 (if tpu-regexp-p 'replace-regexp 'replace-string)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1827 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1828 (call-interactively
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1829 (if tpu-regexp-p 'query-replace-regexp 'query-replace)))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1830
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1831 (defun tpu-add-at-bol (text)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1832 "Add text to the beginning of each line in a region,
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1833 or each line in the entire buffer if no region is selected."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1834 (interactive
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1835 (list (tpu-string-prompt "String to add: " 'tpu-add-at-bol-hist)))
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1836 (if (string= "" text) (tpu-error "No string specified."))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1837 (cond ((tpu-mark)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1838 (save-excursion
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1839 (if (> (point) (tpu-mark)) (exchange-point-and-mark))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1840 (while (and (< (point) (tpu-mark)) (re-search-forward "^" (tpu-mark) t))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1841 (if (< (point) (tpu-mark)) (replace-match text))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1842 (tpu-unselect t))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1843 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1844 (save-excursion
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1845 (goto-char (point-min))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1846 (while (and (re-search-forward "^" nil t) (not (eobp)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1847 (replace-match text))))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1848
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1849 (defun tpu-add-at-eol (text)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1850 "Add text to the end of each line in a region,
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1851 or each line of the entire buffer if no region is selected."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1852 (interactive
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1853 (list (tpu-string-prompt "String to add: " 'tpu-add-at-eol-hist)))
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
1854 (if (string= "" text) (tpu-error "No string specified."))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1855 (cond ((tpu-mark)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1856 (save-excursion
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1857 (if (> (point) (tpu-mark)) (exchange-point-and-mark))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1858 (while (< (point) (tpu-mark))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1859 (end-of-line)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1860 (if (<= (point) (tpu-mark)) (insert text))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1861 (forward-line)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1862 (tpu-unselect t))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1863 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1864 (save-excursion
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1865 (goto-char (point-min))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1866 (while (not (eobp))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1867 (end-of-line) (insert text) (forward-line))))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1868
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1869 (defun tpu-trim-line-ends nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
1870 "Remove trailing whitespace from every line in the buffer."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1871 (interactive)
34206
18117bc6bcdd (tpu-help): Fixed previous screen logic.
Gerd Moellmann <gerd@gnu.org>
parents: 34034
diff changeset
1872 (save-match-data
18117bc6bcdd (tpu-help): Fixed previous screen logic.
Gerd Moellmann <gerd@gnu.org>
parents: 34034
diff changeset
1873 (save-excursion
18117bc6bcdd (tpu-help): Fixed previous screen logic.
Gerd Moellmann <gerd@gnu.org>
parents: 34034
diff changeset
1874 (goto-char (point-min))
18117bc6bcdd (tpu-help): Fixed previous screen logic.
Gerd Moellmann <gerd@gnu.org>
parents: 34034
diff changeset
1875 (while (re-search-forward "[ \t][ \t]*$" nil t)
18117bc6bcdd (tpu-help): Fixed previous screen logic.
Gerd Moellmann <gerd@gnu.org>
parents: 34034
diff changeset
1876 (delete-region (match-beginning 0) (match-end 0))))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1877
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1878
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1879 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1880 ;;; Movement by character
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1881 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1882 (defun tpu-char (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1883 "Move to the next character in the current direction.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1884 A repeat count means move that many characters."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1885 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1886 (if tpu-advance (tpu-forward-char num) (tpu-backward-char num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1887
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1888 (defun tpu-forward-char (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1889 "Move right ARG characters (left if ARG is negative)."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1890 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1891 (forward-char num))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1892
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1893 (defun tpu-backward-char (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1894 "Move left ARG characters (right if ARG is negative)."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1895 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1896 (backward-char num))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1897
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1898
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1899 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1900 ;;; Movement by word
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1901 ;;;
58628
62a7c13576b7 (tpu-help-keypad-map, tpu-help-text)
Luc Teirlinck <teirllm@auburn.edu>
parents: 54205
diff changeset
1902 (defvar tpu-word-separator-list '()
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1903 "List of additional word separators.")
58628
62a7c13576b7 (tpu-help-keypad-map, tpu-help-text)
Luc Teirlinck <teirllm@auburn.edu>
parents: 54205
diff changeset
1904 (defvar tpu-skip-chars "^ \t"
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1905 "Characters to skip when moving by word.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1906 Additional word separators are added to this string.")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1907
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1908 (defun tpu-word (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1909 "Move to the beginning of the next word in the current direction.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1910 A repeat count means move that many words."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1911 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1912 (if tpu-advance (tpu-forward-to-word num) (tpu-backward-to-word num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1913
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1914 (defun tpu-forward-to-word (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1915 "Move forward until encountering the beginning of a word.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1916 With argument, do this that many times."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1917 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1918 (while (and (> num 0) (not (eobp)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1919 (let* ((beg (point))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1920 (end (prog2 (end-of-line) (point) (goto-char beg))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1921 (cond ((eolp)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1922 (forward-char 1))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1923 ((memq (char-after (point)) tpu-word-separator-list)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1924 (forward-char 1)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1925 (skip-chars-forward " \t" end))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1926 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1927 (skip-chars-forward tpu-skip-chars end)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1928 (skip-chars-forward " \t" end))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1929 (setq num (1- num))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1930
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1931 (defun tpu-backward-to-word (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1932 "Move backward until encountering the beginning of a word.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1933 With argument, do this that many times."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1934 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1935 (while (and (> num 0) (not (bobp)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1936 (let* ((beg (point))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1937 (end (prog2 (beginning-of-line) (point) (goto-char beg))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1938 (cond ((bolp)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1939 ( forward-char -1))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1940 ((memq (char-after (1- (point))) tpu-word-separator-list)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1941 (forward-char -1))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1942 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1943 (skip-chars-backward " \t" end)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1944 (skip-chars-backward tpu-skip-chars end)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1945 (if (and (not (bolp)) (= ? (char-syntax (char-after (point)))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1946 (forward-char -1)))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1947 (setq num (1- num))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1948
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1949 (defun tpu-add-word-separators (separators)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1950 "Add new word separators for TPU-edt word commands."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1951 (interactive "sSeparators: ")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1952 (let* ((n 0) (length (length separators)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1953 (while (< n length)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1954 (let ((char (aref separators n))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1955 (ss (substring separators n (1+ n))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1956 (cond ((not (memq char tpu-word-separator-list))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1957 (setq tpu-word-separator-list
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1958 (append ss tpu-word-separator-list))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1959 (cond ((= char ?-)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1960 (setq tpu-skip-chars (concat tpu-skip-chars "\\-")))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1961 ((= char ?\\)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1962 (setq tpu-skip-chars (concat tpu-skip-chars "\\\\")))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1963 ((= char ?^)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1964 (setq tpu-skip-chars (concat tpu-skip-chars "\\^")))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1965 (t
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1966 (setq tpu-skip-chars (concat tpu-skip-chars ss))))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1967 (setq n (1+ n))))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1968
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1969 (defun tpu-reset-word-separators nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1970 "Reset word separators to default value."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1971 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1972 (setq tpu-word-separator-list nil)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1973 (setq tpu-skip-chars "^ \t"))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1974
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1975 (defun tpu-set-word-separators (separators)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1976 "Set new word separators for TPU-edt word commands."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1977 (interactive "sSeparators: ")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1978 (tpu-reset-word-separators)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1979 (tpu-add-word-separators separators))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1980
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1981
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1982 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1983 ;;; Movement by line
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1984 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1985 (defun tpu-next-line (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1986 "Move to next line.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1987 Prefix argument serves as a repeat count."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1988 (interactive "p")
78391
4821c04b4edb (next-line-internal): Setting deleted. All callers use line-move.
Richard M. Stallman <rms@gnu.org>
parents: 78218
diff changeset
1989 (line-move num)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1990 (setq this-command 'next-line))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1991
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1992 (defun tpu-previous-line (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1993 "Move to previous line.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1994 Prefix argument serves as a repeat count."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1995 (interactive "p")
78391
4821c04b4edb (next-line-internal): Setting deleted. All callers use line-move.
Richard M. Stallman <rms@gnu.org>
parents: 78218
diff changeset
1996 (line-move (- num))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1997 (setq this-command 'previous-line))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1998
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1999 (defun tpu-next-beginning-of-line (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2000 "Move to beginning of line; if at beginning, move to beginning of next line.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2001 Accepts a prefix argument for the number of lines to move."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2002 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2003 (backward-char 1)
34034
243d06aee783 (tpu-version): New version.
Gerd Moellmann <gerd@gnu.org>
parents: 25649
diff changeset
2004 (forward-visible-line (- 1 num)))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2005
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2006 (defun tpu-end-of-line (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2007 "Move to the next end of line in the current direction.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2008 A repeat count means move that many lines."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2009 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2010 (if tpu-advance (tpu-next-end-of-line num) (tpu-previous-end-of-line num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2011
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2012 (defun tpu-next-end-of-line (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2013 "Move to end of line; if at end, move to end of next line.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2014 Accepts a prefix argument for the number of lines to move."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2015 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2016 (forward-char 1)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2017 (end-of-line num))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2018
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2019 (defun tpu-previous-end-of-line (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2020 "Move EOL upward.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2021 Accepts a prefix argument for the number of lines to move."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2022 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2023 (end-of-line (- 1 num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2024
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2025 (defun tpu-current-end-of-line nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2026 "Move point to end of current line."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2027 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2028 (let ((beg (point)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2029 (end-of-line)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2030 (if (= beg (point)) (message "You are already at the end of a line."))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2031
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2032 (defun tpu-line (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2033 "Move to the beginning of the next line in the current direction.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2034 A repeat count means move that many lines."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2035 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2036 (if tpu-advance (tpu-forward-line num) (tpu-backward-line num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2037
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2038 (defun tpu-forward-line (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2039 "Move to beginning of next line.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2040 Prefix argument serves as a repeat count."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2041 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2042 (forward-line num))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2043
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2044 (defun tpu-backward-line (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2045 "Move to beginning of previous line.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2046 Prefix argument serves as repeat count."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2047 (interactive "p")
12686
8a11e11d3365 (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 11637
diff changeset
2048 (or (bolp) (>= 0 num) (setq num (- num 1)))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2049 (forward-line (- num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2050
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2051
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2052 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2053 ;;; Movement by paragraph
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2054 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2055 (defun tpu-paragraph (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2056 "Move to the next paragraph in the current direction.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2057 A repeat count means move that many paragraphs."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2058 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2059 (if tpu-advance
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2060 (tpu-next-paragraph num) (tpu-previous-paragraph num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2061
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2062 (defun tpu-next-paragraph (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2063 "Move to beginning of the next paragraph.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2064 Accepts a prefix argument for the number of paragraphs."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2065 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2066 (beginning-of-line)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2067 (while (and (not (eobp)) (> num 0))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2068 (if (re-search-forward "^[ \t]*$" nil t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2069 (if (re-search-forward "[^ \t\n]" nil t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2070 (goto-char (match-beginning 0))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2071 (goto-char (point-max))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2072 (setq num (1- num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2073 (beginning-of-line))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2074
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2075
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2076 (defun tpu-previous-paragraph (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2077 "Move to beginning of previous paragraph.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2078 Accepts a prefix argument for the number of paragraphs."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2079 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2080 (end-of-line)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2081 (while (and (not (bobp)) (> num 0))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2082 (if (not (and (re-search-backward "^[ \t]*$" nil t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2083 (re-search-backward "[^ \t\n]" nil t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2084 (re-search-backward "^[ \t]*$" nil t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2085 (progn (re-search-forward "[^ \t\n]" nil t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2086 (goto-char (match-beginning 0)))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2087 (goto-char (point-min)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2088 (setq num (1- num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2089 (beginning-of-line))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2090
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2091
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2092 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2093 ;;; Movement by page
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2094 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2095 (defun tpu-page (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2096 "Move to the next page in the current direction.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2097 A repeat count means move that many pages."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2098 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2099 (if tpu-advance (forward-page num) (backward-page num))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2100 (if (eobp) (recenter -1)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2101
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2102
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2103 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2104 ;;; Scrolling and movement within the buffer
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2105 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2106 (defun tpu-scroll-window (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2107 "Scroll the display to the next section in the current direction.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2108 A repeat count means scroll that many sections."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2109 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2110 (if tpu-advance (tpu-scroll-window-up num) (tpu-scroll-window-down num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2111
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2112 (defun tpu-scroll-window-down (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2113 "Scroll the display down to the next section.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2114 A repeat count means scroll that many sections."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2115 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2116 (let* ((beg (tpu-current-line))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2117 (height (1- (window-height)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2118 (lines (* num (/ (* height tpu-percent-scroll) 100))))
78391
4821c04b4edb (next-line-internal): Setting deleted. All callers use line-move.
Richard M. Stallman <rms@gnu.org>
parents: 78218
diff changeset
2119 (line-move (- lines))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2120 (if (> lines beg) (recenter 0))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2121
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2122 (defun tpu-scroll-window-up (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2123 "Scroll the display up to the next section.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2124 A repeat count means scroll that many sections."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2125 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2126 (let* ((beg (tpu-current-line))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2127 (height (1- (window-height)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2128 (lines (* num (/ (* height tpu-percent-scroll) 100))))
78391
4821c04b4edb (next-line-internal): Setting deleted. All callers use line-move.
Richard M. Stallman <rms@gnu.org>
parents: 78218
diff changeset
2129 (line-move lines)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2130 (if (>= (+ lines beg) height) (recenter -1))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2131
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2132 (defun tpu-pan-right (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2133 "Pan right tpu-pan-columns (16 by default).
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2134 Accepts a prefix argument for the number of tpu-pan-columns to scroll."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2135 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2136 (scroll-left (* tpu-pan-columns num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2137
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2138 (defun tpu-pan-left (num)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2139 "Pan left tpu-pan-columns (16 by default).
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2140 Accepts a prefix argument for the number of tpu-pan-columns to scroll."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2141 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2142 (scroll-right (* tpu-pan-columns num)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2143
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2144 (defun tpu-move-to-beginning nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2145 "Move cursor to the beginning of buffer, but don't set the mark."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2146 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2147 (goto-char (point-min)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2148
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2149 (defun tpu-move-to-end nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2150 "Move cursor to the end of buffer, but don't set the mark."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2151 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2152 (goto-char (point-max))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2153 (recenter -1))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2154
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2155 (defun tpu-goto-percent (perc)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2156 "Move point to ARG percentage of the buffer."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2157 (interactive "NGoto-percentage: ")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2158 (if (or (> perc 100) (< perc 0))
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
2159 (tpu-error "Percentage %d out of range 0 < percent < 100." perc)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2160 (goto-char (/ (* (point-max) perc) 100))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2161
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2162 (defun tpu-beginning-of-window nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2163 "Move cursor to top of window."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2164 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2165 (move-to-window-line 0))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2166
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2167 (defun tpu-end-of-window nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2168 "Move cursor to bottom of window."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2169 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2170 (move-to-window-line -1))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2171
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2172 (defun tpu-line-to-bottom-of-window nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2173 "Move the current line to the bottom of the window."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2174 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2175 (recenter -1))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2176
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2177 (defun tpu-line-to-top-of-window nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2178 "Move the current line to the top of the window."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2179 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2180 (recenter 0))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2181
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2182
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2183 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2184 ;;; Direction
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2185 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2186 (defun tpu-advance-direction nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2187 "Set TPU Advance mode so keypad commands move forward."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2188 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2189 (setq tpu-direction-string " Advance")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2190 (setq tpu-advance t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2191 (setq tpu-reverse nil)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2192 (tpu-set-search)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2193 (tpu-update-mode-line))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2194
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2195 (defun tpu-backup-direction nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2196 "Set TPU Backup mode so keypad commands move backward."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2197 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2198 (setq tpu-direction-string " Reverse")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2199 (setq tpu-advance nil)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2200 (setq tpu-reverse t)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2201 (tpu-set-search)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2202 (tpu-update-mode-line))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2203
25649
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
2204 (defun tpu-toggle-direction nil
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
2205 "Change the current TPU direction."
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
2206 (interactive)
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
2207 (if tpu-advance (tpu-backup-direction) (tpu-advance-direction)))
c85397c22e1b (tpu-version): New version.
Richard M. Stallman <rms@gnu.org>
parents: 22454
diff changeset
2208
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2209
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2210 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2211 ;;; Minibuffer map additions to make KP_enter = RET
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2212 ;;;
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2213 ;; Standard Emacs settings under xterm in function-key-map map
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2214 ;; "\eOM" to [kp-enter] and [kp-enter] to RET, but since the output of the map
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2215 ;; is not fed back into the map, the key stays as kp-enter :-(.
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2216 (define-key minibuffer-local-map [kp-enter] 'exit-minibuffer)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2217 ;; These are not necessary because they are inherited.
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2218 ;; (define-key minibuffer-local-ns-map [kp-enter] 'exit-minibuffer)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2219 ;; (define-key minibuffer-local-completion-map [kp-enter] 'exit-minibuffer)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2220 (define-key minibuffer-local-must-match-map [kp-enter] 'minibuffer-complete-and-exit)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2221
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2222
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2223 ;;;
7982
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
2224 ;;; Minibuffer map additions to set search direction
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
2225 ;;;
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2226 (define-key minibuffer-local-map [kp-4] 'tpu-search-forward-exit) ;KP4
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2227 (define-key minibuffer-local-map [kp-5] 'tpu-search-backward-exit) ;KP5
7982
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
2228
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
2229
267ab8286077 (tpu-edt-off): Restore original global key map.
Richard M. Stallman <rms@gnu.org>
parents: 7068
diff changeset
2230 ;;;
12760
4bb9477d762a (tpu-control-keys): New initial value, nil.
Richard M. Stallman <rms@gnu.org>
parents: 12686
diff changeset
2231 ;;; Functions to set, reset, and toggle the control key bindings
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2232 ;;;
77747
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2233
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2234 (defvar tpu-control-keys-map
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2235 (let ((map (make-sparse-keymap)))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2236 (define-key map "\C-\\" 'quoted-insert) ; ^\
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2237 (define-key map "\C-a" 'tpu-toggle-overwrite-mode) ; ^A
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2238 (define-key map "\C-b" 'repeat-complex-command) ; ^B
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2239 (define-key map "\C-e" 'tpu-current-end-of-line) ; ^E
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2240 (define-key map "\C-h" 'tpu-next-beginning-of-line) ; ^H (BS)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2241 (define-key map "\C-j" 'tpu-delete-previous-word) ; ^J (LF)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2242 (define-key map "\C-k" 'tpu-define-macro-key) ; ^K
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2243 (define-key map "\C-l" 'tpu-insert-formfeed) ; ^L (FF)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2244 (define-key map "\C-r" 'recenter) ; ^R
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2245 (define-key map "\C-u" 'tpu-delete-to-bol) ; ^U
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2246 (define-key map "\C-v" 'tpu-quoted-insert) ; ^V
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2247 (define-key map "\C-w" 'redraw-display) ; ^W
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2248 (define-key map "\C-z" 'tpu-exit) ; ^Z
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2249 map))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2250
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2251 (defun tpu-set-control-keys ()
12760
4bb9477d762a (tpu-control-keys): New initial value, nil.
Richard M. Stallman <rms@gnu.org>
parents: 12686
diff changeset
2252 "Set control keys to TPU style functions."
77747
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2253 (tpu-reset-control-keys 'tpu))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2254
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2255 (defun tpu-reset-control-keys (tpu-style)
73743
3d9ebd99f905 (tpu-help-text, tpu-save-all-buffers-kill-emacs, tpu-emacs-replace,
Juanma Barranquero <lekktu@gmail.com>
parents: 68648
diff changeset
2256 "Set control keys to TPU or Emacs style functions."
77747
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2257 (let ((parent (keymap-parent tpu-global-map)))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2258 (if tpu-style
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2259 (if (eq parent tpu-control-keys-map)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2260 nil ;All done already.
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2261 ;; Insert tpu-control-keys-map in the global map.
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2262 (set-keymap-parent tpu-control-keys-map parent)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2263 (set-keymap-parent tpu-global-map tpu-control-keys-map))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2264 (if (not (eq parent tpu-control-keys-map))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2265 nil ;All done already.
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2266 ;; Remove tpu-control-keys-map from the global map.
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2267 (set-keymap-parent tpu-global-map (keymap-parent parent))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2268 (set-keymap-parent tpu-control-keys-map nil)))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2269 (setq tpu-control-keys tpu-style)))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2270
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2271 (defun tpu-toggle-control-keys nil
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
2272 "Toggle control key bindings between TPU-edt and Emacs."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2273 (interactive)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2274 (tpu-reset-control-keys (not tpu-control-keys))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2275 (and (interactive-p)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2276 (message "Control keys function with %s bindings."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2277 (if tpu-control-keys "TPU-edt" "Emacs"))))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2278
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2279
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2280 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2281 ;;; Emacs version 19 minibuffer history support
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2282 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2283 (defun tpu-next-history-element (n)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2284 "Insert the next element of the minibuffer history into the minibuffer."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2285 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2286 (next-history-element n)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2287 (goto-char (point-max)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2288
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2289 (defun tpu-previous-history-element (n)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2290 "Insert the previous element of the minibuffer history into the minibuffer."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2291 (interactive "p")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2292 (previous-history-element n)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2293 (goto-char (point-max)))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2294
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2295 (defun tpu-arrow-history nil
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2296 "Modify minibuffer maps to use arrows for history recall."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2297 (interactive)
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2298 (dolist (cur (where-is-internal 'tpu-previous-line))
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2299 (define-key read-expression-map cur 'tpu-previous-history-element)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2300 (define-key minibuffer-local-map cur 'tpu-previous-history-element)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2301 ;; These are inherited anyway. --Stef
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2302 ;; (define-key minibuffer-local-ns-map cur 'tpu-previous-history-element)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2303 ;; (define-key minibuffer-local-completion-map cur 'tpu-previous-history-element)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2304 ;; (define-key minibuffer-local-must-match-map cur 'tpu-previous-history-element)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2305 )
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2306
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2307 (dolist (cur (where-is-internal 'tpu-next-line))
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2308 (define-key read-expression-map cur 'tpu-next-history-element)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2309 (define-key minibuffer-local-map cur 'tpu-next-history-element)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2310 ;; These are inherited anyway. --Stef
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2311 ;; (define-key minibuffer-local-ns-map cur 'tpu-next-history-element)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2312 ;; (define-key minibuffer-local-completion-map cur 'tpu-next-history-element)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2313 ;; (define-key minibuffer-local-must-match-map cur 'tpu-next-history-element)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2314 ))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2315
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2316
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2317 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2318 ;;; Emacs version 19 X-windows key definition support
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2319 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2320 (defun tpu-load-xkeys (file)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2321 "Load the TPU-edt X-windows key definitions FILE.
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2322 If FILE is nil, try to load a default file. The default file names are
87571
65113c11c1c5 Misc comment and docstring fixes to better follow conventions.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 87569
diff changeset
2323 `~/.tpu-lucid-keys' for XEmacs, and `~/.tpu-keys' for Emacs."
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2324 (interactive "fX key definition file: ")
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2325 (cond (file
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2326 (setq file (expand-file-name file)))
4523
73cc2b215834 (tpu-version): Print version number rather than the RCS revision number.
Richard M. Stallman <rms@gnu.org>
parents: 4450
diff changeset
2327 (tpu-xkeys-file
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2328 (setq file (expand-file-name tpu-xkeys-file)))
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
2329 ((featurep 'xemacs)
14227
04dba88947bc (tpu-load-xkeys): Use `convert-standard-filename' to
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2330 (setq file (convert-standard-filename
04dba88947bc (tpu-load-xkeys): Use `convert-standard-filename' to
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2331 (expand-file-name "~/.tpu-lucid-keys"))))
63960
4b67deb7c72e (tpu-emacs19-p): Var deleted. All references simplified.
Richard M. Stallman <rms@gnu.org>
parents: 63959
diff changeset
2332 (t
14227
04dba88947bc (tpu-load-xkeys): Use `convert-standard-filename' to
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2333 (setq file (convert-standard-filename
04dba88947bc (tpu-load-xkeys): Use `convert-standard-filename' to
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2334 (expand-file-name "~/.tpu-keys")))
11637
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2335 (and (not (file-exists-p file))
14227
04dba88947bc (tpu-load-xkeys): Use `convert-standard-filename' to
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2336 (file-exists-p
04dba88947bc (tpu-load-xkeys): Use `convert-standard-filename' to
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2337 (convert-standard-filename
04dba88947bc (tpu-load-xkeys): Use `convert-standard-filename' to
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2338 (expand-file-name "~/.tpu-gnu-keys")))
04dba88947bc (tpu-load-xkeys): Use `convert-standard-filename' to
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2339 (tpu-copy-keyfile
04dba88947bc (tpu-load-xkeys): Use `convert-standard-filename' to
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2340 (convert-standard-filename
14691
88df8e3ef688 (tpu-load-xkeys): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents: 14344
diff changeset
2341 (expand-file-name "~/.tpu-gnu-keys")) file))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2342 (cond ((file-readable-p file)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2343 (load-file file))
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2344 (t
87569
a9700a12dbad (tpu-load-xkeys): Recommend to run the
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 86531
diff changeset
2345 ;; This used to force the user to build `file'. With the
a9700a12dbad (tpu-load-xkeys): Recommend to run the
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 86531
diff changeset
2346 ;; new code, such a file may not be necessary. In case it
a9700a12dbad (tpu-load-xkeys): Recommend to run the
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 86531
diff changeset
2347 ;; is, issue a message giving a hint as to how to build it.
a9700a12dbad (tpu-load-xkeys): Recommend to run the
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 86531
diff changeset
2348 (message "%s not found: use M-x tpu-mapper to create it"
81314
5671bcc5449a (tpu-gold-map): Rename from GOLD-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 77747
diff changeset
2349 (abbreviate-file-name file)))))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2350
11637
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2351 (defun tpu-copy-keyfile (oldname newname)
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2352 "Copy the TPU-edt X key definitions file to the new default name."
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2353 (interactive "fOld name: \nFNew name: ")
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2354 (if (not (get-buffer "*TPU-Notice*")) (generate-new-buffer "*TPU-Notice*"))
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2355 (set-buffer "*TPU-Notice*")
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2356 (erase-buffer)
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2357 (insert "
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2358 NOTICE --
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2359
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2360 The default name of the TPU-edt key definition file has changed
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2361 from `~/.tpu-gnu-keys' to `~/.tpu-keys'. With your permission,
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2362 your key definitions will be copied to the new file. If you'll
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2363 never use older versions of Emacs, you can remove the old file.
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2364 If the copy fails, you'll be asked if you want to create a new
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2365 key definitions file. Do you want to copy your key definition
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2366 file now?
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2367 ")
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2368 (save-window-excursion
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2369 (switch-to-buffer-other-window "*TPU-Notice*")
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2370 (shrink-window-if-larger-than-buffer)
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2371 (goto-char (point-min))
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2372 (beep)
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2373 (and (tpu-y-or-n-p "Copy key definitions to the new file now? ")
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2374 (condition-case conditions
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2375 (copy-file oldname newname)
39540
a386ffde71f8 Make messages match original TPU/edt editor.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
2376 (tpu-error (message "Sorry, couldn't copy - %s." (cdr conditions)))))
11637
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2377 (kill-buffer "*TPU-Notice*")))
dfdae6cd817e (tpu-copy-keyfile): New function.
Richard M. Stallman <rms@gnu.org>
parents: 11550
diff changeset
2378
79169
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2379 (defvar tpu-edt-old-global-values nil)
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2380
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2381 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2382 ;;; Start and Stop TPU-edt
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2383 ;;;
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2384 ;;;###autoload
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2385 (defun tpu-edt-on ()
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2386 "Turn on TPU/edt emulation."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2387 (interactive)
79169
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2388 ;; To clean things up (and avoid cycles in the global map).
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2389 (tpu-edt-off)
77747
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2390 ;; First, activate tpu-global-map, while protecting the original keymap.
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2391 (set-keymap-parent tpu-global-map global-map)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2392 (setq global-map tpu-global-map)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2393 (use-global-map global-map)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2394 ;; Then do the normal TPU setup.
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2395 (transient-mark-mode t)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2396 (add-hook 'post-command-hook 'tpu-search-highlight)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2397 (tpu-set-mode-line t)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2398 (tpu-advance-direction)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2399 ;; set page delimiter, display line truncation, and scrolling like TPU
79169
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2400 (dolist (varval '((page-delimiter . "\f")
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2401 (truncate-lines . t)
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2402 (scroll-step . 1)))
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2403 (push (cons (car varval) (default-value (car varval)))
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2404 tpu-edt-old-global-values)
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2405 (set-default (car varval) (cdr varval)))
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2406 (tpu-set-control-keys)
77747
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2407 (and window-system (tpu-load-xkeys nil))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2408 (tpu-arrow-history)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2409 ;; Then protect tpu-global-map from user modifications.
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2410 (let ((map (make-sparse-keymap)))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2411 (set-keymap-parent map global-map)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2412 (setq global-map map)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2413 (use-global-map map))
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2414 (setq tpu-edt-mode t))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2415
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2416 (defun tpu-edt-off ()
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2417 "Turn off TPU/edt emulation. Note that the keypad is left on."
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2418 (interactive)
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2419 (tpu-reset-control-keys nil)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2420 (remove-hook 'post-command-hook 'tpu-search-highlight)
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2421 (tpu-set-mode-line nil)
79169
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2422 (while tpu-edt-old-global-values
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2423 (let ((varval (pop tpu-edt-old-global-values)))
c6da63ecc892 (tpu-edt-old-global-values): New var.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78425
diff changeset
2424 (set-default (car varval) (cdr varval))))
77747
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2425 ;; Remove tpu-global-map from the global map.
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2426 (let ((map global-map))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2427 (while map
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2428 (let ((parent (keymap-parent map)))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2429 (if (eq tpu-global-map parent)
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2430 (set-keymap-parent map (keymap-parent parent))
d973d3fcb308 (CSI-map, SS3-map) Moved from global-map to tpu-global-map.
Richard M. Stallman <rms@gnu.org>
parents: 75346
diff changeset
2431 (setq map parent)))))
86531
da67dc2c4510 Don't require cl when compiling.
Glenn Morris <rgm@gnu.org>
parents: 85688
diff changeset
2432 ;; Only has an effect if the advice in tpu-extras has been activated.
da67dc2c4510 Don't require cl when compiling.
Glenn Morris <rgm@gnu.org>
parents: 85688
diff changeset
2433 (condition-case nil
da67dc2c4510 Don't require cl when compiling.
Glenn Morris <rgm@gnu.org>
parents: 85688
diff changeset
2434 (with-no-warnings (ad-disable-regexp "\\`tpu-"))
da67dc2c4510 Don't require cl when compiling.
Glenn Morris <rgm@gnu.org>
parents: 85688
diff changeset
2435 (error nil))
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2436 (setq tpu-edt-mode nil))
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2437
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2438
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2439 ;;;### (autoloads (tpu-set-cursor-bound tpu-set-cursor-free tpu-set-scroll-margins
94697
f8e080083e06 Update autoloads.
Juanma Barranquero <lekktu@gmail.com>
parents: 94658
diff changeset
2440 ;;;;;; tpu-cursor-free-mode) "tpu-extras" "tpu-extras.el" "d1893dc337c5370edf3997cc9430c9b7")
82367
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2441 ;;; Generated autoloads from tpu-extras.el
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2442
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2443 (autoload 'tpu-cursor-free-mode "tpu-extras" "\
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2444 Minor mode to allow the cursor to move freely about the screen.
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2445
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2446 \(fn &optional ARG)" t nil)
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2447
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2448 (autoload 'tpu-set-scroll-margins "tpu-extras" "\
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2449 Set scroll margins.
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2450
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2451 \(fn TOP BOTTOM)" t nil)
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2452
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2453 (autoload 'tpu-set-cursor-free "tpu-extras" "\
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2454 Allow the cursor to move freely about the screen.
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2455
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2456 \(fn)" t nil)
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2457
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2458 (autoload 'tpu-set-cursor-bound "tpu-extras" "\
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2459 Constrain the cursor to the flow of the text.
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2460
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2461 \(fn)" t nil)
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2462
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2463 ;;;***
0203f02d33db Add tpu-extras's autoloads.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82365
diff changeset
2464
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2465 (provide 'tpu-edt)
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2466
64122
c9251f75fc62 (CSI-map, SS3-map, GOLD-map, GOLD-CSI-map)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64085
diff changeset
2467 ;; arch-tag: f3dfe61c-2cbd-4f73-b9cc-eb215020b857
4421
95bb7e28d761 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2468 ;;; tpu-edt.el ends here