annotate 3rdparty/packages/uemacs/uemain.h @ 1885:3c25c93b186c

Changes so far
author boisy
date Tue, 11 Oct 2005 11:20:25 +0000
parents a51439f6b206
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
995
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
1 /* Main header */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
2
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
3 #ifdef MAINTABLE
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
4 int currow; /* Working cursor row */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
5 int curcol; /* Working cursor column */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
6 int fillcol; /* Current fill column */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
7 int thisflag; /* Flags, this command */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
8 int lastflag; /* Flags, last command */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
9 int curgoal; /* Goal column */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
10 BUFFER *curbp; /* Current buffer */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
11 WINDOW *curwp; /* Current window */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
12 BUFFER *bheadp; /* BUFFER listhead */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
13 WINDOW *wheadp; /* WINDOW listhead */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
14 BUFFER *blistp; /* Buffer list BUFFER */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
15 short kbdm[NKBDM] = {CTLX|')'}; /* Macro */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
16 short *kbdmip; /* Input for above */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
17 short *kbdmop; /* Output for above */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
18 char pat[NPAT]; /* Pattern */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
19 #else
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
20 extern int currow; /* Working cursor row */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
21 extern int curcol; /* Working cursor column */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
22 extern int fillcol; /* Current fill column */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
23 extern int thisflag; /* Flags, this command */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
24 extern int lastflag; /* Flags, last command */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
25 extern int curgoal; /* Goal column */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
26 extern BUFFER *curbp; /* Current buffer */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
27 extern WINDOW *curwp; /* Current window */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
28 extern BUFFER *bheadp; /* BUFFER listhead */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
29 extern WINDOW *wheadp; /* WINDOW listhead */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
30 extern BUFFER *blistp; /* Buffer list BUFFER */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
31 extern short kbdm[]; /* Macro */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
32 extern short *kbdmip; /* Input for above */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
33 extern short *kbdmop; /* Output for above */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
34 extern char pat[]; /* Pattern */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
35 #endif
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
36
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
37 typedef struct {
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
38 short k_code; /* Key code */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
39 int (*k_fp)(); /* Routine to handle it */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
40 } KEYTAB;
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
41
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
42 /*
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
43 * Command table.
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
44 * This table is *roughly* in ASCII order, left to right across the
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
45 * characters of the command. This expains the funny location of the
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
46 * control-X commands.
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
47 */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
48 #ifdef MAINTABLE
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
49
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
50 extern int ctrlg(); /* Abort out of things */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
51 extern int quit(); /* Quit */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
52 extern int ctlxlp(); /* Begin macro */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
53 extern int ctlxrp(); /* End macro */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
54 extern int ctlxe(); /* Execute macro */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
55 extern int fileread(); /* Get a file, read only */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
56 extern int filevisit(); /* Get a file, read write */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
57 extern int filewrite(); /* Write a file */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
58 extern int filesave(); /* Save current file */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
59 extern int filename(); /* Adjust file name */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
60 extern int getccol(); /* Get current column */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
61 extern int gotobol(); /* Move to start of line */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
62 extern int forwchar(); /* Move forward by characters */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
63 extern int gotoeol(); /* Move to end of line */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
64 extern int backchar(); /* Move backward by characters */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
65 extern int forwline(); /* Move forward by lines */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
66 extern int backline(); /* Move backward by lines */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
67 extern int forwpage(); /* Move forward by pages */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
68 extern int backpage(); /* Move backward by pages */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
69 extern int gotobob(); /* Move to start of buffer */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
70 extern int gotoeob(); /* Move to end of buffer */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
71 extern int setfillcol(); /* Set fill column. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
72 extern int setmark(); /* Set mark */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
73 extern int swapmark(); /* Swap "." and mark */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
74 extern int forwsearch(); /* Search forward */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
75 extern int backsearch(); /* Search backwards */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
76 extern int showcpos(); /* Show the cursor position */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
77 #ifndef OS9
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
78 extern int nextwind(); /* Move to the next window */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
79 extern int prevwind(); /* Move to the previous window */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
80 extern int onlywind(); /* Make current window only one */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
81 extern int splitwind(); /* Split current window */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
82 extern int mvdnwind(); /* Move window down */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
83 extern int mvupwind(); /* Move window up */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
84 extern int enlargewind(); /* Enlarge display window. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
85 extern int shrinkwind(); /* Shrink window. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
86 extern int listbuffers(); /* Display list of buffers */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
87 extern int usebuffer(); /* Switch a window to a buffer */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
88 extern int killbuffer(); /* Make a buffer go away. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
89 #endif
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
90 extern int reposition(); /* Reposition window */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
91 extern int refresh(); /* Refresh the screen */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
92 extern int twiddle(); /* Twiddle characters */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
93 extern int tab(); /* Insert tab */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
94 extern int newline(); /* Insert CR-LF */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
95 extern int indent(); /* Insert CR-LF, then indent */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
96 extern int openline(); /* Open up a blank line */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
97 extern int deblank(); /* Delete blank lines */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
98 extern int quote(); /* Insert literal */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
99 extern int backword(); /* Backup by words */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
100 extern int forwword(); /* Advance by words */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
101 extern int forwdel(); /* Forward delete */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
102 extern int backdel(); /* Backward delete */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
103 extern int killer(); /* Kill forward */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
104 extern int yank(); /* Yank back from killbuffer. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
105 extern int upperword(); /* Upper case word. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
106 extern int lowerword(); /* Lower case word. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
107 extern int upperregion(); /* Upper case region. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
108 extern int lowerregion(); /* Lower case region. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
109 extern int capword(); /* Initial capitalize word. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
110 extern int delfword(); /* Delete forward word. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
111 extern int delbword(); /* Delete backward word. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
112 extern int killregion(); /* Kill region. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
113 extern int copyregion(); /* Copy region to kill buffer. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
114 extern int spawncli(); /* Run CLI in a subjob. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
115 extern int spawn(); /* Run a command in a subjob. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
116 extern int quickexit(); /* low keystroke style exit. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
117
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
118 KEYTAB keytab[] = {
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
119 CTRL|'@', setmark,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
120 CTRL|'A', gotobol,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
121 CTRL|'B', backchar,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
122 CTRL|'C', spawncli, /* Run CLI in subjob. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
123 CTRL|'D', forwdel,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
124 CTRL|'E', gotoeol,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
125 CTRL|'F', forwchar,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
126 CTRL|'G', ctrlg,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
127 CTRL|'H', backdel,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
128 CTRL|'I', tab,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
129 CTRL|'J', indent,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
130 CTRL|'K', killer,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
131 CTRL|'L', refresh,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
132 CTRL|'M', newline,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
133 CTRL|'N', forwline,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
134 CTRL|'O', openline,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
135 CTRL|'P', backline,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
136 CTRL|'Q', quote, /* Often unreachable */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
137 CTRL|'R', backsearch,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
138 CTRL|'S', forwsearch, /* Often unreachable */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
139 CTRL|'T', twiddle,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
140 CTRL|'V', forwpage,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
141 CTRL|'W', killregion,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
142 CTRL|'Y', yank,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
143 CTRL|'Z', quickexit, /* quick save and exit */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
144 #ifndef OS9
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
145 CTLX|CTRL|'B', listbuffers,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
146 #endif
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
147 CTLX|CTRL|'C', quit, /* Hard quit. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
148 CTLX|CTRL|'F', filename,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
149 CTLX|CTRL|'L', lowerregion,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
150 CTLX|CTRL|'O', deblank,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
151 #ifndef OS9
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
152 CTLX|CTRL|'N', mvdnwind,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
153 CTLX|CTRL|'P', mvupwind,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
154 #endif
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
155 CTLX|CTRL|'R', fileread,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
156 CTLX|CTRL|'S', filesave, /* Often unreachable */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
157 CTLX|CTRL|'U', upperregion,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
158 #ifndef OS9
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
159 CTLX|CTRL|'V', filevisit,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
160 #endif
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
161 CTLX|CTRL|'W', filewrite,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
162 CTLX|CTRL|'X', swapmark,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
163 #ifndef OS9
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
164 CTLX|CTRL|'Z', shrinkwind,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
165 #endif
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
166 CTLX|'!', spawn, /* Run 1 command. */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
167 CTLX|'=', showcpos,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
168 CTLX|'(', ctlxlp,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
169 CTLX|')', ctlxrp,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
170 #ifndef OS9
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
171 CTLX|'1', onlywind,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
172 CTLX|'2', splitwind,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
173 CTLX|'B', usebuffer,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
174 #endif
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
175 CTLX|'E', ctlxe,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
176 CTLX|'F', setfillcol,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
177 #ifndef OS9
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
178 CTLX|'K', killbuffer,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
179 CTLX|'N', nextwind,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
180 CTLX|'P', prevwind,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
181 CTLX|'Z', enlargewind,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
182 #endif
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
183 META|CTRL|'H', delbword,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
184 META|'!', reposition,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
185 META|'.', setmark,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
186 META|'>', gotoeob,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
187 META|'<', gotobob,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
188 META|'B', backword,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
189 META|'C', capword,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
190 META|'D', delfword,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
191 META|'F', forwword,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
192 META|'L', lowerword,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
193 META|'U', upperword,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
194 META|'V', backpage,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
195 #ifndef OS9
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
196 META|'W', copyregion,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
197 #endif
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
198 META|0x7F, delbword,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
199 0x7F, backdel,
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
200 0, 0 /* Signals end of table */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
201 };
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
202 #else
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
203 extern KEYTAB keytab[];
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
204 #endif
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
205
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
206 #define NKEYTAB (sizeof(keytab)/sizeof(keytab[0]))
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
207
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
208 #ifdef RAINBOW
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
209
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
210 #include "rainbow.h"
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
211
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
212 /*
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
213 * Mapping table from the LK201 function keys to the internal EMACS character.
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
214 */
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
215
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
216 short lk_map[][2] = {
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
217 Up_Key, CTRL+'P',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
218 Down_Key, CTRL+'N',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
219 Left_Key, CTRL+'B',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
220 Right_Key, CTRL+'F',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
221 Shift+Left_Key, META+'B',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
222 Shift+Right_Key, META+'F',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
223 Control+Left_Key, CTRL+'A',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
224 Control+Right_Key, CTRL+'E',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
225 Prev_Scr_Key, META+'V',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
226 Next_Scr_Key, CTRL+'V',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
227 Shift+Up_Key, META+'<',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
228 Shift+Down_Key, META+'>',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
229 Cancel_Key, CTRL+'G',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
230 Find_Key, CTRL+'S',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
231 Shift+Find_Key, CTRL+'R',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
232 Insert_Key, CTRL+'Y',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
233 Options_Key, CTRL+'D',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
234 Shift+Options_Key, META+'D',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
235 Remove_Key, CTRL+'W',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
236 Shift+Remove_Key, META+'W',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
237 Select_Key, CTRL+'@',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
238 Shift+Select_Key, CTLX+CTRL+'X',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
239 Interrupt_Key, CTRL+'U',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
240 Keypad_PF2, META+'L',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
241 Keypad_PF3, META+'C',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
242 Keypad_PF4, META+'U',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
243 Shift+Keypad_PF2, CTLX+CTRL+'L',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
244 Shift+Keypad_PF4, CTLX+CTRL+'U',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
245 Keypad_1, CTLX+'1',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
246 Keypad_2, CTLX+'2',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
247 Do_Key, CTLX+'E',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
248 Keypad_4, CTLX+CTRL+'B',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
249 Keypad_5, CTLX+'B',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
250 Keypad_6, CTLX+'K',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
251 Resume_Key, META+'!',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
252 Control+Next_Scr_Key, CTLX+'N',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
253 Control+Prev_Scr_Key, CTLX+'P',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
254 Control+Up_Key, CTLX+CTRL+'P',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
255 Control+Down_Key, CTLX+CTRL+'N',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
256 Help_Key, CTLX+'=',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
257 Shift+Do_Key, CTLX+'(',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
258 Control+Do_Key, CTLX+')',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
259 Keypad_0, CTLX+'Z',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
260 Shift+Keypad_0, CTLX+CTRL+'Z',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
261 Main_Scr_Key, CTRL+'C',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
262 Keypad_Enter, CTLX+'!',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
263 Exit_Key, CTLX+CTRL+'C',
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
264 Shift+Exit_Key, CTRL+'Z'
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
265 };
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
266
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
267 #define lk_map_size (sizeof(lk_map)/2)
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
268
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
269 #endif
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
270
1869
a51439f6b206 Massive checkin
boisy
parents: 995
diff changeset
271 /* #define NULL 0 */
995
48c646212b1c 'microEMACS' for OS-9.
roug
parents:
diff changeset
272