121308Sache/* vi_keymap.c -- the keymap for vi_mode in readline (). */ 221308Sache 321308Sache/* Copyright (C) 1987, 1989, 1992 Free Software Foundation, Inc. 421308Sache 521308Sache This file is part of the GNU Readline Library, a library for 621308Sache reading lines of text with interactive input and history editing. 721308Sache 821308Sache The GNU Readline Library is free software; you can redistribute it 921308Sache and/or modify it under the terms of the GNU General Public License 1058310Sache as published by the Free Software Foundation; either version 2, or 1121308Sache (at your option) any later version. 1221308Sache 1321308Sache The GNU Readline Library is distributed in the hope that it will be 1421308Sache useful, but WITHOUT ANY WARRANTY; without even the implied warranty 1521308Sache of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1621308Sache GNU General Public License for more details. 1721308Sache 1821308Sache The GNU General Public License is often shipped with GNU software, and 1921308Sache is generally kept in a file called COPYING or LICENSE. If you do not 2021308Sache have a copy of the license, write to the Free Software Foundation, 2158310Sache 59 Temple Place, Suite 330, Boston, MA 02111 USA. */ 2221308Sache 2321308Sache#if !defined (BUFSIZ) 2421308Sache#include <stdio.h> 2521308Sache#endif /* !BUFSIZ */ 2621308Sache 2721308Sache#include "readline.h" 2821308Sache 2921308Sache#if 0 3021308Sacheextern KEYMAP_ENTRY_ARRAY vi_escape_keymap; 3121308Sache#endif 3221308Sache 3321308Sache/* The keymap arrays for handling vi mode. */ 3421308SacheKEYMAP_ENTRY_ARRAY vi_movement_keymap = { 3521308Sache /* The regular control keys come first. */ 3675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-@ */ 3775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-a */ 3875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-b */ 3975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-c */ 4075406Sache { ISFUNC, rl_vi_eof_maybe }, /* Control-d */ 4175406Sache { ISFUNC, rl_emacs_editing_mode }, /* Control-e */ 4275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-f */ 4375406Sache { ISFUNC, rl_abort }, /* Control-g */ 44119610Sache { ISFUNC, rl_backward_char }, /* Control-h */ 4575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-i */ 4675406Sache { ISFUNC, rl_newline }, /* Control-j */ 4775406Sache { ISFUNC, rl_kill_line }, /* Control-k */ 4875406Sache { ISFUNC, rl_clear_screen }, /* Control-l */ 4975406Sache { ISFUNC, rl_newline }, /* Control-m */ 5075406Sache { ISFUNC, rl_get_next_history }, /* Control-n */ 5175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-o */ 5275406Sache { ISFUNC, rl_get_previous_history }, /* Control-p */ 5375406Sache { ISFUNC, rl_quoted_insert }, /* Control-q */ 5475406Sache { ISFUNC, rl_reverse_search_history }, /* Control-r */ 5575406Sache { ISFUNC, rl_forward_search_history }, /* Control-s */ 5675406Sache { ISFUNC, rl_transpose_chars }, /* Control-t */ 5775406Sache { ISFUNC, rl_unix_line_discard }, /* Control-u */ 5875406Sache { ISFUNC, rl_quoted_insert }, /* Control-v */ 5975406Sache { ISFUNC, rl_unix_word_rubout }, /* Control-w */ 6075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-x */ 6175406Sache { ISFUNC, rl_yank }, /* Control-y */ 6275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-z */ 6321308Sache 6475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-[ */ /* vi_escape_keymap */ 6575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-\ */ 6675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-] */ 6775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-^ */ 6875406Sache { ISFUNC, rl_vi_undo }, /* Control-_ */ 6921308Sache 7021308Sache /* The start of printing characters. */ 71119610Sache { ISFUNC, rl_forward_char }, /* SPACE */ 7275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ! */ 7375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* " */ 7475406Sache { ISFUNC, rl_insert_comment }, /* # */ 7575406Sache { ISFUNC, rl_end_of_line }, /* $ */ 7675406Sache { ISFUNC, rl_vi_match }, /* % */ 7775406Sache { ISFUNC, rl_vi_tilde_expand }, /* & */ 7875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ' */ 7975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ( */ 8075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ) */ 8175406Sache { ISFUNC, rl_vi_complete }, /* * */ 8275406Sache { ISFUNC, rl_get_next_history}, /* + */ 8375406Sache { ISFUNC, rl_vi_char_search }, /* , */ 8475406Sache { ISFUNC, rl_get_previous_history }, /* - */ 8575406Sache { ISFUNC, rl_vi_redo }, /* . */ 8675406Sache { ISFUNC, rl_vi_search }, /* / */ 8721308Sache 8821308Sache /* Regular digits. */ 8975406Sache { ISFUNC, rl_beg_of_line }, /* 0 */ 9075406Sache { ISFUNC, rl_vi_arg_digit }, /* 1 */ 9175406Sache { ISFUNC, rl_vi_arg_digit }, /* 2 */ 9275406Sache { ISFUNC, rl_vi_arg_digit }, /* 3 */ 9375406Sache { ISFUNC, rl_vi_arg_digit }, /* 4 */ 9475406Sache { ISFUNC, rl_vi_arg_digit }, /* 5 */ 9575406Sache { ISFUNC, rl_vi_arg_digit }, /* 6 */ 9675406Sache { ISFUNC, rl_vi_arg_digit }, /* 7 */ 9775406Sache { ISFUNC, rl_vi_arg_digit }, /* 8 */ 9875406Sache { ISFUNC, rl_vi_arg_digit }, /* 9 */ 9921308Sache 10021308Sache /* A little more punctuation. */ 10175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* : */ 10275406Sache { ISFUNC, rl_vi_char_search }, /* ; */ 10375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* < */ 10475406Sache { ISFUNC, rl_vi_complete }, /* = */ 10575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* > */ 10675406Sache { ISFUNC, rl_vi_search }, /* ? */ 10775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* @ */ 10821308Sache 10921308Sache /* Uppercase alphabet. */ 11075406Sache { ISFUNC, rl_vi_append_eol }, /* A */ 11175406Sache { ISFUNC, rl_vi_prev_word}, /* B */ 11275406Sache { ISFUNC, rl_vi_change_to }, /* C */ 11375406Sache { ISFUNC, rl_vi_delete_to }, /* D */ 11475406Sache { ISFUNC, rl_vi_end_word }, /* E */ 11575406Sache { ISFUNC, rl_vi_char_search }, /* F */ 11675406Sache { ISFUNC, rl_vi_fetch_history }, /* G */ 11775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* H */ 11875406Sache { ISFUNC, rl_vi_insert_beg }, /* I */ 11975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* J */ 12075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* K */ 12175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* L */ 12275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* M */ 12375406Sache { ISFUNC, rl_vi_search_again }, /* N */ 12475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* O */ 12575406Sache { ISFUNC, rl_vi_put }, /* P */ 12675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Q */ 12775406Sache { ISFUNC, rl_vi_replace }, /* R */ 12875406Sache { ISFUNC, rl_vi_subst }, /* S */ 12975406Sache { ISFUNC, rl_vi_char_search }, /* T */ 13075406Sache { ISFUNC, rl_revert_line }, /* U */ 13175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* V */ 13275406Sache { ISFUNC, rl_vi_next_word }, /* W */ 133157184Sache { ISFUNC, rl_vi_rubout }, /* X */ 13475406Sache { ISFUNC, rl_vi_yank_to }, /* Y */ 13575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Z */ 13621308Sache 13721308Sache /* Some more punctuation. */ 13875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* [ */ 13975406Sache { ISFUNC, rl_vi_complete }, /* \ */ 14075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ] */ 14175406Sache { ISFUNC, rl_vi_first_print }, /* ^ */ 14275406Sache { ISFUNC, rl_vi_yank_arg }, /* _ */ 14375406Sache { ISFUNC, rl_vi_goto_mark }, /* ` */ 14421308Sache 14521308Sache /* Lowercase alphabet. */ 14675406Sache { ISFUNC, rl_vi_append_mode }, /* a */ 14775406Sache { ISFUNC, rl_vi_prev_word }, /* b */ 14875406Sache { ISFUNC, rl_vi_change_to }, /* c */ 14975406Sache { ISFUNC, rl_vi_delete_to }, /* d */ 15075406Sache { ISFUNC, rl_vi_end_word }, /* e */ 15175406Sache { ISFUNC, rl_vi_char_search }, /* f */ 15275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* g */ 153119610Sache { ISFUNC, rl_backward_char }, /* h */ 15475406Sache { ISFUNC, rl_vi_insertion_mode }, /* i */ 15575406Sache { ISFUNC, rl_get_next_history }, /* j */ 15675406Sache { ISFUNC, rl_get_previous_history }, /* k */ 157119610Sache { ISFUNC, rl_forward_char }, /* l */ 15875406Sache { ISFUNC, rl_vi_set_mark }, /* m */ 15975406Sache { ISFUNC, rl_vi_search_again }, /* n */ 16075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* o */ 16175406Sache { ISFUNC, rl_vi_put }, /* p */ 16275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* q */ 16375406Sache { ISFUNC, rl_vi_change_char }, /* r */ 16475406Sache { ISFUNC, rl_vi_subst }, /* s */ 16575406Sache { ISFUNC, rl_vi_char_search }, /* t */ 16675406Sache { ISFUNC, rl_vi_undo }, /* u */ 16775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* v */ 16875406Sache { ISFUNC, rl_vi_next_word }, /* w */ 16975406Sache { ISFUNC, rl_vi_delete }, /* x */ 17075406Sache { ISFUNC, rl_vi_yank_to }, /* y */ 17175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* z */ 17221308Sache 17321308Sache /* Final punctuation. */ 17475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* { */ 17575406Sache { ISFUNC, rl_vi_column }, /* | */ 17675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* } */ 17775406Sache { ISFUNC, rl_vi_change_case }, /* ~ */ 17875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* RUBOUT */ 17921308Sache 18021308Sache#if KEYMAP_SIZE > 128 18121308Sache /* Undefined keys. */ 18275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 18375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 18475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 18575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 18675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 18775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 18875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 18975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 19075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 19175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 19275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 19375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 19475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 19575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 19675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 19775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 19875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 19975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 20075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 20175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 20275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 20375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 20475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 20575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 20675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 20775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 20875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 20975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 21075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 21175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 21275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 21375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 21475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 21575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 21675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 21775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 21875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 21975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 22075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 22175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 22275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 22375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 22475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 22575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 22675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 22775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 22875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 22975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 23075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 23175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 23275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 23375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 23475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 23575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 23675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 23775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 23875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 23975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 24075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 24175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 24275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 24375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 24475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 24575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 24675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 24775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 24875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 24975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 25075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 25175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 25275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 25375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 25475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 25575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 25675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 25775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 25875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 25975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 26075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 26175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 26275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 26375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 26475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 26575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 26675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 26775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 26875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 26975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 27075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 27175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 27275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 27375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 27475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 27575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 27675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 27775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 27875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 27975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 28075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 28175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 28275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 28375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 28475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 28575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 28675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 28775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 28875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 28975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 29075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 29175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 29275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 29375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 29475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 29575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 29675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 29775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 29875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 29975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 30075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 30175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 30275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 30375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 30475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 30575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 30675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 30775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 30875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 30975406Sache { ISFUNC, (rl_command_func_t *)0x0 } 31021308Sache#endif /* KEYMAP_SIZE > 128 */ 31121308Sache}; 31221308Sache 31321308Sache 31421308SacheKEYMAP_ENTRY_ARRAY vi_insertion_keymap = { 31521308Sache /* The regular control keys come first. */ 31675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-@ */ 31775406Sache { ISFUNC, rl_insert }, /* Control-a */ 31875406Sache { ISFUNC, rl_insert }, /* Control-b */ 31975406Sache { ISFUNC, rl_insert }, /* Control-c */ 32075406Sache { ISFUNC, rl_vi_eof_maybe }, /* Control-d */ 32175406Sache { ISFUNC, rl_insert }, /* Control-e */ 32275406Sache { ISFUNC, rl_insert }, /* Control-f */ 32375406Sache { ISFUNC, rl_insert }, /* Control-g */ 32475406Sache { ISFUNC, rl_rubout }, /* Control-h */ 32575406Sache { ISFUNC, rl_complete }, /* Control-i */ 32675406Sache { ISFUNC, rl_newline }, /* Control-j */ 32775406Sache { ISFUNC, rl_insert }, /* Control-k */ 32875406Sache { ISFUNC, rl_insert }, /* Control-l */ 32975406Sache { ISFUNC, rl_newline }, /* Control-m */ 33075406Sache { ISFUNC, rl_insert }, /* Control-n */ 33175406Sache { ISFUNC, rl_insert }, /* Control-o */ 33275406Sache { ISFUNC, rl_insert }, /* Control-p */ 33375406Sache { ISFUNC, rl_insert }, /* Control-q */ 33475406Sache { ISFUNC, rl_reverse_search_history }, /* Control-r */ 33575406Sache { ISFUNC, rl_forward_search_history }, /* Control-s */ 33675406Sache { ISFUNC, rl_transpose_chars }, /* Control-t */ 33775406Sache { ISFUNC, rl_unix_line_discard }, /* Control-u */ 33875406Sache { ISFUNC, rl_quoted_insert }, /* Control-v */ 33975406Sache { ISFUNC, rl_unix_word_rubout }, /* Control-w */ 34075406Sache { ISFUNC, rl_insert }, /* Control-x */ 34175406Sache { ISFUNC, rl_yank }, /* Control-y */ 34275406Sache { ISFUNC, rl_insert }, /* Control-z */ 34321308Sache 34475406Sache { ISFUNC, rl_vi_movement_mode }, /* Control-[ */ 34575406Sache { ISFUNC, rl_insert }, /* Control-\ */ 34675406Sache { ISFUNC, rl_insert }, /* Control-] */ 34775406Sache { ISFUNC, rl_insert }, /* Control-^ */ 34875406Sache { ISFUNC, rl_vi_undo }, /* Control-_ */ 34921308Sache 35021308Sache /* The start of printing characters. */ 35175406Sache { ISFUNC, rl_insert }, /* SPACE */ 35275406Sache { ISFUNC, rl_insert }, /* ! */ 35375406Sache { ISFUNC, rl_insert }, /* " */ 35475406Sache { ISFUNC, rl_insert }, /* # */ 35575406Sache { ISFUNC, rl_insert }, /* $ */ 35675406Sache { ISFUNC, rl_insert }, /* % */ 35775406Sache { ISFUNC, rl_insert }, /* & */ 35875406Sache { ISFUNC, rl_insert }, /* ' */ 35975406Sache { ISFUNC, rl_insert }, /* ( */ 36075406Sache { ISFUNC, rl_insert }, /* ) */ 36175406Sache { ISFUNC, rl_insert }, /* * */ 36275406Sache { ISFUNC, rl_insert }, /* + */ 36375406Sache { ISFUNC, rl_insert }, /* , */ 36475406Sache { ISFUNC, rl_insert }, /* - */ 36575406Sache { ISFUNC, rl_insert }, /* . */ 36675406Sache { ISFUNC, rl_insert }, /* / */ 36721308Sache 36821308Sache /* Regular digits. */ 36975406Sache { ISFUNC, rl_insert }, /* 0 */ 37075406Sache { ISFUNC, rl_insert }, /* 1 */ 37175406Sache { ISFUNC, rl_insert }, /* 2 */ 37275406Sache { ISFUNC, rl_insert }, /* 3 */ 37375406Sache { ISFUNC, rl_insert }, /* 4 */ 37475406Sache { ISFUNC, rl_insert }, /* 5 */ 37575406Sache { ISFUNC, rl_insert }, /* 6 */ 37675406Sache { ISFUNC, rl_insert }, /* 7 */ 37775406Sache { ISFUNC, rl_insert }, /* 8 */ 37875406Sache { ISFUNC, rl_insert }, /* 9 */ 37921308Sache 38021308Sache /* A little more punctuation. */ 38175406Sache { ISFUNC, rl_insert }, /* : */ 38275406Sache { ISFUNC, rl_insert }, /* ; */ 38375406Sache { ISFUNC, rl_insert }, /* < */ 38475406Sache { ISFUNC, rl_insert }, /* = */ 38575406Sache { ISFUNC, rl_insert }, /* > */ 38675406Sache { ISFUNC, rl_insert }, /* ? */ 38775406Sache { ISFUNC, rl_insert }, /* @ */ 38821308Sache 38921308Sache /* Uppercase alphabet. */ 39075406Sache { ISFUNC, rl_insert }, /* A */ 39175406Sache { ISFUNC, rl_insert }, /* B */ 39275406Sache { ISFUNC, rl_insert }, /* C */ 39375406Sache { ISFUNC, rl_insert }, /* D */ 39475406Sache { ISFUNC, rl_insert }, /* E */ 39575406Sache { ISFUNC, rl_insert }, /* F */ 39675406Sache { ISFUNC, rl_insert }, /* G */ 39775406Sache { ISFUNC, rl_insert }, /* H */ 39875406Sache { ISFUNC, rl_insert }, /* I */ 39975406Sache { ISFUNC, rl_insert }, /* J */ 40075406Sache { ISFUNC, rl_insert }, /* K */ 40175406Sache { ISFUNC, rl_insert }, /* L */ 40275406Sache { ISFUNC, rl_insert }, /* M */ 40375406Sache { ISFUNC, rl_insert }, /* N */ 40475406Sache { ISFUNC, rl_insert }, /* O */ 40575406Sache { ISFUNC, rl_insert }, /* P */ 40675406Sache { ISFUNC, rl_insert }, /* Q */ 40775406Sache { ISFUNC, rl_insert }, /* R */ 40875406Sache { ISFUNC, rl_insert }, /* S */ 40975406Sache { ISFUNC, rl_insert }, /* T */ 41075406Sache { ISFUNC, rl_insert }, /* U */ 41175406Sache { ISFUNC, rl_insert }, /* V */ 41275406Sache { ISFUNC, rl_insert }, /* W */ 41375406Sache { ISFUNC, rl_insert }, /* X */ 41475406Sache { ISFUNC, rl_insert }, /* Y */ 41575406Sache { ISFUNC, rl_insert }, /* Z */ 41621308Sache 41721308Sache /* Some more punctuation. */ 41875406Sache { ISFUNC, rl_insert }, /* [ */ 41975406Sache { ISFUNC, rl_insert }, /* \ */ 42075406Sache { ISFUNC, rl_insert }, /* ] */ 42175406Sache { ISFUNC, rl_insert }, /* ^ */ 42275406Sache { ISFUNC, rl_insert }, /* _ */ 42375406Sache { ISFUNC, rl_insert }, /* ` */ 42421308Sache 42521308Sache /* Lowercase alphabet. */ 42675406Sache { ISFUNC, rl_insert }, /* a */ 42775406Sache { ISFUNC, rl_insert }, /* b */ 42875406Sache { ISFUNC, rl_insert }, /* c */ 42975406Sache { ISFUNC, rl_insert }, /* d */ 43075406Sache { ISFUNC, rl_insert }, /* e */ 43175406Sache { ISFUNC, rl_insert }, /* f */ 43275406Sache { ISFUNC, rl_insert }, /* g */ 43375406Sache { ISFUNC, rl_insert }, /* h */ 43475406Sache { ISFUNC, rl_insert }, /* i */ 43575406Sache { ISFUNC, rl_insert }, /* j */ 43675406Sache { ISFUNC, rl_insert }, /* k */ 43775406Sache { ISFUNC, rl_insert }, /* l */ 43875406Sache { ISFUNC, rl_insert }, /* m */ 43975406Sache { ISFUNC, rl_insert }, /* n */ 44075406Sache { ISFUNC, rl_insert }, /* o */ 44175406Sache { ISFUNC, rl_insert }, /* p */ 44275406Sache { ISFUNC, rl_insert }, /* q */ 44375406Sache { ISFUNC, rl_insert }, /* r */ 44475406Sache { ISFUNC, rl_insert }, /* s */ 44575406Sache { ISFUNC, rl_insert }, /* t */ 44675406Sache { ISFUNC, rl_insert }, /* u */ 44775406Sache { ISFUNC, rl_insert }, /* v */ 44875406Sache { ISFUNC, rl_insert }, /* w */ 44975406Sache { ISFUNC, rl_insert }, /* x */ 45075406Sache { ISFUNC, rl_insert }, /* y */ 45175406Sache { ISFUNC, rl_insert }, /* z */ 45221308Sache 45321308Sache /* Final punctuation. */ 45475406Sache { ISFUNC, rl_insert }, /* { */ 45575406Sache { ISFUNC, rl_insert }, /* | */ 45675406Sache { ISFUNC, rl_insert }, /* } */ 45775406Sache { ISFUNC, rl_insert }, /* ~ */ 45875406Sache { ISFUNC, rl_rubout }, /* RUBOUT */ 45921308Sache 46021308Sache#if KEYMAP_SIZE > 128 46121308Sache /* Pure 8-bit characters (128 - 159). 46221308Sache These might be used in some 46321308Sache character sets. */ 46421308Sache { ISFUNC, rl_insert }, /* ? */ 46521308Sache { ISFUNC, rl_insert }, /* ? */ 46621308Sache { ISFUNC, rl_insert }, /* ? */ 46721308Sache { ISFUNC, rl_insert }, /* ? */ 46821308Sache { ISFUNC, rl_insert }, /* ? */ 46921308Sache { ISFUNC, rl_insert }, /* ? */ 47021308Sache { ISFUNC, rl_insert }, /* ? */ 47121308Sache { ISFUNC, rl_insert }, /* ? */ 47221308Sache { ISFUNC, rl_insert }, /* ? */ 47321308Sache { ISFUNC, rl_insert }, /* ? */ 47421308Sache { ISFUNC, rl_insert }, /* ? */ 47521308Sache { ISFUNC, rl_insert }, /* ? */ 47621308Sache { ISFUNC, rl_insert }, /* ? */ 47721308Sache { ISFUNC, rl_insert }, /* ? */ 47821308Sache { ISFUNC, rl_insert }, /* ? */ 47921308Sache { ISFUNC, rl_insert }, /* ? */ 48021308Sache { ISFUNC, rl_insert }, /* ? */ 48121308Sache { ISFUNC, rl_insert }, /* ? */ 48221308Sache { ISFUNC, rl_insert }, /* ? */ 48321308Sache { ISFUNC, rl_insert }, /* ? */ 48421308Sache { ISFUNC, rl_insert }, /* ? */ 48521308Sache { ISFUNC, rl_insert }, /* ? */ 48621308Sache { ISFUNC, rl_insert }, /* ? */ 48721308Sache { ISFUNC, rl_insert }, /* ? */ 48821308Sache { ISFUNC, rl_insert }, /* ? */ 48921308Sache { ISFUNC, rl_insert }, /* ? */ 49021308Sache { ISFUNC, rl_insert }, /* ? */ 49121308Sache { ISFUNC, rl_insert }, /* ? */ 49221308Sache { ISFUNC, rl_insert }, /* ? */ 49321308Sache { ISFUNC, rl_insert }, /* ? */ 49421308Sache { ISFUNC, rl_insert }, /* ? */ 49521308Sache { ISFUNC, rl_insert }, /* ? */ 49621308Sache 49721308Sache /* ISO Latin-1 characters (160 - 255) */ 49821308Sache { ISFUNC, rl_insert }, /* No-break space */ 49921308Sache { ISFUNC, rl_insert }, /* Inverted exclamation mark */ 50021308Sache { ISFUNC, rl_insert }, /* Cent sign */ 50121308Sache { ISFUNC, rl_insert }, /* Pound sign */ 50221308Sache { ISFUNC, rl_insert }, /* Currency sign */ 50321308Sache { ISFUNC, rl_insert }, /* Yen sign */ 50421308Sache { ISFUNC, rl_insert }, /* Broken bar */ 50521308Sache { ISFUNC, rl_insert }, /* Section sign */ 50621308Sache { ISFUNC, rl_insert }, /* Diaeresis */ 50721308Sache { ISFUNC, rl_insert }, /* Copyright sign */ 50821308Sache { ISFUNC, rl_insert }, /* Feminine ordinal indicator */ 50921308Sache { ISFUNC, rl_insert }, /* Left pointing double angle quotation mark */ 51021308Sache { ISFUNC, rl_insert }, /* Not sign */ 51121308Sache { ISFUNC, rl_insert }, /* Soft hyphen */ 51221308Sache { ISFUNC, rl_insert }, /* Registered sign */ 51321308Sache { ISFUNC, rl_insert }, /* Macron */ 51421308Sache { ISFUNC, rl_insert }, /* Degree sign */ 51521308Sache { ISFUNC, rl_insert }, /* Plus-minus sign */ 51621308Sache { ISFUNC, rl_insert }, /* Superscript two */ 51721308Sache { ISFUNC, rl_insert }, /* Superscript three */ 51821308Sache { ISFUNC, rl_insert }, /* Acute accent */ 51921308Sache { ISFUNC, rl_insert }, /* Micro sign */ 52021308Sache { ISFUNC, rl_insert }, /* Pilcrow sign */ 52121308Sache { ISFUNC, rl_insert }, /* Middle dot */ 52221308Sache { ISFUNC, rl_insert }, /* Cedilla */ 52321308Sache { ISFUNC, rl_insert }, /* Superscript one */ 52421308Sache { ISFUNC, rl_insert }, /* Masculine ordinal indicator */ 52521308Sache { ISFUNC, rl_insert }, /* Right pointing double angle quotation mark */ 52621308Sache { ISFUNC, rl_insert }, /* Vulgar fraction one quarter */ 52721308Sache { ISFUNC, rl_insert }, /* Vulgar fraction one half */ 52821308Sache { ISFUNC, rl_insert }, /* Vulgar fraction three quarters */ 52921308Sache { ISFUNC, rl_insert }, /* Inverted questionk mark */ 53021308Sache { ISFUNC, rl_insert }, /* Latin capital letter a with grave */ 53121308Sache { ISFUNC, rl_insert }, /* Latin capital letter a with acute */ 53221308Sache { ISFUNC, rl_insert }, /* Latin capital letter a with circumflex */ 53321308Sache { ISFUNC, rl_insert }, /* Latin capital letter a with tilde */ 53421308Sache { ISFUNC, rl_insert }, /* Latin capital letter a with diaeresis */ 53521308Sache { ISFUNC, rl_insert }, /* Latin capital letter a with ring above */ 53621308Sache { ISFUNC, rl_insert }, /* Latin capital letter ae */ 53721308Sache { ISFUNC, rl_insert }, /* Latin capital letter c with cedilla */ 53821308Sache { ISFUNC, rl_insert }, /* Latin capital letter e with grave */ 53921308Sache { ISFUNC, rl_insert }, /* Latin capital letter e with acute */ 54021308Sache { ISFUNC, rl_insert }, /* Latin capital letter e with circumflex */ 54121308Sache { ISFUNC, rl_insert }, /* Latin capital letter e with diaeresis */ 54221308Sache { ISFUNC, rl_insert }, /* Latin capital letter i with grave */ 54321308Sache { ISFUNC, rl_insert }, /* Latin capital letter i with acute */ 54421308Sache { ISFUNC, rl_insert }, /* Latin capital letter i with circumflex */ 54521308Sache { ISFUNC, rl_insert }, /* Latin capital letter i with diaeresis */ 54621308Sache { ISFUNC, rl_insert }, /* Latin capital letter eth (Icelandic) */ 54721308Sache { ISFUNC, rl_insert }, /* Latin capital letter n with tilde */ 54821308Sache { ISFUNC, rl_insert }, /* Latin capital letter o with grave */ 54921308Sache { ISFUNC, rl_insert }, /* Latin capital letter o with acute */ 55021308Sache { ISFUNC, rl_insert }, /* Latin capital letter o with circumflex */ 55121308Sache { ISFUNC, rl_insert }, /* Latin capital letter o with tilde */ 55221308Sache { ISFUNC, rl_insert }, /* Latin capital letter o with diaeresis */ 55321308Sache { ISFUNC, rl_insert }, /* Multiplication sign */ 55421308Sache { ISFUNC, rl_insert }, /* Latin capital letter o with stroke */ 55521308Sache { ISFUNC, rl_insert }, /* Latin capital letter u with grave */ 55621308Sache { ISFUNC, rl_insert }, /* Latin capital letter u with acute */ 55721308Sache { ISFUNC, rl_insert }, /* Latin capital letter u with circumflex */ 55821308Sache { ISFUNC, rl_insert }, /* Latin capital letter u with diaeresis */ 55921308Sache { ISFUNC, rl_insert }, /* Latin capital letter Y with acute */ 56021308Sache { ISFUNC, rl_insert }, /* Latin capital letter thorn (Icelandic) */ 56121308Sache { ISFUNC, rl_insert }, /* Latin small letter sharp s (German) */ 56221308Sache { ISFUNC, rl_insert }, /* Latin small letter a with grave */ 56321308Sache { ISFUNC, rl_insert }, /* Latin small letter a with acute */ 56421308Sache { ISFUNC, rl_insert }, /* Latin small letter a with circumflex */ 56521308Sache { ISFUNC, rl_insert }, /* Latin small letter a with tilde */ 56621308Sache { ISFUNC, rl_insert }, /* Latin small letter a with diaeresis */ 56721308Sache { ISFUNC, rl_insert }, /* Latin small letter a with ring above */ 56821308Sache { ISFUNC, rl_insert }, /* Latin small letter ae */ 56921308Sache { ISFUNC, rl_insert }, /* Latin small letter c with cedilla */ 57021308Sache { ISFUNC, rl_insert }, /* Latin small letter e with grave */ 57121308Sache { ISFUNC, rl_insert }, /* Latin small letter e with acute */ 57221308Sache { ISFUNC, rl_insert }, /* Latin small letter e with circumflex */ 57321308Sache { ISFUNC, rl_insert }, /* Latin small letter e with diaeresis */ 57421308Sache { ISFUNC, rl_insert }, /* Latin small letter i with grave */ 57521308Sache { ISFUNC, rl_insert }, /* Latin small letter i with acute */ 57621308Sache { ISFUNC, rl_insert }, /* Latin small letter i with circumflex */ 57721308Sache { ISFUNC, rl_insert }, /* Latin small letter i with diaeresis */ 57821308Sache { ISFUNC, rl_insert }, /* Latin small letter eth (Icelandic) */ 57921308Sache { ISFUNC, rl_insert }, /* Latin small letter n with tilde */ 58021308Sache { ISFUNC, rl_insert }, /* Latin small letter o with grave */ 58121308Sache { ISFUNC, rl_insert }, /* Latin small letter o with acute */ 58221308Sache { ISFUNC, rl_insert }, /* Latin small letter o with circumflex */ 58321308Sache { ISFUNC, rl_insert }, /* Latin small letter o with tilde */ 58421308Sache { ISFUNC, rl_insert }, /* Latin small letter o with diaeresis */ 58521308Sache { ISFUNC, rl_insert }, /* Division sign */ 58621308Sache { ISFUNC, rl_insert }, /* Latin small letter o with stroke */ 58721308Sache { ISFUNC, rl_insert }, /* Latin small letter u with grave */ 58821308Sache { ISFUNC, rl_insert }, /* Latin small letter u with acute */ 58921308Sache { ISFUNC, rl_insert }, /* Latin small letter u with circumflex */ 59021308Sache { ISFUNC, rl_insert }, /* Latin small letter u with diaeresis */ 59121308Sache { ISFUNC, rl_insert }, /* Latin small letter y with acute */ 59221308Sache { ISFUNC, rl_insert }, /* Latin small letter thorn (Icelandic) */ 59321308Sache { ISFUNC, rl_insert } /* Latin small letter y with diaeresis */ 59421308Sache#endif /* KEYMAP_SIZE > 128 */ 59521308Sache}; 59621308Sache 59721308Sache/* Unused for the time being. */ 59821308Sache#if 0 59921308SacheKEYMAP_ENTRY_ARRAY vi_escape_keymap = { 60021308Sache /* The regular control keys come first. */ 60175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-@ */ 60275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-a */ 60375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-b */ 60475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-c */ 60575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-d */ 60675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-e */ 60775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-f */ 60875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-g */ 60975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-h */ 61075406Sache { ISFUNC, rl_tab_insert}, /* Control-i */ 61175406Sache { ISFUNC, rl_emacs_editing_mode}, /* Control-j */ 61275406Sache { ISFUNC, rl_kill_line }, /* Control-k */ 61375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-l */ 61475406Sache { ISFUNC, rl_emacs_editing_mode}, /* Control-m */ 61575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-n */ 61675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-o */ 61775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-p */ 61875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-q */ 61975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-r */ 62075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-s */ 62175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-t */ 62275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-u */ 62375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-v */ 62475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-w */ 62575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-x */ 62675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-y */ 62775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-z */ 62821308Sache 62975406Sache { ISFUNC, rl_vi_movement_mode }, /* Control-[ */ 63075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-\ */ 63175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-] */ 63275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* Control-^ */ 63375406Sache { ISFUNC, rl_vi_undo }, /* Control-_ */ 63421308Sache 63521308Sache /* The start of printing characters. */ 63675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* SPACE */ 63775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ! */ 63875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* " */ 63975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* # */ 64075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* $ */ 64175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* % */ 64275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* & */ 64375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ' */ 64475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ( */ 64575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ) */ 64675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* * */ 64775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* + */ 64875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* , */ 64975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* - */ 65075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* . */ 65175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* / */ 65221308Sache 65321308Sache /* Regular digits. */ 65475406Sache { ISFUNC, rl_vi_arg_digit }, /* 0 */ 65575406Sache { ISFUNC, rl_vi_arg_digit }, /* 1 */ 65675406Sache { ISFUNC, rl_vi_arg_digit }, /* 2 */ 65775406Sache { ISFUNC, rl_vi_arg_digit }, /* 3 */ 65875406Sache { ISFUNC, rl_vi_arg_digit }, /* 4 */ 65975406Sache { ISFUNC, rl_vi_arg_digit }, /* 5 */ 66075406Sache { ISFUNC, rl_vi_arg_digit }, /* 6 */ 66175406Sache { ISFUNC, rl_vi_arg_digit }, /* 7 */ 66275406Sache { ISFUNC, rl_vi_arg_digit }, /* 8 */ 66375406Sache { ISFUNC, rl_vi_arg_digit }, /* 9 */ 66421308Sache 66521308Sache /* A little more punctuation. */ 66675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* : */ 66775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ; */ 66875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* < */ 66975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* = */ 67075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* > */ 67175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ? */ 67275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* @ */ 67321308Sache 67421308Sache /* Uppercase alphabet. */ 67575406Sache { ISFUNC, rl_do_lowercase_version }, /* A */ 67675406Sache { ISFUNC, rl_do_lowercase_version }, /* B */ 67775406Sache { ISFUNC, rl_do_lowercase_version }, /* C */ 67875406Sache { ISFUNC, rl_do_lowercase_version }, /* D */ 67975406Sache { ISFUNC, rl_do_lowercase_version }, /* E */ 68075406Sache { ISFUNC, rl_do_lowercase_version }, /* F */ 68175406Sache { ISFUNC, rl_do_lowercase_version }, /* G */ 68275406Sache { ISFUNC, rl_do_lowercase_version }, /* H */ 68375406Sache { ISFUNC, rl_do_lowercase_version }, /* I */ 68475406Sache { ISFUNC, rl_do_lowercase_version }, /* J */ 68575406Sache { ISFUNC, rl_do_lowercase_version }, /* K */ 68675406Sache { ISFUNC, rl_do_lowercase_version }, /* L */ 68775406Sache { ISFUNC, rl_do_lowercase_version }, /* M */ 68875406Sache { ISFUNC, rl_do_lowercase_version }, /* N */ 68975406Sache { ISFUNC, rl_do_lowercase_version }, /* O */ 69075406Sache { ISFUNC, rl_do_lowercase_version }, /* P */ 69175406Sache { ISFUNC, rl_do_lowercase_version }, /* Q */ 69275406Sache { ISFUNC, rl_do_lowercase_version }, /* R */ 69375406Sache { ISFUNC, rl_do_lowercase_version }, /* S */ 69475406Sache { ISFUNC, rl_do_lowercase_version }, /* T */ 69575406Sache { ISFUNC, rl_do_lowercase_version }, /* U */ 69675406Sache { ISFUNC, rl_do_lowercase_version }, /* V */ 69775406Sache { ISFUNC, rl_do_lowercase_version }, /* W */ 69875406Sache { ISFUNC, rl_do_lowercase_version }, /* X */ 69975406Sache { ISFUNC, rl_do_lowercase_version }, /* Y */ 70075406Sache { ISFUNC, rl_do_lowercase_version }, /* Z */ 70121308Sache 70221308Sache /* Some more punctuation. */ 70375406Sache { ISFUNC, rl_arrow_keys }, /* [ */ 70475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* \ */ 70575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ] */ 70675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ^ */ 70775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* _ */ 70875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ` */ 70921308Sache 71021308Sache /* Lowercase alphabet. */ 71175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* a */ 71275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* b */ 71375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* c */ 71475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* d */ 71575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* e */ 71675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* f */ 71775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* g */ 71875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* h */ 71975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* i */ 72075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* j */ 72175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* k */ 72275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* l */ 72375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* m */ 72475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* n */ 72575406Sache { ISFUNC, rl_arrow_keys }, /* o */ 72675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* p */ 72775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* q */ 72875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* r */ 72975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* s */ 73075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* t */ 73175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* u */ 73275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* v */ 73375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* w */ 73475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* x */ 73575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* y */ 73675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* z */ 73721308Sache 73821308Sache /* Final punctuation. */ 73975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* { */ 74075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* | */ 74175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* } */ 74275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, /* ~ */ 74375406Sache { ISFUNC, rl_backward_kill_word }, /* RUBOUT */ 74421308Sache 74521308Sache#if KEYMAP_SIZE > 128 74621308Sache /* Undefined keys. */ 74775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 74875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 74975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 75075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 75175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 75275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 75375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 75475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 75575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 75675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 75775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 75875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 75975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 76075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 76175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 76275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 76375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 76475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 76575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 76675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 76775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 76875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 76975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 77075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 77175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 77275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 77375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 77475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 77575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 77675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 77775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 77875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 77975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 78075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 78175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 78275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 78375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 78475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 78575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 78675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 78775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 78875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 78975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 79075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 79175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 79275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 79375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 79475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 79575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 79675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 79775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 79875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 79975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 80075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 80175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 80275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 80375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 80475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 80575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 80675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 80775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 80875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 80975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 81075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 81175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 81275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 81375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 81475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 81575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 81675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 81775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 81875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 81975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 82075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 82175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 82275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 82375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 82475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 82575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 82675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 82775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 82875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 82975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 83075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 83175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 83275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 83375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 83475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 83575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 83675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 83775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 83875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 83975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 84075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 84175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 84275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 84375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 84475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 84575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 84675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 84775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 84875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 84975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 85075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 85175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 85275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 85375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 85475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 85575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 85675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 85775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 85875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 85975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 86075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 86175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 86275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 86375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 86475406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 86575406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 86675406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 86775406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 86875406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 86975406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 87075406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 87175406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 87275406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 87375406Sache { ISFUNC, (rl_command_func_t *)0x0 }, 87475406Sache { ISFUNC, (rl_command_func_t *)0x0 } 87521308Sache#endif /* KEYMAP_SIZE > 128 */ 87621308Sache}; 87721308Sache#endif 878