⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 emacs_keymap.c

📁 早期freebsd实现
💻 C
📖 第 1 页 / 共 2 页
字号:
/* emacs_keymap.c -- the keymap for emacs_mode in readline (). *//* Copyright (C) 1988, 1989, 1991 Free Software Foundation, Inc.   This file is part of GNU Readline, a library for reading lines   of text with interactive input and history editing.   Readline is free software; you can redistribute it and/or modify   it under the terms of the GNU General Public License as published by   the Free Software Foundation; either version 2 of the License, or   (at your option) any later version.   Readline is distributed in the hope that it will be useful,   but WITHOUT ANY WARRANTY; without even the implied warranty of   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the   GNU General Public License for more details.   You should have received a copy of the GNU General Public License   along with this program; if not, write to the Free Software   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  *//* An array of function pointers, one for each possible key.   If the type byte is ISKMAP, then the pointer is the address of   a keymap. */KEYMAP_ENTRY_ARRAY emacs_standard_keymap = {  /* Control keys. */  { ISFUNC, rl_possible_completions },		/* Control-@ */  { ISFUNC, rl_beg_of_line },		/* Control-a */  { ISFUNC, rl_backward },		/* Control-b */  { ISFUNC, (Function *)0x0 },		/* Control-c */  { ISFUNC, rl_delete },		/* Control-d */  { ISFUNC, rl_end_of_line },		/* Control-e */  { ISFUNC, rl_forward },		/* Control-f */  { ISFUNC, rl_abort },			/* Control-g */  { ISFUNC, rl_rubout },		/* Control-h */  { ISFUNC, rl_complete },		/* Control-i */  { ISFUNC, rl_newline },		/* Control-j */  { ISFUNC, rl_kill_line },		/* Control-k */  { ISFUNC, rl_clear_screen },		/* Control-l */  { ISFUNC, rl_newline },		/* Control-m */  { ISFUNC, rl_get_next_history },	/* Control-n */  { ISFUNC, (Function *)0x0 },		/* Control-o */  { ISFUNC, rl_get_previous_history },	/* Control-p */  { ISFUNC, rl_quoted_insert },		/* Control-q */  { ISFUNC, rl_reverse_search_history }, /* Control-r */  { ISFUNC, rl_forward_search_history }, /* Control-s */  { ISFUNC, rl_transpose_chars },	/* Control-t */  { ISFUNC, rl_unix_line_discard },	/* Control-u */  { ISFUNC, rl_quoted_insert },		/* Control-v */  { ISFUNC, rl_unix_word_rubout },	/* Control-w */  { ISKMAP, (Function *)emacs_ctlx_keymap },	/* Control-x */  { ISFUNC, rl_yank },			/* Control-y */  { ISFUNC, (Function *)0x0 },		/* Control-z */  { ISKMAP, (Function *)emacs_meta_keymap }, /* Control-[ */  { ISFUNC, (Function *)0x0 },		/* Control-\ */  { ISFUNC, (Function *)0x0 },		/* Control-] */  { ISFUNC, (Function *)0x0 },		/* Control-^ */  { ISFUNC, rl_undo_command },		/* Control-_ */  /* The start of printing characters. */  { ISFUNC, rl_insert },	/* SPACE */  { ISFUNC, rl_insert },	/* ! */  { ISFUNC, rl_insert },	/* " */  { ISFUNC, rl_insert },	/* # */  { ISFUNC, rl_insert },	/* $ */  { ISFUNC, rl_insert },	/* % */  { ISFUNC, rl_insert },	/* & */  { ISFUNC, rl_insert },	/* ' */  { ISFUNC, rl_insert },	/* ( */  { ISFUNC, rl_insert },	/* ) */  { ISFUNC, rl_insert },	/* * */  { ISFUNC, rl_insert },	/* + */  { ISFUNC, rl_insert },	/* , */  { ISFUNC, rl_insert },	/* - */  { ISFUNC, rl_insert },	/* . */  { ISFUNC, rl_insert },	/* / */  /* Regular digits. */  { ISFUNC, rl_insert },	/* 0 */  { ISFUNC, rl_insert },	/* 1 */  { ISFUNC, rl_insert },	/* 2 */  { ISFUNC, rl_insert },	/* 3 */  { ISFUNC, rl_insert },	/* 4 */  { ISFUNC, rl_insert },	/* 5 */  { ISFUNC, rl_insert },	/* 6 */  { ISFUNC, rl_insert },	/* 7 */  { ISFUNC, rl_insert },	/* 8 */  { ISFUNC, rl_insert },	/* 9 */  /* A little more punctuation. */  { ISFUNC, rl_insert },	/* : */  { ISFUNC, rl_insert },	/* ; */  { ISFUNC, rl_insert },	/* < */  { ISFUNC, rl_insert },	/* = */  { ISFUNC, rl_insert },	/* > */  { ISFUNC, rl_insert },	/* ? */  { ISFUNC, rl_insert },	/* @ */  /* Uppercase alphabet. */  { ISFUNC, rl_insert },	/* A */  { ISFUNC, rl_insert },	/* B */  { ISFUNC, rl_insert },	/* C */  { ISFUNC, rl_insert },	/* D */  { ISFUNC, rl_insert },	/* E */  { ISFUNC, rl_insert },	/* F */  { ISFUNC, rl_insert },	/* G */  { ISFUNC, rl_insert },	/* H */  { ISFUNC, rl_insert },	/* I */  { ISFUNC, rl_insert },	/* J */  { ISFUNC, rl_insert },	/* K */  { ISFUNC, rl_insert },	/* L */  { ISFUNC, rl_insert },	/* M */  { ISFUNC, rl_insert },	/* N */  { ISFUNC, rl_insert },	/* O */  { ISFUNC, rl_insert },	/* P */  { ISFUNC, rl_insert },	/* Q */  { ISFUNC, rl_insert },	/* R */  { ISFUNC, rl_insert },	/* S */  { ISFUNC, rl_insert },	/* T */  { ISFUNC, rl_insert },	/* U */  { ISFUNC, rl_insert },	/* V */  { ISFUNC, rl_insert },	/* W */  { ISFUNC, rl_insert },	/* X */  { ISFUNC, rl_insert },	/* Y */  { ISFUNC, rl_insert },	/* Z */  /* Some more punctuation. */  { ISFUNC, rl_insert },	/* [ */  { ISFUNC, rl_insert },	/* \ */  { ISFUNC, rl_insert },	/* ] */  { ISFUNC, rl_insert },	/* ^ */  { ISFUNC, rl_insert },	/* _ */  { ISFUNC, rl_insert },	/* ` */  /* Lowercase alphabet. */  { ISFUNC, rl_insert },	/* a */  { ISFUNC, rl_insert },	/* b */  { ISFUNC, rl_insert },	/* c */  { ISFUNC, rl_insert },	/* d */  { ISFUNC, rl_insert },	/* e */  { ISFUNC, rl_insert },	/* f */  { ISFUNC, rl_insert },	/* g */  { ISFUNC, rl_insert },	/* h */  { ISFUNC, rl_insert },	/* i */  { ISFUNC, rl_insert },	/* j */  { ISFUNC, rl_insert },	/* k */  { ISFUNC, rl_insert },	/* l */  { ISFUNC, rl_insert },	/* m */  { ISFUNC, rl_insert },	/* n */  { ISFUNC, rl_insert },	/* o */  { ISFUNC, rl_insert },	/* p */  { ISFUNC, rl_insert },	/* q */  { ISFUNC, rl_insert },	/* r */  { ISFUNC, rl_insert },	/* s */  { ISFUNC, rl_insert },	/* t */  { ISFUNC, rl_insert },	/* u */  { ISFUNC, rl_insert },	/* v */  { ISFUNC, rl_insert },	/* w */  { ISFUNC, rl_insert },	/* x */  { ISFUNC, rl_insert },	/* y */  { ISFUNC, rl_insert },	/* z */  /* Final punctuation. */  { ISFUNC, rl_insert },	/* { */  { ISFUNC, rl_insert },	/* | */  { ISFUNC, rl_insert },	/* } */  { ISFUNC, rl_insert },	/* ~ */  { ISFUNC, rl_rubout }		/* RUBOUT */};KEYMAP_ENTRY_ARRAY emacs_meta_keymap = {  /* Meta keys.  Just like above, but the high bit is set. */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-@ */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-a */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-b */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-c */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-d */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-e */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-f */  { ISFUNC, rl_abort },		/* Meta-Control-g */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-h */  { ISFUNC, rl_tab_insert },	/* Meta-Control-i */  { ISFUNC, rl_vi_editing_mode }, /* Meta-Control-j */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-k */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-l */  { ISFUNC, rl_vi_editing_mode }, /* Meta-Control-m */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-n */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-o */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-p */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-q */  { ISFUNC, rl_revert_line },	/* Meta-Control-r */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-s */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-t */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-u */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-v */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-w */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-x */  { ISFUNC, rl_yank_nth_arg },	/* Meta-Control-y */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-z */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-[ */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-\ */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-] */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-^ */  { ISFUNC, (Function *)0x0 },	/* Meta-Control-_ */  /* The start of printing characters. */  { ISFUNC, (Function *)0x0 },	/* Meta-SPACE */  { ISFUNC, (Function *)0x0 },	/* Meta-! */  { ISFUNC, (Function *)0x0 },	/* Meta-" */  { ISFUNC, (Function *)0x0 },	/* Meta-# */  { ISFUNC, (Function *)0x0 },	/* Meta-$ */  { ISFUNC, (Function *)0x0 },	/* Meta-% */  { ISFUNC, (Function *)0x0 },	/* Meta-& */  { ISFUNC, (Function *)0x0 },	/* Meta-' */  { ISFUNC, (Function *)0x0 },	/* Meta-( */  { ISFUNC, (Function *)0x0 },	/* Meta-) */  { ISFUNC, (Function *)0x0 },	/* Meta-* */  { ISFUNC, (Function *)0x0 },	/* Meta-+ */  { ISFUNC, (Function *)0x0 },	/* Meta-, */  { ISFUNC, rl_digit_argument }, /* Meta-- */  { ISFUNC, (Function *)0x0 },	/* Meta-. */  { ISFUNC, (Function *)0x0 },	/* Meta-/ */  /* Regular digits. */  { ISFUNC, rl_digit_argument }, /* Meta-0 */  { ISFUNC, rl_digit_argument }, /* Meta-1 */  { ISFUNC, rl_digit_argument }, /* Meta-2 */  { ISFUNC, rl_digit_argument }, /* Meta-3 */  { ISFUNC, rl_digit_argument }, /* Meta-4 */  { ISFUNC, rl_digit_argument }, /* Meta-5 */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -