diff options
author | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2006-11-26 11:11:55 +0000 |
---|---|---|
committer | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2006-11-26 11:11:55 +0000 |
commit | 145a665014b2aa230b81b582689c8ec17ef9968e (patch) | |
tree | 5ea1019527fe16cc21b9702371c72cc7f8c8090c /app/xterm/VTparse.h | |
parent | 95c2d1cbda23a41cdf6e63520c7f0b825e63dd5b (diff) |
Importing xterm 216
Diffstat (limited to 'app/xterm/VTparse.h')
-rw-r--r-- | app/xterm/VTparse.h | 246 |
1 files changed, 246 insertions, 0 deletions
diff --git a/app/xterm/VTparse.h b/app/xterm/VTparse.h new file mode 100644 index 000000000..0bbb399d3 --- /dev/null +++ b/app/xterm/VTparse.h @@ -0,0 +1,246 @@ +/* $XTermId: VTparse.h,v 1.42 2006/07/31 22:17:40 tom Exp $ */ + +/* $XFree86: xc/programs/xterm/VTparse.h,v 3.24 2006/02/13 01:14:58 dickey Exp $ */ +/* + * Copyright 2002-2005,2006 by Thomas E. Dickey + * + * All Rights Reserved + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose and without fee is hereby granted, + * provided that the above copyright notice appear in all copies and that + * both that copyright notice and this permission notice appear in + * supporting documentation, and that the name of the above listed + * copyright holder(s) not be used in advertising or publicity pertaining + * to distribution of the software without specific, written prior + * permission. + * + * THE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD + * TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE + * LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts. + * + * All Rights Reserved + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose and without fee is hereby granted, + * provided that the above copyright notice appear in all copies and that + * both that copyright notice and this permission notice appear in + * supporting documentation, and that the name of Digital Equipment + * Corporation not be used in advertising or publicity pertaining to + * distribution of the software without specific, written prior permission. + * + * + * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING + * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL + * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR + * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, + * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, + * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + * SOFTWARE. + */ + +#ifndef included_VTparse_h +#define included_VTparse_h 1 + +#include <xterm.h> + +#ifndef Const +# if defined(__STDC__) && !defined(__cplusplus) +# define Const const +# else +# define Const /**/ +# endif +#endif + +/* + * PARSE_T has to be large enough to handle the number of cases enumerated here. + */ +typedef unsigned char PARSE_T; + +extern Const PARSE_T ansi_table[]; +extern Const PARSE_T cigtable[]; +extern Const PARSE_T csi2_table[]; +extern Const PARSE_T csi_ex_table[]; +extern Const PARSE_T csi_quo_table[]; +extern Const PARSE_T csi_table[]; +extern Const PARSE_T dec2_table[]; +extern Const PARSE_T dec3_table[]; +extern Const PARSE_T dec_table[]; +extern Const PARSE_T eigtable[]; +extern Const PARSE_T esc_sp_table[]; +extern Const PARSE_T esc_table[]; +extern Const PARSE_T scrtable[]; +extern Const PARSE_T scstable[]; +extern Const PARSE_T sos_table[]; + +#if OPT_DEC_LOCATOR +extern Const PARSE_T csi_tick_table[]; +#endif /* OPT_DEC_LOCATOR */ + +#if OPT_DEC_RECTOPS +extern Const PARSE_T csi_dollar_table[]; +extern Const PARSE_T csi_star_table[]; +#endif /* OPT_DEC_LOCATOR */ + +#if OPT_VT52_MODE +extern Const PARSE_T vt52_table[]; +extern Const PARSE_T vt52_esc_table[]; +extern Const PARSE_T vt52_ignore_table[]; +#endif + +#if OPT_WIDE_CHARS +extern Const PARSE_T esc_pct_table[]; +#endif + +/* + * The following list of definitions is generated from VTparse.def using the + * following command line: + * + * grep '^CASE_' VTparse.def | awk '{printf "#define %s %d\n", $1, n++}' + * + * If you need to change something, change VTparse.def and regenerate the + * definitions. This would have been automatic, but since this doesn't change + * very often, it isn't worth the makefile hassle. + */ + +#define CASE_GROUND_STATE 0 +#define CASE_IGNORE 1 +#define CASE_BELL 2 +#define CASE_BS 3 +#define CASE_CR 4 +#define CASE_ESC 5 +#define CASE_VMOT 6 +#define CASE_TAB 7 +#define CASE_SI 8 +#define CASE_SO 9 +#define CASE_SCR_STATE 10 +#define CASE_SCS0_STATE 11 +#define CASE_SCS1_STATE 12 +#define CASE_SCS2_STATE 13 +#define CASE_SCS3_STATE 14 +#define CASE_ESC_IGNORE 15 +#define CASE_ESC_DIGIT 16 +#define CASE_ESC_SEMI 17 +#define CASE_DEC_STATE 18 +#define CASE_ICH 19 +#define CASE_CUU 20 +#define CASE_CUD 21 +#define CASE_CUF 22 +#define CASE_CUB 23 +#define CASE_CUP 24 +#define CASE_ED 25 +#define CASE_EL 26 +#define CASE_IL 27 +#define CASE_DL 28 +#define CASE_DCH 29 +#define CASE_DA1 30 +#define CASE_TRACK_MOUSE 31 +#define CASE_TBC 32 +#define CASE_SET 33 +#define CASE_RST 34 +#define CASE_SGR 35 +#define CASE_CPR 36 +#define CASE_DECSTBM 37 +#define CASE_DECREQTPARM 38 +#define CASE_DECSET 39 +#define CASE_DECRST 40 +#define CASE_DECALN 41 +#define CASE_GSETS 42 +#define CASE_DECSC 43 +#define CASE_DECRC 44 +#define CASE_DECKPAM 45 +#define CASE_DECKPNM 46 +#define CASE_IND 47 +#define CASE_NEL 48 +#define CASE_HTS 49 +#define CASE_RI 50 +#define CASE_SS2 51 +#define CASE_SS3 52 +#define CASE_CSI_STATE 53 +#define CASE_OSC 54 +#define CASE_RIS 55 +#define CASE_LS2 56 +#define CASE_LS3 57 +#define CASE_LS3R 58 +#define CASE_LS2R 59 +#define CASE_LS1R 60 +#define CASE_PRINT 61 +#define CASE_XTERM_SAVE 62 +#define CASE_XTERM_RESTORE 63 +#define CASE_XTERM_TITLE 64 +#define CASE_DECID 65 +#define CASE_HP_MEM_LOCK 66 +#define CASE_HP_MEM_UNLOCK 67 +#define CASE_HP_BUGGY_LL 68 +#define CASE_HPA 69 +#define CASE_VPA 70 +#define CASE_XTERM_WINOPS 71 +#define CASE_ECH 72 +#define CASE_CHT 73 +#define CASE_CPL 74 +#define CASE_CNL 75 +#define CASE_CBT 76 +#define CASE_SU 77 +#define CASE_SD 78 +#define CASE_S7C1T 79 +#define CASE_S8C1T 80 +#define CASE_ESC_SP_STATE 81 +#define CASE_ENQ 82 +#define CASE_DECSCL 83 +#define CASE_DECSCA 84 +#define CASE_DECSED 85 +#define CASE_DECSEL 86 +#define CASE_DCS 87 +#define CASE_PM 88 +#define CASE_SOS 89 +#define CASE_ST 90 +#define CASE_APC 91 +#define CASE_EPA 92 +#define CASE_SPA 93 +#define CASE_CSI_QUOTE_STATE 94 +#define CASE_DSR 95 +#define CASE_ANSI_LEVEL_1 96 +#define CASE_ANSI_LEVEL_2 97 +#define CASE_ANSI_LEVEL_3 98 +#define CASE_MC 99 +#define CASE_DEC2_STATE 100 +#define CASE_DA2 101 +#define CASE_DEC3_STATE 102 +#define CASE_DECRPTUI 103 +#define CASE_VT52_CUP 104 +#define CASE_REP 105 +#define CASE_CSI_EX_STATE 106 +#define CASE_DECSTR 107 +#define CASE_DECDHL 108 +#define CASE_DECSWL 109 +#define CASE_DECDWL 110 +#define CASE_DEC_MC 111 +#define CASE_ESC_PERCENT 112 +#define CASE_UTF8 113 +#define CASE_CSI_TICK_STATE 114 +#define CASE_DECELR 115 +#define CASE_DECRQLP 116 +#define CASE_DECEFR 117 +#define CASE_DECSLE 118 +#define CASE_CSI_IGNORE 119 +#define CASE_VT52_IGNORE 120 +#define CASE_VT52_FINISH 121 +#define CASE_CSI_DOLLAR_STATE 122 +#define CASE_DECCRA 123 +#define CASE_DECERA 124 +#define CASE_DECFRA 125 +#define CASE_DECSERA 126 +#define CASE_DECSACE 127 +#define CASE_DECCARA 128 +#define CASE_DECRARA 129 +#define CASE_CSI_STAR_STATE 130 +#define CASE_SET_MOD_FKEYS 131 +#define CASE_SET_MOD_FKEYS0 132 + +#endif /* included_VTparse_h */ |