vte r2193 - in trunk: . src



Author: behdad
Date: Tue Nov 25 23:56:04 2008
New Revision: 2193
URL: http://svn.gnome.org/viewvc/vte?rev=2193&view=rev

Log:
2008-11-25  Behdad Esfahbod  <behdad gnome org>

        * src/Makefile.am:
        * src/vteseq-2.c (vteseq_2_hash), (vteseq_2_lookup):
        * src/vteseq-2.gperf:
        * src/vteseq-n.c (vteseq_n_hash), (vteseq_n_lookup):
        * src/vteseq-n.gperf:
        * src/vteseq.c (_vte_sequence_get_handler):
        Cleanup gperf stuff.



Modified:
   trunk/ChangeLog
   trunk/src/Makefile.am
   trunk/src/vteseq-2.c
   trunk/src/vteseq-2.gperf
   trunk/src/vteseq-n.c
   trunk/src/vteseq-n.gperf
   trunk/src/vteseq.c

Modified: trunk/src/Makefile.am
==============================================================================
--- trunk/src/Makefile.am	(original)
+++ trunk/src/Makefile.am	Tue Nov 25 23:56:04 2008
@@ -33,8 +33,8 @@
 
 # gperf - files need to be modified afterwards
 gperf: vteseq-2.gperf vteseq-n.gperf
-	gperf vteseq-2.gperf -g -a -S 4 -t -m 100 -C -H vteseq_2_hash -N vteseq_2_lookup > vteseq-2.c
-	gperf vteseq-n.gperf -g -a -S 4 -t -m 100 -C -P -l -H vteseq_n_hash -N vteseq_n_lookup -Q vteseq_n_stringpool > vteseq-n.c
+	gperf vteseq-2.gperf -m 100 > vteseq-2.c
+	gperf vteseq-n.gperf -m 100 > vteseq-n.c
 
 #vteseq-2.c vteseq-n.c: gperf
 

Modified: trunk/src/vteseq-2.c
==============================================================================
--- trunk/src/vteseq-2.c	(original)
+++ trunk/src/vteseq-2.c	Tue Nov 25 23:56:04 2008
@@ -1,5 +1,5 @@
-/* C code produced by gperf version 3.0.3 */
-/* Command-line: gperf -g -a -S 4 -t -m 100 -C -H vteseq_2_hash -N vteseq_2_lookup vteseq-2.gperf  */
+/* ANSI-C code produced by gperf version 3.0.3 */
+/* Command-line: gperf -m 100 -C vteseq-2.gperf  */
 /* Computed positions: -k'1-2' */
 
 #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
@@ -26,17 +26,15 @@
       && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
       && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
 /* The character set is not based on ISO-646.  */
-error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf gnu org>."
+#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf gnu org>."
 #endif
 
-#line 2 "vteseq-2.gperf"
-struct vteseq_two_lookup { const guchar name[2]; VteTerminalSequenceHandler handler; };
-
-#define TOTAL_KEYWORDS 221
-#define MIN_WORD_LENGTH 2
-#define MAX_WORD_LENGTH 2
-#define MIN_HASH_VALUE 2
-#define MAX_HASH_VALUE 360
+#line 15 "vteseq-2.gperf"
+struct vteseq_2_struct {
+	char seq[3];
+	VteTerminalSequenceHandler handler;
+};
+#include <string.h>
 /* maximum key range = 359, duplicates = 0 */
 
 #ifdef __GNUC__
@@ -47,9 +45,7 @@
 #endif
 #endif
 static unsigned int
-vteseq_2_hash (str, len)
-     register const char *str;
-     register unsigned int len;
+vteseq_2_hash (register const char *str, register unsigned int len)
 {
   static const unsigned short asso_values[] =
     {
@@ -90,454 +86,461 @@
 __attribute__ ((__gnu_inline__))
 #endif
 #endif
-const struct vteseq_two_lookup *
-vteseq_2_lookup (str, len)
-     register const char *str;
-     register unsigned int len;
+const struct vteseq_2_struct *
+vteseq_2_lookup (register const char *str, register unsigned int len)
 {
-  static const struct vteseq_two_lookup wordlist[] =
+  enum
     {
-#line 212 "vteseq-2.gperf"
+      TOTAL_KEYWORDS = 221,
+      MIN_WORD_LENGTH = 2,
+      MAX_WORD_LENGTH = 2,
+      MIN_HASH_VALUE = 2,
+      MAX_HASH_VALUE = 360
+    };
+
+  static const struct vteseq_2_struct wordlist[] =
+    {
+#line 229 "vteseq-2.gperf"
       {"ks", vte_sequence_handler_ks},
-#line 200 "vteseq-2.gperf"
+#line 217 "vteseq-2.gperf"
       {"kN", vte_sequence_handler_complain_key},
-#line 86 "vteseq-2.gperf"
+#line 103 "vteseq-2.gperf"
       {"FN", vte_sequence_handler_complain_key},
-#line 181 "vteseq-2.gperf"
+#line 198 "vteseq-2.gperf"
       {"k2", vte_sequence_handler_complain_key},
-#line 65 "vteseq-2.gperf"
+#line 82 "vteseq-2.gperf"
       {"F2", vte_sequence_handler_complain_key},
-#line 89 "vteseq-2.gperf"
+#line 106 "vteseq-2.gperf"
       {"FQ", vte_sequence_handler_complain_key},
-#line 42 "vteseq-2.gperf"
+#line 59 "vteseq-2.gperf"
       {"*2", vte_sequence_handler_complain_key},
-#line 196 "vteseq-2.gperf"
+#line 213 "vteseq-2.gperf"
       {"kH", vte_sequence_handler_complain_key},
-#line 80 "vteseq-2.gperf"
-      {"FH", vte_sequence_handler_complain_key},
 #line 97 "vteseq-2.gperf"
+      {"FH", vte_sequence_handler_complain_key},
+#line 114 "vteseq-2.gperf"
       {"FY", vte_sequence_handler_complain_key},
-#line 52 "vteseq-2.gperf"
+#line 69 "vteseq-2.gperf"
       {"@2", vte_sequence_handler_complain_key},
-#line 203 "vteseq-2.gperf"
+#line 220 "vteseq-2.gperf"
       {"kS", vte_sequence_handler_complain_key},
-#line 91 "vteseq-2.gperf"
+#line 108 "vteseq-2.gperf"
       {"FS", vte_sequence_handler_complain_key},
-#line 105 "vteseq-2.gperf"
+#line 122 "vteseq-2.gperf"
       {"Fg", vte_sequence_handler_complain_key},
-#line 119 "vteseq-2.gperf"
+#line 136 "vteseq-2.gperf"
       {"K2", vte_sequence_handler_complain_key},
-#line 182 "vteseq-2.gperf"
+#line 199 "vteseq-2.gperf"
       {"k3", vte_sequence_handler_complain_key},
-#line 66 "vteseq-2.gperf"
+#line 83 "vteseq-2.gperf"
       {"F3", vte_sequence_handler_complain_key},
-#line 96 "vteseq-2.gperf"
+#line 113 "vteseq-2.gperf"
       {"FX", vte_sequence_handler_complain_key},
-#line 43 "vteseq-2.gperf"
+#line 60 "vteseq-2.gperf"
       {"*3", vte_sequence_handler_complain_key},
-#line 95 "vteseq-2.gperf"
+#line 112 "vteseq-2.gperf"
       {"FW", vte_sequence_handler_complain_key},
-#line 180 "vteseq-2.gperf"
+#line 197 "vteseq-2.gperf"
       {"k1", vte_sequence_handler_complain_key},
-#line 64 "vteseq-2.gperf"
+#line 81 "vteseq-2.gperf"
       {"F1", vte_sequence_handler_complain_key},
-#line 53 "vteseq-2.gperf"
+#line 70 "vteseq-2.gperf"
       {"@3", vte_sequence_handler_complain_key},
-#line 41 "vteseq-2.gperf"
+#line 58 "vteseq-2.gperf"
       {"*1", vte_sequence_handler_complain_key},
-#line 111 "vteseq-2.gperf"
+#line 128 "vteseq-2.gperf"
       {"Fm", vte_sequence_handler_complain_key},
-#line 12 "vteseq-2.gperf"
+#line 29 "vteseq-2.gperf"
       {"%2", vte_sequence_handler_complain_key},
-#line 120 "vteseq-2.gperf"
+#line 137 "vteseq-2.gperf"
       {"K3", vte_sequence_handler_complain_key},
-#line 51 "vteseq-2.gperf"
+#line 68 "vteseq-2.gperf"
       {"@1", vte_sequence_handler_complain_key},
-#line 214 "vteseq-2.gperf"
+#line 231 "vteseq-2.gperf"
       {"ku", vte_sequence_handler_complain_key},
-#line 183 "vteseq-2.gperf"
+#line 200 "vteseq-2.gperf"
       {"k4", vte_sequence_handler_complain_key},
-#line 67 "vteseq-2.gperf"
+#line 84 "vteseq-2.gperf"
       {"F4", vte_sequence_handler_complain_key},
-#line 118 "vteseq-2.gperf"
+#line 135 "vteseq-2.gperf"
       {"K1", vte_sequence_handler_complain_key},
-#line 44 "vteseq-2.gperf"
+#line 61 "vteseq-2.gperf"
       {"*4", vte_sequence_handler_complain_key},
-#line 213 "vteseq-2.gperf"
+#line 230 "vteseq-2.gperf"
       {"kt", vte_sequence_handler_complain_key},
-#line 26 "vteseq-2.gperf"
+#line 43 "vteseq-2.gperf"
       {"%g", vte_sequence_handler_complain_key},
-#line 32 "vteseq-2.gperf"
+#line 49 "vteseq-2.gperf"
       {"&2", vte_sequence_handler_complain_key},
-#line 54 "vteseq-2.gperf"
+#line 71 "vteseq-2.gperf"
       {"@4", vte_sequence_handler_complain_key},
-#line 13 "vteseq-2.gperf"
+#line 30 "vteseq-2.gperf"
       {"%3", vte_sequence_handler_complain_key},
-#line 184 "vteseq-2.gperf"
+#line 201 "vteseq-2.gperf"
       {"k5", vte_sequence_handler_complain_key},
-#line 68 "vteseq-2.gperf"
+#line 85 "vteseq-2.gperf"
       {"F5", vte_sequence_handler_complain_key},
-#line 121 "vteseq-2.gperf"
+#line 138 "vteseq-2.gperf"
       {"K4", vte_sequence_handler_complain_key},
-#line 45 "vteseq-2.gperf"
+#line 62 "vteseq-2.gperf"
       {"*5", vte_sequence_handler_complain_key},
-#line 11 "vteseq-2.gperf"
+#line 28 "vteseq-2.gperf"
       {"%1", vte_sequence_handler_complain_key},
-#line 188 "vteseq-2.gperf"
+#line 205 "vteseq-2.gperf"
       {"k9", vte_sequence_handler_complain_key},
-#line 72 "vteseq-2.gperf"
+#line 89 "vteseq-2.gperf"
       {"F9", vte_sequence_handler_complain_key},
-#line 55 "vteseq-2.gperf"
+#line 72 "vteseq-2.gperf"
       {"@5", vte_sequence_handler_complain_key},
-#line 49 "vteseq-2.gperf"
+#line 66 "vteseq-2.gperf"
       {"*9", vte_sequence_handler_complain_key},
-#line 33 "vteseq-2.gperf"
+#line 50 "vteseq-2.gperf"
       {"&3", vte_sequence_handler_complain_key},
-#line 98 "vteseq-2.gperf"
+#line 115 "vteseq-2.gperf"
       {"FZ", vte_sequence_handler_complain_key},
-#line 122 "vteseq-2.gperf"
+#line 139 "vteseq-2.gperf"
       {"K5", vte_sequence_handler_complain_key},
-#line 59 "vteseq-2.gperf"
+#line 76 "vteseq-2.gperf"
       {"@9", vte_sequence_handler_complain_key},
-#line 14 "vteseq-2.gperf"
-      {"%4", vte_sequence_handler_complain_key},
 #line 31 "vteseq-2.gperf"
+      {"%4", vte_sequence_handler_complain_key},
+#line 48 "vteseq-2.gperf"
       {"&1", vte_sequence_handler_complain_key},
-#line 154 "vteseq-2.gperf"
+#line 171 "vteseq-2.gperf"
       {"cs", vte_sequence_handler_cs},
-#line 109 "vteseq-2.gperf"
+#line 126 "vteseq-2.gperf"
       {"Fk", vte_sequence_handler_complain_key},
-#line 187 "vteseq-2.gperf"
+#line 204 "vteseq-2.gperf"
       {"k8", vte_sequence_handler_complain_key},
-#line 71 "vteseq-2.gperf"
+#line 88 "vteseq-2.gperf"
       {"F8", vte_sequence_handler_complain_key},
-#line 87 "vteseq-2.gperf"
+#line 104 "vteseq-2.gperf"
       {"FO", vte_sequence_handler_complain_key},
-#line 48 "vteseq-2.gperf"
+#line 65 "vteseq-2.gperf"
       {"*8", vte_sequence_handler_complain_key},
-#line 274 "vteseq-2.gperf"
+#line 291 "vteseq-2.gperf"
       {"vs", vte_sequence_handler_vs},
-#line 15 "vteseq-2.gperf"
+#line 32 "vteseq-2.gperf"
       {"%5", vte_sequence_handler_complain_key},
-#line 34 "vteseq-2.gperf"
+#line 51 "vteseq-2.gperf"
       {"&4", vte_sequence_handler_complain_key},
-#line 58 "vteseq-2.gperf"
+#line 75 "vteseq-2.gperf"
       {"@8", vte_sequence_handler_complain_key},
-#line 270 "vteseq-2.gperf"
+#line 287 "vteseq-2.gperf"
       {"us", vte_sequence_handler_us},
-#line 145 "vteseq-2.gperf"
+#line 162 "vteseq-2.gperf"
       {"cS", vte_sequence_handler_cS},
-#line 19 "vteseq-2.gperf"
+#line 36 "vteseq-2.gperf"
       {"%9", vte_sequence_handler_complain_key},
-#line 186 "vteseq-2.gperf"
+#line 203 "vteseq-2.gperf"
       {"k7", vte_sequence_handler_complain_key},
-#line 70 "vteseq-2.gperf"
+#line 87 "vteseq-2.gperf"
       {"F7", vte_sequence_handler_complain_key},
-#line 101 "vteseq-2.gperf"
+#line 118 "vteseq-2.gperf"
       {"Fc", vte_sequence_handler_complain_key},
-#line 47 "vteseq-2.gperf"
+#line 64 "vteseq-2.gperf"
       {"*7", vte_sequence_handler_complain_key},
-#line 35 "vteseq-2.gperf"
+#line 52 "vteseq-2.gperf"
       {"&5", vte_sequence_handler_complain_key},
-#line 185 "vteseq-2.gperf"
+#line 202 "vteseq-2.gperf"
       {"k6", vte_sequence_handler_complain_key},
-#line 69 "vteseq-2.gperf"
+#line 86 "vteseq-2.gperf"
       {"F6", vte_sequence_handler_complain_key},
-#line 57 "vteseq-2.gperf"
+#line 74 "vteseq-2.gperf"
       {"@7", vte_sequence_handler_complain_key},
-#line 46 "vteseq-2.gperf"
+#line 63 "vteseq-2.gperf"
       {"*6", vte_sequence_handler_complain_key},
-#line 39 "vteseq-2.gperf"
+#line 56 "vteseq-2.gperf"
       {"&9", vte_sequence_handler_complain_key},
-#line 152 "vteseq-2.gperf"
+#line 169 "vteseq-2.gperf"
       {"cm", vte_sequence_handler_cm},
-#line 18 "vteseq-2.gperf"
+#line 35 "vteseq-2.gperf"
       {"%8", vte_sequence_handler_complain_key},
-#line 56 "vteseq-2.gperf"
+#line 73 "vteseq-2.gperf"
       {"@6", vte_sequence_handler_complain_key},
-#line 210 "vteseq-2.gperf"
+#line 227 "vteseq-2.gperf"
       {"kl", vte_sequence_handler_complain_key},
-#line 110 "vteseq-2.gperf"
+#line 127 "vteseq-2.gperf"
       {"Fl", vte_sequence_handler_complain_key},
-#line 232 "vteseq-2.gperf"
+#line 249 "vteseq-2.gperf"
       {"mk", vte_sequence_handler_mk},
-#line 208 "vteseq-2.gperf"
+#line 225 "vteseq-2.gperf"
       {"ke", vte_sequence_handler_ke},
-#line 103 "vteseq-2.gperf"
+#line 120 "vteseq-2.gperf"
       {"Fe", vte_sequence_handler_complain_key},
-#line 141 "vteseq-2.gperf"
+#line 158 "vteseq-2.gperf"
       {"as", vte_sequence_handler_as},
-#line 107 "vteseq-2.gperf"
+#line 124 "vteseq-2.gperf"
       {"Fi", vte_sequence_handler_complain_key},
-#line 155 "vteseq-2.gperf"
+#line 172 "vteseq-2.gperf"
       {"ct", vte_sequence_handler_ct},
-#line 38 "vteseq-2.gperf"
+#line 55 "vteseq-2.gperf"
       {"&8", vte_sequence_handler_complain_key},
-#line 17 "vteseq-2.gperf"
+#line 34 "vteseq-2.gperf"
       {"%7", vte_sequence_handler_complain_key},
-#line 22 "vteseq-2.gperf"
+#line 39 "vteseq-2.gperf"
       {"%c", vte_sequence_handler_complain_key},
-#line 163 "vteseq-2.gperf"
+#line 180 "vteseq-2.gperf"
       {"ec", vte_sequence_handler_ec},
-#line 207 "vteseq-2.gperf"
+#line 224 "vteseq-2.gperf"
       {"kd", vte_sequence_handler_complain_key},
-#line 102 "vteseq-2.gperf"
+#line 119 "vteseq-2.gperf"
       {"Fd", vte_sequence_handler_complain_key},
-#line 16 "vteseq-2.gperf"
+#line 33 "vteseq-2.gperf"
       {"%6", vte_sequence_handler_complain_key},
-#line 206 "vteseq-2.gperf"
+#line 223 "vteseq-2.gperf"
       {"kb", vte_sequence_handler_kb},
-#line 100 "vteseq-2.gperf"
+#line 117 "vteseq-2.gperf"
       {"Fb", vte_sequence_handler_complain_key},
-#line 108 "vteseq-2.gperf"
+#line 125 "vteseq-2.gperf"
       {"Fj", vte_sequence_handler_complain_key},
-#line 114 "vteseq-2.gperf"
+#line 131 "vteseq-2.gperf"
       {"Fp", vte_sequence_handler_complain_key},
-#line 37 "vteseq-2.gperf"
+#line 54 "vteseq-2.gperf"
       {"&7", vte_sequence_handler_complain_key},
-#line 209 "vteseq-2.gperf"
+#line 226 "vteseq-2.gperf"
       {"kh", vte_sequence_handler_complain_key},
-#line 106 "vteseq-2.gperf"
+#line 123 "vteseq-2.gperf"
       {"Fh", vte_sequence_handler_complain_key},
-#line 113 "vteseq-2.gperf"
+#line 130 "vteseq-2.gperf"
       {"Fo", vte_sequence_handler_complain_key},
-#line 159 "vteseq-2.gperf"
+#line 176 "vteseq-2.gperf"
       {"dm", vte_sequence_handler_noop},
-#line 36 "vteseq-2.gperf"
+#line 53 "vteseq-2.gperf"
       {"&6", vte_sequence_handler_complain_key},
-#line 24 "vteseq-2.gperf"
+#line 41 "vteseq-2.gperf"
       {"%e", vte_sequence_handler_complain_key},
-#line 262 "vteseq-2.gperf"
+#line 279 "vteseq-2.gperf"
       {"st", vte_sequence_handler_st},
-#line 28 "vteseq-2.gperf"
+#line 45 "vteseq-2.gperf"
       {"%i", vte_sequence_handler_complain_key},
-#line 165 "vteseq-2.gperf"
+#line 182 "vteseq-2.gperf"
       {"ei", vte_sequence_handler_ei},
-#line 211 "vteseq-2.gperf"
+#line 228 "vteseq-2.gperf"
       {"kr", vte_sequence_handler_complain_key},
-#line 116 "vteseq-2.gperf"
+#line 133 "vteseq-2.gperf"
       {"Fr", vte_sequence_handler_complain_key},
-#line 230 "vteseq-2.gperf"
+#line 247 "vteseq-2.gperf"
       {"me", vte_sequence_handler_me},
-#line 266 "vteseq-2.gperf"
+#line 283 "vteseq-2.gperf"
       {"ts", vte_sequence_handler_ts},
-#line 227 "vteseq-2.gperf"
+#line 244 "vteseq-2.gperf"
       {"ll", vte_sequence_handler_ll},
-#line 23 "vteseq-2.gperf"
+#line 40 "vteseq-2.gperf"
       {"%d", vte_sequence_handler_complain_key},
-#line 164 "vteseq-2.gperf"
+#line 181 "vteseq-2.gperf"
       {"ed", vte_sequence_handler_noop},
-#line 226 "vteseq-2.gperf"
+#line 243 "vteseq-2.gperf"
       {"le", vte_sequence_handler_le},
-#line 21 "vteseq-2.gperf"
+#line 38 "vteseq-2.gperf"
       {"%b", vte_sequence_handler_complain_key},
-#line 29 "vteseq-2.gperf"
+#line 46 "vteseq-2.gperf"
       {"%j", vte_sequence_handler_complain_key},
-#line 115 "vteseq-2.gperf"
+#line 132 "vteseq-2.gperf"
       {"Fq", vte_sequence_handler_complain_key},
-#line 229 "vteseq-2.gperf"
+#line 246 "vteseq-2.gperf"
       {"md", vte_sequence_handler_md},
-#line 147 "vteseq-2.gperf"
+#line 164 "vteseq-2.gperf"
       {"cc", vte_sequence_handler_noop},
-#line 27 "vteseq-2.gperf"
+#line 44 "vteseq-2.gperf"
       {"%h", vte_sequence_handler_complain_key},
-#line 228 "vteseq-2.gperf"
+#line 245 "vteseq-2.gperf"
       {"mb", vte_sequence_handler_mb},
-#line 252 "vteseq-2.gperf"
+#line 269 "vteseq-2.gperf"
       {"rc", vte_sequence_handler_rc},
-#line 235 "vteseq-2.gperf"
+#line 252 "vteseq-2.gperf"
       {"mp", vte_sequence_handler_mp},
-#line 8 "vteseq-2.gperf"
+#line 25 "vteseq-2.gperf"
       {"#2", vte_sequence_handler_complain_key},
-#line 238 "vteseq-2.gperf"
+#line 255 "vteseq-2.gperf"
       {"nw", vte_sequence_handler_nw},
-#line 231 "vteseq-2.gperf"
+#line 248 "vteseq-2.gperf"
       {"mh", vte_sequence_handler_mh},
-#line 144 "vteseq-2.gperf"
+#line 161 "vteseq-2.gperf"
       {"bt", vte_sequence_handler_bt},
-#line 104 "vteseq-2.gperf"
+#line 121 "vteseq-2.gperf"
       {"Ff", vte_sequence_handler_complain_key},
-#line 267 "vteseq-2.gperf"
+#line 284 "vteseq-2.gperf"
       {"uc", vte_sequence_handler_uc},
-#line 94 "vteseq-2.gperf"
+#line 111 "vteseq-2.gperf"
       {"FV", vte_sequence_handler_complain_key},
-#line 151 "vteseq-2.gperf"
+#line 168 "vteseq-2.gperf"
       {"cl", vte_sequence_handler_cl},
-#line 205 "vteseq-2.gperf"
+#line 222 "vteseq-2.gperf"
       {"ka", vte_sequence_handler_complain_key},
-#line 99 "vteseq-2.gperf"
+#line 116 "vteseq-2.gperf"
       {"Fa", vte_sequence_handler_complain_key},
-#line 149 "vteseq-2.gperf"
+#line 166 "vteseq-2.gperf"
       {"ce", vte_sequence_handler_ce},
-#line 236 "vteseq-2.gperf"
+#line 253 "vteseq-2.gperf"
       {"mr", vte_sequence_handler_mr},
-#line 9 "vteseq-2.gperf"
+#line 26 "vteseq-2.gperf"
       {"#3", vte_sequence_handler_complain_key},
-#line 93 "vteseq-2.gperf"
+#line 110 "vteseq-2.gperf"
       {"FU", vte_sequence_handler_complain_key},
-#line 257 "vteseq-2.gperf"
+#line 274 "vteseq-2.gperf"
       {"sc", vte_sequence_handler_sc},
-#line 176 "vteseq-2.gperf"
+#line 193 "vteseq-2.gperf"
       {"im", vte_sequence_handler_im},
-#line 272 "vteseq-2.gperf"
+#line 289 "vteseq-2.gperf"
       {"ve", vte_sequence_handler_ve},
-#line 7 "vteseq-2.gperf"
+#line 24 "vteseq-2.gperf"
       {"#1", vte_sequence_handler_complain_key},
-#line 273 "vteseq-2.gperf"
+#line 290 "vteseq-2.gperf"
       {"vi", vte_sequence_handler_vi},
-#line 148 "vteseq-2.gperf"
+#line 165 "vteseq-2.gperf"
       {"cd", vte_sequence_handler_cd},
-#line 268 "vteseq-2.gperf"
+#line 285 "vteseq-2.gperf"
       {"ue", vte_sequence_handler_ue},
-#line 157 "vteseq-2.gperf"
+#line 174 "vteseq-2.gperf"
       {"dc", vte_sequence_handler_dc},
-#line 146 "vteseq-2.gperf"
+#line 163 "vteseq-2.gperf"
       {"cb", vte_sequence_handler_cb},
-#line 198 "vteseq-2.gperf"
+#line 215 "vteseq-2.gperf"
       {"kL", vte_sequence_handler_complain_key},
-#line 84 "vteseq-2.gperf"
+#line 101 "vteseq-2.gperf"
       {"FL", vte_sequence_handler_complain_key},
-#line 25 "vteseq-2.gperf"
+#line 42 "vteseq-2.gperf"
       {"%f", vte_sequence_handler_complain_key},
-#line 10 "vteseq-2.gperf"
+#line 27 "vteseq-2.gperf"
       {"#4", vte_sequence_handler_complain_key},
-#line 150 "vteseq-2.gperf"
+#line 167 "vteseq-2.gperf"
       {"ch", vte_sequence_handler_ch},
-#line 271 "vteseq-2.gperf"
+#line 288 "vteseq-2.gperf"
       {"vb", vte_sequence_handler_vb},
-#line 258 "vteseq-2.gperf"
+#line 275 "vteseq-2.gperf"
       {"se", vte_sequence_handler_se},
-#line 20 "vteseq-2.gperf"
+#line 37 "vteseq-2.gperf"
       {"%a", vte_sequence_handler_complain_key},
-#line 156 "vteseq-2.gperf"
+#line 173 "vteseq-2.gperf"
       {"cv", vte_sequence_handler_cv},
-#line 179 "vteseq-2.gperf"
+#line 196 "vteseq-2.gperf"
       {"k0", vte_sequence_handler_complain_key},
-#line 158 "vteseq-2.gperf"
+#line 175 "vteseq-2.gperf"
       {"dl", vte_sequence_handler_dl},
-#line 269 "vteseq-2.gperf"
+#line 286 "vteseq-2.gperf"
       {"up", vte_sequence_handler_up},
-#line 40 "vteseq-2.gperf"
+#line 57 "vteseq-2.gperf"
       {"*0", vte_sequence_handler_complain_key},
-#line 153 "vteseq-2.gperf"
+#line 170 "vteseq-2.gperf"
       {"cr", vte_sequence_handler_cr},
-#line 142 "vteseq-2.gperf"
+#line 159 "vteseq-2.gperf"
       {"bc", vte_sequence_handler_le},
-#line 140 "vteseq-2.gperf"
+#line 157 "vteseq-2.gperf"
       {"al", vte_sequence_handler_al},
-#line 50 "vteseq-2.gperf"
+#line 67 "vteseq-2.gperf"
       {"@0", vte_sequence_handler_complain_key},
-#line 83 "vteseq-2.gperf"
+#line 100 "vteseq-2.gperf"
       {"FK", vte_sequence_handler_complain_key},
-#line 139 "vteseq-2.gperf"
+#line 156 "vteseq-2.gperf"
       {"ae", vte_sequence_handler_ae},
-#line 197 "vteseq-2.gperf"
+#line 214 "vteseq-2.gperf"
       {"kI", vte_sequence_handler_complain_key},
-#line 81 "vteseq-2.gperf"
+#line 98 "vteseq-2.gperf"
       {"FI", vte_sequence_handler_complain_key},
-#line 192 "vteseq-2.gperf"
+#line 209 "vteseq-2.gperf"
       {"kC", vte_sequence_handler_complain_key},
-#line 75 "vteseq-2.gperf"
+#line 92 "vteseq-2.gperf"
       {"FC", vte_sequence_handler_complain_key},
-#line 5 "vteseq-2.gperf"
+#line 22 "vteseq-2.gperf"
       {"!2", vte_sequence_handler_complain_key},
-#line 260 "vteseq-2.gperf"
+#line 277 "vteseq-2.gperf"
       {"so", vte_sequence_handler_so},
-#line 117 "vteseq-2.gperf"
+#line 134 "vteseq-2.gperf"
       {"IC", vte_sequence_handler_IC},
-#line 143 "vteseq-2.gperf"
+#line 160 "vteseq-2.gperf"
       {"bl", vte_sequence_handler_bl},
-#line 167 "vteseq-2.gperf"
+#line 184 "vteseq-2.gperf"
       {"fs", vte_sequence_handler_fs},
-#line 112 "vteseq-2.gperf"
+#line 129 "vteseq-2.gperf"
       {"Fn", vte_sequence_handler_complain_key},
-#line 204 "vteseq-2.gperf"
+#line 221 "vteseq-2.gperf"
       {"kT", vte_sequence_handler_complain_key},
-#line 92 "vteseq-2.gperf"
+#line 109 "vteseq-2.gperf"
       {"FT", vte_sequence_handler_complain_key},
-#line 160 "vteseq-2.gperf"
+#line 177 "vteseq-2.gperf"
       {"do", vte_sequence_handler_do},
-#line 261 "vteseq-2.gperf"
+#line 278 "vteseq-2.gperf"
       {"sr", vte_sequence_handler_sr},
-#line 194 "vteseq-2.gperf"
+#line 211 "vteseq-2.gperf"
       {"kE", vte_sequence_handler_complain_key},
-#line 77 "vteseq-2.gperf"
+#line 94 "vteseq-2.gperf"
       {"FE", vte_sequence_handler_complain_key},
-#line 6 "vteseq-2.gperf"
+#line 23 "vteseq-2.gperf"
       {"!3", vte_sequence_handler_complain_key},
-#line 174 "vteseq-2.gperf"
+#line 191 "vteseq-2.gperf"
       {"ic", vte_sequence_handler_ic},
-#line 190 "vteseq-2.gperf"
+#line 207 "vteseq-2.gperf"
       {"kA", vte_sequence_handler_complain_key},
-#line 73 "vteseq-2.gperf"
+#line 90 "vteseq-2.gperf"
       {"FA", vte_sequence_handler_complain_key},
-#line 82 "vteseq-2.gperf"
+#line 99 "vteseq-2.gperf"
       {"FJ", vte_sequence_handler_complain_key},
-#line 4 "vteseq-2.gperf"
+#line 21 "vteseq-2.gperf"
       {"!1", vte_sequence_handler_complain_key},
-#line 30 "vteseq-2.gperf"
+#line 47 "vteseq-2.gperf"
       {"&0", vte_sequence_handler_complain_key},
-#line 202 "vteseq-2.gperf"
+#line 219 "vteseq-2.gperf"
       {"kR", vte_sequence_handler_complain_key},
-#line 90 "vteseq-2.gperf"
+#line 107 "vteseq-2.gperf"
       {"FR", vte_sequence_handler_complain_key},
-#line 135 "vteseq-2.gperf"
+#line 152 "vteseq-2.gperf"
       {"SR", vte_sequence_handler_SR},
-#line 264 "vteseq-2.gperf"
+#line 281 "vteseq-2.gperf"
       {"te", vte_sequence_handler_noop},
-#line 237 "vteseq-2.gperf"
+#line 254 "vteseq-2.gperf"
       {"nd", vte_sequence_handler_nd},
-#line 265 "vteseq-2.gperf"
+#line 282 "vteseq-2.gperf"
       {"ti", vte_sequence_handler_noop},
-#line 169 "vteseq-2.gperf"
+#line 186 "vteseq-2.gperf"
       {"ho", vte_sequence_handler_ho},
-#line 195 "vteseq-2.gperf"
+#line 212 "vteseq-2.gperf"
       {"kF", vte_sequence_handler_complain_key},
-#line 78 "vteseq-2.gperf"
+#line 95 "vteseq-2.gperf"
       {"FF", vte_sequence_handler_complain_key},
-#line 134 "vteseq-2.gperf"
+#line 151 "vteseq-2.gperf"
       {"SF", vte_sequence_handler_SF},
-#line 259 "vteseq-2.gperf"
+#line 276 "vteseq-2.gperf"
       {"sf", vte_sequence_handler_sf},
-#line 201 "vteseq-2.gperf"
+#line 218 "vteseq-2.gperf"
       {"kP", vte_sequence_handler_complain_key},
-#line 88 "vteseq-2.gperf"
+#line 105 "vteseq-2.gperf"
       {"FP", vte_sequence_handler_complain_key},
-#line 137 "vteseq-2.gperf"
+#line 154 "vteseq-2.gperf"
       {"UP", vte_sequence_handler_UP},
-#line 63 "vteseq-2.gperf"
+#line 80 "vteseq-2.gperf"
       {"DO", vte_sequence_handler_DO},
-#line 199 "vteseq-2.gperf"
+#line 216 "vteseq-2.gperf"
       {"kM", vte_sequence_handler_complain_key},
-#line 85 "vteseq-2.gperf"
+#line 102 "vteseq-2.gperf"
       {"FM", vte_sequence_handler_complain_key},
-#line 79 "vteseq-2.gperf"
+#line 96 "vteseq-2.gperf"
       {"FG", vte_sequence_handler_complain_key},
-#line 162 "vteseq-2.gperf"
+#line 179 "vteseq-2.gperf"
       {"eA", vte_sequence_handler_eA},
-#line 193 "vteseq-2.gperf"
+#line 210 "vteseq-2.gperf"
       {"kD", vte_sequence_handler_complain_key},
-#line 76 "vteseq-2.gperf"
+#line 93 "vteseq-2.gperf"
       {"FD", vte_sequence_handler_complain_key},
-#line 191 "vteseq-2.gperf"
+#line 208 "vteseq-2.gperf"
       {"kB", vte_sequence_handler_complain_key},
-#line 74 "vteseq-2.gperf"
+#line 91 "vteseq-2.gperf"
       {"FB", vte_sequence_handler_complain_key},
-#line 189 "vteseq-2.gperf"
+#line 206 "vteseq-2.gperf"
       {"k;", vte_sequence_handler_complain_key},
-#line 131 "vteseq-2.gperf"
+#line 148 "vteseq-2.gperf"
       {"RI", vte_sequence_handler_RI},
-#line 263 "vteseq-2.gperf"
+#line 280 "vteseq-2.gperf"
       {"ta", vte_sequence_handler_ta},
-#line 62 "vteseq-2.gperf"
+#line 79 "vteseq-2.gperf"
       {"DL", vte_sequence_handler_DL},
-#line 166 "vteseq-2.gperf"
+#line 183 "vteseq-2.gperf"
       {"ff", vte_sequence_handler_noop},
-#line 60 "vteseq-2.gperf"
+#line 77 "vteseq-2.gperf"
       {"AL", vte_sequence_handler_AL},
-#line 61 "vteseq-2.gperf"
+#line 78 "vteseq-2.gperf"
       {"DC", vte_sequence_handler_DC},
-#line 123 "vteseq-2.gperf"
+#line 140 "vteseq-2.gperf"
       {"LE", vte_sequence_handler_LE}
     };
 
@@ -547,7 +550,7 @@
 
       if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
         {
-          register const struct vteseq_two_lookup *resword;
+          register const struct vteseq_2_struct *resword;
 
           if (key < 113)
             {
@@ -1245,9 +1248,9 @@
           return 0;
         compare:
           {
-            register const char *s = resword->name;
+            register const char *s = resword->seq;
 
-            if (*str == *s && !strcmp (str + 1, s + 1))
+            if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
               return resword;
           }
         }

Modified: trunk/src/vteseq-2.gperf
==============================================================================
--- trunk/src/vteseq-2.gperf	(original)
+++ trunk/src/vteseq-2.gperf	Tue Nov 25 23:56:04 2008
@@ -1,5 +1,22 @@
 /* run "make gperf" after modifying this file */
-struct vteseq_two_lookup { const guchar name[2]; VteTerminalSequenceHandler handler; };
+
+%struct-type
+%language=ANSI-C
+%includes
+%enum
+%switch=4
+%readonly-tables
+%define slot-name seq
+%define hash-function-name vteseq_2_hash
+%define lookup-function-name vteseq_2_lookup
+
+%compare-strncmp
+
+struct vteseq_2_struct {
+	char seq[3];
+	VteTerminalSequenceHandler handler;
+};
+
 %%
 "!1", vte_sequence_handler_complain_key
 "!2", vte_sequence_handler_complain_key

Modified: trunk/src/vteseq-n.c
==============================================================================
--- trunk/src/vteseq-n.c	(original)
+++ trunk/src/vteseq-n.c	Tue Nov 25 23:56:04 2008
@@ -1,5 +1,5 @@
-/* C code produced by gperf version 3.0.3 */
-/* Command-line: gperf -g -a -S 4 -t -m 100 -C -P -l -H vteseq_n_hash -N vteseq_n_lookup -Q vteseq_n_stringpool vteseq-n.gperf  */
+/* ANSI-C code produced by gperf version 3.0.3 */
+/* Command-line: gperf -m 100 -C vteseq-n.gperf  */
 /* Computed positions: -k'1,$' */
 
 #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
@@ -26,17 +26,15 @@
       && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
       && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
 /* The character set is not based on ISO-646.  */
-error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf gnu org>."
+#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf gnu org>."
 #endif
 
-#line 2 "vteseq-n.gperf"
-struct vteseq_n_lookup { const gchar *name; VteTerminalSequenceHandler handler; };
-
-#define TOTAL_KEYWORDS 60
-#define MIN_WORD_LENGTH 5
-#define MAX_WORD_LENGTH 34
-#define MIN_HASH_VALUE 8
-#define MAX_HASH_VALUE 71
+#line 17 "vteseq-n.gperf"
+struct vteseq_n_struct {
+	int seq;
+	VteTerminalSequenceHandler handler;
+};
+#include <string.h>
 /* maximum key range = 64, duplicates = 0 */
 
 #ifdef __GNUC__
@@ -47,9 +45,7 @@
 #endif
 #endif
 static unsigned int
-vteseq_n_hash (str, len)
-     register const char *str;
-     register unsigned int len;
+vteseq_n_hash (register const char *str, register unsigned int len)
 {
   static const unsigned char asso_values[] =
     {
@@ -83,70 +79,70 @@
   return len + asso_values[(unsigned char)str[len - 1]] + asso_values[(unsigned char)str[0]+3];
 }
 
-struct vteseq_n_stringpool_t
+struct vteseq_n_pool_t
   {
-    char vteseq_n_stringpool_str0[sizeof("set-mode")];
-    char vteseq_n_stringpool_str1[sizeof("save-mode")];
-    char vteseq_n_stringpool_str2[sizeof("soft-reset")];
-    char vteseq_n_stringpool_str3[sizeof("scroll-up")];
-    char vteseq_n_stringpool_str4[sizeof("cursor-up")];
-    char vteseq_n_stringpool_str5[sizeof("decset")];
-    char vteseq_n_stringpool_str6[sizeof("set-icon-title")];
-    char vteseq_n_stringpool_str7[sizeof("decreset")];
-    char vteseq_n_stringpool_str8[sizeof("set-window-title")];
-    char vteseq_n_stringpool_str9[sizeof("cursor-next-line")];
-    char vteseq_n_stringpool_str10[sizeof("cursor-lower-left")];
-    char vteseq_n_stringpool_str11[sizeof("save-cursor")];
-    char vteseq_n_stringpool_str12[sizeof("next-line")];
-    char vteseq_n_stringpool_str13[sizeof("screen-alignment-test")];
-    char vteseq_n_stringpool_str14[sizeof("cursor-preceding-line")];
-    char vteseq_n_stringpool_str15[sizeof("tab-set")];
-    char vteseq_n_stringpool_str16[sizeof("set-icon-and-window-title")];
-    char vteseq_n_stringpool_str17[sizeof("cursor-character-absolute")];
-    char vteseq_n_stringpool_str18[sizeof("device-status-report")];
-    char vteseq_n_stringpool_str19[sizeof("character-position-absolute")];
-    char vteseq_n_stringpool_str20[sizeof("cursor-forward")];
-    char vteseq_n_stringpool_str21[sizeof("cursor-backward")];
-    char vteseq_n_stringpool_str22[sizeof("dec-device-status-report")];
-    char vteseq_n_stringpool_str23[sizeof("delete-lines")];
-    char vteseq_n_stringpool_str24[sizeof("tab-clear")];
-    char vteseq_n_stringpool_str25[sizeof("character-attributes")];
-    char vteseq_n_stringpool_str26[sizeof("scroll-down")];
-    char vteseq_n_stringpool_str27[sizeof("cursor-down")];
-    char vteseq_n_stringpool_str28[sizeof("delete-characters")];
-    char vteseq_n_stringpool_str29[sizeof("normal-keypad")];
-    char vteseq_n_stringpool_str30[sizeof("reset-mode")];
-    char vteseq_n_stringpool_str31[sizeof("cursor-position")];
-    char vteseq_n_stringpool_str32[sizeof("restore-mode")];
-    char vteseq_n_stringpool_str33[sizeof("utf-8-character-set")];
-    char vteseq_n_stringpool_str34[sizeof("send-primary-device-attributes")];
-    char vteseq_n_stringpool_str35[sizeof("set-scrolling-region")];
-    char vteseq_n_stringpool_str36[sizeof("send-secondary-device-attributes")];
-    char vteseq_n_stringpool_str37[sizeof("application-keypad")];
-    char vteseq_n_stringpool_str38[sizeof("iso8859-1-character-set")];
-    char vteseq_n_stringpool_str39[sizeof("line-position-absolute")];
-    char vteseq_n_stringpool_str40[sizeof("insert-lines")];
-    char vteseq_n_stringpool_str41[sizeof("cursor-forward-tabulation")];
-    char vteseq_n_stringpool_str42[sizeof("restore-cursor")];
-    char vteseq_n_stringpool_str43[sizeof("index")];
-    char vteseq_n_stringpool_str44[sizeof("full-reset")];
-    char vteseq_n_stringpool_str45[sizeof("vte_sequence_handlers_others[] = {")];
-    char vteseq_n_stringpool_str46[sizeof("erase-in-line")];
-    char vteseq_n_stringpool_str47[sizeof("window-manipulation")];
-    char vteseq_n_stringpool_str48[sizeof("horizontal-and-vertical-position")];
-    char vteseq_n_stringpool_str49[sizeof("erase-in-display")];
-    char vteseq_n_stringpool_str50[sizeof("vertical-tab")];
-    char vteseq_n_stringpool_str51[sizeof("insert-blank-characters")];
-    char vteseq_n_stringpool_str52[sizeof("return-terminal-id")];
-    char vteseq_n_stringpool_str53[sizeof("cursor-back-tab")];
-    char vteseq_n_stringpool_str54[sizeof("return-terminal-status")];
-    char vteseq_n_stringpool_str55[sizeof("reverse-index")];
-    char vteseq_n_stringpool_str56[sizeof("form-feed")];
-    char vteseq_n_stringpool_str57[sizeof("request-terminal-parameters")];
-    char vteseq_n_stringpool_str58[sizeof("linux-console-cursor-attributes")];
-    char vteseq_n_stringpool_str59[sizeof("erase-characters")];
+    char vteseq_n_pool_str0[sizeof("set-mode")];
+    char vteseq_n_pool_str1[sizeof("save-mode")];
+    char vteseq_n_pool_str2[sizeof("soft-reset")];
+    char vteseq_n_pool_str3[sizeof("scroll-up")];
+    char vteseq_n_pool_str4[sizeof("cursor-up")];
+    char vteseq_n_pool_str5[sizeof("decset")];
+    char vteseq_n_pool_str6[sizeof("set-icon-title")];
+    char vteseq_n_pool_str7[sizeof("decreset")];
+    char vteseq_n_pool_str8[sizeof("set-window-title")];
+    char vteseq_n_pool_str9[sizeof("cursor-next-line")];
+    char vteseq_n_pool_str10[sizeof("cursor-lower-left")];
+    char vteseq_n_pool_str11[sizeof("save-cursor")];
+    char vteseq_n_pool_str12[sizeof("next-line")];
+    char vteseq_n_pool_str13[sizeof("screen-alignment-test")];
+    char vteseq_n_pool_str14[sizeof("cursor-preceding-line")];
+    char vteseq_n_pool_str15[sizeof("tab-set")];
+    char vteseq_n_pool_str16[sizeof("set-icon-and-window-title")];
+    char vteseq_n_pool_str17[sizeof("cursor-character-absolute")];
+    char vteseq_n_pool_str18[sizeof("device-status-report")];
+    char vteseq_n_pool_str19[sizeof("character-position-absolute")];
+    char vteseq_n_pool_str20[sizeof("cursor-forward")];
+    char vteseq_n_pool_str21[sizeof("cursor-backward")];
+    char vteseq_n_pool_str22[sizeof("dec-device-status-report")];
+    char vteseq_n_pool_str23[sizeof("delete-lines")];
+    char vteseq_n_pool_str24[sizeof("tab-clear")];
+    char vteseq_n_pool_str25[sizeof("character-attributes")];
+    char vteseq_n_pool_str26[sizeof("scroll-down")];
+    char vteseq_n_pool_str27[sizeof("cursor-down")];
+    char vteseq_n_pool_str28[sizeof("delete-characters")];
+    char vteseq_n_pool_str29[sizeof("normal-keypad")];
+    char vteseq_n_pool_str30[sizeof("reset-mode")];
+    char vteseq_n_pool_str31[sizeof("cursor-position")];
+    char vteseq_n_pool_str32[sizeof("restore-mode")];
+    char vteseq_n_pool_str33[sizeof("utf-8-character-set")];
+    char vteseq_n_pool_str34[sizeof("send-primary-device-attributes")];
+    char vteseq_n_pool_str35[sizeof("set-scrolling-region")];
+    char vteseq_n_pool_str36[sizeof("send-secondary-device-attributes")];
+    char vteseq_n_pool_str37[sizeof("application-keypad")];
+    char vteseq_n_pool_str38[sizeof("iso8859-1-character-set")];
+    char vteseq_n_pool_str39[sizeof("line-position-absolute")];
+    char vteseq_n_pool_str40[sizeof("insert-lines")];
+    char vteseq_n_pool_str41[sizeof("cursor-forward-tabulation")];
+    char vteseq_n_pool_str42[sizeof("restore-cursor")];
+    char vteseq_n_pool_str43[sizeof("index")];
+    char vteseq_n_pool_str44[sizeof("full-reset")];
+    char vteseq_n_pool_str45[sizeof("vte_sequence_handlers_others[] = {")];
+    char vteseq_n_pool_str46[sizeof("erase-in-line")];
+    char vteseq_n_pool_str47[sizeof("window-manipulation")];
+    char vteseq_n_pool_str48[sizeof("horizontal-and-vertical-position")];
+    char vteseq_n_pool_str49[sizeof("erase-in-display")];
+    char vteseq_n_pool_str50[sizeof("vertical-tab")];
+    char vteseq_n_pool_str51[sizeof("insert-blank-characters")];
+    char vteseq_n_pool_str52[sizeof("return-terminal-id")];
+    char vteseq_n_pool_str53[sizeof("cursor-back-tab")];
+    char vteseq_n_pool_str54[sizeof("return-terminal-status")];
+    char vteseq_n_pool_str55[sizeof("reverse-index")];
+    char vteseq_n_pool_str56[sizeof("form-feed")];
+    char vteseq_n_pool_str57[sizeof("request-terminal-parameters")];
+    char vteseq_n_pool_str58[sizeof("linux-console-cursor-attributes")];
+    char vteseq_n_pool_str59[sizeof("erase-characters")];
   };
-static const struct vteseq_n_stringpool_t vteseq_n_stringpool_contents =
+static const struct vteseq_n_pool_t vteseq_n_pool_contents =
   {
     "set-mode",
     "save-mode",
@@ -209,140 +205,147 @@
     "linux-console-cursor-attributes",
     "erase-characters"
   };
-#define vteseq_n_stringpool ((const char *) &vteseq_n_stringpool_contents)
+#define vteseq_n_pool ((const char *) &vteseq_n_pool_contents)
 #ifdef __GNUC__
 __inline
 #ifdef __GNUC_STDC_INLINE__
 __attribute__ ((__gnu_inline__))
 #endif
 #endif
-const struct vteseq_n_lookup *
-vteseq_n_lookup (str, len)
-     register const char *str;
-     register unsigned int len;
+const struct vteseq_n_struct *
+vteseq_n_lookup (register const char *str, register unsigned int len)
 {
-  static const struct vteseq_n_lookup wordlist[] =
+  enum
     {
-#line 12 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str0, vte_sequence_handler_set_mode},
-#line 16 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str1, vte_sequence_handler_save_mode},
-#line 22 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str2, vte_sequence_handler_soft_reset},
-#line 17 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str3, vte_sequence_handler_scroll_up},
-#line 13 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str4, vte_sequence_handler_UP},
-#line 8 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str5, vte_sequence_handler_decset},
-#line 44 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str6, vte_sequence_handler_set_icon_title},
-#line 11 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str7, vte_sequence_handler_decreset},
-#line 54 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str8, vte_sequence_handler_set_window_title},
-#line 51 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str9, vte_sequence_handler_cursor_next_line},
-#line 55 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str10, vte_sequence_handler_cursor_lower_left},
-#line 25 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str11, vte_sequence_handler_sc},
-#line 15 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str12, vte_sequence_handler_next_line},
-#line 71 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str13, vte_sequence_handler_screen_alignment_test},
-#line 69 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str14, vte_sequence_handler_cursor_preceding_line},
-#line 10 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str15, vte_sequence_handler_st},
-#line 96 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str16, vte_sequence_handler_set_icon_and_window_title},
-#line 93 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str17, vte_sequence_handler_cursor_character_absolute},
-#line 65 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str18, vte_sequence_handler_device_status_report},
-#line 98 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str19, vte_sequence_handler_character_position_absolute},
+      TOTAL_KEYWORDS = 60,
+      MIN_WORD_LENGTH = 5,
+      MAX_WORD_LENGTH = 34,
+      MIN_HASH_VALUE = 8,
+      MAX_HASH_VALUE = 71
+    };
+
+  static const struct vteseq_n_struct wordlist[] =
+    {
+#line 31 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str0, vte_sequence_handler_set_mode},
+#line 35 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str1, vte_sequence_handler_save_mode},
 #line 41 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str20, vte_sequence_handler_RI},
-#line 46 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str21, vte_sequence_handler_LE},
-#line 90 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str22, vte_sequence_handler_dec_device_status_report},
-#line 28 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str23, vte_sequence_handler_delete_lines},
-#line 18 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str24, vte_sequence_handler_tab_clear},
-#line 64 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str25, vte_sequence_handler_character_attributes},
-#line 26 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str26, vte_sequence_handler_scroll_down},
-#line 23 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str27, vte_sequence_handler_DO},
-#line 56 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str28, vte_sequence_handler_DC},
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str2, vte_sequence_handler_soft_reset},
 #line 36 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str29, vte_sequence_handler_normal_keypad},
-#line 21 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str30, vte_sequence_handler_reset_mode},
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str3, vte_sequence_handler_scroll_up},
+#line 32 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str4, vte_sequence_handler_UP},
+#line 27 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str5, vte_sequence_handler_decset},
+#line 63 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str6, vte_sequence_handler_set_icon_title},
+#line 30 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str7, vte_sequence_handler_decreset},
+#line 73 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str8, vte_sequence_handler_set_window_title},
+#line 70 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str9, vte_sequence_handler_cursor_next_line},
+#line 74 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str10, vte_sequence_handler_cursor_lower_left},
+#line 44 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str11, vte_sequence_handler_sc},
+#line 34 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str12, vte_sequence_handler_next_line},
+#line 90 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str13, vte_sequence_handler_screen_alignment_test},
+#line 88 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str14, vte_sequence_handler_cursor_preceding_line},
+#line 29 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str15, vte_sequence_handler_st},
+#line 115 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str16, vte_sequence_handler_set_icon_and_window_title},
+#line 112 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str17, vte_sequence_handler_cursor_character_absolute},
+#line 84 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str18, vte_sequence_handler_device_status_report},
+#line 117 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str19, vte_sequence_handler_character_position_absolute},
+#line 60 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str20, vte_sequence_handler_RI},
+#line 65 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str21, vte_sequence_handler_LE},
+#line 109 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str22, vte_sequence_handler_dec_device_status_report},
 #line 47 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str31, vte_sequence_handler_cursor_position},
-#line 31 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str32, vte_sequence_handler_restore_mode},
-#line 61 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str33, vte_sequence_handler_utf_8_charset},
-#line 107 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str34, vte_sequence_handler_send_primary_device_attributes},
-#line 66 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str35, vte_sequence_handler_set_scrolling_region},
-#line 110 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str36, vte_sequence_handler_send_secondary_device_attributes},
-#line 57 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str37, vte_sequence_handler_application_keypad},
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str23, vte_sequence_handler_delete_lines},
+#line 37 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str24, vte_sequence_handler_tab_clear},
 #line 83 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str38, vte_sequence_handler_local_charset},
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str25, vte_sequence_handler_character_attributes},
+#line 45 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str26, vte_sequence_handler_scroll_down},
+#line 42 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str27, vte_sequence_handler_DO},
+#line 75 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str28, vte_sequence_handler_DC},
+#line 55 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str29, vte_sequence_handler_normal_keypad},
+#line 40 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str30, vte_sequence_handler_reset_mode},
+#line 66 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str31, vte_sequence_handler_cursor_position},
+#line 50 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str32, vte_sequence_handler_restore_mode},
+#line 80 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str33, vte_sequence_handler_utf_8_charset},
+#line 126 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str34, vte_sequence_handler_send_primary_device_attributes},
+#line 85 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str35, vte_sequence_handler_set_scrolling_region},
+#line 129 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str36, vte_sequence_handler_send_secondary_device_attributes},
 #line 76 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str39, vte_sequence_handler_line_position_absolute},
-#line 30 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str40, vte_sequence_handler_insert_lines},
-#line 94 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str41, vte_sequence_handler_ta},
-#line 43 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str42, vte_sequence_handler_rc},
-#line 7 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str43, vte_sequence_handler_index},
-#line 19 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str44, vte_sequence_handler_full_reset},
-#line 4 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str45},
-#line 34 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str46, vte_sequence_handler_erase_in_line},
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str37, vte_sequence_handler_application_keypad},
+#line 102 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str38, vte_sequence_handler_local_charset},
+#line 95 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str39, vte_sequence_handler_line_position_absolute},
+#line 49 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str40, vte_sequence_handler_insert_lines},
+#line 113 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str41, vte_sequence_handler_ta},
 #line 62 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str47, vte_sequence_handler_window_manipulation},
-#line 109 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str48, vte_sequence_handler_horizontal_and_vertical_position},
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str42, vte_sequence_handler_rc},
+#line 26 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str43, vte_sequence_handler_index},
+#line 38 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str44, vte_sequence_handler_full_reset},
+#line 23 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str45},
 #line 53 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str49, vte_sequence_handler_erase_in_display},
-#line 33 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str50, vte_sequence_handler_vertical_tab},
-#line 80 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str51, vte_sequence_handler_insert_blank_characters},
-#line 59 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str52, vte_sequence_handler_return_terminal_id},
-#line 45 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str53, vte_sequence_handler_bt},
-#line 77 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str54, vte_sequence_handler_return_terminal_status},
-#line 37 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str55, vte_sequence_handler_reverse_index},
-#line 14 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str56, vte_sequence_handler_form_feed},
-#line 99 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str57, vte_sequence_handler_request_terminal_parameters},
-#line 108 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str58, vte_sequence_handler_noop},
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str46, vte_sequence_handler_erase_in_line},
+#line 81 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str47, vte_sequence_handler_window_manipulation},
+#line 128 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str48, vte_sequence_handler_horizontal_and_vertical_position},
+#line 72 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str49, vte_sequence_handler_erase_in_display},
 #line 52 "vteseq-n.gperf"
-      {(int)(long)&((struct vteseq_n_stringpool_t *)0)->vteseq_n_stringpool_str59, vte_sequence_handler_erase_characters}
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str50, vte_sequence_handler_vertical_tab},
+#line 99 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str51, vte_sequence_handler_insert_blank_characters},
+#line 78 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str52, vte_sequence_handler_return_terminal_id},
+#line 64 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str53, vte_sequence_handler_bt},
+#line 96 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str54, vte_sequence_handler_return_terminal_status},
+#line 56 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str55, vte_sequence_handler_reverse_index},
+#line 33 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str56, vte_sequence_handler_form_feed},
+#line 118 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str57, vte_sequence_handler_request_terminal_parameters},
+#line 127 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str58, vte_sequence_handler_noop},
+#line 71 "vteseq-n.gperf"
+      {(int)(long)&((struct vteseq_n_pool_t *)0)->vteseq_n_pool_str59, vte_sequence_handler_erase_characters}
     };
 
   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
@@ -351,7 +354,7 @@
 
       if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
         {
-          register const struct vteseq_n_lookup *resword;
+          register const struct vteseq_n_struct *resword;
 
           if (key < 39)
             {
@@ -806,7 +809,7 @@
           return 0;
         compare:
           {
-            register const char *s = resword->name + vteseq_n_stringpool;
+            register const char *s = resword->seq + vteseq_n_pool;
 
             if (*str == *s && !memcmp (str + 1, s + 1, len - 1))
               return resword;

Modified: trunk/src/vteseq-n.gperf
==============================================================================
--- trunk/src/vteseq-n.gperf	(original)
+++ trunk/src/vteseq-n.gperf	Tue Nov 25 23:56:04 2008
@@ -1,5 +1,24 @@
 /* run "make gperf" after modifying this file */
-struct vteseq_n_lookup { const gchar *name; VteTerminalSequenceHandler handler; };
+
+%struct-type
+%language=ANSI-C
+%includes
+%enum
+%switch=4
+%readonly-tables
+%define slot-name seq
+%define hash-function-name vteseq_n_hash
+%define lookup-function-name vteseq_n_lookup
+
+%compare-lengths
+%pic
+%define string-pool-name vteseq_n_pool
+
+struct vteseq_n_struct {
+	int seq;
+	VteTerminalSequenceHandler handler;
+};
+
 %%
 vte_sequence_handlers_others[] = {
 #"..rp", 0

Modified: trunk/src/vteseq.c
==============================================================================
--- trunk/src/vteseq.c	(original)
+++ trunk/src/vteseq.c	Tue Nov 25 23:56:04 2008
@@ -4004,14 +4004,24 @@
 
 
 /* LOOKUP */
+
+static const struct vteseq_2_struct *
+vteseq_2_lookup (register const char *str, register unsigned int len);
+
 #include"vteseq-2.c"
+
+static const struct vteseq_n_struct *
+vteseq_n_lookup (register const char *str, register unsigned int len);
+
 #include"vteseq-n.c"
+
+
 VteTerminalSequenceHandler
 _vte_sequence_get_handler (const char *code)
 {
 	/* all codes at least two characters... */
 	if (code[2] == '\0')
-		return vteseq_2_lookup ((const guchar *)code);
+		return (vteseq_2_lookup ((const char *)code, 2))->handler;
 	else
-		return vteseq_n_lookup ((const guchar *)code, strlen (code));
+		return (vteseq_n_lookup ((const char *)code, strlen (code)))->handler;
 }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]