167217Sn_hibma/* emacs_keymap.c -- the keymap for emacs_mode in readline (). */
261560Sn_hibma
361560Sn_hibma/* Copyright (C) 1987, 1989, 1992 Free Software Foundation, Inc.
4113273Smdodd
561560Sn_hibma   This file is part of the GNU Readline Library, a library for
661560Sn_hibma   reading lines of text with interactive input and history editing.
761560Sn_hibma
861560Sn_hibma   The GNU Readline Library is free software; you can redistribute it
961560Sn_hibma   and/or modify it under the terms of the GNU General Public License
1061560Sn_hibma   as published by the Free Software Foundation; either version 2, or
1161560Sn_hibma   (at your option) any later version.
1261560Sn_hibma
1361560Sn_hibma   The GNU Readline Library is distributed in the hope that it will be
1461560Sn_hibma   useful, but WITHOUT ANY WARRANTY; without even the implied warranty
1561560Sn_hibma   of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1661560Sn_hibma   GNU General Public License for more details.
1761560Sn_hibma
1861560Sn_hibma   The GNU General Public License is often shipped with GNU software, and
1961560Sn_hibma   is generally kept in a file called COPYING or LICENSE.  If you do not
2061560Sn_hibma   have a copy of the license, write to the Free Software Foundation,
2161560Sn_hibma   59 Temple Place, Suite 330, Boston, MA 02111 USA. */
2261560Sn_hibma
2361560Sn_hibma#if !defined (BUFSIZ)
2461560Sn_hibma#include <stdio.h>
2561560Sn_hibma#endif /* !BUFSIZ */
2661560Sn_hibma
2761560Sn_hibma#include "readline.h"
2861560Sn_hibma
2984224Sdillon/* An array of function pointers, one for each possible key.
3084224Sdillon   If the type byte is ISKMAP, then the pointer is the address of
3184224Sdillon   a keymap. */
3261560Sn_hibma
3361560Sn_hibmaKEYMAP_ENTRY_ARRAY emacs_standard_keymap = {
3461560Sn_hibma
3561560Sn_hibma  /* Control keys. */
3661560Sn_hibma  { ISFUNC, rl_set_mark },			/* Control-@ */
3761560Sn_hibma  { ISFUNC, rl_beg_of_line },			/* Control-a */
3861560Sn_hibma  { ISFUNC, rl_backward_char },			/* Control-b */
3961560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-c */
40113273Smdodd  { ISFUNC, rl_delete },			/* Control-d */
4161560Sn_hibma  { ISFUNC, rl_end_of_line },			/* Control-e */
4261560Sn_hibma  { ISFUNC, rl_forward_char },			/* Control-f */
43205728Skaiw  { ISFUNC, rl_abort },				/* Control-g */
44205728Skaiw  { ISFUNC, rl_rubout },			/* Control-h */
45205728Skaiw  { ISFUNC, rl_complete },			/* Control-i */
46225839Smav  { ISFUNC, rl_newline },			/* Control-j */
4767217Sn_hibma  { ISFUNC, rl_kill_line },			/* Control-k */
48205728Skaiw  { ISFUNC, rl_clear_screen },			/* Control-l */
49205728Skaiw  { ISFUNC, rl_newline },			/* Control-m */
50225839Smav  { ISFUNC, rl_get_next_history },		/* Control-n */
5161560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-o */
5261560Sn_hibma  { ISFUNC, rl_get_previous_history },		/* Control-p */
53205728Skaiw  { ISFUNC, rl_quoted_insert },			/* Control-q */
54205728Skaiw  { ISFUNC, rl_reverse_search_history },	/* Control-r */
55205728Skaiw  { ISFUNC, rl_forward_search_history },	/* Control-s */
56205728Skaiw  { ISFUNC, rl_transpose_chars },		/* Control-t */
57205728Skaiw  { ISFUNC, rl_unix_line_discard },		/* Control-u */
58205728Skaiw  { ISFUNC, rl_quoted_insert },			/* Control-v */
59225839Smav  { ISFUNC, rl_unix_word_rubout },		/* Control-w */
60205728Skaiw  { ISKMAP, (rl_command_func_t *)emacs_ctlx_keymap },	/* Control-x */
61205728Skaiw  { ISFUNC, rl_yank },				/* Control-y */
62205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-z */
63205728Skaiw  { ISKMAP, (rl_command_func_t *)emacs_meta_keymap }, /* Control-[ */
64205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-\ */
65205728Skaiw  { ISFUNC, rl_char_search },			/* Control-] */
66205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-^ */
67205728Skaiw  { ISFUNC, rl_undo_command },			/* Control-_ */
68205728Skaiw
69205728Skaiw  /* The start of printing characters. */
70205728Skaiw  { ISFUNC, rl_insert },		/* SPACE */
71205728Skaiw  { ISFUNC, rl_insert },		/* ! */
72205728Skaiw  { ISFUNC, rl_insert },		/* " */
73240762Smav  { ISFUNC, rl_insert },		/* # */
74205728Skaiw  { ISFUNC, rl_insert },		/* $ */
7561560Sn_hibma  { ISFUNC, rl_insert },		/* % */
76205728Skaiw  { ISFUNC, rl_insert },		/* & */
77205728Skaiw  { ISFUNC, rl_insert },		/* ' */
78205728Skaiw  { ISFUNC, rl_insert },		/* ( */
7961560Sn_hibma  { ISFUNC, rl_insert },		/* ) */
8061560Sn_hibma  { ISFUNC, rl_insert },		/* * */
8161560Sn_hibma  { ISFUNC, rl_insert },		/* + */
82205728Skaiw  { ISFUNC, rl_insert },		/* , */
8361560Sn_hibma  { ISFUNC, rl_insert },		/* - */
8461560Sn_hibma  { ISFUNC, rl_insert },		/* . */
8561560Sn_hibma  { ISFUNC, rl_insert },		/* / */
8661560Sn_hibma
8761560Sn_hibma	  /* Regular digits. */
8861560Sn_hibma  { ISFUNC, rl_insert },		/* 0 */
8961560Sn_hibma  { ISFUNC, rl_insert },		/* 1 */
9061560Sn_hibma  { ISFUNC, rl_insert },		/* 2 */
9161560Sn_hibma  { ISFUNC, rl_insert },		/* 3 */
9261560Sn_hibma  { ISFUNC, rl_insert },		/* 4 */
9361560Sn_hibma  { ISFUNC, rl_insert },		/* 5 */
9461560Sn_hibma  { ISFUNC, rl_insert },		/* 6 */
95205728Skaiw  { ISFUNC, rl_insert },		/* 7 */
96205728Skaiw  { ISFUNC, rl_insert },		/* 8 */
97205728Skaiw  { ISFUNC, rl_insert },		/* 9 */
98225839Smav
99205728Skaiw  /* A little more punctuation. */
100205728Skaiw  { ISFUNC, rl_insert },		/* : */
101205728Skaiw  { ISFUNC, rl_insert },		/* ; */
102205728Skaiw  { ISFUNC, rl_insert },		/* < */
103205728Skaiw  { ISFUNC, rl_insert },		/* = */
104205728Skaiw  { ISFUNC, rl_insert },		/* > */
105205728Skaiw  { ISFUNC, rl_insert },		/* ? */
106205728Skaiw  { ISFUNC, rl_insert },		/* @ */
107205728Skaiw
108205728Skaiw  /* Uppercase alphabet. */
109205728Skaiw  { ISFUNC, rl_insert },		/* A */
110205728Skaiw  { ISFUNC, rl_insert },		/* B */
111205728Skaiw  { ISFUNC, rl_insert },		/* C */
112205728Skaiw  { ISFUNC, rl_insert },		/* D */
113205728Skaiw  { ISFUNC, rl_insert },		/* E */
114205728Skaiw  { ISFUNC, rl_insert },		/* F */
115205728Skaiw  { ISFUNC, rl_insert },		/* G */
116205728Skaiw  { ISFUNC, rl_insert },		/* H */
117205728Skaiw  { ISFUNC, rl_insert },		/* I */
118205728Skaiw  { ISFUNC, rl_insert },		/* J */
119225839Smav  { ISFUNC, rl_insert },		/* K */
120225839Smav  { ISFUNC, rl_insert },		/* L */
121205728Skaiw  { ISFUNC, rl_insert },		/* M */
122205728Skaiw  { ISFUNC, rl_insert },		/* N */
123205728Skaiw  { ISFUNC, rl_insert },		/* O */
124205728Skaiw  { ISFUNC, rl_insert },		/* P */
125205728Skaiw  { ISFUNC, rl_insert },		/* Q */
126205728Skaiw  { ISFUNC, rl_insert },		/* R */
127205728Skaiw  { ISFUNC, rl_insert },		/* S */
128205728Skaiw  { ISFUNC, rl_insert },		/* T */
129205728Skaiw  { ISFUNC, rl_insert },		/* U */
130205728Skaiw  { ISFUNC, rl_insert },		/* V */
131205728Skaiw  { ISFUNC, rl_insert },		/* W */
132205728Skaiw  { ISFUNC, rl_insert },		/* X */
133205728Skaiw  { ISFUNC, rl_insert },		/* Y */
134205728Skaiw  { ISFUNC, rl_insert },		/* Z */
135205728Skaiw
136205728Skaiw  /* Some more punctuation. */
137205728Skaiw  { ISFUNC, rl_insert },		/* [ */
138205728Skaiw  { ISFUNC, rl_insert },		/* \ */
139205728Skaiw  { ISFUNC, rl_insert },		/* ] */
140205728Skaiw  { ISFUNC, rl_insert },		/* ^ */
141225839Smav  { ISFUNC, rl_insert },		/* _ */
142225839Smav  { ISFUNC, rl_insert },		/* ` */
143225839Smav
144225839Smav  /* Lowercase alphabet. */
145225839Smav  { ISFUNC, rl_insert },		/* a */
146225839Smav  { ISFUNC, rl_insert },		/* b */
147205728Skaiw  { ISFUNC, rl_insert },		/* c */
148205728Skaiw  { ISFUNC, rl_insert },		/* d */
149205728Skaiw  { ISFUNC, rl_insert },		/* e */
150205728Skaiw  { ISFUNC, rl_insert },		/* f */
151205728Skaiw  { ISFUNC, rl_insert },		/* g */
15261560Sn_hibma  { ISFUNC, rl_insert },		/* h */
153240762Smav  { ISFUNC, rl_insert },		/* i */
15461560Sn_hibma  { ISFUNC, rl_insert },		/* j */
15561560Sn_hibma  { ISFUNC, rl_insert },		/* k */
15661560Sn_hibma  { ISFUNC, rl_insert },		/* l */
15761560Sn_hibma  { ISFUNC, rl_insert },		/* m */
15861560Sn_hibma  { ISFUNC, rl_insert },		/* n */
15961560Sn_hibma  { ISFUNC, rl_insert },		/* o */
16061560Sn_hibma  { ISFUNC, rl_insert },		/* p */
16161560Sn_hibma  { ISFUNC, rl_insert },		/* q */
162240762Smav  { ISFUNC, rl_insert },		/* r */
16361560Sn_hibma  { ISFUNC, rl_insert },		/* s */
16461560Sn_hibma  { ISFUNC, rl_insert },		/* t */
16561560Sn_hibma  { ISFUNC, rl_insert },		/* u */
166205728Skaiw  { ISFUNC, rl_insert },		/* v */
167205728Skaiw  { ISFUNC, rl_insert },		/* w */
168205728Skaiw  { ISFUNC, rl_insert },		/* x */
16961560Sn_hibma  { ISFUNC, rl_insert },		/* y */
17061560Sn_hibma  { ISFUNC, rl_insert },		/* z */
17161560Sn_hibma
172205728Skaiw  /* Final punctuation. */
173205728Skaiw  { ISFUNC, rl_insert },		/* { */
174205728Skaiw  { ISFUNC, rl_insert },		/* | */
175205728Skaiw  { ISFUNC, rl_insert },		/* } */
17661560Sn_hibma  { ISFUNC, rl_insert },		/* ~ */
17761560Sn_hibma  { ISFUNC, rl_rubout },		/* RUBOUT */
17861560Sn_hibma
179205728Skaiw#if KEYMAP_SIZE > 128
180205728Skaiw  /* Pure 8-bit characters (128 - 159).
181205728Skaiw     These might be used in some
182205728Skaiw     character sets. */
183205728Skaiw  { ISFUNC, rl_insert },		/* ? */
18461560Sn_hibma  { ISFUNC, rl_insert },		/* ? */
185205728Skaiw  { ISFUNC, rl_insert },		/* ? */
186205728Skaiw  { ISFUNC, rl_insert },		/* ? */
187113273Smdodd  { ISFUNC, rl_insert },		/* ? */
188205728Skaiw  { ISFUNC, rl_insert },		/* ? */
189205728Skaiw  { ISFUNC, rl_insert },		/* ? */
190205728Skaiw  { ISFUNC, rl_insert },		/* ? */
191205728Skaiw  { ISFUNC, rl_insert },		/* ? */
192205728Skaiw  { ISFUNC, rl_insert },		/* ? */
193205728Skaiw  { ISFUNC, rl_insert },		/* ? */
194205728Skaiw  { ISFUNC, rl_insert },		/* ? */
195205728Skaiw  { ISFUNC, rl_insert },		/* ? */
196205728Skaiw  { ISFUNC, rl_insert },		/* ? */
197205728Skaiw  { ISFUNC, rl_insert },		/* ? */
198205728Skaiw  { ISFUNC, rl_insert },		/* ? */
199205728Skaiw  { ISFUNC, rl_insert },		/* ? */
200205728Skaiw  { ISFUNC, rl_insert },		/* ? */
201205728Skaiw  { ISFUNC, rl_insert },		/* ? */
202205728Skaiw  { ISFUNC, rl_insert },		/* ? */
203205728Skaiw  { ISFUNC, rl_insert },		/* ? */
204205728Skaiw  { ISFUNC, rl_insert },		/* ? */
205205728Skaiw  { ISFUNC, rl_insert },		/* ? */
206205728Skaiw  { ISFUNC, rl_insert },		/* ? */
207113273Smdodd  { ISFUNC, rl_insert },		/* ? */
208113273Smdodd  { ISFUNC, rl_insert },		/* ? */
209205728Skaiw  { ISFUNC, rl_insert },		/* ? */
210205728Skaiw  { ISFUNC, rl_insert },		/* ? */
211205728Skaiw  { ISFUNC, rl_insert },		/* ? */
212240762Smav  { ISFUNC, rl_insert },		/* ? */
213240762Smav  { ISFUNC, rl_insert },		/* ? */
214113273Smdodd  { ISFUNC, rl_insert },		/* ? */
21561560Sn_hibma
216205728Skaiw  /* ISO Latin-1 characters (160 - 255) */
217205728Skaiw  { ISFUNC, rl_insert },	/* No-break space */
218205728Skaiw  { ISFUNC, rl_insert },	/* Inverted exclamation mark */
21961560Sn_hibma  { ISFUNC, rl_insert },	/* Cent sign */
220205728Skaiw  { ISFUNC, rl_insert },	/* Pound sign */
221205728Skaiw  { ISFUNC, rl_insert },	/* Currency sign */
22261560Sn_hibma  { ISFUNC, rl_insert },	/* Yen sign */
223205728Skaiw  { ISFUNC, rl_insert },	/* Broken bar */
224205728Skaiw  { ISFUNC, rl_insert },	/* Section sign */
22561560Sn_hibma  { ISFUNC, rl_insert },	/* Diaeresis */
226205728Skaiw  { ISFUNC, rl_insert },	/* Copyright sign */
227205728Skaiw  { ISFUNC, rl_insert },	/* Feminine ordinal indicator */
228205728Skaiw  { ISFUNC, rl_insert },	/* Left pointing double angle quotation mark */
229205728Skaiw  { ISFUNC, rl_insert },	/* Not sign */
230205728Skaiw  { ISFUNC, rl_insert },	/* Soft hyphen */
231205728Skaiw  { ISFUNC, rl_insert },	/* Registered sign */
232205728Skaiw  { ISFUNC, rl_insert },	/* Macron */
233205728Skaiw  { ISFUNC, rl_insert },	/* Degree sign */
234205728Skaiw  { ISFUNC, rl_insert },	/* Plus-minus sign */
235205728Skaiw  { ISFUNC, rl_insert },	/* Superscript two */
236205728Skaiw  { ISFUNC, rl_insert },	/* Superscript three */
237205728Skaiw  { ISFUNC, rl_insert },	/* Acute accent */
238205728Skaiw  { ISFUNC, rl_insert },	/* Micro sign */
239205728Skaiw  { ISFUNC, rl_insert },	/* Pilcrow sign */
240205728Skaiw  { ISFUNC, rl_insert },	/* Middle dot */
241205728Skaiw  { ISFUNC, rl_insert },	/* Cedilla */
242113273Smdodd  { ISFUNC, rl_insert },	/* Superscript one */
243205728Skaiw  { ISFUNC, rl_insert },	/* Masculine ordinal indicator */
244205728Skaiw  { ISFUNC, rl_insert },	/* Right pointing double angle quotation mark */
245205728Skaiw  { ISFUNC, rl_insert },	/* Vulgar fraction one quarter */
246205728Skaiw  { ISFUNC, rl_insert },	/* Vulgar fraction one half */
247205728Skaiw  { ISFUNC, rl_insert },	/* Vulgar fraction three quarters */
248205728Skaiw  { ISFUNC, rl_insert },	/* Inverted questionk mark */
24961560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter a with grave */
250225839Smav  { ISFUNC, rl_insert },	/* Latin capital letter a with acute */
251225839Smav  { ISFUNC, rl_insert },	/* Latin capital letter a with circumflex */
25261560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter a with tilde */
25361560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter a with diaeresis */
25461560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter a with ring above */
25561560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter ae */
256205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter c with cedilla */
257205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter e with grave */
258205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter e with acute */
259205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter e with circumflex */
260205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter e with diaeresis */
261205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter i with grave */
262205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter i with acute */
263205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter i with circumflex */
264205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter i with diaeresis */
265205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter eth (Icelandic) */
266205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter n with tilde */
267205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter o with grave */
268205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter o with acute */
26961560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter o with circumflex */
27061560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter o with tilde */
271205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter o with diaeresis */
272205728Skaiw  { ISFUNC, rl_insert },	/* Multiplication sign */
273205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter o with stroke */
274205728Skaiw  { ISFUNC, rl_insert },	/* Latin capital letter u with grave */
27561560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter u with acute */
27661560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter u with circumflex */
27761560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter u with diaeresis */
27861560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter Y with acute */
27961560Sn_hibma  { ISFUNC, rl_insert },	/* Latin capital letter thorn (Icelandic) */
280205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter sharp s (German) */
281205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter a with grave */
28261560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter a with acute */
283205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter a with circumflex */
28461560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter a with tilde */
28561560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter a with diaeresis */
28661560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter a with ring above */
287205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter ae */
28861560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter c with cedilla */
28961560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter e with grave */
290205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter e with acute */
291205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter e with circumflex */
29261560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter e with diaeresis */
29361560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter i with grave */
294205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter i with acute */
295205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter i with circumflex */
296205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter i with diaeresis */
297205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter eth (Icelandic) */
29861560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter n with tilde */
29961560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter o with grave */
300205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter o with acute */
301205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter o with circumflex */
302205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter o with tilde */
303205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter o with diaeresis */
304205728Skaiw  { ISFUNC, rl_insert },	/* Division sign */
30561560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter o with stroke */
30661560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter u with grave */
307205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter u with acute */
308205728Skaiw  { ISFUNC, rl_insert },	/* Latin small letter u with circumflex */
30961560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter u with diaeresis */
31061560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter y with acute */
31161560Sn_hibma  { ISFUNC, rl_insert },	/* Latin small letter thorn (Icelandic) */
312205728Skaiw  { ISFUNC, rl_insert }		/* Latin small letter y with diaeresis */
31361560Sn_hibma#endif /* KEYMAP_SIZE > 128 */
314205728Skaiw};
315205728Skaiw
31661560Sn_hibmaKEYMAP_ENTRY_ARRAY emacs_meta_keymap = {
317205728Skaiw
318205728Skaiw  /* Meta keys.  Just like above, but the high bit is set. */
319205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-@ */
320205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-a */
32161560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-b */
322205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-c */
323205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-d */
324205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-e */
325205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-f */
326205728Skaiw  { ISFUNC, rl_abort },			/* Meta-Control-g */
327205728Skaiw  { ISFUNC, rl_backward_kill_word },	/* Meta-Control-h */
328205728Skaiw  { ISFUNC, rl_tab_insert },		/* Meta-Control-i */
329205728Skaiw  { ISFUNC, rl_vi_editing_mode },	/* Meta-Control-j */
330205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-k */
331205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-l */
33261560Sn_hibma  { ISFUNC, rl_vi_editing_mode }, 	/* Meta-Control-m */
333224511Smav  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-n */
334224511Smav  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-o */
33561560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-p */
336205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-q */
33761560Sn_hibma  { ISFUNC, rl_revert_line },		/* Meta-Control-r */
338205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-s */
339205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-t */
340205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-u */
341205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-v */
342205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-w */
34361560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-x */
34461560Sn_hibma  { ISFUNC, rl_yank_nth_arg },		/* Meta-Control-y */
34561560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-z */
34661560Sn_hibma
34761560Sn_hibma  { ISFUNC, rl_complete },		/* Meta-Control-[ */
348205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-\ */
349205728Skaiw  { ISFUNC, rl_backward_char_search },	/* Meta-Control-] */
350205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-^ */
35161560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-Control-_ */
352205728Skaiw
353205728Skaiw  /* The start of printing characters. */
35461560Sn_hibma  { ISFUNC, rl_set_mark },		/* Meta-SPACE */
35561560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-! */
35661560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-" */
357205728Skaiw  { ISFUNC, rl_insert_comment },	/* Meta-# */
358205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-$ */
359205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-% */
360205728Skaiw  { ISFUNC, rl_tilde_expand },		/* Meta-& */
36161560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-' */
36261560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-( */
36361560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-) */
36461560Sn_hibma  { ISFUNC, rl_insert_completions },	/* Meta-* */
365205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-+ */
36661560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-, */
367113273Smdodd  { ISFUNC, rl_digit_argument }, 	/* Meta-- */
36861560Sn_hibma  { ISFUNC, rl_yank_last_arg},		/* Meta-. */
36961560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-/ */
37061560Sn_hibma
37161560Sn_hibma  /* Regular digits. */
37261560Sn_hibma  { ISFUNC, rl_digit_argument }, 	/* Meta-0 */
37361560Sn_hibma  { ISFUNC, rl_digit_argument }, 	/* Meta-1 */
37461560Sn_hibma  { ISFUNC, rl_digit_argument }, 	/* Meta-2 */
37561560Sn_hibma  { ISFUNC, rl_digit_argument }, 	/* Meta-3 */
37661560Sn_hibma  { ISFUNC, rl_digit_argument }, 	/* Meta-4 */
37761560Sn_hibma  { ISFUNC, rl_digit_argument }, 	/* Meta-5 */
37861560Sn_hibma  { ISFUNC, rl_digit_argument }, 	/* Meta-6 */
37961560Sn_hibma  { ISFUNC, rl_digit_argument }, 	/* Meta-7 */
38061560Sn_hibma  { ISFUNC, rl_digit_argument }, 	/* Meta-8 */
381205728Skaiw  { ISFUNC, rl_digit_argument }, 	/* Meta-9 */
38261560Sn_hibma
38361560Sn_hibma  /* A little more punctuation. */
38461560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-: */
38561560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-; */
38661560Sn_hibma  { ISFUNC, rl_beginning_of_history },	/* Meta-< */
38761560Sn_hibma  { ISFUNC, rl_possible_completions },	/* Meta-= */
38861560Sn_hibma  { ISFUNC, rl_end_of_history },	/* Meta-> */
38961560Sn_hibma  { ISFUNC, rl_possible_completions },	/* Meta-? */
39061560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-@ */
39161560Sn_hibma
39261560Sn_hibma  /* Uppercase alphabet. */
393205728Skaiw  { ISFUNC, rl_do_lowercase_version },	/* Meta-A */
394205728Skaiw  { ISFUNC, rl_do_lowercase_version },	/* Meta-B */
39561560Sn_hibma  { ISFUNC, rl_do_lowercase_version },	/* Meta-C */
39661560Sn_hibma  { ISFUNC, rl_do_lowercase_version },	/* Meta-D */
397235510Smav  { ISFUNC, rl_do_lowercase_version },	/* Meta-E */
39861560Sn_hibma  { ISFUNC, rl_do_lowercase_version },	/* Meta-F */
39961560Sn_hibma  { ISFUNC, rl_do_lowercase_version },	/* Meta-G */
400205728Skaiw  { ISFUNC, rl_do_lowercase_version },	/* Meta-H */
401205728Skaiw  { ISFUNC, rl_do_lowercase_version },	/* Meta-I */
40261560Sn_hibma  { ISFUNC, rl_do_lowercase_version },	/* Meta-J */
403205728Skaiw  { ISFUNC, rl_do_lowercase_version },	/* Meta-K */
404361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-L */
405361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-M */
406361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-N */
407205728Skaiw  { ISFUNC, rl_do_lowercase_version },	/* Meta-O */
408361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-P */
409361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-Q */
410361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-R */
411361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-S */
412361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-T */
413361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-U */
41461560Sn_hibma  { ISFUNC, rl_do_lowercase_version },	/* Meta-V */
415205728Skaiw  { ISFUNC, rl_do_lowercase_version },	/* Meta-W */
416361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-X */
417361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-Y */
418361921Shselasky  { ISFUNC, rl_do_lowercase_version },	/* Meta-Z */
419205728Skaiw
420361921Shselasky  /* Some more punctuation. */
421361921Shselasky  { ISFUNC, (rl_command_func_t *)0x0 },		/* Meta-[ */	/* was rl_arrow_keys */
422361921Shselasky  { ISFUNC, rl_delete_horizontal_space },	/* Meta-\ */
423361921Shselasky  { ISFUNC, (rl_command_func_t *)0x0 },		/* Meta-] */
424361921Shselasky  { ISFUNC, (rl_command_func_t *)0x0 },		/* Meta-^ */
425361921Shselasky  { ISFUNC, rl_yank_last_arg },			/* Meta-_ */
42661560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },		/* Meta-` */
42761560Sn_hibma
428205728Skaiw  /* Lowercase alphabet. */
42961560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-a */
43061560Sn_hibma  { ISFUNC, rl_backward_word },		/* Meta-b */
43161560Sn_hibma  { ISFUNC, rl_capitalize_word }, 	/* Meta-c */
43261560Sn_hibma  { ISFUNC, rl_kill_word },		/* Meta-d */
43361560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-e */
434205728Skaiw  { ISFUNC, rl_forward_word },		/* Meta-f */
435205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-g */
436205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-h */
437205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-i */
438205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-j */
439205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-k */
440205728Skaiw  { ISFUNC, rl_downcase_word },		/* Meta-l */
441205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-m */
442205728Skaiw  { ISFUNC, rl_noninc_forward_search },	/* Meta-n */
443205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-o */	/* was rl_arrow_keys */
444205728Skaiw  { ISFUNC, rl_noninc_reverse_search },	/* Meta-p */
44561560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-q */
446205728Skaiw  { ISFUNC, rl_revert_line },		/* Meta-r */
447205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-s */
448205728Skaiw  { ISFUNC, rl_transpose_words }, 	/* Meta-t */
44961560Sn_hibma  { ISFUNC, rl_upcase_word },		/* Meta-u */
45061560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-v */
451205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-w */
452205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-x */
453205728Skaiw  { ISFUNC, rl_yank_pop },		/* Meta-y */
454205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-z */
455205728Skaiw
456205728Skaiw  /* Final punctuation. */
457205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-{ */
45861560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-| */
459205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },	/* Meta-} */
460205728Skaiw  { ISFUNC, rl_tilde_expand },		/* Meta-~ */
461205728Skaiw  { ISFUNC, rl_backward_kill_word },	/* Meta-rubout */
462205728Skaiw
463205728Skaiw#if KEYMAP_SIZE > 128
464205728Skaiw  /* Undefined keys. */
465205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
466205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
467205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
468205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
469205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
470205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
471205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
472205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
473205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
474205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
475205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
476205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
477205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
478205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
479205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
480205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
481205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
48261560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
48361560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
48461560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
48561560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
48661560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
48761560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
48861560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
48961560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
49061560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
49161560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
49261560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
49361560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
49461560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
49561560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
49661560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
49761560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
49861560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
49961560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
50061560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
50161560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
50261560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
50361560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
50461560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
505205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
50661560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
50761560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
50861560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
509205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
51061560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
51161560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
512205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
51361560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
51461560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
51561560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
516240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
517240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
518240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
519240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
520240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
521240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
522240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
523240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
524240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
525240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
526240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
527240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
528240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
529113273Smdodd  { ISFUNC, (rl_command_func_t *)0x0 },
53061560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
53161560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
532205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
533205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
534205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
535205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
536224511Smav  { ISFUNC, (rl_command_func_t *)0x0 },
53761560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
538205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
539205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
540205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
54161560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
542205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
543240762Smav  { ISFUNC, (rl_command_func_t *)0x0 },
544205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
545205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
546205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
547205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
548205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
549205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
550205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
551205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
552224511Smav  { ISFUNC, (rl_command_func_t *)0x0 },
553224511Smav  { ISFUNC, (rl_command_func_t *)0x0 },
55461560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
55561560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
55661560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
557205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
558205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
559205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
560205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
561205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
562205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
563205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
564205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
565224511Smav  { ISFUNC, (rl_command_func_t *)0x0 },
56661560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
56761560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
56861560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
569113273Smdodd  { ISFUNC, (rl_command_func_t *)0x0 },
570113273Smdodd  { ISFUNC, (rl_command_func_t *)0x0 },
57161560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
572205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
57361560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
574205728Skaiw  { ISFUNC, (rl_command_func_t *)0x0 },
57561560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
57661560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
57761560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
57861560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
57961560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
58061560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
58161560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
58261560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
58361560Sn_hibma  { ISFUNC, (rl_command_func_t *)0x0 },
584  { ISFUNC, (rl_command_func_t *)0x0 },
585  { ISFUNC, (rl_command_func_t *)0x0 },
586  { ISFUNC, (rl_command_func_t *)0x0 },
587  { ISFUNC, (rl_command_func_t *)0x0 },
588  { ISFUNC, (rl_command_func_t *)0x0 },
589  { ISFUNC, (rl_command_func_t *)0x0 },
590  { ISFUNC, (rl_command_func_t *)0x0 },
591  { ISFUNC, (rl_command_func_t *)0x0 },
592  { ISFUNC, (rl_command_func_t *)0x0 }
593#endif /* KEYMAP_SIZE > 128 */
594};
595
596KEYMAP_ENTRY_ARRAY emacs_ctlx_keymap = {
597
598  /* Control keys. */
599  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-@ */
600  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-a */
601  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-b */
602  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-c */
603  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-d */
604  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-e */
605  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-f */
606  { ISFUNC, rl_abort },				/* Control-g */
607  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-h */
608  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-i */
609  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-j */
610  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-k */
611  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-l */
612  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-m */
613  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-n */
614  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-o */
615  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-p */
616  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-q */
617  { ISFUNC, rl_re_read_init_file },		/* Control-r */
618  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-s */
619  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-t */
620  { ISFUNC, rl_undo_command },			/* Control-u */
621  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-v */
622  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-w */
623  { ISFUNC, rl_exchange_point_and_mark },	/* Control-x */
624  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-y */
625  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-z */
626  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-[ */
627  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-\ */
628  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-] */
629  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-^ */
630  { ISFUNC, (rl_command_func_t *)0x0 },		/* Control-_ */
631
632  /* The start of printing characters. */
633  { ISFUNC, (rl_command_func_t *)0x0 },		/* SPACE */
634  { ISFUNC, (rl_command_func_t *)0x0 },		/* ! */
635  { ISFUNC, (rl_command_func_t *)0x0 },		/* " */
636  { ISFUNC, (rl_command_func_t *)0x0 },		/* # */
637  { ISFUNC, (rl_command_func_t *)0x0 },		/* $ */
638  { ISFUNC, (rl_command_func_t *)0x0 },		/* % */
639  { ISFUNC, (rl_command_func_t *)0x0 },		/* & */
640  { ISFUNC, (rl_command_func_t *)0x0 },		/* ' */
641  { ISFUNC, rl_start_kbd_macro },		/* ( */
642  { ISFUNC, rl_end_kbd_macro  },		/* ) */
643  { ISFUNC, (rl_command_func_t *)0x0 },		/* * */
644  { ISFUNC, (rl_command_func_t *)0x0 },		/* + */
645  { ISFUNC, (rl_command_func_t *)0x0 },		/* , */
646  { ISFUNC, (rl_command_func_t *)0x0 },		/* - */
647  { ISFUNC, (rl_command_func_t *)0x0 },		/* . */
648  { ISFUNC, (rl_command_func_t *)0x0 },		/* / */
649
650  /* Regular digits. */
651  { ISFUNC, (rl_command_func_t *)0x0 },		/* 0 */
652  { ISFUNC, (rl_command_func_t *)0x0 },		/* 1 */
653  { ISFUNC, (rl_command_func_t *)0x0 },		/* 2 */
654  { ISFUNC, (rl_command_func_t *)0x0 },		/* 3 */
655  { ISFUNC, (rl_command_func_t *)0x0 },		/* 4 */
656  { ISFUNC, (rl_command_func_t *)0x0 },		/* 5 */
657  { ISFUNC, (rl_command_func_t *)0x0 },		/* 6 */
658  { ISFUNC, (rl_command_func_t *)0x0 },		/* 7 */
659  { ISFUNC, (rl_command_func_t *)0x0 },		/* 8 */
660  { ISFUNC, (rl_command_func_t *)0x0 },		/* 9 */
661
662  /* A little more punctuation. */
663  { ISFUNC, (rl_command_func_t *)0x0 },		/* : */
664  { ISFUNC, (rl_command_func_t *)0x0 },		/* ; */
665  { ISFUNC, (rl_command_func_t *)0x0 },		/* < */
666  { ISFUNC, (rl_command_func_t *)0x0 },		/* = */
667  { ISFUNC, (rl_command_func_t *)0x0 },		/* > */
668  { ISFUNC, (rl_command_func_t *)0x0 },		/* ? */
669  { ISFUNC, (rl_command_func_t *)0x0 },		/* @ */
670
671  /* Uppercase alphabet. */
672  { ISFUNC, rl_do_lowercase_version },		/* A */
673  { ISFUNC, rl_do_lowercase_version },		/* B */
674  { ISFUNC, rl_do_lowercase_version },		/* C */
675  { ISFUNC, rl_do_lowercase_version },		/* D */
676  { ISFUNC, rl_do_lowercase_version },		/* E */
677  { ISFUNC, rl_do_lowercase_version },		/* F */
678  { ISFUNC, rl_do_lowercase_version },		/* G */
679  { ISFUNC, rl_do_lowercase_version },		/* H */
680  { ISFUNC, rl_do_lowercase_version },		/* I */
681  { ISFUNC, rl_do_lowercase_version },		/* J */
682  { ISFUNC, rl_do_lowercase_version },		/* K */
683  { ISFUNC, rl_do_lowercase_version },		/* L */
684  { ISFUNC, rl_do_lowercase_version },		/* M */
685  { ISFUNC, rl_do_lowercase_version },		/* N */
686  { ISFUNC, rl_do_lowercase_version },		/* O */
687  { ISFUNC, rl_do_lowercase_version },		/* P */
688  { ISFUNC, rl_do_lowercase_version },		/* Q */
689  { ISFUNC, rl_do_lowercase_version },		/* R */
690  { ISFUNC, rl_do_lowercase_version },		/* S */
691  { ISFUNC, rl_do_lowercase_version },		/* T */
692  { ISFUNC, rl_do_lowercase_version },		/* U */
693  { ISFUNC, rl_do_lowercase_version },		/* V */
694  { ISFUNC, rl_do_lowercase_version },		/* W */
695  { ISFUNC, rl_do_lowercase_version },		/* X */
696  { ISFUNC, rl_do_lowercase_version },		/* Y */
697  { ISFUNC, rl_do_lowercase_version },		/* Z */
698
699  /* Some more punctuation. */
700  { ISFUNC, (rl_command_func_t *)0x0 },		/* [ */
701  { ISFUNC, (rl_command_func_t *)0x0 },		/* \ */
702  { ISFUNC, (rl_command_func_t *)0x0 },		/* ] */
703  { ISFUNC, (rl_command_func_t *)0x0 },		/* ^ */
704  { ISFUNC, (rl_command_func_t *)0x0 },		/* _ */
705  { ISFUNC, (rl_command_func_t *)0x0 },		/* ` */
706
707  /* Lowercase alphabet. */
708  { ISFUNC, (rl_command_func_t *)0x0 },		/* a */
709  { ISFUNC, (rl_command_func_t *)0x0 },		/* b */
710  { ISFUNC, (rl_command_func_t *)0x0 },		/* c */
711  { ISFUNC, (rl_command_func_t *)0x0 },		/* d */
712  { ISFUNC, rl_call_last_kbd_macro },		/* e */
713  { ISFUNC, (rl_command_func_t *)0x0 },		/* f */
714  { ISFUNC, (rl_command_func_t *)0x0 },		/* g */
715  { ISFUNC, (rl_command_func_t *)0x0 },		/* h */
716  { ISFUNC, (rl_command_func_t *)0x0 },		/* i */
717  { ISFUNC, (rl_command_func_t *)0x0 },		/* j */
718  { ISFUNC, (rl_command_func_t *)0x0 },		/* k */
719  { ISFUNC, (rl_command_func_t *)0x0 },		/* l */
720  { ISFUNC, (rl_command_func_t *)0x0 },		/* m */
721  { ISFUNC, (rl_command_func_t *)0x0 },		/* n */
722  { ISFUNC, (rl_command_func_t *)0x0 },		/* o */
723  { ISFUNC, (rl_command_func_t *)0x0 },		/* p */
724  { ISFUNC, (rl_command_func_t *)0x0 },		/* q */
725  { ISFUNC, (rl_command_func_t *)0x0 },		/* r */
726  { ISFUNC, (rl_command_func_t *)0x0 },		/* s */
727  { ISFUNC, (rl_command_func_t *)0x0 },		/* t */
728  { ISFUNC, (rl_command_func_t *)0x0 },		/* u */
729  { ISFUNC, (rl_command_func_t *)0x0 },		/* v */
730  { ISFUNC, (rl_command_func_t *)0x0 },		/* w */
731  { ISFUNC, (rl_command_func_t *)0x0 },		/* x */
732  { ISFUNC, (rl_command_func_t *)0x0 },		/* y */
733  { ISFUNC, (rl_command_func_t *)0x0 },		/* z */
734
735  /* Final punctuation. */
736  { ISFUNC, (rl_command_func_t *)0x0 },		/* { */
737  { ISFUNC, (rl_command_func_t *)0x0 },		/* | */
738  { ISFUNC, (rl_command_func_t *)0x0 },		/* } */
739  { ISFUNC, (rl_command_func_t *)0x0 },		/* ~ */
740  { ISFUNC, rl_backward_kill_line },		/* RUBOUT */
741
742#if KEYMAP_SIZE > 128
743  /* Undefined keys. */
744  { ISFUNC, (rl_command_func_t *)0x0 },
745  { ISFUNC, (rl_command_func_t *)0x0 },
746  { ISFUNC, (rl_command_func_t *)0x0 },
747  { ISFUNC, (rl_command_func_t *)0x0 },
748  { ISFUNC, (rl_command_func_t *)0x0 },
749  { ISFUNC, (rl_command_func_t *)0x0 },
750  { ISFUNC, (rl_command_func_t *)0x0 },
751  { ISFUNC, (rl_command_func_t *)0x0 },
752  { ISFUNC, (rl_command_func_t *)0x0 },
753  { ISFUNC, (rl_command_func_t *)0x0 },
754  { ISFUNC, (rl_command_func_t *)0x0 },
755  { ISFUNC, (rl_command_func_t *)0x0 },
756  { ISFUNC, (rl_command_func_t *)0x0 },
757  { ISFUNC, (rl_command_func_t *)0x0 },
758  { ISFUNC, (rl_command_func_t *)0x0 },
759  { ISFUNC, (rl_command_func_t *)0x0 },
760  { ISFUNC, (rl_command_func_t *)0x0 },
761  { ISFUNC, (rl_command_func_t *)0x0 },
762  { ISFUNC, (rl_command_func_t *)0x0 },
763  { ISFUNC, (rl_command_func_t *)0x0 },
764  { ISFUNC, (rl_command_func_t *)0x0 },
765  { ISFUNC, (rl_command_func_t *)0x0 },
766  { ISFUNC, (rl_command_func_t *)0x0 },
767  { ISFUNC, (rl_command_func_t *)0x0 },
768  { ISFUNC, (rl_command_func_t *)0x0 },
769  { ISFUNC, (rl_command_func_t *)0x0 },
770  { ISFUNC, (rl_command_func_t *)0x0 },
771  { ISFUNC, (rl_command_func_t *)0x0 },
772  { ISFUNC, (rl_command_func_t *)0x0 },
773  { ISFUNC, (rl_command_func_t *)0x0 },
774  { ISFUNC, (rl_command_func_t *)0x0 },
775  { ISFUNC, (rl_command_func_t *)0x0 },
776  { ISFUNC, (rl_command_func_t *)0x0 },
777  { ISFUNC, (rl_command_func_t *)0x0 },
778  { ISFUNC, (rl_command_func_t *)0x0 },
779  { ISFUNC, (rl_command_func_t *)0x0 },
780  { ISFUNC, (rl_command_func_t *)0x0 },
781  { ISFUNC, (rl_command_func_t *)0x0 },
782  { ISFUNC, (rl_command_func_t *)0x0 },
783  { ISFUNC, (rl_command_func_t *)0x0 },
784  { ISFUNC, (rl_command_func_t *)0x0 },
785  { ISFUNC, (rl_command_func_t *)0x0 },
786  { ISFUNC, (rl_command_func_t *)0x0 },
787  { ISFUNC, (rl_command_func_t *)0x0 },
788  { ISFUNC, (rl_command_func_t *)0x0 },
789  { ISFUNC, (rl_command_func_t *)0x0 },
790  { ISFUNC, (rl_command_func_t *)0x0 },
791  { ISFUNC, (rl_command_func_t *)0x0 },
792  { ISFUNC, (rl_command_func_t *)0x0 },
793  { ISFUNC, (rl_command_func_t *)0x0 },
794  { ISFUNC, (rl_command_func_t *)0x0 },
795  { ISFUNC, (rl_command_func_t *)0x0 },
796  { ISFUNC, (rl_command_func_t *)0x0 },
797  { ISFUNC, (rl_command_func_t *)0x0 },
798  { ISFUNC, (rl_command_func_t *)0x0 },
799  { ISFUNC, (rl_command_func_t *)0x0 },
800  { ISFUNC, (rl_command_func_t *)0x0 },
801  { ISFUNC, (rl_command_func_t *)0x0 },
802  { ISFUNC, (rl_command_func_t *)0x0 },
803  { ISFUNC, (rl_command_func_t *)0x0 },
804  { ISFUNC, (rl_command_func_t *)0x0 },
805  { ISFUNC, (rl_command_func_t *)0x0 },
806  { ISFUNC, (rl_command_func_t *)0x0 },
807  { ISFUNC, (rl_command_func_t *)0x0 },
808  { ISFUNC, (rl_command_func_t *)0x0 },
809  { ISFUNC, (rl_command_func_t *)0x0 },
810  { ISFUNC, (rl_command_func_t *)0x0 },
811  { ISFUNC, (rl_command_func_t *)0x0 },
812  { ISFUNC, (rl_command_func_t *)0x0 },
813  { ISFUNC, (rl_command_func_t *)0x0 },
814  { ISFUNC, (rl_command_func_t *)0x0 },
815  { ISFUNC, (rl_command_func_t *)0x0 },
816  { ISFUNC, (rl_command_func_t *)0x0 },
817  { ISFUNC, (rl_command_func_t *)0x0 },
818  { ISFUNC, (rl_command_func_t *)0x0 },
819  { ISFUNC, (rl_command_func_t *)0x0 },
820  { ISFUNC, (rl_command_func_t *)0x0 },
821  { ISFUNC, (rl_command_func_t *)0x0 },
822  { ISFUNC, (rl_command_func_t *)0x0 },
823  { ISFUNC, (rl_command_func_t *)0x0 },
824  { ISFUNC, (rl_command_func_t *)0x0 },
825  { ISFUNC, (rl_command_func_t *)0x0 },
826  { ISFUNC, (rl_command_func_t *)0x0 },
827  { ISFUNC, (rl_command_func_t *)0x0 },
828  { ISFUNC, (rl_command_func_t *)0x0 },
829  { ISFUNC, (rl_command_func_t *)0x0 },
830  { ISFUNC, (rl_command_func_t *)0x0 },
831  { ISFUNC, (rl_command_func_t *)0x0 },
832  { ISFUNC, (rl_command_func_t *)0x0 },
833  { ISFUNC, (rl_command_func_t *)0x0 },
834  { ISFUNC, (rl_command_func_t *)0x0 },
835  { ISFUNC, (rl_command_func_t *)0x0 },
836  { ISFUNC, (rl_command_func_t *)0x0 },
837  { ISFUNC, (rl_command_func_t *)0x0 },
838  { ISFUNC, (rl_command_func_t *)0x0 },
839  { ISFUNC, (rl_command_func_t *)0x0 },
840  { ISFUNC, (rl_command_func_t *)0x0 },
841  { ISFUNC, (rl_command_func_t *)0x0 },
842  { ISFUNC, (rl_command_func_t *)0x0 },
843  { ISFUNC, (rl_command_func_t *)0x0 },
844  { ISFUNC, (rl_command_func_t *)0x0 },
845  { ISFUNC, (rl_command_func_t *)0x0 },
846  { ISFUNC, (rl_command_func_t *)0x0 },
847  { ISFUNC, (rl_command_func_t *)0x0 },
848  { ISFUNC, (rl_command_func_t *)0x0 },
849  { ISFUNC, (rl_command_func_t *)0x0 },
850  { ISFUNC, (rl_command_func_t *)0x0 },
851  { ISFUNC, (rl_command_func_t *)0x0 },
852  { ISFUNC, (rl_command_func_t *)0x0 },
853  { ISFUNC, (rl_command_func_t *)0x0 },
854  { ISFUNC, (rl_command_func_t *)0x0 },
855  { ISFUNC, (rl_command_func_t *)0x0 },
856  { ISFUNC, (rl_command_func_t *)0x0 },
857  { ISFUNC, (rl_command_func_t *)0x0 },
858  { ISFUNC, (rl_command_func_t *)0x0 },
859  { ISFUNC, (rl_command_func_t *)0x0 },
860  { ISFUNC, (rl_command_func_t *)0x0 },
861  { ISFUNC, (rl_command_func_t *)0x0 },
862  { ISFUNC, (rl_command_func_t *)0x0 },
863  { ISFUNC, (rl_command_func_t *)0x0 },
864  { ISFUNC, (rl_command_func_t *)0x0 },
865  { ISFUNC, (rl_command_func_t *)0x0 },
866  { ISFUNC, (rl_command_func_t *)0x0 },
867  { ISFUNC, (rl_command_func_t *)0x0 },
868  { ISFUNC, (rl_command_func_t *)0x0 },
869  { ISFUNC, (rl_command_func_t *)0x0 },
870  { ISFUNC, (rl_command_func_t *)0x0 },
871  { ISFUNC, (rl_command_func_t *)0x0 }
872#endif /* KEYMAP_SIZE > 128 */
873};
874