annotate lisp/emulation/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 5d941efe34d7
children e4ee733b4030
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
38436
b174db545cfd Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 35124
diff changeset
1 ;;; edt.el --- enhanced EDT keypad mode emulation for GNU Emacs 19
660
08eb386dd0f3 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 258
diff changeset
2
64701
34bd8e434dd7 Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 64085
diff changeset
3 ;; Copyright (C) 1986, 1992, 1993, 1994, 1995, 2000, 2001, 2002, 2003,
79705
d6d821e3ae21 Add 2008 to copyright years.
Glenn Morris <rgm@gnu.org>
parents: 78218
diff changeset
4 ;; 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
846
20674ae6bf52 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 811
diff changeset
5
74641
11fae7eadf2d Replace `/' with a `-', to fix a problem on Cygwin.
Eli Zaretskii <eliz@gnu.org>
parents: 68648
diff changeset
6 ;; Author: Kevin Gallagher <Kevin.Gallagher@boeing.com>
11fae7eadf2d Replace `/' with a `-', to fix a problem on Cygwin.
Eli Zaretskii <eliz@gnu.org>
parents: 68648
diff changeset
7 ;; Maintainer: Kevin Gallagher <Kevin.Gallagher@boeing.com>
811
e694e0879463 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 807
diff changeset
8 ;; Keywords: emulations
807
4f28bd14272c *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 793
diff changeset
9
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
10 ;; This file is part of GNU Emacs.
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
11
94658
eb7b2376cae5 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 93975
diff changeset
12 ;; GNU Emacs is free software: you can redistribute it and/or modify
eb7b2376cae5 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 93975
diff changeset
13 ;; it under the terms of the GNU General Public License as published by
eb7b2376cae5 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 93975
diff changeset
14 ;; 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: 93975
diff changeset
15 ;; (at your option) any later version.
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
16
94658
eb7b2376cae5 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 93975
diff changeset
17 ;; GNU Emacs is distributed in the hope that it will be useful,
eb7b2376cae5 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 93975
diff changeset
18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
eb7b2376cae5 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 93975
diff changeset
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
eb7b2376cae5 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 93975
diff changeset
20 ;; GNU General Public License for more details.
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
21
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
22 ;; 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: 93975
diff changeset
23 ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
24
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
25
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
26
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
27 ;;; Commentary:
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
28 ;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
29
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
30 ;; This is Version 4.0 of the EDT Emulation for Emacs 19 and above.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
31 ;; It comes with special functions which replicate nearly all of EDT's
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
32 ;; keypad mode behavior. It sets up default keypad and function key
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
33 ;; bindings which closely match those found in EDT. Support is
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
34 ;; provided so that users may reconfigure most keypad and function key
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
35 ;; bindings to their own liking.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
36
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
37 ;; NOTE: Version 4.0 contains several enhancements. See the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
38 ;; Enhancement section below for the details.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
39
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
40 ;; Getting Started:
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
41
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
42 ;; To start the EDT Emulation, first start Emacs and then enter
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
43 ;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
44 ;; M-x edt-emulation-on
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
45 ;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
46 ;; to begin the emulation. After initialization is complete, the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
47 ;; following message will appear below the status line informing you
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
48 ;; that the emulation has been enabled: "Default EDT keymap active".
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
49
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
50 ;; You can have the EDT Emulation start up automatically, each time
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
51 ;; you initiate a GNU Emacs session, by adding the following line to
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
52 ;; your .emacs file:
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
53 ;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
54 ;; (add-hook term-setup-hook 'edt-emulation-on)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
55
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
56 ;; IMPORTANT: Be sure to read the file, edt-user.doc, located in the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
57 ;; Emacs "etc" directory. It contains very helpful user information.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
58
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
59 ;; The EDT emulation consists of the following files:
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
60 ;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
61 ;; edt-user.doc - User Instructions and Sample Customization File
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
62 ;; edt.el - EDT Emulation Functions and Default Configuration
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
63 ;; edt-lk201.el - Built-in support for DEC LK-201 Keyboards
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
64 ;; edt-vt100.el - Built-in support for DEC VT-100 (and above) terminals
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
65 ;; edt-pc.el - Built-in support for PC 101 Keyboards under MS-DOS
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
66 ;; edt-mapper.el - Create an EDT LK-201 Map File for Keyboards Without
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
67 ;; Built-in Support
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
68
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
69 ;; Enhancements:
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
70
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
71 ;; Version 4.0 contains the following enhancements:
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
72
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
73 ;; 1. Scroll margins at the top and bottom of the window are now
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
74 ;; supported. (The design was copied from tpu-extras.el.) By
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
75 ;; default, this feature is enabled, with the top margin set to
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
76 ;; 10% of the window and the bottom margin set to 15% of the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
77 ;; window. To change these settings, you can invoke the function
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
78 ;; edt-set-scroll-margins in your .emacs file. For example, the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
79 ;; following line
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
80 ;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
81 ;; (edt-set-scroll-margins "20%" "25%")
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
82 ;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
83 ;; sets the top margin to 20% of the window and the bottom margin
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
84 ;; to 25% of the window. To disable this feature, set each
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
85 ;; margin to 0%. You can also invoke edt-set-scroll-margins
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
86 ;; interactively while EDT Emulation is active to change the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
87 ;; settings for that session.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
88 ;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
89 ;; NOTE: Another way to set the scroll margins is to use the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
90 ;; Emacs customization feature (not available in Emacs 19) to set
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
91 ;; the following two variables directly:
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
92 ;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
93 ;; edt-top-scroll-margin and edt-bottom-scroll-margin
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
94 ;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
95 ;; Enter the Emacs `customize' command. First select the Editing
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
96 ;; group and then select the Emulations group. Finally, select
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
97 ;; the Edt group and follow the directions.
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
98 ;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
99 ;; 2. The SUBS command is now supported and bound to GOLD-Enter by
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
100 ;; default. (This design was copied from tpu-edt.el.) Note, in
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
101 ;; earlier versions of EDT Emulation, GOLD-Enter was assigned to
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
102 ;; the Emacs function `query-replace'. The binding of
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
103 ;; `query-replace' has been moved to GOLD-/. If you prefer to
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
104 ;; restore `query-replace' to GOLD-Enter, then use an EDT user
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
105 ;; customization file, edt-user.el, to do this. See edt-user.doc
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
106 ;; for details.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
107
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
108 ;; 3. EDT Emulation now also works in XEmacs, including the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
109 ;; highlighting of selected text.
807
4f28bd14272c *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 793
diff changeset
110
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
111 ;; 4. If you access a workstation using an X Server, observe that
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
112 ;; the initialization file generated by edt-mapper.el will now
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
113 ;; contain the name of the X Server vendor. This is a
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
114 ;; convenience for those who have access to their Unix account
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
115 ;; from more than one type of X Server. Since different X
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
116 ;; Servers typically require different EDT emulation
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
117 ;; initialization files, edt-mapper.el will now generate these
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
118 ;; different initialization files and save them with different
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
119 ;; names. Then, the correct initialization file for the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
120 ;; particular X server in use is loaded correctly automatically.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
121
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
122 ;; 5. Also, edt-mapper.el is now capable of binding an ASCII key
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
123 ;; sequence, providing the ASCII key sequence prefix is already
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
124 ;; known by Emacs to be a prefix. As a result of providing this
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
125 ;; support, some terminal/keyboard/window system configurations,
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
126 ;; which don't have a complete set of sensible function key
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
127 ;; bindings built into Emacs in `function-key-map', can still be
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
128 ;; configured for use with EDT Emulation. (Note: In a few rare
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
129 ;; circumstances this does not work properly. In particular, it
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
130 ;; does not work if a subset of the leading ASCII characters in a
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
131 ;; key sequence are recognized by Emacs as having an existing
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
132 ;; binding. For example, if the keypad 7 (KP-7) key generates
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
133 ;; the sequence \"<ESC>Ow\" and \"<ESC>O\" is already bound to a
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
134 ;; function, pressing KP-7 when told to do so by edt-mapper.el
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
135 ;; will result in edt-mapper.el incorrectly mapping \"<ESC>O\" to
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
136 ;; KP-7 and \"w\" to KP-8. If something like this happens to
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
137 ;; you, it is probably a bug in the support for your keyboard
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
138 ;; within Emacs OR a bug in the Unix termcap/terminfo support for
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
139 ;; your terminal OR a bug in the terminal emulation software you
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
140 ;; are using.)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
141
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
142 ;; 6. The edt-quit function (bound to GOLD-q by default) has been
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
143 ;; modified to warn the user when file-related buffer
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
144 ;; modifications exist. It now cautions the user that those
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
145 ;; modifications will be lost if the user quits without saving
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
146 ;; those buffers.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
147
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
148
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
149 ;;; History:
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
150 ;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
151 ;; Version 4.0 2000 Added New Features and Fixed a Few Bugs
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
152 ;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
153
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
154
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
155 ;;; Code:
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
156
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
157 ;;; Electric Help functions are used for keypad help displays. A few
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
158 ;;; picture functions are used in rectangular cut and paste commands.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
159
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
160 (require 'ehelp)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
161 (require 'picture)
807
4f28bd14272c *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 793
diff changeset
162
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
163 ;;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
164 ;;;; VARIABLES and CONSTANTS
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
165 ;;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
166
48259
c283da384991 (defgroup edt): Arrange that definition starts at beginning of line.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 48247
diff changeset
167 (defgroup edt nil
c283da384991 (defgroup edt): Arrange that definition starts at beginning of line.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 48247
diff changeset
168 "Emacs emulating EDT."
c283da384991 (defgroup edt): Arrange that definition starts at beginning of line.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 48247
diff changeset
169 :prefix "edt-"
c283da384991 (defgroup edt): Arrange that definition starts at beginning of line.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 48247
diff changeset
170 :group 'emulations)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
171
63914
402efef82fd9 (*EDT-keys*, edt-default-global-map, edt-last-copied-word,
Juanma Barranquero <lekktu@gmail.com>
parents: 62402
diff changeset
172 ;; To silence the byte-compiler
86243
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
173 (defvar *EDT-keys*)
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
174 (defvar edt-default-global-map)
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
175 (defvar edt-last-copied-word)
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
176 (defvar edt-learn-macro-count)
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
177 (defvar edt-orig-page-delimiter)
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
178 (defvar edt-orig-transient-mark-mode)
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
179 (defvar edt-rect-start-point)
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
180 (defvar edt-user-global-map)
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
181 (defvar rect-start-point)
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
182 (defvar time-string)
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
183 (defvar zmacs-region-stays)
63914
402efef82fd9 (*EDT-keys*, edt-default-global-map, edt-last-copied-word,
Juanma Barranquero <lekktu@gmail.com>
parents: 62402
diff changeset
184
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
185 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
186 ;;; Version Information
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
187 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
188 (defconst edt-version "4.0" "EDT Emulation version number.")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
189
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
190 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
191 ;;; User Configurable Variables
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
192 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
193
48247
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
194 (defcustom edt-keep-current-page-delimiter nil
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
195 "*Emacs MUST be restarted for a change in value to take effect!
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
196 Non-nil leaves Emacs value of `page-delimiter' unchanged within EDT
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
197 Emulation. If set to nil (the default), the `page-delimiter' variable
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
198 is set to \"\\f\" when edt-emulation-on is first invoked. This
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
199 setting replicates EDT's page delimiter behavior. The original value
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
200 is restored when edt-emulation-off is called."
48247
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
201 :type 'boolean
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
202 :group 'edt)
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
203
48247
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
204 (defcustom edt-use-EDT-control-key-bindings nil
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
205 "*Emacs MUST be restarted for a change in value to take effect!
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
206 Non-nil causes the control key bindings to be replaced with EDT
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
207 bindings. If set to nil (the default), EDT control key bindings are
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
208 not used and the current Emacs control key bindings are retained for
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
209 use within the EDT emulation."
48247
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
210 :type 'boolean
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
211 :group 'edt)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
212
48247
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
213 (defcustom edt-word-entities '(?\t)
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
214 "*Specifies the list of EDT word entity characters.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
215 The default list, (\?\\t), contains just the TAB character, which
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
216 emulates EDT. Characters are specified in the list using their
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
217 decimal ASCII values. A question mark, followed by the actual
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
218 character, can be used to indicate the numerical value of the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
219 character, instead of the actual decimal value. So, ?A means the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
220 numerical value for the letter A, \?/ means the numerical value for /,
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
221 etc. Several unprintable and special characters have special
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
222 representations, which you can also use:
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
223
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
224 \?\\b specifies BS, C-h
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
225 \?\\t specifies TAB, C-i
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
226 \?\\n specifies LFD, C-j
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
227 \?\\v specifies VTAB, C-k
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
228 \?\\f specifies FF, C-l
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
229 \?\\r specifies CR, C-m
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
230 \?\\e specifies ESC, C-[
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
231 \?\\\\ specifies \\
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
232
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
233 In EDT Emulation movement-by-word commands, each character in the list
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
234 will be treated as if it were a separate word."
48247
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
235 :type '(repeat integer)
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
236 :group 'edt)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
237
48247
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
238 (defcustom edt-top-scroll-margin 10
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
239 "*Scroll margin at the top of the screen.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
240 Interpreted as a percent of the current window size with a default
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
241 setting of 10%. If set to 0, top scroll margin is disabled."
48247
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
242 :type 'integer
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
243 :group 'edt)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
244
48247
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
245 (defcustom edt-bottom-scroll-margin 15
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
246 "*Scroll margin at the bottom of the screen.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
247 Interpreted as a percent of the current window size with a default
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
248 setting of 15%. If set to 0, bottom scroll margin is disabled."
48247
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
249 :type 'integer
80e9d4652a07 Simplify Emacs 19 compatibility.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45896
diff changeset
250 :group 'edt)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
251
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
252 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
253 ;;; Internal Variables
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
254 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
255
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
256 (defvar edt-last-deleted-lines ""
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
257 "Last text deleted by the EDT emulation DEL L command.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
258
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
259 (defvar edt-last-deleted-words ""
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
260 "Last text deleted by the EDT emulation DEL W command.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
261
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
262 (defvar edt-last-deleted-chars ""
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
263 "Last text deleted by the EDT emulation DEL C command.")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
264
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
265 (defvar edt-find-last-text ""
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
266 "Last text found by the EDT emulation FIND command.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
267
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
268 (defvar edt-match-beginning-mark (make-marker)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
269 "Used internally by the EDT emulation SUBS command.")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
270
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
271 (defvar edt-match-end-mark (make-marker)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
272 "Used internally by the EDT emulation SUBS command.")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
273
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
274 (defvar edt-last-replaced-key-definition nil
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
275 "Key definition replaced with `edt-define-key' or `edt-learn' command.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
276
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
277 (defvar edt-direction-string ""
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
278 "String indicating current direction of movement.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
279
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
280 (defvar edt-select-mode nil
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
281 "Non-nil means select mode is active.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
282
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
283 (defvar edt-select-mode-current ""
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
284 "Text displayed in mode line to indicate the state of EDT select mode.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
285 When select mode is inactive, it is set to an empty string.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
286
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
287 (defconst edt-select-mode-string " Select"
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
288 "Used in mode line to indicate select mode is active.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
289
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
290 (defconst edt-forward-string " ADVANCE"
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
291 "Direction string in mode line to indicate forward movement.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
292
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
293 (defconst edt-backward-string " BACKUP"
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
294 "Direction string in mode line to indicate backward movement.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
295
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
296 (defvar edt-default-map-active nil
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
297 "Non-nil indicates that default EDT emulation key bindings are active.
42206
0f4506820432 Doc fix.
Pavel Janík <Pavel@Janik.cz>
parents: 38436
diff changeset
298 nil means user-defined custom bindings are active.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
299
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
300 (defvar edt-user-map-configured nil
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
301 "Non-nil indicates that user custom EDT key bindings are configured.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
302 This means that an edt-user.el file was found in the user's `load-path'.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
303
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
304 (defvar edt-term nil
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
305 "Specifies the terminal type, if applicable.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
306
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
307 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
308 ;;; Emacs version identifiers - currently referenced by
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
309 ;;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
310 ;;; o edt-emulation-on o edt-load-keys
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
311 ;;;
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
312 (defconst edt-emacs-variant (if (featurep 'emacs) "gnu" "xemacs")
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
313 "Indicates Emacs variant: GNU Emacs or XEmacs \(aka Lucid Emacs\).")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
314
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
315 (defconst edt-window-system (if (featurep 'emacs) window-system (console-type))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
316 "Indicates window system \(in GNU Emacs\) or console type \(in XEmacs\).")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
317
95836
5d941efe34d7 (edt-xserver): Use replace-regexp-in-string.
Glenn Morris <rgm@gnu.org>
parents: 94658
diff changeset
318 (declare-function x-server-vendor "xfns.c" (&optional terminal))
5d941efe34d7 (edt-xserver): Use replace-regexp-in-string.
Glenn Morris <rgm@gnu.org>
parents: 94658
diff changeset
319
5d941efe34d7 (edt-xserver): Use replace-regexp-in-string.
Glenn Morris <rgm@gnu.org>
parents: 94658
diff changeset
320 (defconst edt-xserver (when (eq edt-window-system 'x)
5d941efe34d7 (edt-xserver): Use replace-regexp-in-string.
Glenn Morris <rgm@gnu.org>
parents: 94658
diff changeset
321 ;; The Cygwin window manager has a `/' in its
5d941efe34d7 (edt-xserver): Use replace-regexp-in-string.
Glenn Morris <rgm@gnu.org>
parents: 94658
diff changeset
322 ;; name, which breaks the generated file name of
5d941efe34d7 (edt-xserver): Use replace-regexp-in-string.
Glenn Morris <rgm@gnu.org>
parents: 94658
diff changeset
323 ;; the custom key map file. Replace `/' with a
5d941efe34d7 (edt-xserver): Use replace-regexp-in-string.
Glenn Morris <rgm@gnu.org>
parents: 94658
diff changeset
324 ;; `-' to work around that.
5d941efe34d7 (edt-xserver): Use replace-regexp-in-string.
Glenn Morris <rgm@gnu.org>
parents: 94658
diff changeset
325 (if (featurep 'xemacs)
5d941efe34d7 (edt-xserver): Use replace-regexp-in-string.
Glenn Morris <rgm@gnu.org>
parents: 94658
diff changeset
326 (replace-in-string (x-server-vendor) "[ /]" "-")
5d941efe34d7 (edt-xserver): Use replace-regexp-in-string.
Glenn Morris <rgm@gnu.org>
parents: 94658
diff changeset
327 (replace-regexp-in-string "[ /]" "-"
5d941efe34d7 (edt-xserver): Use replace-regexp-in-string.
Glenn Morris <rgm@gnu.org>
parents: 94658
diff changeset
328 (x-server-vendor))))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
329 "Indicates X server vendor name, if applicable.")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
330
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
331 (defvar edt-keys-file nil
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
332 "User's custom keypad and function keys mappings to emulate LK-201 keyboard.")
63941
929eb735e11d (edt-last-copied-word): Add defvar.
Richard M. Stallman <rms@gnu.org>
parents: 63914
diff changeset
333
929eb735e11d (edt-last-copied-word): Add defvar.
Richard M. Stallman <rms@gnu.org>
parents: 63914
diff changeset
334 (defvar edt-last-copied-word nil
929eb735e11d (edt-last-copied-word): Add defvar.
Richard M. Stallman <rms@gnu.org>
parents: 63914
diff changeset
335 "Last word that the user copied.")
929eb735e11d (edt-last-copied-word): Add defvar.
Richard M. Stallman <rms@gnu.org>
parents: 63914
diff changeset
336
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
337
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
338 ;;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
339 ;;;; EDT Emulation Commands
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
340 ;;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
341
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
342 ;;; Almost all of EDT's keypad mode commands have equivalent Emacs
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
343 ;;; function counterparts. But many of these counterparts behave
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
344 ;;; somewhat differently in Emacs.
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
345 ;;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
346 ;;; So, the following Emacs functions emulate, where practical, the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
347 ;;; exact behavior of the corresponding EDT keypad mode commands. In
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
348 ;;; a few cases, the emulation is not exact, but it should be close
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
349 ;;; enough for most EDT die-hards.
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
350 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
351
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
352 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
353 ;;; PAGE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
354 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
355 ;;; Emacs uses the regexp assigned to page-delimiter to determine what
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
356 ;;; marks a page break. This is normally "^\f", which causes the
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
357 ;;; edt-page command to ignore form feeds not located at the beginning
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
358 ;;; of a line. To emulate the EDT PAGE command exactly,
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
359 ;;; page-delimiter is set to "\f" when EDT emulation is turned on, and
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
360 ;;; restored to its original value when EDT emulation is turned off.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
361 ;;; But this can be overridden if the EDT definition is not desired by
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
362 ;;; placing
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
363 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
364 ;;; (setq edt-keep-current-page-delimiter t)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
365 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
366 ;;; in your .emacs file.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
367
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
368 (defun edt-page-forward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
369 "Move forward to just after next page delimiter.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
370 Argument NUM is the number of page delimiters to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
371 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
372 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
373 (if (eobp)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
374 (error "End of buffer")
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
375 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
376 (forward-page num)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
377 (if (eobp)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
378 (edt-line-to-bottom-of-window)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
379 (edt-line-to-top-of-window)))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
380
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
381 (defun edt-page-backward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
382 "Move backward to just after previous page delimiter.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
383 Argument NUM is the number of page delimiters to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
384 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
385 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
386 (if (bobp)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
387 (error "Beginning of buffer")
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
388 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
389 (backward-page num)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
390 (edt-line-to-top-of-window)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
391 (if (featurep 'xemacs) (setq zmacs-region-stays t)))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
392
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
393 (defun edt-page (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
394 "Move in current direction to next page delimiter.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
395 Argument NUM is the number of page delimiters to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
396 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
397 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
398 (edt-page-forward num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
399 (edt-page-backward num)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
400
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
401 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
402 ;;; SECT
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
403 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
404 ;;; EDT defaults a section size to be 16 lines of its one and only
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
405 ;;; 24-line window. That's two-thirds of the window at a time. The
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
406 ;;; EDT SECT commands moves the cursor, not the window.
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
407 ;;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
408 ;;; This emulation of EDT's SECT moves the cursor approximately
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
409 ;;; two-thirds of the current window at a time.
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
410
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
411 (defun edt-sect-forward (num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
412 "Move cursor forward two-thirds of a window's number of lines.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
413 Argument NUM is the number of sections to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
414 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
415 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
416 (edt-line-forward (* (* (/ (- (window-height) 1) 3) 2) num)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
417
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
418
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
419 (defun edt-sect-backward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
420 "Move cursor backward two-thirds of a window.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
421 Argument NUM is the number of sections to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
422 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
423 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
424 (edt-line-backward (* (* (/ (- (window-height) 1) 3) 2) num)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
425
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
426 (defun edt-sect (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
427 "Move in current direction a full window.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
428 Argument NUM is the number of sections to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
429 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
430 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
431 (edt-sect-forward num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
432 (edt-sect-backward num)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
433
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
434 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
435 ;;; BEGINNING OF LINE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
436 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
437 ;;; EDT's beginning-of-line command is not affected by current
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
438 ;;; direction, for some unknown reason.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
439
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
440 (defun edt-beginning-of-line (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
441 "Move backward to next beginning of line mark.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
442 Argument NUM is the number of BOL marks to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
443 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
444 (edt-check-prefix num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
445 (let ((beg (edt-current-line)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
446 (if (bolp)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
447 (forward-line (* -1 num))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
448 (progn
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
449 (setq num (1- num))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
450 (forward-line (* -1 num))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
451 (edt-top-check beg num))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
452 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
453
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
454
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
455 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
456 ;;; EOL (End of Line)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
457 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
458
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
459 (defun edt-end-of-line-forward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
460 "Move forward to next end of line mark.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
461 Argument NUM is the number of EOL marks to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
462 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
463 (edt-check-prefix num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
464 (let ((beg (edt-current-line)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
465 (forward-char)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
466 (end-of-line num)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
467 (edt-bottom-check beg num))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
468 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
469
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
470
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
471 (defun edt-end-of-line-backward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
472 "Move backward to next end of line mark.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
473 Argument NUM is the number of EOL marks to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
474 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
475 (edt-check-prefix num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
476 (let ((beg (edt-current-line)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
477 (end-of-line (1- num))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
478 (edt-top-check beg num))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
479 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
480
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
481
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
482 (defun edt-end-of-line (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
483 "Move in current direction to next end of line mark.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
484 Argument NUM is the number of EOL marks to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
485 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
486 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
487 (edt-end-of-line-forward num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
488 (edt-end-of-line-backward num)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
489
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
490 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
491 ;;; WORD
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
492 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
493 ;;; This one is a tad messy. To emulate EDT's behavior everywhere in
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
494 ;;; the file (beginning of file, end of file, beginning of line, end
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
495 ;;; of line, etc.) it takes a bit of special handling.
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
496 ;;;
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
497 ;;; The variable edt-word-entities contains a list of characters which
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
498 ;;; are to be viewed as distinct words where ever they appear in the
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
499 ;;; buffer. This emulates the EDT line mode command SET ENTITY WORD.
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
500
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
501
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
502 (defun edt-one-word-forward ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
503 "Move forward to first character of next word."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
504 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
505 (if (eobp)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
506 (error "End of buffer"))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
507 (if (eolp)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
508 (forward-char)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
509 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
510 (if (memq (following-char) edt-word-entities)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
511 (forward-char)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
512 (while (and
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
513 (not (eolp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
514 (not (eobp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
515 (not (eq ?\ (char-syntax (following-char))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
516 (not (memq (following-char) edt-word-entities)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
517 (forward-char)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
518 (while (and
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
519 (not (eolp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
520 (not (eobp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
521 (eq ?\ (char-syntax (following-char)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
522 (not (memq (following-char) edt-word-entities)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
523 (forward-char))))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
524 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
525
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
526 (defun edt-one-word-backward ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
527 "Move backward to first character of previous word."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
528 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
529 (if (bobp)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
530 (error "Beginning of buffer"))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
531 (if (bolp)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
532 (backward-char)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
533 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
534 (backward-char)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
535 (while (and
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
536 (not (bolp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
537 (not (bobp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
538 (eq ?\ (char-syntax (following-char)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
539 (not (memq (following-char) edt-word-entities)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
540 (backward-char))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
541 (if (not (memq (following-char) edt-word-entities))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
542 (while (and
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
543 (not (bolp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
544 (not (bobp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
545 (not (eq ?\ (char-syntax (preceding-char))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
546 (not (memq (preceding-char) edt-word-entities)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
547 (backward-char)))))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
548 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
549
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
550 (defun edt-word-forward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
551 "Move forward to first character of next word.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
552 Argument NUM is the number of words to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
553 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
554 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
555 (while (> num 0)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
556 (edt-one-word-forward)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
557 (setq num (1- num))))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
558
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
559 (defun edt-word-backward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
560 "Move backward to first character of previous word.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
561 Argument NUM is the number of words to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
562 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
563 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
564 (while (> num 0)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
565 (edt-one-word-backward)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
566 (setq num (1- num))))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
567
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
568 (defun edt-word (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
569 "Move in current direction to first character of next word.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
570 Argument NUM is the number of words to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
571 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
572 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
573 (edt-word-forward num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
574 (edt-word-backward num)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
575
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
576 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
577 ;;; CHAR
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
578 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
579
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
580 (defun edt-character (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
581 "Move in current direction to next character.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
582 Argument NUM is the number of characters to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
583 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
584 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
585 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
586 (forward-char num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
587 (backward-char num))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
588 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
589
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
590 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
591 ;;; LINE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
592 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
593 ;;; When direction is set to BACKUP, LINE behaves just like BEGINNING
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
594 ;;; OF LINE in EDT. So edt-line-backward is not really needed as a
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
595 ;;; separate function.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
596
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
597 (defun edt-line-backward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
598 "Move backward to next beginning of line mark.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
599 Argument NUM is the number of BOL marks to move."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
600 (interactive "p")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
601 (edt-beginning-of-line num))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
602
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
603 (defun edt-line-forward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
604 "Move forward to next beginning of line mark.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
605 Argument NUM is the number of BOL marks to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
606 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
607 (edt-check-prefix num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
608 (let ((beg (edt-current-line)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
609 (forward-line num)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
610 (edt-bottom-check beg num))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
611 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
612
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
613 (defun edt-line (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
614 "Move in current direction to next beginning of line mark.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
615 Argument NUM is the number of BOL marks to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
616 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
617 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
618 (edt-line-forward num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
619 (edt-line-backward num)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
620
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
621 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
622 ;;; UP and DOWN Arrows
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
623 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
624
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
625 (defun edt-next-line (num)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
626 "Move cursor down one line.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
627 Argument NUM is the number of lines to move."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
628 (interactive "p")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
629 (edt-check-prefix num)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
630 (let ((beg (edt-current-line)))
85451
e1af3a725ca4 * textmodes/two-column.el (2C-split, 2C-merge):
Dan Nicolaescu <dann@ics.uci.edu>
parents: 78218
diff changeset
631 (forward-line num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
632 (edt-bottom-check beg num))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
633 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
634
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
635 (defun edt-previous-line (num)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
636 "Move cursor up one line.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
637 Argument NUM is the number of lines to move."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
638 (interactive "p")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
639 (edt-check-prefix num)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
640 (let ((beg (edt-current-line)))
85451
e1af3a725ca4 * textmodes/two-column.el (2C-split, 2C-merge):
Dan Nicolaescu <dann@ics.uci.edu>
parents: 78218
diff changeset
641 (forward-line (- num))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
642 (edt-top-check beg num))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
643 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
644
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
645
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
646 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
647 ;;; TOP
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
648 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
649
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
650 (defun edt-top ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
651 "Move cursor to the beginning of buffer."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
652 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
653 (goto-char (point-min))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
654 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
655
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
656 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
657 ;;; BOTTOM
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
658 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
659
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
660 (defun edt-bottom ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
661 "Move cursor to the end of buffer."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
662 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
663 (goto-char (point-max))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
664 (edt-line-to-bottom-of-window))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
665
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
666 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
667 ;;; FIND
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
668 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
669
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
670 (defun edt-find-forward (&optional find)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
671 "Find first occurrence of a string in forward direction and save it.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
672 Optional argument FIND is t is this function is called from `edt-find'."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
673 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
674 (if (not find)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
675 (set 'edt-find-last-text (read-string "Search forward: ")))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
676 (let* ((left nil)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
677 (beg (edt-current-line))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
678 (height (window-height))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
679 (top-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
680 (if (= 0 edt-top-scroll-margin) 10 edt-top-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
681 (bottom-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
682 (if (= 0 edt-bottom-scroll-margin) 15 edt-bottom-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
683 (top-margin (/ (* height top-percent) 100))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
684 (bottom-up-margin (+ 1 (/ (* height bottom-percent) 100)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
685 (bottom-margin (max beg (- height bottom-up-margin 1)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
686 (top (save-excursion (move-to-window-line top-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
687 (bottom (save-excursion (move-to-window-line bottom-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
688 (far (save-excursion
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
689 (goto-char bottom) (forward-line (- height 2)) (point))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
690 (if (search-forward edt-find-last-text)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
691 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
692 (search-backward edt-find-last-text)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
693 (edt-set-match)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
694 (cond((> (point) far)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
695 (setq left (save-excursion (forward-line height)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
696 (if (= 0 left) (recenter top-margin)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
697 (recenter (- left bottom-up-margin))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
698 (t
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
699 (and (> (point) bottom) (recenter bottom-margin)))))))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
700 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
701
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
702 (defun edt-find-backward (&optional find)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
703 "Find first occurrence of a string in the backward direction and save it.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
704 Optional argument FIND is t if this function is called from `edt-find'."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
705 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
706 (if (not find)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
707 (set 'edt-find-last-text (read-string "Search backward: ")))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
708 (let* ((left nil)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
709 (beg (edt-current-line))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
710 (height (window-height))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
711 (top-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
712 (if (= 0 edt-top-scroll-margin) 10 edt-top-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
713 (bottom-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
714 (if (= 0 edt-bottom-scroll-margin) 15 edt-bottom-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
715 (top-margin (/ (* height top-percent) 100))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
716 (bottom-up-margin (+ 1 (/ (* height bottom-percent) 100)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
717 (bottom-margin (max beg (- height bottom-up-margin 1)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
718 (top (save-excursion (move-to-window-line top-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
719 (bottom (save-excursion (move-to-window-line bottom-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
720 (far (save-excursion
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
721 (goto-char bottom) (forward-line (- height 2)) (point))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
722 (if (search-backward edt-find-last-text)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
723 (edt-set-match))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
724 (and (< (point) top) (recenter (min beg top-margin))))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
725 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
726
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
727 (defun edt-find ()
13978
2445061c92d4 (edt-find-forward, edt-find-backward, edt-find,
Karl Heuer <kwzh@gnu.org>
parents: 13337
diff changeset
728 "Find first occurrence of string in current direction and save it."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
729 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
730 (set 'edt-find-last-text (read-string "Search: "))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
731 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
732 (edt-find-forward t)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
733 (edt-find-backward t)))
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
734
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
735
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
736 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
737 ;;; FNDNXT
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
738 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
739
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
740 (defun edt-find-next-forward ()
13978
2445061c92d4 (edt-find-forward, edt-find-backward, edt-find,
Karl Heuer <kwzh@gnu.org>
parents: 13337
diff changeset
741 "Find next occurrence of a string in forward direction."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
742 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
743 (let* ((left nil)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
744 (beg (edt-current-line))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
745 (height (window-height))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
746 (top-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
747 (if (= 0 edt-top-scroll-margin) 10 edt-top-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
748 (bottom-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
749 (if (= 0 edt-bottom-scroll-margin) 15 edt-bottom-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
750 (top-margin (/ (* height top-percent) 100))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
751 (bottom-up-margin (+ 1 (/ (* height bottom-percent) 100)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
752 (bottom-margin (max beg (- height bottom-up-margin 1)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
753 (top (save-excursion (move-to-window-line top-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
754 (bottom (save-excursion (move-to-window-line bottom-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
755 (far (save-excursion
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
756 (goto-char bottom) (forward-line (- height 2)) (point))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
757 (forward-char 1)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
758 (if (search-forward edt-find-last-text nil t)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
759 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
760 (search-backward edt-find-last-text)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
761 (edt-set-match)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
762 (cond((> (point) far)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
763 (setq left (save-excursion (forward-line height)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
764 (if (= 0 left) (recenter top-margin)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
765 (recenter (- left bottom-up-margin))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
766 (t
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
767 (and (> (point) bottom) (recenter bottom-margin)))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
768 (progn
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
769 (backward-char 1)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
770 (error "Search failed: \"%s\"" edt-find-last-text))))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
771 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
772
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
773 (defun edt-find-next-backward ()
13978
2445061c92d4 (edt-find-forward, edt-find-backward, edt-find,
Karl Heuer <kwzh@gnu.org>
parents: 13337
diff changeset
774 "Find next occurrence of a string in backward direction."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
775 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
776 (let* ((left nil)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
777 (beg (edt-current-line))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
778 (height (window-height))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
779 (top-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
780 (if (= 0 edt-top-scroll-margin) 10 edt-top-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
781 (bottom-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
782 (if (= 0 edt-bottom-scroll-margin) 15 edt-bottom-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
783 (top-margin (/ (* height top-percent) 100))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
784 (bottom-up-margin (+ 1 (/ (* height bottom-percent) 100)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
785 (bottom-margin (max beg (- height bottom-up-margin 1)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
786 (top (save-excursion (move-to-window-line top-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
787 (bottom (save-excursion (move-to-window-line bottom-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
788 (far (save-excursion
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
789 (goto-char bottom) (forward-line (- height 2)) (point))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
790 (if (not (search-backward edt-find-last-text nil t))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
791 (error "Search failed: \"%s\"" edt-find-last-text)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
792 (progn
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
793 (edt-set-match)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
794 (and (< (point) top) (recenter (min beg top-margin))))))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
795 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
796
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
797 (defun edt-find-next ()
13978
2445061c92d4 (edt-find-forward, edt-find-backward, edt-find,
Karl Heuer <kwzh@gnu.org>
parents: 13337
diff changeset
798 "Find next occurrence of a string in current direction."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
799 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
800 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
801 (edt-find-next-forward)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
802 (edt-find-next-backward)))
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
803
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
804 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
805 ;;; APPEND
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
806 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
807
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
808 (defun edt-append ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
809 "Append this kill region to last killed region."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
810 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
811 (edt-check-selection)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
812 (append-next-kill)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
813 (kill-region (mark) (point))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
814 (message "Selected text APPENDED to kill ring"))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
815
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
816 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
817 ;;; DEL L
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
818 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
819
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
820 (defun edt-delete-line (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
821 "Delete from cursor up to and including the end of line mark.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
822 Argument NUM is the number of lines to delete."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
823 (interactive "*p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
824 (edt-check-prefix num)
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
825 (let ((beg (point)))
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
826 (forward-line num)
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
827 (if (not (eq (preceding-char) ?\n))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
828 (insert "\n"))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
829 (setq edt-last-deleted-lines
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
830 (buffer-substring beg (point)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
831 (delete-region beg (point))))
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
832
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
833 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
834 ;;; DEL EOL
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
835 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
836
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
837 (defun edt-delete-to-end-of-line (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
838 "Delete from cursor up to but excluding the end of line mark.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
839 Argument NUM is the number of lines to delete."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
840 (interactive "*p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
841 (edt-check-prefix num)
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
842 (let ((beg (point)))
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
843 (forward-char 1)
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
844 (end-of-line num)
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
845 (setq edt-last-deleted-lines
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
846 (buffer-substring beg (point)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
847 (delete-region beg (point))))
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
848
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
849 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
850 ;;; SELECT
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
851 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
852
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
853 (defun edt-select-mode (arg)
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
854 "Turn EDT select mode off if ARG is nil; otherwise, turn EDT select mode on.
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
855 In select mode, selected text is highlighted."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
856 (if arg
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
857 (progn
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
858 (make-local-variable 'edt-select-mode)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
859 (setq edt-select-mode 'edt-select-mode-current)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
860 (setq rect-start-point (window-point)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
861 (progn
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
862 (kill-local-variable 'edt-select-mode)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
863 (force-mode-line-update))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
864
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
865 (defun edt-select ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
866 "Set mark at cursor and start text selection."
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
867 (interactive)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
868 (set-mark-command nil))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
869
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
870 (defun edt-reset ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
871 "Cancel text selection."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
872 (interactive)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
873 (if (featurep 'emacs)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
874 (deactivate-mark)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
875 (zmacs-deactivate-region)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
876
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
877 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
878 ;;; CUT
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
879 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
880
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
881 (defun edt-cut ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
882 "Deletes selected text but copies to kill ring."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
883 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
884 (edt-check-selection)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
885 (kill-region (mark) (point))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
886 (message "Selected text CUT to kill ring"))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
887
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
888 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
889 ;;; DELETE TO BEGINNING OF LINE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
890 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
891
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
892 (defun edt-delete-to-beginning-of-line (num)
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
893 "Delete from cursor to beginning of line.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
894 Argument NUM is the number of lines to delete."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
895 (interactive "*p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
896 (edt-check-prefix num)
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
897 (let ((beg (point)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
898 (edt-beginning-of-line num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
899 (setq edt-last-deleted-lines
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
900 (buffer-substring (point) beg))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
901 (delete-region beg (point))))
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
902
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
903 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
904 ;;; DEL W
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
905 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
906
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
907 (defun edt-delete-word (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
908 "Delete from cursor up to but excluding first character of next word.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
909 Argument NUM is the number of words to delete."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
910 (interactive "*p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
911 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
912 (let ((beg (point)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
913 (edt-word-forward num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
914 (setq edt-last-deleted-words (buffer-substring beg (point)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
915 (delete-region beg (point))))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
916
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
917 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
918 ;;; DELETE TO BEGINNING OF WORD
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
919 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
920
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
921 (defun edt-delete-to-beginning-of-word (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
922 "Delete from cursor to beginning of word.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
923 Argument NUM is the number of words to delete."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
924 (interactive "*p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
925 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
926 (let ((beg (point)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
927 (edt-word-backward num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
928 (setq edt-last-deleted-words (buffer-substring (point) beg))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
929 (delete-region beg (point))))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
930
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
931 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
932 ;;; DEL C
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
933 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
934
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
935 (defun edt-delete-character (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
936 "Delete character under cursor.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
937 Argument NUM is the number of characters to delete."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
938 (interactive "*p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
939 (edt-check-prefix num)
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
940 (setq edt-last-deleted-chars
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
941 (buffer-substring (point) (min (point-max) (+ (point) num))))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
942 (delete-region (point) (min (point-max) (+ (point) num))))
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
943
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
944 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
945 ;;; DELETE CHAR
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
946 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
947
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
948 (defun edt-delete-previous-character (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
949 "Delete character in front of cursor.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
950 Argument NUM is the number of characters to delete."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
951 (interactive "*p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
952 (edt-check-prefix num)
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
953 (setq edt-last-deleted-chars
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
954 (buffer-substring (max (point-min) (- (point) num)) (point)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
955 (delete-region (max (point-min) (- (point) num)) (point)))
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
956
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
957 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
958 ;;; UND L
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
959 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
960
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
961 (defun edt-undelete-line ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
962 "Undelete previous deleted line(s)."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
963 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
964 (point-to-register 1)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
965 (insert edt-last-deleted-lines)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
966 (register-to-point 1))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
967
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
968 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
969 ;;; UND W
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
970 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
971
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
972 (defun edt-undelete-word ()
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
973 "Undelete previous deleted word(s)."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
974 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
975 (point-to-register 1)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
976 (insert edt-last-deleted-words)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
977 (register-to-point 1))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
978
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
979 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
980 ;;; UND C
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
981 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
982
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
983 (defun edt-undelete-character ()
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
984 "Undelete previous deleted character(s)."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
985 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
986 (point-to-register 1)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
987 (insert edt-last-deleted-chars)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
988 (register-to-point 1))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
989
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
990 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
991 ;;; REPLACE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
992 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
993
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
994 (defun edt-replace ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
995 "Replace marked section with last CUT (killed) text."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
996 (interactive "*")
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
997 (if (edt-check-match)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
998 (replace-match (car kill-ring-yank-pointer))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
999 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1000 (exchange-point-and-mark)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1001 (let ((beg (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1002 (exchange-point-and-mark)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1003 (delete-region beg (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1004 (yank))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1005
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1006 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1007 ;;; SUBS
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1008 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1009
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1010 (defun edt-substitute (num)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1011 "Replace the selected region with the contents of the CUT buffer and.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1012 Repeat the most recent FIND command. (The Emacs kill ring is used as
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
1013 the CUT buffer.)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1014 Argument NUM is the repeat count. A positive value indicates the of times
45896
2c6ffe81125c (edt-substitute): Fix typo.
Juanma Barranquero <lekktu@gmail.com>
parents: 42686
diff changeset
1015 to repeat the substitution. A negative argument means replace all occurrences
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1016 of the search text."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1017 (interactive "p")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1018 (cond ((or edt-select-mode (edt-check-match))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1019 (while (and (not (= num 0)) (or edt-select-mode (edt-check-match)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1020 (edt-replace)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1021 (edt-find-next)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1022 (setq num (1- num))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1023 (t
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1024 (error "No selection active"))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1025
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1026 (defun edt-set-match nil
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1027 "Set markers at match beginning and end."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1028 ;; Add one to beginning mark so it stays with the first character of
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1029 ;; the string even if characters are added just before the string.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1030 (setq edt-match-beginning-mark (copy-marker (1+ (match-beginning 0))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1031 (setq edt-match-end-mark (copy-marker (match-end 0))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1032
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1033 (defun edt-unset-match nil
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1034 "Unset match beginning and end markers."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1035 (set-marker edt-match-beginning-mark nil)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1036 (set-marker edt-match-end-mark nil))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1037
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1038 (defun edt-match-beginning nil
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1039 "Return the location of the last match beginning."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1040 (1- (marker-position edt-match-beginning-mark)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1041
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1042 (defun edt-match-end nil
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1043 "Return the location of the last match end."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1044 (marker-position edt-match-end-mark))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1045
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1046 (defun edt-check-match nil
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1047 "Return t if point is between edt-match markers.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1048 Otherwise sets the edt-match markers to nil and returns nil."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1049 ;; make sure 1- marker is in this buffer
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1050 ;; 2- point is at or after beginning marker
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1051 ;; 3- point is before ending marker, or in the case of
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1052 ;; zero length regions (like bol, or eol) that the
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1053 ;; beginning, end, and point are equal.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1054 (cond ((and
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1055 (equal (marker-buffer edt-match-beginning-mark) (current-buffer))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1056 (>= (point) (1- (marker-position edt-match-beginning-mark)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1057 (or
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1058 (< (point) (marker-position edt-match-end-mark))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1059 (and (= (1- (marker-position edt-match-beginning-mark))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1060 (marker-position edt-match-end-mark))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1061 (= (marker-position edt-match-end-mark) (point))))) t)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1062 (t
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1063 (edt-unset-match) nil)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1064
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1065 (defun edt-show-match-markers nil
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1066 "Show the values of the match markers."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1067 (interactive)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1068 (if (markerp edt-match-beginning-mark)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1069 (let ((beg (marker-position edt-match-beginning-mark)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1070 (message "(%s, %s) in %s -- current %s in %s"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1071 (if beg (1- beg) nil)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1072 (marker-position edt-match-end-mark)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1073 (marker-buffer edt-match-end-mark)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1074 (point) (current-buffer)))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1075
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1076
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1077 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1078 ;;; ADVANCE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1079 ;;;
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1080
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1081 (defun edt-advance ()
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1082 "Set movement direction forward.
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1083 Also, execute command specified if in Minibuffer."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1084 (interactive)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1085 (setq edt-direction-string edt-forward-string)
11586
fba74d054979 (edt-advance, edt-backup): Use force-mode-line-update.
Karl Heuer <kwzh@gnu.org>
parents: 11442
diff changeset
1086 (force-mode-line-update)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1087 (if (string-equal " *Minibuf"
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1088 (substring (buffer-name) 0 (min (length (buffer-name)) 9)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1089 (exit-minibuffer))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1090 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1091
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
1092
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1093 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1094 ;;; BACKUP
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1095 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1096
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1097 (defun edt-backup ()
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1098 "Set movement direction backward.
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1099 Also, execute command specified if in Minibuffer."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1100 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1101 (setq edt-direction-string edt-backward-string)
11586
fba74d054979 (edt-advance, edt-backup): Use force-mode-line-update.
Karl Heuer <kwzh@gnu.org>
parents: 11442
diff changeset
1102 (force-mode-line-update)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1103 (if (string-equal " *Minibuf"
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1104 (substring (buffer-name) 0 (min (length (buffer-name)) 9)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1105 (exit-minibuffer))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1106 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1107
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1108
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1109 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1110 ;;; CHNGCASE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1111 ;;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1112 ;; This function is based upon Jeff Kowalski's case-flip function in his
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1113 ;; tpu.el.
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1114
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1115 (defun edt-change-case (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1116 "Change the case of specified characters.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1117 If text selection IS active, then characters between the cursor and mark are
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1118 changed. If text selection is NOT active, there are two cases. First, if the
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1119 current direction is ADVANCE, then the prefix number of character(s) under and
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1120 following cursor are changed. Second, if the current direction is BACKUP, then
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1121 the prefix number of character(s) before the cursor are changed. Accepts a
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1122 positive prefix for the number of characters to change, but the prefix is
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1123 ignored if text selection is active.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1124 Argument NUM is the numbers of consecutive characters to change."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1125 (interactive "*p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1126 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1127 (if edt-select-mode
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1128 (let ((end (max (mark) (point)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1129 (point-save (point)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1130 (goto-char (min (point) (mark)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1131 (while (not (eq (point) end))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1132 (funcall (if (<= ?a (following-char))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1133 'upcase-region 'downcase-region)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1134 (point) (1+ (point)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1135 (forward-char 1))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1136 (goto-char point-save))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1137 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1138 (if (string= edt-direction-string edt-backward-string)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1139 (backward-char num))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1140 (while (> num 0)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1141 (funcall (if (<= ?a (following-char))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1142 'upcase-region 'downcase-region)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1143 (point) (1+ (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1144 (forward-char 1)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1145 (setq num (1- num))))))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1146
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1147 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1148 ;;; DEFINE KEY
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1149 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1150
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1151 (defun edt-define-key ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1152 "Assign an interactively-callable function to a specified key sequence.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1153 The current key definition is saved in `edt-last-replaced-key-definition'.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1154 Use `edt-restore-key' to restore last replaced key definition."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1155 (interactive)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1156 (if (featurep 'xemacs) (setq zmacs-region-stays t))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1157 (let (edt-function
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1158 edt-key-definition)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1159 (setq edt-key-definition
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1160 (read-key-sequence "Press the key to be defined: "))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1161 (if (if (featurep 'emacs)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1162 (string-equal "\C-m" edt-key-definition)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1163 (string-equal "\C-m" (events-to-keys edt-key-definition)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1164 (message "Key not defined")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1165 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1166 (setq edt-function (read-command "Enter command name: "))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1167 (if (string-equal "" edt-function)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1168 (message "Key not defined")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1169 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1170 (setq edt-last-replaced-key-definition
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1171 (lookup-key (current-global-map) edt-key-definition))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1172 (define-key (current-global-map)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1173 edt-key-definition edt-function)))))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1174
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1175 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1176 ;;; FORM FEED INSERT
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1177 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1178
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1179 (defun edt-form-feed-insert (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1180 "Insert form feed character at cursor position.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1181 Argument NUM is the number of form feeds to insert."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1182 (interactive "*p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1183 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1184 (while (> num 0)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1185 (insert ?\f)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1186 (setq num (1- num))))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1187
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1188 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1189 ;;; TAB INSERT
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1190 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1191
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1192 (defun edt-tab-insert (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1193 "Insert tab character at cursor position.
42686
64274328203b Fix typo.
Pavel Janík <Pavel@Janik.cz>
parents: 42206
diff changeset
1194 Argument NUM is the number of tabs to insert."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1195 (interactive "*p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1196 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1197 (while (> num 0)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1198 (insert ?\t)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1199 (setq num (1- num))))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1200
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1201 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1202 ;;; Check Prefix
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1203 ;;;
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1204
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1205 (defun edt-check-prefix (num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1206 "Indicate error if prefix is not positive.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1207 Argument NUM is the prefix value tested."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1208 (if (<= num 0)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1209 (error "Prefix must be positive")))
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
1210
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1211 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1212 ;;; Check Selection
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1213 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1214
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1215 (defun edt-check-selection ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1216 "Indicate error if EDT selection is not active."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1217 (if (not edt-select-mode)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1218 (error "Selection NOT active")))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1219
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1220 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1221 ;;; Scroll Margins
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1222 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1223
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1224 (defun edt-top-check (beg lines)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1225 "Enforce scroll margin at the top of screen.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1226 Argument BEG is the starting line number before cursor was moved.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1227 Argument LINES is the number of lines the cursor moved toward the top."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1228 (let ((margin (/ (* (window-height) edt-top-scroll-margin) 100)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1229 (cond ((< beg margin) (recenter beg))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1230 ((< (- beg lines) margin) (recenter margin)))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1231
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1232 (defun edt-bottom-check (beg lines)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1233 "Enforce scroll margin at the bottom of screen.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1234 Argument BEG is the starting line number before cursor was moved.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1235 Argument LINES is the number of lines the cursor moved toward the bottom."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1236 (let* ((height (window-height))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1237 (margin (+ 1 (/ (* height edt-bottom-scroll-margin) 100)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1238 ;; subtract 1 from height because it includes mode line
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1239 (difference (- height margin 1)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1240 (cond ((> beg difference) (recenter beg))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1241 ((and (featurep 'xemacs) (> (+ beg lines 1) difference))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1242 (recenter (- margin)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1243 ((> (+ beg lines) difference) (recenter (- margin))))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1244
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1245 (defun edt-current-line nil
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1246 "Return the vertical position of point in the selected window.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1247 Top line is 0. Counts each text line only once, even if it wraps."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1248 (+ (count-lines (window-start) (point)) (if (= (current-column) 0) 1 0) -1))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1249
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1250 ;;;###autoload
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1251 (defun edt-set-scroll-margins (top bottom)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1252 "Set scroll margins.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1253 Argument TOP is the top margin in number of lines or percent of window.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1254 Argument BOTTOM is the bottom margin in number of lines or percent of window."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1255 (interactive
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1256 "sEnter top scroll margin (N lines or N%% or RETURN for current value): \
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1257 \nsEnter bottom scroll margin (N lines or N%% or RETURN for current value): ")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1258 ;; set top scroll margin
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1259 (or (string= top "")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1260 (if (string= "%" (substring top -1))
62402
a7e02ef1e3d6 Replace `string-to-int' by `string-to-number'.
Juanma Barranquero <lekktu@gmail.com>
parents: 52401
diff changeset
1261 (setq edt-top-scroll-margin (string-to-number top))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1262 (setq edt-top-scroll-margin
62402
a7e02ef1e3d6 Replace `string-to-int' by `string-to-number'.
Juanma Barranquero <lekktu@gmail.com>
parents: 52401
diff changeset
1263 (/ (1- (+ (* (string-to-number top) 100) (window-height)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1264 (window-height)))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1265 ;; set bottom scroll margin
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1266 (or (string= bottom "")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1267 (if (string= "%" (substring bottom -1))
62402
a7e02ef1e3d6 Replace `string-to-int' by `string-to-number'.
Juanma Barranquero <lekktu@gmail.com>
parents: 52401
diff changeset
1268 (setq edt-bottom-scroll-margin (string-to-number bottom))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1269 (setq edt-bottom-scroll-margin
62402
a7e02ef1e3d6 Replace `string-to-int' by `string-to-number'.
Juanma Barranquero <lekktu@gmail.com>
parents: 52401
diff changeset
1270 (/ (1- (+ (* (string-to-number bottom) 100) (window-height)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1271 (window-height)))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1272 ;; report scroll margin settings if running interactively
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1273 (and (interactive-p)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1274 (message "Scroll margins set. Top = %s%%, Bottom = %s%%"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1275 edt-top-scroll-margin edt-bottom-scroll-margin)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1276
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1277
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1278 ;;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1279 ;;;; ENHANCEMENTS AND ADDITIONS FOR EDT KEYPAD MODE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1280 ;;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1281
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
1282 ;;;
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1283 ;;; Several enhancements and additions to EDT keypad mode commands are
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1284 ;;; provided here. Some of these have been motivated by similar
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1285 ;;; TPU/EVE and EVE-Plus commands. Others are new.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1286
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1287 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1288 ;;; CHANGE DIRECTION
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1289 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1290
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1291 (defun edt-change-direction ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1292 "Toggle movement direction."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1293 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1294 (if (equal edt-direction-string edt-forward-string)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1295 (edt-backup)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1296 (edt-advance)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1297
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1298 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1299 ;;; TOGGLE SELECT
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1300 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1301
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1302 (defun edt-toggle-select ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1303 "Toggle to start (or cancel) text selection."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1304 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1305 (if edt-select-mode
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1306 (edt-reset)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1307 (edt-select)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1308
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1309 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1310 ;;; SENTENCE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1311 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1312
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1313 (defun edt-sentence-forward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1314 "Move forward to start of next sentence.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1315 Argument NUM is the positive number of sentences to move."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1316 (interactive "p")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1317 (edt-check-prefix num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1318 (let* ((left nil)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1319 (beg (edt-current-line))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1320 (height (window-height))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1321 (top-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1322 (if (= 0 edt-top-scroll-margin) 10 edt-top-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1323 (bottom-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1324 (if (= 0 edt-bottom-scroll-margin) 15 edt-bottom-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1325 (top-margin (/ (* height top-percent) 100))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1326 (bottom-up-margin (+ 1 (/ (* height bottom-percent) 100)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1327 (bottom-margin (max beg (- height bottom-up-margin 1)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1328 (top (save-excursion (move-to-window-line top-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1329 (bottom (save-excursion (move-to-window-line bottom-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1330 (far (save-excursion
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1331 (goto-char bottom) (forward-line (- height 2)) (point))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1332 (if (eobp)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1333 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1334 (error "End of buffer"))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1335 (progn
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1336 (forward-sentence num)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1337 (forward-word 1)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1338 (backward-sentence)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1339 (cond((> (point) far)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1340 (setq left (save-excursion (forward-line height)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1341 (if (= 0 left) (recenter top-margin)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1342 (recenter (- left bottom-up-margin))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1343 (t
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1344 (and (> (point) bottom) (recenter bottom-margin)))))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1345 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1346
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1347 (defun edt-sentence-backward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1348 "Move backward to next sentence beginning.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1349 Argument NUM is the positive number of sentences to move."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1350 (interactive "p")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1351 (edt-check-prefix num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1352 (let* ((left nil)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1353 (beg (edt-current-line))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1354 (height (window-height))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1355 (top-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1356 (if (= 0 edt-top-scroll-margin) 10 edt-top-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1357 (bottom-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1358 (if (= 0 edt-bottom-scroll-margin) 15 edt-bottom-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1359 (top-margin (/ (* height top-percent) 100))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1360 (bottom-up-margin (+ 1 (/ (* height bottom-percent) 100)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1361 (bottom-margin (max beg (- height bottom-up-margin 1)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1362 (top (save-excursion (move-to-window-line top-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1363 (bottom (save-excursion (move-to-window-line bottom-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1364 (far (save-excursion
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1365 (goto-char bottom) (forward-line (- height 2)) (point))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1366 (if (eobp)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1367 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1368 (error "End of buffer"))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1369 (backward-sentence num))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1370 (and (< (point) top) (recenter (min beg top-margin))))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1371 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1372
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1373 (defun edt-sentence (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1374 "Move in current direction to next sentence.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1375 Argument NUM is the positive number of sentences to move."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1376 (interactive "p")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1377 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1378 (edt-sentence-forward num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1379 (edt-sentence-backward num)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1380
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1381 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1382 ;;; PARAGRAPH
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1383 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1384
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1385 (defun edt-paragraph-forward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1386 "Move forward to beginning of paragraph.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1387 Argument NUM is the positive number of paragraphs to move."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1388 (interactive "p")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1389 (edt-check-prefix num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1390 (let* ((left nil)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1391 (beg (edt-current-line))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1392 (height (window-height))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1393 (top-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1394 (if (= 0 edt-top-scroll-margin) 10 edt-top-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1395 (bottom-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1396 (if (= 0 edt-bottom-scroll-margin) 15 edt-bottom-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1397 (top-margin (/ (* height top-percent) 100))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1398 (bottom-up-margin (+ 1 (/ (* height bottom-percent) 100)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1399 (bottom-margin (max beg (- height bottom-up-margin 1)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1400 (top (save-excursion (move-to-window-line top-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1401 (bottom (save-excursion (move-to-window-line bottom-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1402 (far (save-excursion
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1403 (goto-char bottom) (forward-line (- height 2)) (point))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1404 (while (> num 0)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1405 (forward-paragraph (+ num 1))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1406 (start-of-paragraph-text)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1407 (if (eolp)
85451
e1af3a725ca4 * textmodes/two-column.el (2C-split, 2C-merge):
Dan Nicolaescu <dann@ics.uci.edu>
parents: 78218
diff changeset
1408 (forward-line 1))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1409 (setq num (1- num)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1410 (cond((> (point) far)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1411 (setq left (save-excursion (forward-line height)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1412 (if (= 0 left) (recenter top-margin)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1413 (recenter (- left bottom-up-margin))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1414 (t
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1415 (and (> (point) bottom) (recenter bottom-margin)))))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1416 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1417
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1418 (defun edt-paragraph-backward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1419 "Move backward to beginning of paragraph.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1420 Argument NUM is the positive number of paragraphs to move."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1421 (interactive "p")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1422 (edt-check-prefix num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1423 (let* ((left nil)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1424 (beg (edt-current-line))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1425 (height (window-height))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1426 (top-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1427 (if (= 0 edt-top-scroll-margin) 10 edt-top-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1428 (bottom-percent
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1429 (if (= 0 edt-bottom-scroll-margin) 15 edt-bottom-scroll-margin))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1430 (top-margin (/ (* height top-percent) 100))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1431 (bottom-up-margin (+ 1 (/ (* height bottom-percent) 100)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1432 (bottom-margin (max beg (- height bottom-up-margin 1)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1433 (top (save-excursion (move-to-window-line top-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1434 (bottom (save-excursion (move-to-window-line bottom-margin) (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1435 (far (save-excursion
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1436 (goto-char bottom) (forward-line (- height 2)) (point))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1437 (while (> num 0)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1438 (start-of-paragraph-text)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1439 (setq num (1- num)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1440 (and (< (point) top) (recenter (min beg top-margin))))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1441 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1442
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1443 (defun edt-paragraph (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1444 "Move in current direction to next paragraph.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1445 Argument NUM is the positive number of paragraphs to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1446 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1447 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1448 (edt-paragraph-forward num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1449 (edt-paragraph-backward num)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1450
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1451 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1452 ;;; RESTORE KEY
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1453 ;;;
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1454
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1455 (defun edt-restore-key ()
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1456 "Restore last replaced key definition.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1457 Definition is stored in `edt-last-replaced-key-definition'."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1458 (interactive)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1459 (if (featurep 'xemacs) (setq zmacs-region-stays t))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1460 (if edt-last-replaced-key-definition
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1461 (progn
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1462 (let (edt-key-definition)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1463 (set 'edt-key-definition
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1464 (read-key-sequence "Press the key to be restored: "))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1465 (if (if (featurep 'emacs)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1466 (string-equal "\C-m" edt-key-definition)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1467 (string-equal "\C-m" (events-to-keys edt-key-definition)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1468 (message "Key not restored")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1469 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1470 (define-key (current-global-map)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1471 edt-key-definition edt-last-replaced-key-definition)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1472 (if (featurep 'emacs)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1473 (message "Key definition for %s has been restored."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1474 edt-key-definition)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1475 (message "Key definition for %s has been restored."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1476 (events-to-keys edt-key-definition)))))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1477 (error "No replaced key definition to restore!")))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1478
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1479 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1480 ;;; WINDOW TOP
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1481 ;;;
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1482
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1483 (defun edt-window-top ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1484 "Move the cursor to the top of the window."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1485 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1486 (let ((start-column (current-column)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1487 (move-to-window-line 0)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1488 (move-to-column start-column))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1489 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1490
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1491 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1492 ;;; WINDOW BOTTOM
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1493 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1494
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1495 (defun edt-window-bottom ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1496 "Move the cursor to the bottom of the window."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1497 (interactive)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1498 (let ((start-column (current-column)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1499 (move-to-window-line (- (window-height) 2))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1500 (move-to-column start-column))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1501 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1502
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1503 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1504 ;;; SCROLL WINDOW LINE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1505 ;;;
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1506
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1507 (defun edt-scroll-window-forward-line ()
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1508 "Move window forward one line leaving cursor at position in window."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1509 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1510 (scroll-up 1)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1511 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1512
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1513 (defun edt-scroll-window-backward-line ()
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1514 "Move window backward one line leaving cursor at position in window."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1515 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1516 (scroll-down 1)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1517 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1518
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1519 (defun edt-scroll-line ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1520 "Move window one line in current direction."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1521 (interactive)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1522 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1523 (edt-scroll-window-forward-line)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1524 (edt-scroll-window-backward-line)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1525
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1526 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1527 ;;; SCROLL WINDOW
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1528 ;;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1529 ;;; Scroll a window (less one line) at a time. Leave cursor in center of
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1530 ;;; window.
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1531
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1532 (defun edt-scroll-window-forward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1533 "Scroll forward one window in buffer, less one line.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1534 Argument NUM is the positive number of windows to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1535 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1536 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1537 (scroll-up (- (* (window-height) num) 2))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1538 (edt-line-forward (/ (- (window-height) 1) 2)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1539
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1540 (defun edt-scroll-window-backward (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1541 "Scroll backward one window in buffer, less one line.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1542 Argument NUM is the positive number of windows to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1543 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1544 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1545 (scroll-down (- (* (window-height) num) 2))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1546 (edt-line-backward (/ (- (window-height) 1) 2)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1547
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1548 (defun edt-scroll-window (num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1549 "Scroll one window in buffer, less one line, in current direction.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1550 Argument NUM is the positive number of windows to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1551 (interactive "p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1552 (if (equal edt-direction-string edt-forward-string)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1553 (edt-scroll-window-forward num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1554 (edt-scroll-window-backward num)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1555
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1556 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1557 ;;; LINE TO BOTTOM OF WINDOW
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1558 ;;;
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1559
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1560 (defun edt-line-to-bottom-of-window ()
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1561 "Move the current line to the bottom of the window."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1562 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1563 (recenter -1)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1564 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1565
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1566 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1567 ;;; LINE TO TOP OF WINDOW
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1568 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1569
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1570 (defun edt-line-to-top-of-window ()
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1571 "Move the current line to the top of the window."
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1572 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1573 (recenter 0)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1574 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1575
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1576 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1577 ;;; LINE TO MIDDLE OF WINDOW
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1578 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1579
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1580 (defun edt-line-to-middle-of-window ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1581 "Move window so line with cursor is in the middle of the window."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1582 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1583 (recenter '(4))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1584 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1585
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1586 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1587 ;;; GOTO PERCENTAGE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1588 ;;;
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1589
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1590 (defun edt-goto-percentage (num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1591 "Move to specified percentage in buffer from top of buffer.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1592 Argument NUM is the percentage into the buffer to move."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1593 (interactive "NGoto-percentage: ")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1594 (if (or (> num 100) (< num 0))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1595 (error "Percentage %d out of range 0 < percent < 100" num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1596 (goto-char (/ (* (point-max) num) 100)))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1597 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1598
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1599 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1600 ;;; FILL REGION
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1601 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1602
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1603 (defun edt-fill-region ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1604 "Fill selected text."
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1605 (interactive "*")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1606 (edt-check-selection)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1607 (fill-region (point) (mark)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1608
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1609 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1610 ;;; INDENT OR FILL REGION
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1611 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1612
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1613 (defun edt-indent-or-fill-region ()
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1614 "Fill region in text modes, indent region in programming language modes."
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1615 (interactive "*")
10872
adc2429d1531 (edt-indent-or-fill-region): Remove ^ from paragraph-start & paragraph-separate.
Boris Goldowsky <boris@gnu.org>
parents: 10689
diff changeset
1616 (if (string= paragraph-start "$\\|\f")
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1617 (indent-region (point) (mark) nil)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1618 (fill-region (point) (mark))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1619
86243
4d615a83cee2 * progmodes/idlw-help.el: Require browse-url unconditionally, it
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85777
diff changeset
1620
87116
c3fbe3fd56de Remove directory part from filenames in function declarations.
Glenn Morris <rgm@gnu.org>
parents: 86530
diff changeset
1621 (declare-function c-mark-function "cc-cmds" ())
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1622 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1623 ;;; MARK SECTION WISELY
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1624 ;;;
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1625
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1626 (defun edt-mark-section-wisely ()
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1627 "Mark the section in a manner consistent with the `major-mode'.
63941
929eb735e11d (edt-last-copied-word): Add defvar.
Richard M. Stallman <rms@gnu.org>
parents: 63914
diff changeset
1628 Uses `mark-defun' for Emacs-Lisp and Lisp, and for Fortran,
929eb735e11d (edt-last-copied-word): Add defvar.
Richard M. Stallman <rms@gnu.org>
parents: 63914
diff changeset
1629 `c-mark-function' for C,
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1630 and `mark-paragraph' for other modes."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1631 (interactive)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1632 (if edt-select-mode
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1633 (progn
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1634 (edt-reset))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1635 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1636 (cond ((or (eq major-mode 'emacs-lisp-mode)
63941
929eb735e11d (edt-last-copied-word): Add defvar.
Richard M. Stallman <rms@gnu.org>
parents: 63914
diff changeset
1637 (eq major-mode 'fortran-mode)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1638 (eq major-mode 'lisp-mode))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1639 (mark-defun)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1640 (message "Lisp defun selected"))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1641 ((eq major-mode 'c-mode)
63941
929eb735e11d (edt-last-copied-word): Add defvar.
Richard M. Stallman <rms@gnu.org>
parents: 63914
diff changeset
1642 (c-mark-function)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1643 (message "C function selected"))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1644 (t (mark-paragraph)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1645 (message "Paragraph selected"))))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1646
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1647 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1648 ;;; COPY
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1649 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1650
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1651 (defun edt-copy ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1652 "Copy selected region to kill ring, but don't delete it!"
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1653 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1654 (edt-check-selection)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1655 (copy-region-as-kill (mark) (point))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1656 (edt-reset)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1657 (message "Selected text COPIED to kill ring"))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1658
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1659 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1660 ;;; CUT or COPY
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1661 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1662
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1663 (defun edt-cut-or-copy ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1664 "Cuts (or copies) selected text to kill ring.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1665 Cuts selected text if `buffer-read-only' is nil.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1666 Copies selected text if `buffer-read-only' is t."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1667 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1668 (if buffer-read-only
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1669 (edt-copy)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1670 (edt-cut)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1671
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1672 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1673 ;;; DELETE ENTIRE LINE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1674 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1675
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1676 (defun edt-delete-entire-line ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1677 "Delete entire line regardless of cursor position in the line."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1678 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1679 (beginning-of-line)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1680 (edt-delete-line 1))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1681
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1682 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1683 ;;; DUPLICATE LINE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1684 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1685
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1686 (defun edt-duplicate-line (num)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1687 "Duplicate the line of text containing the cursor.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1688 Argument NUM is the number of times to duplicate the line."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1689 (interactive "*p")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1690 (edt-check-prefix num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1691 (let ((old-column (current-column))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1692 (count num))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1693 (edt-delete-entire-line)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1694 (edt-undelete-line)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1695 (while (> count 0)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1696 (edt-undelete-line)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1697 (setq count (1- count)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1698 (edt-line-forward num)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1699 (move-to-column old-column)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1700
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1701 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1702 ;;; DUPLICATE WORD
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1703 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1704
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1705 (defun edt-duplicate-word()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1706 "Duplicate word (or rest of word) found directly above cursor, if any."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1707 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1708 (let ((start (point))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1709 (start-column (current-column)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1710 (forward-line -1)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1711 (move-to-column start-column)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1712 (if (and (not (equal start (point)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1713 (not (eolp)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1714 (progn
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1715 (if (and (equal ?\t (preceding-char))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1716 (< start-column (current-column)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1717 (backward-char))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1718 (let ((beg (point)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1719 (edt-one-word-forward)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1720 (setq edt-last-copied-word (buffer-substring beg (point))))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1721 (forward-line)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1722 (move-to-column start-column)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1723 (insert edt-last-copied-word))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1724 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1725 (if (not (equal start (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1726 (forward-line))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1727 (move-to-column start-column)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1728 (error "Nothing to duplicate!")))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1729
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1730 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1731 ;;; KEY NOT ASSIGNED
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1732 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1733
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1734 (defun edt-key-not-assigned ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1735 "Displays message that key has not been assigned to a function."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1736 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1737 (error "Key not assigned"))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1738
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1739 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1740 ;;; TOGGLE CAPITALIZATION OF WORD
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1741 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1742
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1743 (defun edt-toggle-capitalization-of-word ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1744 "Toggle the capitalization of the current word and move forward to next."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1745 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1746 (edt-one-word-forward)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1747 (edt-one-word-backward)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1748 (edt-change-case 1)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1749 (edt-one-word-backward)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1750 (edt-one-word-forward))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1751
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1752 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1753 ;;; ELIMINATE ALL TABS
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1754 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1755
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1756 (defun edt-eliminate-all-tabs ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1757 "Convert all tabs to spaces in the entire buffer."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1758 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1759 (untabify (point-min) (point-max))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1760 (message "TABS converted to SPACES"))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1761
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1762 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1763 ;;; DISPLAY THE TIME
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1764 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1765
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1766 (defun edt-display-the-time ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1767 "Display the current time."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1768 (interactive)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1769 (if (featurep 'xemacs) (setq zmacs-region-stays t))
63941
929eb735e11d (edt-last-copied-word): Add defvar.
Richard M. Stallman <rms@gnu.org>
parents: 63914
diff changeset
1770 (message "%s" (current-time-string)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1771
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1772 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1773 ;;; LEARN
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1774 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1775
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1776 (defun edt-learn ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1777 "Learn a sequence of key strokes to bind to a key."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1778 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1779 (if (eq defining-kbd-macro t)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1780 (edt-remember)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1781 (start-kbd-macro nil)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1782
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1783 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1784 ;;; REMEMBER
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1785 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1786
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1787 (defun edt-remember ()
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1788 "Store the sequence of key strokes started by `edt-learn' to a key."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1789 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1790 (if (eq defining-kbd-macro nil)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1791 (error "Nothing to remember!")
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1792 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1793 (end-kbd-macro nil)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1794 (let (edt-key-definition)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1795 (set 'edt-key-definition
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1796 (read-key-sequence "Enter key for binding: "))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1797 (if (if (featurep 'emacs)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1798 (string-equal "\C-m" edt-key-definition)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1799 (string-equal "\C-m" (events-to-keys edt-key-definition)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1800 (message "Key sequence not remembered")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1801 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1802 (set 'edt-learn-macro-count (+ edt-learn-macro-count 1))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1803 (setq edt-last-replaced-key-definition
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1804 (lookup-key (current-global-map)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1805 edt-key-definition))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1806 (define-key (current-global-map) edt-key-definition
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1807 (name-last-kbd-macro
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1808 (intern (concat "last-learned-sequence-"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1809 (int-to-string edt-learn-macro-count)))))))))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1810
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1811 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1812 ;;; EXIT
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1813 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1814
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1815 (defun edt-exit ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1816 "Save current buffer, ask to save other buffers, and then exit Emacs."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1817 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1818 (save-buffer)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1819 (save-buffers-kill-emacs))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1820
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
1821 ;;;
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1822 ;;; QUIT
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1823 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1824
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1825 (defun edt-quit ()
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1826 "Quit Emacs without saving buffer modifications.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1827 Warn user that modifications will be lost."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1828 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1829 (let ((list (buffer-list))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1830 (working t))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1831 (while (and list working)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1832 (let ((buffer (car list)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1833 (if (and (buffer-file-name buffer) (buffer-modified-p buffer))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1834 (if (edt-y-or-n-p
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1835 "Modifications will not be saved, continue quitting? ")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1836 (kill-emacs)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1837 (setq working nil)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1838 (setq list (cdr list))))
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
1839 (if working (kill-emacs))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1840
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
1841 ;;;
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1842 ;;; SPLIT WINDOW
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1843 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1844
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1845 (defun edt-split-window ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1846 "Split current window and place cursor in the new window."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1847 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1848 (split-window)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1849 (other-window 1)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
1850 (if (featurep 'xemacs) (setq zmacs-region-stays t)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1851
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1852 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1853 ;;; COPY RECTANGLE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1854 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1855
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1856 (defun edt-copy-rectangle ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1857 "Copy a rectangle of text between mark and cursor to register."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1858 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1859 (edt-check-selection)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1860 (copy-rectangle-to-register 3 (region-beginning) (region-end) nil)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1861 (edt-reset)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1862 (message "Selected rectangle COPIED to register"))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1863
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1864 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1865 ;;; CUT RECTANGLE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1866 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1867
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1868 (defun edt-cut-rectangle-overstrike-mode ()
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1869 "Cut a rectangle of text between mark and cursor to register.
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1870 Replace cut characters with spaces and moving cursor back to
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1871 upper left corner."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1872 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1873 (edt-check-selection)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1874 (setq edt-rect-start-point (region-beginning))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1875 (picture-clear-rectangle-to-register (region-beginning) (region-end) 3)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1876 (set-window-point (get-buffer-window (window-buffer)) edt-rect-start-point)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1877 (message "Selected rectangle CUT to register"))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1878
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1879 (defun edt-cut-rectangle-insert-mode ()
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1880 "Cut a rectangle of text between mark and cursor to register.
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1881 Move cursor back to upper left corner."
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1882 (interactive "*")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1883 (edt-check-selection)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1884 (setq edt-rect-start-point (region-beginning))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1885 (picture-clear-rectangle-to-register (region-beginning) (region-end) 3 t)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1886 (fixup-whitespace)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1887 (set-window-point (get-buffer-window (window-buffer)) edt-rect-start-point)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1888 (message "Selected rectangle CUT to register"))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1889
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1890 (defun edt-cut-rectangle ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1891 "Cut a rectangular region of text to register.
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
1892 If overwrite mode is active, cut text is replaced with whitespace."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1893 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1894 (if overwrite-mode
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1895 (edt-cut-rectangle-overstrike-mode)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1896 (edt-cut-rectangle-insert-mode)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1897
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1898 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1899 ;;; PASTE RECTANGLE
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1900 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1901
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1902 (defun edt-paste-rectangle-overstrike-mode ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1903 "Paste a rectangular region of text from register, replacing text at cursor."
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1904 (interactive "*")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1905 (picture-yank-rectangle-from-register 3))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1906
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1907 (defun edt-paste-rectangle-insert-mode ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1908 "Paste previously deleted rectangular region, inserting text at cursor."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1909 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1910 (picture-yank-rectangle-from-register 3 t))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1911
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1912 (defun edt-paste-rectangle ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1913 "Paste a rectangular region of text.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1914 If overwrite mode is active, existing text is replace with text from register."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1915 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1916 (if overwrite-mode
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1917 (edt-paste-rectangle-overstrike-mode)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1918 (edt-paste-rectangle-insert-mode)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1919
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1920 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1921 ;;; DOWNCASE REGION
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1922 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1923
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1924 (defun edt-lowercase ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1925 "Change specified characters to lower case.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1926 If text selection IS active, then characters between the cursor and
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1927 mark are changed. If text selection is NOT active, there are two
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1928 situations. If the current direction is ADVANCE, then the word under
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1929 the cursor is changed to lower case and the cursor is moved to rest at
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1930 the beginning of the next word. If the current direction is BACKUP,
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1931 the word prior to the word under the cursor is changed to lower case
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1932 and the cursor is left to rest at the beginning of that word."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1933 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1934 (if edt-select-mode
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1935 (progn
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1936 (downcase-region (mark) (point)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1937 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1938 ;; Move to beginning of current word.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1939 (if (and
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1940 (not (bobp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1941 (not (eobp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1942 (not (bolp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1943 (not (eolp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1944 (not (eq ?\ (char-syntax (preceding-char))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1945 (not (memq (preceding-char) edt-word-entities))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1946 (not (memq (following-char) edt-word-entities)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1947 (edt-one-word-backward))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1948 (if (equal edt-direction-string edt-backward-string)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1949 (edt-one-word-backward))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1950 (let ((beg (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1951 (edt-one-word-forward)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1952 (downcase-region beg (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1953 (if (equal edt-direction-string edt-backward-string)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1954 (edt-one-word-backward)))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1955
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1956 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1957 ;;; UPCASE REGION
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1958 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1959
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1960 (defun edt-uppercase ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1961 "Change specified characters to upper case.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1962 If text selection IS active, then characters between the cursor and
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1963 mark are changed. If text selection is NOT active, there are two
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1964 situations. If the current direction is ADVANCE, then the word under
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1965 the cursor is changed to upper case and the cursor is moved to rest at
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1966 the beginning of the next word. If the current direction is BACKUP,
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1967 the word prior to the word under the cursor is changed to upper case
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1968 and the cursor is left to rest at the beginning of that word."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1969 (interactive "*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1970 (if edt-select-mode
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1971 (progn
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1972 (upcase-region (mark) (point)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1973 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1974 ;; Move to beginning of current word.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1975 (if (and
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1976 (not (bobp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1977 (not (eobp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1978 (not (bolp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1979 (not (eolp))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1980 (not (eq ?\ (char-syntax (preceding-char))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1981 (not (memq (preceding-char) edt-word-entities))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1982 (not (memq (following-char) edt-word-entities)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1983 (edt-one-word-backward))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1984 (if (equal edt-direction-string edt-backward-string)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1985 (edt-one-word-backward))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1986 (let ((beg (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1987 (edt-one-word-forward)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1988 (upcase-region beg (point)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1989 (if (equal edt-direction-string edt-backward-string)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1990 (edt-one-word-backward)))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1991
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1992 ;;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1993 ;;; Functions used in loading LK-201 key mapping file.
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1994 ;;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1995 (defvar edt-last-answer nil
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
1996 "Most recent response to `edt-y-or-n-p'.")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1997
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1998 (defun edt-y-or-n-p (prompt &optional not-yes)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
1999 "Prompt for a y or n answer with positive default.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2000 Like Emacs `y-or-n-p', also accepts space as y and DEL as n.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2001 Argument PROMPT is the prompt string.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2002 Optional argument NOT-YES changes the default to negative."
14346
4a609420dfc1 (edt-display-the-time): Pass proper format string to message.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2003 (message "%s[%s]" prompt (if not-yes "n" "y"))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2004 (let ((doit t))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2005 (while doit
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2006 (setq doit nil)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2007 (let ((ans (read-char)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2008 (cond ((or (= ans ?y) (= ans ?Y) (= ans ?\ ))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2009 (setq edt-last-answer t))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2010 ((or (= ans ?n) (= ans ?N) (= ans ?\C-?))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2011 (setq edt-last-answer nil))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2012 ((= ans ?\r) (setq edt-last-answer (not not-yes)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2013 (t
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2014 (setq doit t) (beep)
14346
4a609420dfc1 (edt-display-the-time): Pass proper format string to message.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2015 (message "Please answer y or n. %s[%s]"
4a609420dfc1 (edt-display-the-time): Pass proper format string to message.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2016 prompt (if not-yes "n" "y")))))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2017 edt-last-answer)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2018
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2019 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2020 ;;; INITIALIZATION COMMANDS.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2021 ;;;
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2022
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2023 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2024 ;;; Function used to load LK-201 key mapping file generated by edt-mapper.el.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2025 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2026 (defun edt-load-keys (file)
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2027 "Load the LK-201 key mapping FILE generated by edt-mapper.el.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2028 If FILE is nil, which is the normal case, try to load a default file.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2029 The default file names are based upon the window system, terminal
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2030 type, and version of Emacs in use: GNU Emacs or XEmacs (aka Lucid
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2031 Emacs). If a default file does not exist, ask user if one should be
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2032 created."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2033 (interactive "fKey definition file: ")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2034 (cond (file
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2035 (setq file (expand-file-name file)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2036 (edt-keys-file
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2037 (setq file (expand-file-name edt-keys-file)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2038 (t
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2039 (setq file
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2040 (expand-file-name
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2041 (concat
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2042 "~/.edt-" edt-emacs-variant
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2043 (if edt-term (concat "-" edt-term))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2044 (if edt-xserver (concat "-" edt-xserver))
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2045 (if edt-window-system
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2046 (concat "-" (upcase (symbol-name edt-window-system))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2047 "-keys")))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2048 (cond ((file-readable-p file)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2049 (load-file file))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2050 (t
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2051 (switch-to-buffer "*scratch*")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2052 (erase-buffer)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2053 (insert "
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2054
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2055 Ack!! You're running the Enhanced EDT Emulation without loading an
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2056 EDT key mapping file. To create an EDT key mapping file, run the
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2057 edt-mapper.el program. It is safest to run it from an Emacs loaded
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2058 without any of your own customizations found in your .emacs file, etc.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2059 The reason for this is that some user customizations confuse edt-mapper.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2060 You can do this by quitting Emacs and then invoking Emacs again as
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2061 follows:
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2062
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2063 emacs -q -l edt-mapper.el
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2064
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2065 [NOTE: If you do nothing out of the ordinary in your .emacs file, and
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2066 the search for edt-mapper.el is successful, you can try running it now.]
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2067
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2068 The file edt-mapper.el includes these same directions on how to
16426
0db426a80aff (edt-load-xkeys): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents: 14346
diff changeset
2069 use it! Perhaps it's lying around here someplace. \n ")
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2070 (let ((file "edt-mapper.el")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2071 (found nil)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2072 (path nil)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2073 (search-list (append (list (expand-file-name ".")) load-path)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2074 (while (and (not found) search-list)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2075 (setq path (concat (car search-list)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2076 (if (string-match "/$" (car search-list)) "" "/")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2077 file))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2078 (if (and (file-exists-p path) (not (file-directory-p path)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2079 (setq found t))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2080 (setq search-list (cdr search-list)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2081 (cond (found
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2082 (insert (format
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2083 "Ah yes, there it is, in \n\n %s \n\n" path))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2084 (if (edt-y-or-n-p "Do you want to run it now? ")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2085 (load-file path)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2086 (error "EDT Emulation not configured")))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2087 (t
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2088 (insert "Nope, I can't seem to find it. :-(\n\n")
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2089 (sit-for 20)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2090 (error "EDT Emulation not configured")))))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2091
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2092 ;;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2093 ;;; Turning the EDT Emulation on and off.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2094 ;;;
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2095
258
1e0bc00dca7a *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 199
diff changeset
2096 ;;;###autoload
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2097 (defun edt-emulation-on ()
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2098 "Turn on EDT Emulation."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2099 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2100 ;; If using pc window system (MS-DOS), set terminal type to pc.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2101 ;; If not a window system (GNU) or a tty window system (XEmacs),
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2102 ;; get terminal type.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2103 (if (eq edt-window-system 'pc)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2104 (setq edt-term "pc")
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2105 (if (or (not edt-window-system) (eq edt-window-system 'tty))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2106 (setq edt-term (getenv "TERM"))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2107 ;; Look for for terminal configuration file for this terminal type.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2108 ;; Otherwise, load the user's custom configuration file.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2109 (if (or (not edt-window-system) (memq edt-window-system '(pc tty)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2110 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2111 ;; Load terminal-specific configuration file, if it exists for this
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2112 ;; terminal type. Note: All DEC VT series terminals are supported
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2113 ;; by the same terminal configuration file: edt-vt100.el.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2114 (if (string-equal "vt" (substring edt-term 0 (min (length edt-term) 2)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2115 (setq edt-term "vt100"))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2116 (let ((term edt-term)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2117 hyphend)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2118 (while (and term
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2119 (not (load (concat "edt-" term) t t)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2120 ;; Strip off last hyphen and what follows, then try again
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2121 (if (setq hyphend (string-match "[-_][^-_]+$" term))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2122 (setq term (substring term 0 hyphend))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2123 (setq term nil)))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2124 ;; If no terminal-specific configuration file exists, load user's
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2125 ;; custom EDT terminal configuration file.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2126 ;; If this is a pc running MS-DOS, then custom configuration files
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2127 ;; are not supported. So, if the file is missing, issue an error
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2128 ;; message.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2129 (if (null term)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2130 (if (equal edt-term "pc")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2131 (error "Unable to find EDT terminal specific file edt-pc.el")
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2132 (edt-load-keys nil))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2133 (setq edt-term term))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2134 (edt-load-keys nil))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2135 ;; Make highlighting of selected text work properly for EDT commands.
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
2136 (if (featurep 'emacs)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2137 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2138 (setq edt-orig-transient-mark-mode transient-mark-mode)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2139 (add-hook 'activate-mark-hook
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2140 (function
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2141 (lambda ()
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2142 (edt-select-mode t))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2143 (add-hook 'deactivate-mark-hook
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2144 (function
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2145 (lambda ()
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2146 (edt-select-mode nil)))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2147 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2148 (add-hook 'zmacs-activate-region-hook
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2149 (function
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2150 (lambda ()
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2151 (edt-select-mode t))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2152 (add-hook 'zmacs-deactivate-region-hook
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2153 (function
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2154 (lambda ()
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2155 (edt-select-mode nil))))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2156 ;; Load user's EDT custom key bindings file, if it exists.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2157 ;; Otherwise, use the default bindings.
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2158 (if (load "edt-user" t t)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2159 (edt-user-emulation-setup)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2160 (edt-default-emulation-setup)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2161
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2162 (defun edt-emulation-off()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2163 "Select original global key bindings, disabling EDT Emulation."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2164 (interactive)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2165 (use-global-map global-map)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2166 (if (not edt-keep-current-page-delimiter)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2167 (setq page-delimiter edt-orig-page-delimiter))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2168 (setq edt-direction-string "")
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2169 (setq edt-select-mode-current nil)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2170 (edt-reset)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2171 (force-mode-line-update t)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
2172 (if (featurep 'emacs)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2173 (setq transient-mark-mode edt-orig-transient-mark-mode))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2174 (message "Original key bindings restored; EDT Emulation disabled"))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2175
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2176 (defun edt-default-emulation-setup (&optional user-setup)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2177 "Setup emulation of DEC's EDT editor.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2178 Optional argument USER-SETUP non-nil means called from function
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2179 `edt-user-emulation-setup'."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2180 ;; Setup default EDT global map by copying global map bindings.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2181 ;; This preserves ESC and C-x prefix bindings and other bindings we
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2182 ;; wish to retain in EDT emulation mode keymaps. It also permits
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2183 ;; customization of these bindings in the EDT global maps without
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2184 ;; disturbing the original bindings in global-map.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2185 (fset 'edt-default-ESC-prefix (copy-keymap 'ESC-prefix))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2186 (setq edt-default-global-map (copy-keymap (current-global-map)))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
2187 (if (featurep 'emacs)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2188 (define-key edt-default-global-map "\e" 'edt-default-ESC-prefix)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2189 (define-key edt-default-global-map [escape] 'edt-default-ESC-prefix))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2190 (define-prefix-command 'edt-default-gold-map)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2191 (edt-setup-default-bindings)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2192 ;; If terminal has additional function keys, the terminal-specific
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2193 ;; initialization file can assign bindings to them via the optional
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2194 ;; function edt-setup-extra-default-bindings.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2195 (if (fboundp 'edt-setup-extra-default-bindings)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2196 (edt-setup-extra-default-bindings))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2197 ;; Variable needed by edt-learn.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2198 (setq edt-learn-macro-count 0)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2199 ;; Display EDT text selection active within the mode line
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2200 (or (assq 'edt-select-mode minor-mode-alist)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2201 (setq minor-mode-alist
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2202 (cons '(edt-select-mode edt-select-mode) minor-mode-alist)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2203 ;; Display EDT direction of motion within the mode line
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2204 (or (assq 'edt-direction-string minor-mode-alist)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2205 (setq minor-mode-alist
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2206 (cons
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2207 '(edt-direction-string edt-direction-string) minor-mode-alist)))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2208 (if user-setup
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2209 (progn
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2210 (setq edt-user-map-configured t)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2211 (fset 'edt-emulation-on (symbol-function 'edt-select-user-global-map)))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2212 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2213 (fset 'edt-emulation-on (symbol-function 'edt-select-default-global-map))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2214 (edt-select-default-global-map))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2215
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2216 (defun edt-user-emulation-setup ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2217 "Setup user custom emulation of DEC's EDT editor."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2218 ;; Initialize EDT default bindings.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2219 (edt-default-emulation-setup t)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2220 ;; Setup user EDT global map by copying default EDT global map bindings.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2221 (fset 'edt-user-ESC-prefix (copy-keymap 'edt-default-ESC-prefix))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2222 (setq edt-user-global-map (copy-keymap edt-default-global-map))
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
2223 (if (featurep 'emacs)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2224 (define-key edt-user-global-map "\e" 'edt-user-ESC-prefix)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2225 (define-key edt-user-global-map [escape] 'edt-user-ESC-prefix))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2226 ;; If terminal has additional function keys, the user's initialization
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2227 ;; file can assign bindings to them via the optional
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2228 ;; function edt-setup-extra-default-bindings.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2229 (define-prefix-command 'edt-user-gold-map)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2230 (fset 'edt-user-gold-map (copy-keymap 'edt-default-gold-map))
86530
bc8f1a009d53 (edt-user-emulation-setup): Test edt-setup-user-bindings is bound
Glenn Morris <rgm@gnu.org>
parents: 86243
diff changeset
2231 ;; This is a function that the user can define for custom bindings.
bc8f1a009d53 (edt-user-emulation-setup): Test edt-setup-user-bindings is bound
Glenn Morris <rgm@gnu.org>
parents: 86243
diff changeset
2232 ;; See etc/edt-user.doc.
bc8f1a009d53 (edt-user-emulation-setup): Test edt-setup-user-bindings is bound
Glenn Morris <rgm@gnu.org>
parents: 86243
diff changeset
2233 (if (fboundp 'edt-setup-user-bindings)
bc8f1a009d53 (edt-user-emulation-setup): Test edt-setup-user-bindings is bound
Glenn Morris <rgm@gnu.org>
parents: 86243
diff changeset
2234 (edt-setup-user-bindings))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2235 (edt-select-user-global-map))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2236
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2237 (defun edt-select-default-global-map()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2238 "Select default EDT emulation key bindings."
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2239 (interactive)
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
2240 (if (featurep 'emacs)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2241 (transient-mark-mode 1))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2242 (use-global-map edt-default-global-map)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2243 (if (not edt-keep-current-page-delimiter)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2244 (progn
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2245 (setq edt-orig-page-delimiter page-delimiter)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2246 (setq page-delimiter "\f")))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2247 (setq edt-default-map-active t)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2248 (edt-advance)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2249 (setq edt-select-mode-current 'edt-select-mode-string)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2250 (edt-reset)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2251 (message "Default EDT keymap active"))
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2252
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2253 (defun edt-select-user-global-map()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2254 "Select user EDT emulation custom key bindings."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2255 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2256 (if edt-user-map-configured
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2257 (progn
85777
2ca0af23d79d * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p)
Dan Nicolaescu <dann@ics.uci.edu>
parents: 85724
diff changeset
2258 (if (featurep 'emacs)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2259 (transient-mark-mode 1))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2260 (use-global-map edt-user-global-map)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2261 (if (not edt-keep-current-page-delimiter)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2262 (progn
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2263 (setq edt-orig-page-delimiter page-delimiter)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2264 (setq page-delimiter "\f")))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2265 (setq edt-default-map-active nil)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2266 (edt-advance)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2267 (setq edt-select-mode-current 'edt-select-mode-string)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2268 (edt-reset)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2269 (message "User EDT custom keymap active"))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2270 (error "User EDT custom keymap NOT configured!")))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2271
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2272 (defun edt-switch-global-maps ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2273 "Toggle between default EDT keymap and user EDT keymap."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2274 (interactive)
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2275 (if edt-default-map-active
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2276 (edt-select-user-global-map)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2277 (edt-select-default-global-map)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2278
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2279 ;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2280 ;; Functions used to set up DEFAULT bindings to EDT emulation functions.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2281 ;;
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2282
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2283 (defun edt-bind-function-key-default (function-key binding gold-binding)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2284 "Binds LK-201 function keys to default bindings in the EDT Emulator.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2285 Argument FUNCTION-KEY is the name of the function key or keypad function key.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2286 Argument BINDING is the Emacs function to be bound to <KEY>.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2287 Argument GOLD-BINDING is the Emacs function to be bound to GOLD <KEY>."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2288 (let ((key (cdr (assoc function-key *EDT-keys*))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2289 (if (and key (not (equal key "")))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2290 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2291 (define-key edt-default-global-map key binding)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2292 (define-key 'edt-default-gold-map key gold-binding)))))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2293
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2294 (defun edt-bind-key-default (key binding)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2295 "Bind key sequences to default bindings in the EDT Emulator.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2296 Argument KEY is the name of a standard key or a function key.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2297 Argument BINDING is the Emacs function to be bound to <KEY>."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2298 (define-key edt-default-global-map key binding))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2299
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2300 (defun edt-bind-gold-key-default (key gold-binding)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2301 "Binds <GOLD> key sequences to default bindings in the EDT Emulator.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2302 Argument KEY is the name of a standard key or a function key.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2303 Argument GOLD-BINDING is the Emacs function to be bound to GOLD <KEY>."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2304 (define-key 'edt-default-gold-map key gold-binding))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2305
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2306 ;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2307 ;; Functions used to set up USER CUSTOM bindings to EDT emulation functions.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2308 ;;
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2309 (defun edt-bind-function-key (function-key binding gold-binding)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2310 "Binds LK-201 function keys to custom bindings in the EDT Emulator.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2311 Argument FUNCTION-KEY is the name of the function key or keypad function key.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2312 Argument BINDING is the Emacs function to be bound to <KEY>.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2313 Argument GOLD-BINDING is the Emacs function to be bound to GOLD <KEY>."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2314 (let ((key (cdr (assoc function-key *EDT-keys*))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2315 (if (and key (not (equal key "")))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2316 (progn
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2317 (define-key edt-user-global-map key binding)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2318 (define-key 'edt-user-gold-map key gold-binding)))))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2319
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2320 (defun edt-bind-key (key binding)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2321 "Bind standard key sequences to custom bindings in the EDT Emulator.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2322 Argument KEY is the name of a key. It can be a standard key or a function key.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2323 Argument BINDING is the Emacs function to be bound to <KEY>."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2324 (define-key edt-user-global-map key binding))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2325
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2326 ;; For backward compatibility to existing edt-user.el files.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2327 (fset 'edt-bind-standard-key (symbol-function 'edt-bind-key))
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2328
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2329 (defun edt-bind-gold-key (key gold-binding)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2330 "Binds <GOLD> standard key sequences to custom bindings in the EDT Emulator.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2331 Argument KEY is the name of a standard key or a function key.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2332 Argument GOLD-BINDING is the Emacs function to be bound to GOLD <KEY>."
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2333 (define-key 'edt-user-gold-map key gold-binding))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2334
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2335 (defun edt-setup-default-bindings ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2336 "Assigns default EDT Emulation keyboard bindings."
3479
7cda082508c9 (GOLD-prefix): Define *after* GOLD-map.
Richard M. Stallman <rms@gnu.org>
parents: 2570
diff changeset
2337
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2338 ;; Function Key Bindings: Regular and GOLD.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2339
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2340 ;; VT100/VT200/VT300 PF1 (GOLD), PF2, PF3, PF4 Keys
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2341 (edt-bind-function-key-default "PF1"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2342 'edt-default-gold-map 'edt-mark-section-wisely)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2343 (edt-bind-function-key-default "PF2"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2344 'edt-electric-keypad-help 'describe-function)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2345 (edt-bind-function-key-default "PF3" 'edt-find-next 'edt-find)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2346 (edt-bind-function-key-default "PF4" 'edt-delete-line 'edt-undelete-line)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2347
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2348 ;; VT100/VT200/VT300 Arrow Keys
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2349 (edt-bind-function-key-default "UP" 'edt-previous-line 'edt-window-top)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2350 (edt-bind-function-key-default "DOWN" 'edt-next-line 'edt-window-bottom)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2351 (edt-bind-function-key-default "LEFT" 'backward-char 'edt-sentence-backward)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2352 (edt-bind-function-key-default "RIGHT" 'forward-char 'edt-sentence-forward)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2353
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2354 ;; VT100/VT200/VT300 Keypad Keys
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2355 (edt-bind-function-key-default "KP0" 'edt-line 'open-line)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2356 (edt-bind-function-key-default "KP1" 'edt-word 'edt-change-case)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2357 (edt-bind-function-key-default "KP2"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2358 'edt-end-of-line 'edt-delete-to-end-of-line)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2359 (edt-bind-function-key-default "KP3" 'edt-character 'quoted-insert)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2360 (edt-bind-function-key-default "KP4" 'edt-advance 'edt-bottom)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2361 (edt-bind-function-key-default "KP5" 'edt-backup 'edt-top)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2362 (edt-bind-function-key-default "KP6" 'edt-cut 'yank)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2363 (edt-bind-function-key-default "KP7" 'edt-page 'execute-extended-command)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2364 (edt-bind-function-key-default "KP8" 'edt-sect 'edt-fill-region)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2365 (edt-bind-function-key-default "KP9" 'edt-append 'edt-replace)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2366 (edt-bind-function-key-default "KP-" 'edt-delete-word 'edt-undelete-word)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2367 (edt-bind-function-key-default "KP,"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2368 'edt-delete-character 'edt-undelete-character)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2369 (edt-bind-function-key-default "KPP" 'edt-select 'edt-reset)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2370 (edt-bind-function-key-default "KPE" 'other-window 'edt-substitute)
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2371
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2372 ;; VT200/VT300 Function Keys
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2373 ;; (F1 through F5, on the VT220, are not programmable, so we skip
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2374 ;; making default bindings to those keys.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2375 (edt-bind-function-key-default "FIND" 'edt-find-next 'edt-find)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2376 (edt-bind-function-key-default "INSERT" 'yank 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2377 (edt-bind-function-key-default "REMOVE" 'edt-cut 'edt-copy)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2378 (edt-bind-function-key-default "SELECT"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2379 'edt-toggle-select 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2380 (edt-bind-function-key-default "NEXT"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2381 'edt-sect-forward 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2382 (edt-bind-function-key-default "PREVIOUS"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2383 'edt-sect-backward 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2384 (edt-bind-function-key-default "F6"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2385 'edt-key-not-assigned 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2386 (edt-bind-function-key-default "F7"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2387 'edt-copy-rectangle 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2388 (edt-bind-function-key-default "F8"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2389 'edt-cut-rectangle-overstrike-mode 'edt-paste-rectangle-overstrike-mode)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2390 (edt-bind-function-key-default "F9"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2391 'edt-cut-rectangle-insert-mode 'edt-paste-rectangle-insert-mode)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2392 (edt-bind-function-key-default "F10" 'edt-cut-rectangle 'edt-paste-rectangle)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2393 ;; Under X, the F11 key can be bound. If using a VT-200 or higher terminal,
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2394 ;; the default emacs terminal support causes the VT F11 key to seem as if it
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2395 ;; is an ESC key when in emacs.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2396 (edt-bind-function-key-default "F11"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2397 'edt-key-not-assigned 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2398 (edt-bind-function-key-default "F12"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2399 'edt-beginning-of-line 'delete-other-windows) ;BS
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2400 (edt-bind-function-key-default "F13"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2401 'edt-delete-to-beginning-of-word 'edt-key-not-assigned) ;LF
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2402 (edt-bind-function-key-default "F14"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2403 'edt-key-not-assigned 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2404 (edt-bind-function-key-default "HELP"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2405 'edt-electric-keypad-help 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2406 (edt-bind-function-key-default "DO"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2407 'execute-extended-command 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2408 (edt-bind-function-key-default "F17"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2409 'edt-key-not-assigned 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2410 (edt-bind-function-key-default "F18"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2411 'edt-key-not-assigned 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2412 (edt-bind-function-key-default "F19"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2413 'edt-key-not-assigned 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2414 (edt-bind-function-key-default "F20"
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2415 'edt-key-not-assigned 'edt-key-not-assigned)
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2416
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2417 ;; Control key bindings: Regular and GOLD
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2418 ;;
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2419 ;; Standard EDT control key bindings conflict with standard Emacs
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2420 ;; control key bindings. Normally, the standard Emacs control key
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2421 ;; bindings are left unchanged in the default EDT mode. However, if
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2422 ;; the variable edt-use-EDT-control-key-bindings is set to true
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2423 ;; before invoking edt-emulation-on for the first time, then the
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2424 ;; standard EDT bindings (with some enhancements) as defined here are
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2425 ;; used, instead.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2426 (if edt-use-EDT-control-key-bindings
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2427 (progn
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2428 (edt-bind-key-default "\C-a" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2429 (edt-bind-key-default "\C-b" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2430 ;; Leave binding of C-c to an Emacs prefix key.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2431 (edt-bind-key-default "\C-d" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2432 (edt-bind-key-default "\C-e" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2433 (edt-bind-key-default "\C-f" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2434 ;; Leave binding of C-g to the Emacs keyboard-quit
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2435 (edt-bind-key-default "\C-h" 'edt-beginning-of-line)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2436 (edt-bind-key-default "\C-i" 'edt-tab-insert)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2437 (edt-bind-key-default "\C-j" 'edt-delete-to-beginning-of-word)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2438 (edt-bind-key-default "\C-k" 'edt-define-key)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2439 (edt-bind-gold-key-default "\C-k" 'edt-restore-key)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2440 (edt-bind-key-default "\C-l" 'edt-form-feed-insert)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2441 ;; Leave binding of C-m to newline.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2442 (edt-bind-key-default "\C-n" 'edt-set-screen-width-80)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2443 (edt-bind-key-default "\C-o" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2444 (edt-bind-key-default "\C-p" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2445 (edt-bind-key-default "\C-q" 'edt-key-not-assigned)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2446 ;; Leave binding of C-r to isearch-backward.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2447 ;; Leave binding of C-s to isearch-forward.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2448 (edt-bind-key-default "\C-t" 'edt-display-the-time)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2449 (edt-bind-key-default "\C-u" 'edt-delete-to-beginning-of-line)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2450 (edt-bind-key-default "\C-v" 'redraw-display)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2451 (edt-bind-key-default "\C-w" 'edt-set-screen-width-132)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2452 ;; Leave binding of C-x as original prefix key.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2453 (edt-bind-key-default "\C-y" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2454 ;; Leave binding of C-z to suspend-emacs.
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2455 )
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2456 )
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2457
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2458 ;; GOLD bindings for a few keys.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2459 (edt-bind-gold-key-default "\C-g" 'keyboard-quit); Just in case.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2460 (edt-bind-gold-key-default "\C-h" 'help-for-help); Just in case.
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2461 (edt-bind-gold-key-default [f1] 'help-for-help)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2462 (edt-bind-gold-key-default [help] 'help-for-help)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2463 (edt-bind-gold-key-default "\C-\\" 'split-window-vertically)
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2464
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2465 ;; GOLD bindings for regular keys.
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2466 (edt-bind-gold-key-default "a" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2467 (edt-bind-gold-key-default "A" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2468 (edt-bind-gold-key-default "b" 'buffer-menu)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2469 (edt-bind-gold-key-default "B" 'buffer-menu)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2470 (edt-bind-gold-key-default "c" 'compile)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2471 (edt-bind-gold-key-default "C" 'compile)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2472 (edt-bind-gold-key-default "d" 'delete-window)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2473 (edt-bind-gold-key-default "D" 'delete-window)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2474 (edt-bind-gold-key-default "e" 'edt-exit)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2475 (edt-bind-gold-key-default "E" 'edt-exit)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2476 (edt-bind-gold-key-default "f" 'find-file)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2477 (edt-bind-gold-key-default "F" 'find-file)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2478 (edt-bind-gold-key-default "g" 'find-file-other-window)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2479 (edt-bind-gold-key-default "G" 'find-file-other-window)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2480 (edt-bind-gold-key-default "h" 'edt-electric-keypad-help)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2481 (edt-bind-gold-key-default "H" 'edt-electric-keypad-help)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2482 (edt-bind-gold-key-default "i" 'insert-file)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2483 (edt-bind-gold-key-default "I" 'insert-file)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2484 (edt-bind-gold-key-default "j" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2485 (edt-bind-gold-key-default "J" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2486 (edt-bind-gold-key-default "k" 'edt-toggle-capitalization-of-word)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2487 (edt-bind-gold-key-default "K" 'edt-toggle-capitalization-of-word)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2488 (edt-bind-gold-key-default "l" 'edt-lowercase)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2489 (edt-bind-gold-key-default "L" 'edt-lowercase)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2490 (edt-bind-gold-key-default "m" 'save-some-buffers)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2491 (edt-bind-gold-key-default "M" 'save-some-buffers)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2492 (edt-bind-gold-key-default "n" 'next-error)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2493 (edt-bind-gold-key-default "N" 'next-error)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2494 (edt-bind-gold-key-default "o" 'switch-to-buffer-other-window)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2495 (edt-bind-gold-key-default "O" 'switch-to-buffer-other-window)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2496 (edt-bind-gold-key-default "p" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2497 (edt-bind-gold-key-default "P" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2498 (edt-bind-gold-key-default "q" 'edt-quit)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2499 (edt-bind-gold-key-default "Q" 'edt-quit)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2500 (edt-bind-gold-key-default "r" 'revert-buffer)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2501 (edt-bind-gold-key-default "R" 'revert-buffer)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2502 (edt-bind-gold-key-default "s" 'save-buffer)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2503 (edt-bind-gold-key-default "S" 'save-buffer)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2504 (edt-bind-gold-key-default "t" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2505 (edt-bind-gold-key-default "T" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2506 (edt-bind-gold-key-default "u" 'edt-uppercase)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2507 (edt-bind-gold-key-default "U" 'edt-uppercase)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2508 (edt-bind-gold-key-default "v" 'find-file-other-window)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2509 (edt-bind-gold-key-default "V" 'find-file-other-window)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2510 (edt-bind-gold-key-default "w" 'write-file)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2511 (edt-bind-gold-key-default "W" 'write-file)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2512 (edt-bind-gold-key-default "x" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2513 (edt-bind-gold-key-default "X" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2514 (edt-bind-gold-key-default "y" 'edt-emulation-off)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2515 (edt-bind-gold-key-default "Y" 'edt-emulation-off)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2516 (edt-bind-gold-key-default "z" 'edt-switch-global-maps)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2517 (edt-bind-gold-key-default "Z" 'edt-switch-global-maps)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2518 (edt-bind-gold-key-default "1" 'delete-other-windows)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2519 (edt-bind-gold-key-default "!" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2520 (edt-bind-gold-key-default "2" 'edt-split-window)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2521 (edt-bind-gold-key-default "@" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2522 (edt-bind-gold-key-default "3" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2523 (edt-bind-gold-key-default "#" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2524 (edt-bind-gold-key-default "4" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2525 (edt-bind-gold-key-default "$" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2526 (edt-bind-gold-key-default "5" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2527 (edt-bind-gold-key-default "%" 'edt-goto-percentage)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2528 (edt-bind-gold-key-default "6" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2529 (edt-bind-gold-key-default "^" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2530 (edt-bind-gold-key-default "7" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2531 (edt-bind-gold-key-default "&" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2532 (edt-bind-gold-key-default "8" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2533 (edt-bind-gold-key-default "*" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2534 (edt-bind-gold-key-default "9" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2535 (edt-bind-gold-key-default "(" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2536 (edt-bind-gold-key-default "0" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2537 (edt-bind-gold-key-default ")" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2538 (edt-bind-gold-key-default " " 'undo)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2539 (edt-bind-gold-key-default "," 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2540 (edt-bind-gold-key-default "<" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2541 (edt-bind-gold-key-default "." 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2542 (edt-bind-gold-key-default ">" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2543 (edt-bind-gold-key-default "/" 'query-replace)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2544 (edt-bind-gold-key-default "?" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2545 (edt-bind-gold-key-default "\\" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2546 (edt-bind-gold-key-default "|" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2547 (edt-bind-gold-key-default ";" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2548 (edt-bind-gold-key-default ":" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2549 (edt-bind-gold-key-default "'" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2550 (edt-bind-gold-key-default "\"" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2551 (edt-bind-gold-key-default "-" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2552 (edt-bind-gold-key-default "_" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2553 (edt-bind-gold-key-default "=" 'goto-line)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2554 (edt-bind-gold-key-default "+" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2555 (edt-bind-gold-key-default "[" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2556 (edt-bind-gold-key-default "{" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2557 (edt-bind-gold-key-default "]" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2558 (edt-bind-gold-key-default "}" 'edt-key-not-assigned)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2559 (edt-bind-gold-key-default "`" 'what-line)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2560 (edt-bind-gold-key-default "~" 'edt-key-not-assigned)
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2561 )
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2562
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2563 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2564 ;;; DEFAULT EDT KEYPAD HELP
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2565 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2566
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2567 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2568 ;;; Upper case commands in the keypad diagram below indicate that the
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2569 ;;; emulation should look and feel very much like EDT. Lower case
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2570 ;;; commands are enhancements and/or additions to the EDT keypad
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2571 ;;; commands or are native Emacs commands.
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2572 ;;;
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2573
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2574 (defun edt-keypad-help ()
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2575 "DEFAULT EDT Keypad Active.
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2576
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2577 F7: Copy Rectangle +----------+----------+----------+----------+
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2578 F8: Cut Rect Overstrike |Prev Line |Next Line |Bkwd Char |Frwd Char |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2579 G-F8: Paste Rect Overstrike | (UP) | (DOWN) | (LEFT) | (RIGHT) |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2580 F9: Cut Rect Insert |Window Top|Window Bot|Bkwd Sent |Frwd Sent |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2581 G-F9: Paste Rect Insert +----------+----------+----------+----------+
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2582 F10: Cut Rectangle
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2583 G-F10: Paste Rectangle
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2584 F11: ESC
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2585 F12: Begining of Line +----------+----------+----------+----------+
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2586 G-F12: Delete Other Windows | GOLD | HELP | FNDNXT | DEL L |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2587 F13: Delete to Begin of Word | (PF1) | (PF2) | (PF3) | (PF4) |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2588 HELP: Keypad Help |Mark Wisel|Desc Funct| FIND | UND L |
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2589 G-HELP: Emacs Help +----------+----------+----------+----------+
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2590 DO: Execute extended command | PAGE | SECT | APPEND | DEL W |
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2591 C-g: Keyboard Quit | (7) | (8) | (9) | (-) |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2592 G-C-g: Keyboard Quit |Ex Ext Cmd|Fill Regio| REPLACE | UND W |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2593 C-h: Beginning of Line +----------+----------+----------+----------+
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2594 G-C-h: Emacs Help | ADVANCE | BACKUP | CUT | DEL C |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2595 C-i: Tab Insert | (4) | (5) | (6) | (,) |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2596 C-j: Delete to Begin of Word | BOTTOM | TOP | Yank | UND C |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2597 C-k: Define Key +----------+----------+----------+----------+
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2598 G-C-k: Restore Key | WORD | EOL | CHAR | Next |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2599 C-l: Form Feed Insert | (1) | (2) | (3) | Window |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2600 C-n: Set Screen Width 80 | CHNGCASE | DEL EOL |Quoted Ins| !
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2601 C-r: Isearch Backward +---------------------+----------+ (ENTER) |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2602 C-s: Isearch Forward | LINE | SELECT | !
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2603 C-t: Display the Time | (0) | (.) | SUBS |
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2604 C-u: Delete to Begin of Line | Open Line | RESET | |
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2605 C-v: Redraw Display +---------------------+----------+----------+
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2606 C-w: Set Screen Width 132
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2607 C-z: Suspend Emacs +----------+----------+----------+
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2608 G-C-\\: Split Window | FNDNXT | Yank | CUT |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2609 | (FIND) | (INSERT) | (REMOVE) |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2610 G-b: Buffer Menu | FIND | | COPY |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2611 G-c: Compile +----------+----------+----------+
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2612 G-d: Delete Window |SELECT/RES|SECT BACKW|SECT FORWA|
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2613 G-e: Exit | (SELECT) |(PREVIOUS)| (NEXT) |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2614 G-f: Find File | | | |
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2615 G-g: Find File Other Window +----------+----------+----------+
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2616 G-h: Keypad Help
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2617 G-i: Insert File
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2618 G-k: Toggle Capitalization Word
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2619 G-l: Downcase Region
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2620 G-m: Save Some Buffers
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2621 G-n: Next Error
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2622 G-o: Switch to Next Window
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2623 G-q: Quit
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2624 G-r: Revert File
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2625 G-s: Save Buffer
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2626 G-u: Upcase Region
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2627 G-v: Find File Other Window
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2628 G-w: Write file
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2629 G-y: EDT Emulation OFF
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2630 G-z: Switch to User EDT Key Bindings
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2631 G-1: Delete Other Windows
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2632 G-2: Split Window
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2633 G-%: Go to Percentage
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2634 G- : Undo (GOLD Spacebar)
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48259
diff changeset
2635 G-=: Go to Line
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2636 G-`: What line
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2637 G-/: Query-Replace"
57
f34b559dc980 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2638
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2639 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2640 (describe-function 'edt-keypad-help))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2641
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2642 (defun edt-electric-helpify (fun)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2643 (let ((name "*Help*"))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2644 (if (save-window-excursion
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2645 (let* ((p (symbol-function 'print-help-return-message))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2646 (b (get-buffer name))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2647 (m (buffer-modified-p b)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2648 (and b (not (get-buffer-window b))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2649 (setq b nil))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2650 (unwind-protect
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2651 (progn
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2652 (message "%s..." (capitalize (symbol-name fun)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2653 (and b
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2654 (save-excursion
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2655 (set-buffer b)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2656 (set-buffer-modified-p t)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2657 (fset 'print-help-return-message 'ignore)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2658 (call-interactively fun)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2659 (and (get-buffer name)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2660 (get-buffer-window (get-buffer name))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2661 (or (not b)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2662 (not (eq b (get-buffer name)))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2663 (not (buffer-modified-p b)))))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2664 (fset 'print-help-return-message p)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2665 (and b (buffer-name b)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2666 (save-excursion
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2667 (set-buffer b)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2668 (set-buffer-modified-p m))))))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2669 (with-electric-help 'delete-other-windows name t))))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2670
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2671 (defun edt-electric-keypad-help ()
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
2672 "Display default EDT bindings."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2673 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2674 (edt-electric-helpify 'edt-keypad-help))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2675
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2676 (defun edt-electric-user-keypad-help ()
11442
331db5628809 Many doc fixes.
Karl Heuer <kwzh@gnu.org>
parents: 11273
diff changeset
2677 "Display user custom EDT bindings."
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2678 (interactive)
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2679 (edt-electric-helpify 'edt-user-keypad-help))
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2680
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2681 ;;;
13058
1d26583f8c2b (edt-set-screen-width-80, edt-set-screen-width-132):
Karl Heuer <kwzh@gnu.org>
parents: 12421
diff changeset
2682 ;;; EDT emulation screen width commands.
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2683 ;;;
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2684 ;; Some terminals require modification of terminal attributes when
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2685 ;; changing the number of columns displayed, hence the fboundp tests
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2686 ;; below. These functions are defined in the corresponding terminal
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2687 ;; specific file, if needed.
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2688
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2689 (defun edt-set-screen-width-80 ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2690 "Set screen width to 80 columns."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2691 (interactive)
13058
1d26583f8c2b (edt-set-screen-width-80, edt-set-screen-width-132):
Karl Heuer <kwzh@gnu.org>
parents: 12421
diff changeset
2692 (if (fboundp 'edt-set-term-width-80)
1d26583f8c2b (edt-set-screen-width-80, edt-set-screen-width-132):
Karl Heuer <kwzh@gnu.org>
parents: 12421
diff changeset
2693 (edt-set-term-width-80))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2694 (set-frame-width nil 80)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2695 (message "Terminal width 80"))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2696
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2697 (defun edt-set-screen-width-132 ()
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2698 "Set screen width to 132 columns."
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2699 (interactive)
13058
1d26583f8c2b (edt-set-screen-width-80, edt-set-screen-width-132):
Karl Heuer <kwzh@gnu.org>
parents: 12421
diff changeset
2700 (if (fboundp 'edt-set-term-width-132)
1d26583f8c2b (edt-set-screen-width-80, edt-set-screen-width-132):
Karl Heuer <kwzh@gnu.org>
parents: 12421
diff changeset
2701 (edt-set-term-width-132))
35124
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2702 (set-frame-width nil 132)
0b78d7b101c2 Update to version 4.0. Provide support for
Gerd Moellmann <gerd@gnu.org>
parents: 18943
diff changeset
2703 (message "Terminal width 132"))
10689
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2704
5adde53bae4b New enhanced version from <kgallagh@spd.dsccc.com>.
Karl Heuer <kwzh@gnu.org>
parents: 7300
diff changeset
2705 (provide 'edt)
660
08eb386dd0f3 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 258
diff changeset
2706
93975
1e3a407766b9 Fix up comment convention on the arch-tag lines.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 92374
diff changeset
2707 ;; arch-tag: 18d1c54f-6900-4078-8bbc-7c2292f48941
660
08eb386dd0f3 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 258
diff changeset
2708 ;;; edt.el ends here