#include "sh.h"
#include "ed.h"
#include "ed.defns.h"
KEYCMD CcEmacsMap[] = {
F_SET_MARK,
F_TOBEG,
F_CHARBACK,
F_TTY_INT,
F_DELNEXT_LIST_EOF,
F_TOEND,
F_CHARFWD,
F_UNASSIGNED,
F_DELPREV,
F_COMPLETE,
F_NEWLINE,
F_KILLEND,
F_CLEARDISP,
F_NEWLINE,
F_DOWN_HIST,
F_TTY_FLUSHO,
F_UP_HIST,
F_TTY_STARTO,
F_REDISP,
F_TTY_STOPO,
F_CHARSWITCH,
F_KILLALL,
F_QUOTE,
F_KILLREGION,
F_XKEY,
F_YANK_KILL,
F_TTY_TSUSP,
F_METANEXT,
F_TTY_QUIT,
F_TTY_DSUSP,
F_UNASSIGNED,
F_UNASSIGNED,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_DIGIT,
F_DIGIT,
F_DIGIT,
F_DIGIT,
F_DIGIT,
F_DIGIT,
F_DIGIT,
F_DIGIT,
F_DIGIT,
F_DIGIT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_DELPREV,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_LIST_CHOICES,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_DELWORDPREV,
F_COMPLETE,
F_UNASSIGNED,
F_UNASSIGNED,
F_CLEARDISP,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_RUN_FG_EDITOR,
F_COMPLETE,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_COPYPREV,
F_EXPAND_HISTORY,
F_EXPAND_HISTORY,
F_UNASSIGNED,
F_UNASSIGNED,
F_CORRECT_L,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_DABBREV_EXPAND,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_WHICH,
F_UNASSIGNED,
F_UNASSIGNED,
F_WORDBACK,
F_CASECAPITAL,
F_DELWORDNEXT,
F_UNASSIGNED,
F_WORDFWD,
F_UNASSIGNED,
F_HELPME,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_CASELOWER,
F_UNASSIGNED,
F_DOWN_SEARCH_HIST,
F_XKEY,
F_UP_SEARCH_HIST,
F_UNASSIGNED,
F_TOGGLE_HIST,
F_CORRECT,
F_UNASSIGNED,
F_CASEUPPER,
F_UNASSIGNED,
F_COPYREGION,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_XKEY,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_LAST_ITEM,
F_UNASSIGNED,
F_UNASSIGNED,
F_WORDBACK,
F_CASECAPITAL,
F_DELWORDNEXT,
F_UNASSIGNED,
F_WORDFWD,
F_UNASSIGNED,
F_HELPME,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_CASELOWER,
F_UNASSIGNED,
F_DOWN_SEARCH_HIST,
F_UNASSIGNED,
F_UP_SEARCH_HIST,
F_UNASSIGNED,
F_TOGGLE_HIST,
F_CORRECT,
F_UNASSIGNED,
F_CASEUPPER,
F_UNASSIGNED,
F_COPYREGION,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_DELWORDPREV,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED
};
KEYCMD CcViMap[] = {
#ifdef KSHVI
F_UNASSIGNED,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
V_DELPREV,
F_COMPLETE,
F_NEWLINE,
F_INSERT,
F_INSERT,
F_NEWLINE,
F_INSERT,
F_INSERT,
F_INSERT,
F_TTY_STARTO,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_QUOTE,
F_DELWORDPREV,
F_INSERT,
F_INSERT,
F_INSERT,
V_CMD_MODE,
F_TTY_QUIT,
F_INSERT,
F_INSERT,
F_INSERT,
#else
F_UNASSIGNED,
F_TOBEG,
F_CHARBACK,
F_TTY_INT,
F_LIST_EOF,
F_TOEND,
F_CHARFWD,
F_LIST_GLOB,
F_DELPREV,
F_COMPLETE,
F_NEWLINE,
F_KILLEND,
F_CLEARDISP,
F_NEWLINE,
F_DOWN_HIST,
F_TTY_FLUSHO,
F_UP_HIST,
F_TTY_STARTO,
F_REDISP,
F_TTY_STOPO,
F_CHARSWITCH,
F_KILLBEG,
F_QUOTE,
F_DELWORDPREV,
F_EXPAND,
F_TTY_DSUSP,
F_TTY_TSUSP,
V_CMD_MODE,
F_TTY_QUIT,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
#endif
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_INSERT,
F_DELPREV,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED
};
KEYCMD CcViCmdMap[] = {
F_UNASSIGNED,
F_TOBEG,
F_UNASSIGNED,
F_TTY_INT,
F_LIST_CHOICES,
F_TOEND,
F_UNASSIGNED,
F_LIST_GLOB,
F_CHARBACK,
V_CM_COMPLETE,
F_NEWLINE,
F_KILLEND,
F_CLEARDISP,
F_NEWLINE,
F_DOWN_HIST,
F_TTY_FLUSHO,
F_UP_HIST,
F_TTY_STARTO,
F_REDISP,
F_TTY_STOPO,
F_UNASSIGNED,
F_KILLBEG,
F_UNASSIGNED,
F_DELWORDPREV,
F_EXPAND,
F_UNASSIGNED,
F_UNASSIGNED,
F_METANEXT,
F_TTY_QUIT,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_CHARFWD,
F_EXPAND_HISTORY,
F_UNASSIGNED,
F_UNASSIGNED,
F_TOEND,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_EXPAND_GLOB,
F_DOWN_HIST,
V_RCHAR_BACK,
F_UP_HIST,
F_UNASSIGNED,
V_DSH_META,
V_ZERO,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_ARGDIGIT,
F_UNASSIGNED,
V_RCHAR_FWD,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
V_USH_META,
F_UNASSIGNED,
V_ADDEND,
V_WORDBACK,
V_CHGTOEND,
F_KILLEND,
V_ENDWORD,
V_CHAR_BACK,
F_UNASSIGNED,
F_UNASSIGNED,
V_INSBEG,
F_DOWN_SEARCH_HIST,
F_UP_SEARCH_HIST,
F_UNASSIGNED,
F_UNASSIGNED,
V_RSRCH_BACK,
F_XKEY,
F_UNASSIGNED,
F_UNASSIGNED,
V_REPLMODE,
V_SUBSTLINE,
V_CHARTO_BACK,
F_UNASSIGNED,
F_EXPAND_VARS,
V_WORDFWD,
F_DELPREV,
F_UNASSIGNED,
F_UNASSIGNED,
F_XKEY,
F_UNASSIGNED,
F_UNASSIGNED,
F_TOBEG,
F_UNASSIGNED,
F_UNASSIGNED,
V_ADD,
F_WORDBACK,
V_CHGMETA,
V_DELMETA,
V_EWORD,
V_CHAR_FWD,
F_UNASSIGNED,
F_CHARBACK,
V_INSERT,
F_DOWN_HIST,
F_UP_HIST,
F_CHARFWD,
F_UNASSIGNED,
V_RSRCH_FWD,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
V_REPLONE,
V_SUBSTCHAR,
V_CHARTO_FWD,
V_UNDO,
F_EXPAND_VARS,
V_WORDBEGNEXT,
F_DELNEXT_EOF,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
V_CHGCASE,
F_DELPREV,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_HELPME,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_XKEY,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_XKEY,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED,
F_UNASSIGNED
};
static void
nt_bad_spec(const Char *keystr)
{
xprintf(CGETS(20, 4, "Bad key spec %S\n"), keystr);
}
extern int lstricmp(char*,char*);
Char nt_translate_bindkey(const Char*s) {
char *astr = short2str(s);
short fkey;
char corm;
Char keycode = 0;
corm = 0;
if (astr[0] == 'C')
corm= 1;
else if (astr[0] == 'M')
corm = 2;
else if (astr[0] == 'S')
corm = 3;
if (corm)
astr += 2;
fkey = (short)atoi(astr);
if (fkey !=0) {
keycode = (NT_SPECIFIC_BINDING_OFFSET+ (fkey-1) );
}
else {
if (!_stricmp("pgup",astr)) {
keycode = (NT_SPECIFIC_BINDING_OFFSET + KEYPAD_MAPPING_BEGIN);
}
else if (!_stricmp("pgdown",astr)) {
keycode = (NT_SPECIFIC_BINDING_OFFSET + KEYPAD_MAPPING_BEGIN + 1);
}
else if (!_stricmp("end",astr)) {
keycode = (NT_SPECIFIC_BINDING_OFFSET + KEYPAD_MAPPING_BEGIN + 2);
}
else if (!_stricmp("home",astr)) {
keycode = (NT_SPECIFIC_BINDING_OFFSET + KEYPAD_MAPPING_BEGIN + 3);
}
else if (!_stricmp("left",astr)) {
keycode = (NT_SPECIFIC_BINDING_OFFSET + KEYPAD_MAPPING_BEGIN + 4);
}
else if (!_stricmp("up",astr)) {
keycode = (NT_SPECIFIC_BINDING_OFFSET + KEYPAD_MAPPING_BEGIN + 5);
}
else if (!_stricmp("right",astr)) {
keycode = (NT_SPECIFIC_BINDING_OFFSET + KEYPAD_MAPPING_BEGIN + 6);
}
else if (!_stricmp("down",astr)) {
keycode = (NT_SPECIFIC_BINDING_OFFSET + KEYPAD_MAPPING_BEGIN + 7);
}
else if (!_stricmp("ins",astr)) {
keycode = (NT_SPECIFIC_BINDING_OFFSET + INS_DEL_MAPPING_BEGIN );
}
else if (!_stricmp("del",astr)) {
keycode = (NT_SPECIFIC_BINDING_OFFSET +INS_DEL_MAPPING_BEGIN +1 );
}
else
nt_bad_spec(s);
}
if (keycode && corm) {
if (corm == 1)
keycode += CTRL_KEY_OFFSET;
else if (corm == 2)
keycode += ALT_KEY_OFFSET;
else if (corm == 3)
keycode += SHIFT_KEY_OFFSET;
}
return keycode;
}