diff options
Diffstat (limited to 'WWW/Library')
-rw-r--r-- | WWW/Library/Implementation/HTFormat.c | 17 | ||||
-rw-r--r-- | WWW/Library/Implementation/HTMIME.c | 117 | ||||
-rw-r--r-- | WWW/Library/Implementation/HTUtils.h | 10 | ||||
-rw-r--r-- | WWW/Library/Implementation/SGML.c | 8 | ||||
-rw-r--r-- | WWW/Library/Implementation/dtd_util.c | 15 | ||||
-rw-r--r-- | WWW/Library/Implementation/makefile.in | 5 | ||||
-rw-r--r-- | WWW/Library/Implementation/src0_HTMLDTD.h | 366 | ||||
-rw-r--r-- | WWW/Library/Implementation/src1_HTMLDTD.h | 366 |
8 files changed, 633 insertions, 271 deletions
diff --git a/WWW/Library/Implementation/HTFormat.c b/WWW/Library/Implementation/HTFormat.c index f7b4f24b..5818e8a6 100644 --- a/WWW/Library/Implementation/HTFormat.c +++ b/WWW/Library/Implementation/HTFormat.c @@ -1,5 +1,5 @@ /* - * $LynxId: HTFormat.c,v 1.62 2007/08/02 20:12:22 tom Exp $ + * $LynxId: HTFormat.c,v 1.63 2008/09/10 23:22:59 tom Exp $ * * Manage different file formats HTFormat.c * ============================= @@ -101,6 +101,14 @@ void HTSetPresentation(const char *representation, if (pres == NULL) outofmem(__FILE__, "HTSetPresentation"); + CTRACE2(TRACE_CFG, + (tfp, + "HTSetPresentation rep=%s, command=%s, test=%s, qual=%f\n", + NonNull(representation), + NonNull(command), + NonNull(testcommand), + quality)); + pres->rep = HTAtom_for(representation); pres->rep_out = WWW_PRESENT; /* Fixed for now ... :-) */ pres->converter = HTSaveAndExecute; /* Fixed for now ... */ @@ -153,6 +161,13 @@ void HTSetConversion(const char *representation_in, if (pres == NULL) outofmem(__FILE__, "HTSetConversion"); + CTRACE2(TRACE_CFG, + (tfp, + "HTSetConversion rep_in=%s, rep_out=%s, qual=%f\n", + NonNull(representation_in), + NonNull(representation_out), + quality)); + pres->rep = HTAtom_for(representation_in); pres->rep_out = HTAtom_for(representation_out); pres->converter = converter; diff --git a/WWW/Library/Implementation/HTMIME.c b/WWW/Library/Implementation/HTMIME.c index 9e6c03fd..df5115b6 100644 --- a/WWW/Library/Implementation/HTMIME.c +++ b/WWW/Library/Implementation/HTMIME.c @@ -1,5 +1,5 @@ /* - * $LynxId: HTMIME.c,v 1.62 2007/07/03 00:16:30 tom Exp $ + * $LynxId: HTMIME.c,v 1.64 2008/09/17 00:04:44 tom Exp $ * * MIME Message Parse HTMIME.c * ================== @@ -37,6 +37,16 @@ typedef enum { MIME_TRANSPARENT, /* put straight through to target ASAP! */ + /* states for "Transfer-Encoding: chunked" */ + MIME_CHUNKED, + mcCHUNKED_COUNT_DIGIT, + mcCHUNKED_COUNT_CR, + mcCHUNKED_COUNT_LF, + mcCHUNKED_EXTENSION, + mcCHUNKED_DATA, + mcCHUNKED_DATA_CR, + mcCHUNKED_DATA_LF, + /* character state-machine */ miBEGINNING_OF_LINE, /* first character and not a continuation */ miA, miACCEPT_RANGES, @@ -138,8 +148,12 @@ struct _HTStream { char *refresh_url; /* "Refresh:" URL */ - HTFormat encoding; /* Content-Transfer-Encoding */ + HTFormat c_t_encoding; /* Content-Transfer-Encoding */ char *compression_encoding; + + BOOL chunked_encoding; /* Transfer-Encoding: chunked */ + long chunked_size; /* ...counter for "chunked" */ + HTFormat format; /* Content-Type */ HTStream *target; /* While writing out */ HTStreamClass targetClass; @@ -471,10 +485,11 @@ static int pumpData(HTStream *me) if (me->target) { me->targetClass = *me->target->isa; /* - * Check for encoding and select state from there, someday, but until - * we have the relevant code, from now push straight through. - FM + * Pump rest of data right through, according to the transfer encoding. */ - me->state = MIME_TRANSPARENT; /* Pump rest of data right through */ + me->state = (me->chunked_encoding + ? MIME_CHUNKED + : MIME_TRANSPARENT); } else { me->state = MIME_IGNORE; /* What else to do? */ } @@ -754,7 +769,7 @@ static int dispatchField(HTStream *me) * Force the Content-Transfer-Encoding value to all lower case. - FM */ LYLowerCase(me->value); - me->encoding = HTAtom_for(me->value); + me->c_t_encoding = HTAtom_for(me->value); break; case miCONTENT_TYPE: HTMIME_TrimDoubleQuotes(me->value); @@ -937,6 +952,8 @@ static int dispatchField(HTStream *me) HTMIME_TrimDoubleQuotes(me->value); CTRACE((tfp, "HTMIME: PICKED UP Transfer-Encoding: '%s'\n", me->value)); + if (!strcmp(me->value, "chunked")) + me->chunked_encoding = YES; break; case miUPGRADE: HTMIME_TrimDoubleQuotes(me->value); @@ -990,9 +1007,82 @@ static int dispatchField(HTStream *me) static void HTMIME_put_character(HTStream *me, char c) { - if (me->state == MIME_TRANSPARENT) { - (*me->targetClass.put_character) (me->target, c); /* MUST BE FAST */ + /* MUST BE FAST */ + switch (me->state) { + begin_transparent: + case MIME_TRANSPARENT: + (*me->targetClass.put_character) (me->target, c); return; + + /* RFC-2616 describes chunked transfer coding */ + case mcCHUNKED_DATA: + (*me->targetClass.put_character) (me->target, c); + me->chunked_size--; + if (me->chunked_size <= 0) + me->state = mcCHUNKED_DATA_CR; + return; + + case mcCHUNKED_DATA_CR: + me->state = mcCHUNKED_DATA_LF; + if (c == CR) { + return; + } + + case mcCHUNKED_DATA_LF: + me->state = MIME_CHUNKED; + if (c == LF) { + return; + } + + CTRACE((tfp, "HTIME_put_character expected LF in chunked data\n")); + me->state = MIME_TRANSPARENT; + goto begin_transparent; + + /* FALLTHRU */ + begin_chunked: + case MIME_CHUNKED: + me->chunked_size = 0; + me->state = mcCHUNKED_COUNT_DIGIT; + + /* FALLTHRU */ + case mcCHUNKED_COUNT_DIGIT: + if (isxdigit(UCH(c))) { + me->chunked_size <<= 4; + if (isdigit(UCH(c))) + me->chunked_size += UCH(c) - '0'; + else + me->chunked_size += TOUPPER(UCH(c)) - 'A' + 10; + return; + } + if (c == ';') + me->state = mcCHUNKED_EXTENSION; + + /* FALLTHRU */ + case mcCHUNKED_EXTENSION: + if (c != CR && c != LF) { + return; + } + me->state = mcCHUNKED_COUNT_CR; + + /* FALLTHRU */ + case mcCHUNKED_COUNT_CR: + me->state = mcCHUNKED_COUNT_LF; + if (c == CR) { + return; + } + + /* FALLTHRU */ + case mcCHUNKED_COUNT_LF: + me->state = ((me->chunked_size != 0) + ? mcCHUNKED_DATA + : MIME_CHUNKED); + if (c == LF) { + return; + } + goto begin_chunked; + + default: + break; } /* @@ -1025,7 +1115,14 @@ static void HTMIME_put_character(HTStream *me, return; case MIME_TRANSPARENT: /* Not reached see above */ - (*me->targetClass.put_character) (me->target, c); + case MIME_CHUNKED: + case mcCHUNKED_COUNT_DIGIT: + case mcCHUNKED_COUNT_CR: + case mcCHUNKED_COUNT_LF: + case mcCHUNKED_EXTENSION: + case mcCHUNKED_DATA: + case mcCHUNKED_DATA_CR: + case mcCHUNKED_DATA_LF: return; case MIME_NET_ASCII: @@ -2049,7 +2146,7 @@ HTStream *HTMIMEConvert(HTPresentation *pres, me->set_cookie = NULL; /* Not set yet */ me->set_cookie2 = NULL; /* Not set yet */ me->refresh_url = NULL; /* Not set yet */ - me->encoding = 0; /* Not set yet */ + me->c_t_encoding = 0; /* Not set yet */ me->compression_encoding = NULL; /* Not set yet */ me->net_ascii = NO; /* Local character set */ HTAnchor_setUCInfoStage(me->anchor, current_char_set, diff --git a/WWW/Library/Implementation/HTUtils.h b/WWW/Library/Implementation/HTUtils.h index eb794f59..6ea1f42c 100644 --- a/WWW/Library/Implementation/HTUtils.h +++ b/WWW/Library/Implementation/HTUtils.h @@ -1,5 +1,5 @@ /* - * $LynxId: HTUtils.h,v 1.85 2008/07/06 12:55:40 tom Exp $ + * $LynxId: HTUtils.h,v 1.86 2008/09/17 00:52:06 tom Exp $ * * Utility macros for the W3 code library * MACROS FOR GENERAL USE @@ -546,11 +546,11 @@ extern int WWW_TraceMask; * Printing/scanning-formats for "off_t", as well as cast needed to fit. */ #if defined(HAVE_INTTYPES_H) && defined(SIZEOF_OFF_T) -#if SIZEOF_OFF_T == 8 +#if (SIZEOF_OFF_T == 8) && defined(PRId64) #define PRI_off_t PRId64 #define SCN_off_t SCNd64 #define CAST_off_t(n) (int64_t)(n) -#else +#elif defined(PRId32) #define PRI_off_t PRId32 #define SCN_off_t SCNd32 #define CAST_off_t(n) (int32_t)(n) @@ -567,11 +567,11 @@ extern int WWW_TraceMask; * Printing-format for "time_t", as well as cast needed to fit. */ #if defined(HAVE_INTTYPES_H) && defined(SIZEOF_TIME_T) -#if SIZEOF_TIME_T == 8 +#if (SIZEOF_TIME_T == 8) && defined(PRId64) #define PRI_time_t PRId64 #define SCN_time_t SCNd64 #define CAST_time_t(n) (int64_t)(n) -#else +#elif defined(PRId32) #define PRI_time_t PRId32 #define SCN_time_t SCNd32 #define CAST_time_t(n) (int32_t)(n) diff --git a/WWW/Library/Implementation/SGML.c b/WWW/Library/Implementation/SGML.c index 51e7895b..accc23a2 100644 --- a/WWW/Library/Implementation/SGML.c +++ b/WWW/Library/Implementation/SGML.c @@ -1,5 +1,5 @@ /* - * $LynxId: SGML.c,v 1.114 2008/09/10 12:56:58 tom Exp $ + * $LynxId: SGML.c,v 1.115 2008/09/17 00:45:07 tom Exp $ * * General SGML Parser code SGML.c * ======================== @@ -876,12 +876,12 @@ static void handle_processing_instruction(HTStream *context) CTRACE((tfp, "SGML Processing instruction:\n<%s>\n", s)); - if (!strncmp(s, "?xml", 4)) { + if (!strncmp(s, "?xml ", 5)) { int flag = context->T.decode_utf8; context->strict_xml = TRUE; /* - * Switch to UTF-8 unless the encoding is explicitly not "utf-8". + * Switch to UTF-8 if the encoding is explicitly "utf-8". */ if (!flag) { char *t = strstr(s, "encoding="); @@ -891,8 +891,6 @@ static void handle_processing_instruction(HTStream *context) if (*t == '"') ++t; flag = !strncmp(t, "utf-8", 5); - } else { - flag = TRUE; } if (flag) { CTRACE((tfp, "...Use UTF-8 for XML\n")); diff --git a/WWW/Library/Implementation/dtd_util.c b/WWW/Library/Implementation/dtd_util.c index 268d19ed..c50ac740 100644 --- a/WWW/Library/Implementation/dtd_util.c +++ b/WWW/Library/Implementation/dtd_util.c @@ -1,5 +1,5 @@ /* - * $LynxId: dtd_util.c,v 1.28 2008/08/18 23:42:12 tom Exp $ + * $LynxId: dtd_util.c,v 1.31 2008/09/16 23:43:49 tom Exp $ * * Given a SGML_dtd structure, write a corresponding flat file, or "C" source. * Given the flat-file, write the "C" source. @@ -297,7 +297,7 @@ static void dump_src_HTTag(FILE *output, const SGML_dtd * dtd, int which) if (!tag->can_justify) P_macro = "P0"; #endif - PrintF(output, 19, " { %s(\"%s\"),", P_macro, tag->name); + PrintF(output, 19, " { %s(%s),", P_macro, tag->name); PrintF(output, 16, "%s_attr,", XXX_attr(dtd, which)); PrintF(output, 28, "HTML_%s_ATTRIBUTES,", NameOfAttrs(dtd, which)); PrintF(output, 14, "%s,", SGMLContent2s(tag->contents)); @@ -349,6 +349,7 @@ static void dump_source(FILE *output, const SGML_dtd * dtd, int dtd_version) } NOTE("/* *INDENT-ON* */"); NOTE(""); + NOTE("/* justification-flags */"); NOTE("#undef N"); NOTE("#undef i"); NOTE("#undef h"); @@ -356,16 +357,20 @@ static void dump_source(FILE *output, const SGML_dtd * dtd, int dtd_version) NOTE("#undef x"); NOTE(""); NOTE("#undef T"); - + NOTE(""); + NOTE("/* tag-names */"); + for (j = 0; j <= dtd->number_of_tags; ++j) { + fprintf(output, "#undef %s\n", DEF_name(dtd, j)); + } NOTE(""); NOTE("/* these definitions are used in the tags-tables */"); NOTE("#undef P"); NOTE("#undef P_"); NOTE("#ifdef USE_COLOR_STYLE"); - NOTE("#define P_(x) x , (sizeof x) -1"); + NOTE("#define P_(x) #x, (sizeof #x) -1"); NOTE("#define NULL_HTTag_ NULL, 0"); NOTE("#else"); - NOTE("#define P_(x) x"); + NOTE("#define P_(x) #x"); NOTE("#define NULL_HTTag_ NULL"); NOTE("#endif"); NOTE(""); diff --git a/WWW/Library/Implementation/makefile.in b/WWW/Library/Implementation/makefile.in index 01e74137..dc8d55d7 100644 --- a/WWW/Library/Implementation/makefile.in +++ b/WWW/Library/Implementation/makefile.in @@ -1,4 +1,4 @@ -# $LynxId: makefile.in,v 1.18 2008/07/08 00:06:40 tom Exp $ +# $LynxId: makefile.in,v 1.19 2008/09/17 01:14:02 tom Exp $ # Make WWW under unix for a.n.other unix system (bsd) # Use this as a template @@ -179,6 +179,9 @@ clean : rm -f dtd_util$x rm -f $(LOB)/*$o +distclean : clean + @echo made $@ + tags: ctags *.[ch] diff --git a/WWW/Library/Implementation/src0_HTMLDTD.h b/WWW/Library/Implementation/src0_HTMLDTD.h index 7ab6d505..19431ef7 100644 --- a/WWW/Library/Implementation/src0_HTMLDTD.h +++ b/WWW/Library/Implementation/src0_HTMLDTD.h @@ -1,4 +1,4 @@ -/* $LynxId: src0_HTMLDTD.h,v 1.6 2008/07/15 22:43:49 tom Exp $ */ +/* $LynxId: src0_HTMLDTD.h,v 1.9 2008/09/16 23:47:45 tom Exp $ */ #ifndef src_HTMLDTD_H0 #define src_HTMLDTD_H0 1 @@ -1034,6 +1034,7 @@ static const attr ul_attr[] = { /* DIR attributes */ /* *INDENT-ON* */ +/* justification-flags */ #undef N #undef i #undef h @@ -1042,14 +1043,135 @@ static const attr ul_attr[] = { /* DIR attributes */ #undef T +/* tag-names */ +#undef A +#undef ABBR +#undef ACRONYM +#undef ADDRESS +#undef APPLET +#undef AREA +#undef AU +#undef AUTHOR +#undef B +#undef BANNER +#undef BASE +#undef BASEFONT +#undef BDO +#undef BGSOUND +#undef BIG +#undef BLINK +#undef BLOCKQUOTE +#undef BODY +#undef BODYTEXT +#undef BQ +#undef BR +#undef BUTTON +#undef CAPTION +#undef CENTER +#undef CITE +#undef CODE +#undef COL +#undef COLGROUP +#undef COMMENT +#undef CREDIT +#undef DD +#undef DEL +#undef DFN +#undef DIR +#undef DIV +#undef DL +#undef DLC +#undef DT +#undef EM +#undef EMBED +#undef FIELDSET +#undef FIG +#undef FN +#undef FONT +#undef FORM +#undef FRAME +#undef FRAMESET +#undef H1 +#undef H2 +#undef H3 +#undef H4 +#undef H5 +#undef H6 +#undef HEAD +#undef HR +#undef HTML +#undef HY +#undef I +#undef IFRAME +#undef IMG +#undef INPUT +#undef INS +#undef ISINDEX +#undef KBD +#undef KEYGEN +#undef LABEL +#undef LEGEND +#undef LH +#undef LI +#undef LINK +#undef LISTING +#undef MAP +#undef MARQUEE +#undef MATH +#undef MENU +#undef META +#undef NEXTID +#undef NOFRAMES +#undef NOTE +#undef OBJECT +#undef OL +#undef OPTION +#undef OVERLAY +#undef P +#undef PARAM +#undef PLAINTEXT +#undef PRE +#undef Q +#undef S +#undef SAMP +#undef SCRIPT +#undef SELECT +#undef SHY +#undef SMALL +#undef SPAN +#undef SPOT +#undef STRIKE +#undef STRONG +#undef STYLE +#undef SUB +#undef SUP +#undef TAB +#undef TABLE +#undef TBODY +#undef TD +#undef TEXTAREA +#undef TEXTFLOW +#undef TFOOT +#undef TH +#undef THEAD +#undef TITLE +#undef TR +#undef TT +#undef U +#undef UL +#undef VAR +#undef WBR +#undef XMP +#undef OBJECT_PCDATA + /* these definitions are used in the tags-tables */ #undef P #undef P_ #ifdef USE_COLOR_STYLE -#define P_(x) x , (sizeof x) -1 +#define P_(x) #x, (sizeof #x) -1 #define NULL_HTTag_ NULL, 0 #else -#define P_(x) x +#define P_(x) #x #define NULL_HTTag_ NULL #endif @@ -1066,128 +1188,128 @@ static const attr ul_attr[] = { /* DIR attributes */ #endif /* once_HTMLDTD */ /* *INDENT-OFF* */ static const HTTag tags_table0[HTML_ALL_ELEMENTS] = { - { P("A"), a_attr, HTML_A_ATTRIBUTES, SGML_EMPTY, T_A}, - { P("ABBR"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_ABBR}, - { P("ACRONYM"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_ACRONYM}, - { P("ADDRESS"), address_attr, HTML_ADDRESS_ATTRIBUTES, SGML_MIXED, T_ADDRESS}, - { P("APPLET"), applet_attr, HTML_APPLET_ATTRIBUTES, SGML_MIXED, T_APPLET}, - { P("AREA"), area_attr, HTML_AREA_ATTRIBUTES, SGML_EMPTY, T_AREA}, - { P("AU"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_AU}, - { P("AUTHOR"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_AUTHOR}, - { P("B"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_B}, - { P0("BANNER"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BANNER}, - { P("BASE"), base_attr, HTML_BASE_ATTRIBUTES, SGML_EMPTY, T_BASE}, - { P("BASEFONT"), font_attr, HTML_FONT_ATTRIBUTES, SGML_EMPTY, T_BASEFONT}, - { P("BDO"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BDO}, - { P("BGSOUND"), bgsound_attr, HTML_BGSOUND_ATTRIBUTES, SGML_EMPTY, T_BGSOUND}, - { P("BIG"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BIG}, - { P("BLINK"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_BLINK}, - { P("BLOCKQUOTE"),bq_attr, HTML_BQ_ATTRIBUTES, SGML_MIXED, T_BLOCKQUOTE}, - { P("BODY"), body_attr, HTML_BODY_ATTRIBUTES, SGML_MIXED, T_BODY}, - { P("BODYTEXT"), bodytext_attr, HTML_BODYTEXT_ATTRIBUTES, SGML_MIXED, T_BODYTEXT}, - { P("BQ"), bq_attr, HTML_BQ_ATTRIBUTES, SGML_MIXED, T_BQ}, - { P("BR"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_BR}, - { P("BUTTON"), button_attr, HTML_BUTTON_ATTRIBUTES, SGML_MIXED, T_BUTTON}, - { P("CAPTION"), caption_attr, HTML_CAPTION_ATTRIBUTES, SGML_MIXED, T_CAPTION}, - { P("CENTER"), div_attr, HTML_DIV_ATTRIBUTES, SGML_MIXED, T_CENTER}, - { P("CITE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_CITE}, - { P("CODE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_CODE}, - { P("COL"), col_attr, HTML_COL_ATTRIBUTES, SGML_EMPTY, T_COL}, - { P("COLGROUP"), col_attr, HTML_COL_ATTRIBUTES, SGML_EMPTY, T_COLGROUP}, - { P("COMMENT"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_COMMENT}, - { P("CREDIT"), credit_attr, HTML_CREDIT_ATTRIBUTES, SGML_MIXED, T_CREDIT}, - { P("DD"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_DD}, - { P("DEL"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DEL}, - { P("DFN"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DFN}, - { P("DIR"), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_DIR}, - { P("DIV"), div_attr, HTML_DIV_ATTRIBUTES, SGML_MIXED, T_DIV}, - { P("DL"), dl_attr, HTML_DL_ATTRIBUTES, SGML_MIXED, T_DL}, - { P("DLC"), dl_attr, HTML_DL_ATTRIBUTES, SGML_MIXED, T_DLC}, - { P("DT"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_DT}, - { P("EM"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_EM}, - { P("EMBED"), embed_attr, HTML_EMBED_ATTRIBUTES, SGML_EMPTY, T_EMBED}, - { P("FIELDSET"), fieldset_attr, HTML_FIELDSET_ATTRIBUTES, SGML_MIXED, T_FIELDSET}, - { P("FIG"), fig_attr, HTML_FIG_ATTRIBUTES, SGML_MIXED, T_FIG}, - { P("FN"), fn_attr, HTML_FN_ATTRIBUTES, SGML_MIXED, T_FN}, - { P("FONT"), font_attr, HTML_FONT_ATTRIBUTES, SGML_EMPTY, T_FONT}, - { P("FORM"), form_attr, HTML_FORM_ATTRIBUTES, SGML_EMPTY, T_FORM}, - { P("FRAME"), frame_attr, HTML_FRAME_ATTRIBUTES, SGML_EMPTY, T_FRAME}, - { P("FRAMESET"), frameset_attr, HTML_FRAMESET_ATTRIBUTES, SGML_MIXED, T_FRAMESET}, - { P0("H1"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H1}, - { P0("H2"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H2}, - { P0("H3"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H3}, - { P0("H4"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H4}, - { P0("H5"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H5}, - { P0("H6"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H6}, - { P("HEAD"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_HEAD}, - { P("HR"), hr_attr, HTML_HR_ATTRIBUTES, SGML_EMPTY, T_HR}, - { P("HTML"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_HTML}, - { P("HY"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_HY}, - { P("I"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_I}, - { P("IFRAME"), iframe_attr, HTML_IFRAME_ATTRIBUTES, SGML_MIXED, T_IFRAME}, - { P("IMG"), img_attr, HTML_IMG_ATTRIBUTES, SGML_EMPTY, T_IMG}, - { P("INPUT"), input_attr, HTML_INPUT_ATTRIBUTES, SGML_EMPTY, T_INPUT}, - { P("INS"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_INS}, - { P("ISINDEX"), isindex_attr, HTML_ISINDEX_ATTRIBUTES, SGML_EMPTY, T_ISINDEX}, - { P("KBD"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_KBD}, - { P("KEYGEN"), keygen_attr, HTML_KEYGEN_ATTRIBUTES, SGML_EMPTY, T_KEYGEN}, - { P("LABEL"), label_attr, HTML_LABEL_ATTRIBUTES, SGML_MIXED, T_LABEL}, - { P("LEGEND"), legend_attr, HTML_LEGEND_ATTRIBUTES, SGML_MIXED, T_LEGEND}, - { P("LH"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_LH}, - { P("LI"), li_attr, HTML_LI_ATTRIBUTES, SGML_EMPTY, T_LI}, - { P("LINK"), link_attr, HTML_LINK_ATTRIBUTES, SGML_EMPTY, T_LINK}, - { P("LISTING"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_LISTING}, - { P("MAP"), map_attr, HTML_MAP_ATTRIBUTES, SGML_MIXED, T_MAP}, - { P("MARQUEE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_MARQUEE}, - { P("MATH"), math_attr, HTML_MATH_ATTRIBUTES, SGML_LITTERAL,T_MATH}, - { P("MENU"), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_MENU}, - { P("META"), meta_attr, HTML_META_ATTRIBUTES, SGML_EMPTY, T_META}, - { P("NEXTID"), nextid_attr, HTML_NEXTID_ATTRIBUTES, SGML_EMPTY, T_NEXTID}, - { P("NOFRAMES"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_NOFRAMES}, - { P("NOTE"), note_attr, HTML_NOTE_ATTRIBUTES, SGML_MIXED, T_NOTE}, - { P("OBJECT"), object_attr, HTML_OBJECT_ATTRIBUTES, SGML_LITTERAL,T_OBJECT}, - { P("OL"), ol_attr, HTML_OL_ATTRIBUTES, SGML_MIXED, T_OL}, - { P("OPTION"), option_attr, HTML_OPTION_ATTRIBUTES, SGML_EMPTY, T_OPTION}, - { P("OVERLAY"), overlay_attr, HTML_OVERLAY_ATTRIBUTES, SGML_EMPTY, T_OVERLAY}, - { P("P"), p_attr, HTML_P_ATTRIBUTES, SGML_EMPTY, T_P}, - { P("PARAM"), param_attr, HTML_PARAM_ATTRIBUTES, SGML_EMPTY, T_PARAM}, - { P("PLAINTEXT"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_PLAINTEXT}, - { P0("PRE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_PRE}, - { P("Q"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_Q}, - { P("S"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_S}, - { P("SAMP"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SAMP}, - { P("SCRIPT"), script_attr, HTML_SCRIPT_ATTRIBUTES, SGML_LITTERAL,T_SCRIPT}, - { P("SELECT"), select_attr, HTML_SELECT_ATTRIBUTES, SGML_MIXED, T_SELECT}, - { P("SHY"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_SHY}, - { P("SMALL"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SMALL}, - { P("SPAN"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SPAN}, - { P("SPOT"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_SPOT}, - { P("STRIKE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_STRIKE}, - { P("STRONG"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_STRONG}, - { P("STYLE"), style_attr, HTML_STYLE_ATTRIBUTES, SGML_LITTERAL,T_STYLE}, - { P("SUB"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SUB}, - { P("SUP"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SUP}, - { P("TAB"), tab_attr, HTML_TAB_ATTRIBUTES, SGML_EMPTY, T_TAB}, - { P("TABLE"), table_attr, HTML_TABLE_ATTRIBUTES, SGML_MIXED, T_TABLE}, - { P("TBODY"), tr_attr, HTML_TR_ATTRIBUTES, SGML_EMPTY, T_TBODY}, - { P("TD"), td_attr, HTML_TD_ATTRIBUTES, SGML_EMPTY, T_TD}, - { P("TEXTAREA"), textarea_attr, HTML_TEXTAREA_ATTRIBUTES, SGML_LITTERAL,T_TEXTAREA}, - { P("TEXTFLOW"), bodytext_attr, HTML_BODYTEXT_ATTRIBUTES, SGML_MIXED, T_TEXTFLOW}, - { P("TFOOT"), tr_attr, HTML_TR_ATTRIBUTES, SGML_EMPTY, T_TFOOT}, - { P("TH"), td_attr, HTML_TD_ATTRIBUTES, SGML_EMPTY, T_TH}, - { P("THEAD"), tr_attr, HTML_TR_ATTRIBUTES, SGML_EMPTY, T_THEAD}, - { P("TITLE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_RCDATA, T_TITLE}, - { P("TR"), tr_attr, HTML_TR_ATTRIBUTES, SGML_EMPTY, T_TR}, - { P("TT"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_TT}, - { P("U"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_U}, - { P("UL"), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_UL}, - { P("VAR"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_VAR}, - { P("WBR"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_WBR}, - { P0("XMP"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_XMP}, + { P(A), a_attr, HTML_A_ATTRIBUTES, SGML_EMPTY, T_A}, + { P(ABBR), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_ABBR}, + { P(ACRONYM), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_ACRONYM}, + { P(ADDRESS), address_attr, HTML_ADDRESS_ATTRIBUTES, SGML_MIXED, T_ADDRESS}, + { P(APPLET), applet_attr, HTML_APPLET_ATTRIBUTES, SGML_MIXED, T_APPLET}, + { P(AREA), area_attr, HTML_AREA_ATTRIBUTES, SGML_EMPTY, T_AREA}, + { P(AU), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_AU}, + { P(AUTHOR), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_AUTHOR}, + { P(B), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_B}, + { P0(BANNER), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BANNER}, + { P(BASE), base_attr, HTML_BASE_ATTRIBUTES, SGML_EMPTY, T_BASE}, + { P(BASEFONT), font_attr, HTML_FONT_ATTRIBUTES, SGML_EMPTY, T_BASEFONT}, + { P(BDO), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BDO}, + { P(BGSOUND), bgsound_attr, HTML_BGSOUND_ATTRIBUTES, SGML_EMPTY, T_BGSOUND}, + { P(BIG), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BIG}, + { P(BLINK), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_BLINK}, + { P(BLOCKQUOTE), bq_attr, HTML_BQ_ATTRIBUTES, SGML_MIXED, T_BLOCKQUOTE}, + { P(BODY), body_attr, HTML_BODY_ATTRIBUTES, SGML_MIXED, T_BODY}, + { P(BODYTEXT), bodytext_attr, HTML_BODYTEXT_ATTRIBUTES, SGML_MIXED, T_BODYTEXT}, + { P(BQ), bq_attr, HTML_BQ_ATTRIBUTES, SGML_MIXED, T_BQ}, + { P(BR), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_BR}, + { P(BUTTON), button_attr, HTML_BUTTON_ATTRIBUTES, SGML_MIXED, T_BUTTON}, + { P(CAPTION), caption_attr, HTML_CAPTION_ATTRIBUTES, SGML_MIXED, T_CAPTION}, + { P(CENTER), div_attr, HTML_DIV_ATTRIBUTES, SGML_MIXED, T_CENTER}, + { P(CITE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_CITE}, + { P(CODE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_CODE}, + { P(COL), col_attr, HTML_COL_ATTRIBUTES, SGML_EMPTY, T_COL}, + { P(COLGROUP), col_attr, HTML_COL_ATTRIBUTES, SGML_EMPTY, T_COLGROUP}, + { P(COMMENT), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_COMMENT}, + { P(CREDIT), credit_attr, HTML_CREDIT_ATTRIBUTES, SGML_MIXED, T_CREDIT}, + { P(DD), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_DD}, + { P(DEL), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DEL}, + { P(DFN), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DFN}, + { P(DIR), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_DIR}, + { P(DIV), div_attr, HTML_DIV_ATTRIBUTES, SGML_MIXED, T_DIV}, + { P(DL), dl_attr, HTML_DL_ATTRIBUTES, SGML_MIXED, T_DL}, + { P(DLC), dl_attr, HTML_DL_ATTRIBUTES, SGML_MIXED, T_DLC}, + { P(DT), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_DT}, + { P(EM), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_EM}, + { P(EMBED), embed_attr, HTML_EMBED_ATTRIBUTES, SGML_EMPTY, T_EMBED}, + { P(FIELDSET), fieldset_attr, HTML_FIELDSET_ATTRIBUTES, SGML_MIXED, T_FIELDSET}, + { P(FIG), fig_attr, HTML_FIG_ATTRIBUTES, SGML_MIXED, T_FIG}, + { P(FN), fn_attr, HTML_FN_ATTRIBUTES, SGML_MIXED, T_FN}, + { P(FONT), font_attr, HTML_FONT_ATTRIBUTES, SGML_EMPTY, T_FONT}, + { P(FORM), form_attr, HTML_FORM_ATTRIBUTES, SGML_EMPTY, T_FORM}, + { P(FRAME), frame_attr, HTML_FRAME_ATTRIBUTES, SGML_EMPTY, T_FRAME}, + { P(FRAMESET), frameset_attr, HTML_FRAMESET_ATTRIBUTES, SGML_MIXED, T_FRAMESET}, + { P0(H1), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H1}, + { P0(H2), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H2}, + { P0(H3), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H3}, + { P0(H4), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H4}, + { P0(H5), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H5}, + { P0(H6), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H6}, + { P(HEAD), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_HEAD}, + { P(HR), hr_attr, HTML_HR_ATTRIBUTES, SGML_EMPTY, T_HR}, + { P(HTML), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_HTML}, + { P(HY), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_HY}, + { P(I), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_I}, + { P(IFRAME), iframe_attr, HTML_IFRAME_ATTRIBUTES, SGML_MIXED, T_IFRAME}, + { P(IMG), img_attr, HTML_IMG_ATTRIBUTES, SGML_EMPTY, T_IMG}, + { P(INPUT), input_attr, HTML_INPUT_ATTRIBUTES, SGML_EMPTY, T_INPUT}, + { P(INS), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_INS}, + { P(ISINDEX), isindex_attr, HTML_ISINDEX_ATTRIBUTES, SGML_EMPTY, T_ISINDEX}, + { P(KBD), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_KBD}, + { P(KEYGEN), keygen_attr, HTML_KEYGEN_ATTRIBUTES, SGML_EMPTY, T_KEYGEN}, + { P(LABEL), label_attr, HTML_LABEL_ATTRIBUTES, SGML_MIXED, T_LABEL}, + { P(LEGEND), legend_attr, HTML_LEGEND_ATTRIBUTES, SGML_MIXED, T_LEGEND}, + { P(LH), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_LH}, + { P(LI), li_attr, HTML_LI_ATTRIBUTES, SGML_EMPTY, T_LI}, + { P(LINK), link_attr, HTML_LINK_ATTRIBUTES, SGML_EMPTY, T_LINK}, + { P(LISTING), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_LISTING}, + { P(MAP), map_attr, HTML_MAP_ATTRIBUTES, SGML_MIXED, T_MAP}, + { P(MARQUEE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_MARQUEE}, + { P(MATH), math_attr, HTML_MATH_ATTRIBUTES, SGML_LITTERAL,T_MATH}, + { P(MENU), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_MENU}, + { P(META), meta_attr, HTML_META_ATTRIBUTES, SGML_EMPTY, T_META}, + { P(NEXTID), nextid_attr, HTML_NEXTID_ATTRIBUTES, SGML_EMPTY, T_NEXTID}, + { P(NOFRAMES), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_NOFRAMES}, + { P(NOTE), note_attr, HTML_NOTE_ATTRIBUTES, SGML_MIXED, T_NOTE}, + { P(OBJECT), object_attr, HTML_OBJECT_ATTRIBUTES, SGML_LITTERAL,T_OBJECT}, + { P(OL), ol_attr, HTML_OL_ATTRIBUTES, SGML_MIXED, T_OL}, + { P(OPTION), option_attr, HTML_OPTION_ATTRIBUTES, SGML_EMPTY, T_OPTION}, + { P(OVERLAY), overlay_attr, HTML_OVERLAY_ATTRIBUTES, SGML_EMPTY, T_OVERLAY}, + { P(P), p_attr, HTML_P_ATTRIBUTES, SGML_EMPTY, T_P}, + { P(PARAM), param_attr, HTML_PARAM_ATTRIBUTES, SGML_EMPTY, T_PARAM}, + { P(PLAINTEXT), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_PLAINTEXT}, + { P0(PRE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_PRE}, + { P(Q), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_Q}, + { P(S), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_S}, + { P(SAMP), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SAMP}, + { P(SCRIPT), script_attr, HTML_SCRIPT_ATTRIBUTES, SGML_LITTERAL,T_SCRIPT}, + { P(SELECT), select_attr, HTML_SELECT_ATTRIBUTES, SGML_MIXED, T_SELECT}, + { P(SHY), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_SHY}, + { P(SMALL), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SMALL}, + { P(SPAN), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SPAN}, + { P(SPOT), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_SPOT}, + { P(STRIKE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_STRIKE}, + { P(STRONG), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_STRONG}, + { P(STYLE), style_attr, HTML_STYLE_ATTRIBUTES, SGML_LITTERAL,T_STYLE}, + { P(SUB), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SUB}, + { P(SUP), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SUP}, + { P(TAB), tab_attr, HTML_TAB_ATTRIBUTES, SGML_EMPTY, T_TAB}, + { P(TABLE), table_attr, HTML_TABLE_ATTRIBUTES, SGML_MIXED, T_TABLE}, + { P(TBODY), tr_attr, HTML_TR_ATTRIBUTES, SGML_EMPTY, T_TBODY}, + { P(TD), td_attr, HTML_TD_ATTRIBUTES, SGML_EMPTY, T_TD}, + { P(TEXTAREA), textarea_attr, HTML_TEXTAREA_ATTRIBUTES, SGML_LITTERAL,T_TEXTAREA}, + { P(TEXTFLOW), bodytext_attr, HTML_BODYTEXT_ATTRIBUTES, SGML_MIXED, T_TEXTFLOW}, + { P(TFOOT), tr_attr, HTML_TR_ATTRIBUTES, SGML_EMPTY, T_TFOOT}, + { P(TH), td_attr, HTML_TD_ATTRIBUTES, SGML_EMPTY, T_TH}, + { P(THEAD), tr_attr, HTML_TR_ATTRIBUTES, SGML_EMPTY, T_THEAD}, + { P(TITLE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_RCDATA, T_TITLE}, + { P(TR), tr_attr, HTML_TR_ATTRIBUTES, SGML_EMPTY, T_TR}, + { P(TT), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_TT}, + { P(U), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_U}, + { P(UL), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_UL}, + { P(VAR), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_VAR}, + { P(WBR), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_WBR}, + { P0(XMP), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_XMP}, /* additional (alternative variants), not counted in HTML_ELEMENTS: */ /* This one will be used as a temporary substitute within the parser when it has been signalled to parse OBJECT content as MIXED. - kw */ - { P("OBJECT"), object_attr, HTML_OBJECT_ATTRIBUTES, SGML_MIXED, T_OBJECT_PCDATA}, + { P(OBJECT), object_attr, HTML_OBJECT_ATTRIBUTES, SGML_MIXED, T_OBJECT_PCDATA}, }; /* *INDENT-ON* */ diff --git a/WWW/Library/Implementation/src1_HTMLDTD.h b/WWW/Library/Implementation/src1_HTMLDTD.h index 647f766f..6d65a670 100644 --- a/WWW/Library/Implementation/src1_HTMLDTD.h +++ b/WWW/Library/Implementation/src1_HTMLDTD.h @@ -1,4 +1,4 @@ -/* $LynxId: src1_HTMLDTD.h,v 1.6 2008/07/15 22:43:49 tom Exp $ */ +/* $LynxId: src1_HTMLDTD.h,v 1.9 2008/09/16 23:47:45 tom Exp $ */ #ifndef src_HTMLDTD_H1 #define src_HTMLDTD_H1 1 @@ -1034,6 +1034,7 @@ static const attr ul_attr[] = { /* DIR attributes */ /* *INDENT-ON* */ +/* justification-flags */ #undef N #undef i #undef h @@ -1042,14 +1043,135 @@ static const attr ul_attr[] = { /* DIR attributes */ #undef T +/* tag-names */ +#undef A +#undef ABBR +#undef ACRONYM +#undef ADDRESS +#undef APPLET +#undef AREA +#undef AU +#undef AUTHOR +#undef B +#undef BANNER +#undef BASE +#undef BASEFONT +#undef BDO +#undef BGSOUND +#undef BIG +#undef BLINK +#undef BLOCKQUOTE +#undef BODY +#undef BODYTEXT +#undef BQ +#undef BR +#undef BUTTON +#undef CAPTION +#undef CENTER +#undef CITE +#undef CODE +#undef COL +#undef COLGROUP +#undef COMMENT +#undef CREDIT +#undef DD +#undef DEL +#undef DFN +#undef DIR +#undef DIV +#undef DL +#undef DLC +#undef DT +#undef EM +#undef EMBED +#undef FIELDSET +#undef FIG +#undef FN +#undef FONT +#undef FORM +#undef FRAME +#undef FRAMESET +#undef H1 +#undef H2 +#undef H3 +#undef H4 +#undef H5 +#undef H6 +#undef HEAD +#undef HR +#undef HTML +#undef HY +#undef I +#undef IFRAME +#undef IMG +#undef INPUT +#undef INS +#undef ISINDEX +#undef KBD +#undef KEYGEN +#undef LABEL +#undef LEGEND +#undef LH +#undef LI +#undef LINK +#undef LISTING +#undef MAP +#undef MARQUEE +#undef MATH +#undef MENU +#undef META +#undef NEXTID +#undef NOFRAMES +#undef NOTE +#undef OBJECT +#undef OL +#undef OPTION +#undef OVERLAY +#undef P +#undef PARAM +#undef PLAINTEXT +#undef PRE +#undef Q +#undef S +#undef SAMP +#undef SCRIPT +#undef SELECT +#undef SHY +#undef SMALL +#undef SPAN +#undef SPOT +#undef STRIKE +#undef STRONG +#undef STYLE +#undef SUB +#undef SUP +#undef TAB +#undef TABLE +#undef TBODY +#undef TD +#undef TEXTAREA +#undef TEXTFLOW +#undef TFOOT +#undef TH +#undef THEAD +#undef TITLE +#undef TR +#undef TT +#undef U +#undef UL +#undef VAR +#undef WBR +#undef XMP +#undef OBJECT_PCDATA + /* these definitions are used in the tags-tables */ #undef P #undef P_ #ifdef USE_COLOR_STYLE -#define P_(x) x , (sizeof x) -1 +#define P_(x) #x, (sizeof #x) -1 #define NULL_HTTag_ NULL, 0 #else -#define P_(x) x +#define P_(x) #x #define NULL_HTTag_ NULL #endif @@ -1066,128 +1188,128 @@ static const attr ul_attr[] = { /* DIR attributes */ #endif /* once_HTMLDTD */ /* *INDENT-OFF* */ static const HTTag tags_table1[HTML_ALL_ELEMENTS] = { - { P("A"), a_attr, HTML_A_ATTRIBUTES, SGML_MIXED, T_A}, - { P("ABBR"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_ABBR}, - { P("ACRONYM"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_ACRONYM}, - { P("ADDRESS"), address_attr, HTML_ADDRESS_ATTRIBUTES, SGML_MIXED, T_ADDRESS}, - { P("APPLET"), applet_attr, HTML_APPLET_ATTRIBUTES, SGML_MIXED, T_APPLET}, - { P("AREA"), area_attr, HTML_AREA_ATTRIBUTES, SGML_EMPTY, T_AREA}, - { P("AU"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_AU}, - { P("AUTHOR"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_AUTHOR}, - { P("B"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_B}, - { P0("BANNER"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BANNER}, - { P("BASE"), base_attr, HTML_BASE_ATTRIBUTES, SGML_EMPTY, T_BASE}, - { P("BASEFONT"), font_attr, HTML_FONT_ATTRIBUTES, SGML_EMPTY, T_BASEFONT}, - { P("BDO"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BDO}, - { P("BGSOUND"), bgsound_attr, HTML_BGSOUND_ATTRIBUTES, SGML_EMPTY, T_BGSOUND}, - { P("BIG"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BIG}, - { P("BLINK"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BLINK}, - { P("BLOCKQUOTE"),bq_attr, HTML_BQ_ATTRIBUTES, SGML_MIXED, T_BLOCKQUOTE}, - { P("BODY"), body_attr, HTML_BODY_ATTRIBUTES, SGML_MIXED, T_BODY}, - { P("BODYTEXT"), bodytext_attr, HTML_BODYTEXT_ATTRIBUTES, SGML_MIXED, T_BODYTEXT}, - { P("BQ"), bq_attr, HTML_BQ_ATTRIBUTES, SGML_MIXED, T_BQ}, - { P("BR"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_BR}, - { P("BUTTON"), button_attr, HTML_BUTTON_ATTRIBUTES, SGML_MIXED, T_BUTTON}, - { P("CAPTION"), caption_attr, HTML_CAPTION_ATTRIBUTES, SGML_MIXED, T_CAPTION}, - { P("CENTER"), div_attr, HTML_DIV_ATTRIBUTES, SGML_MIXED, T_CENTER}, - { P("CITE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_CITE}, - { P("CODE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_CODE}, - { P("COL"), col_attr, HTML_COL_ATTRIBUTES, SGML_EMPTY, T_COL}, - { P("COLGROUP"), col_attr, HTML_COL_ATTRIBUTES, SGML_ELEMENT, T_COLGROUP}, - { P("COMMENT"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_PCDATA, T_COMMENT}, - { P("CREDIT"), credit_attr, HTML_CREDIT_ATTRIBUTES, SGML_MIXED, T_CREDIT}, - { P("DD"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DD}, - { P("DEL"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DEL}, - { P("DFN"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DFN}, - { P("DIR"), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_DIR}, - { P("DIV"), div_attr, HTML_DIV_ATTRIBUTES, SGML_MIXED, T_DIV}, - { P("DL"), dl_attr, HTML_DL_ATTRIBUTES, SGML_MIXED, T_DL}, - { P("DLC"), dl_attr, HTML_DL_ATTRIBUTES, SGML_MIXED, T_DLC}, - { P("DT"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DT}, - { P("EM"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_EM}, - { P("EMBED"), embed_attr, HTML_EMBED_ATTRIBUTES, SGML_EMPTY, T_EMBED}, - { P("FIELDSET"), fieldset_attr, HTML_FIELDSET_ATTRIBUTES, SGML_MIXED, T_FIELDSET}, - { P("FIG"), fig_attr, HTML_FIG_ATTRIBUTES, SGML_MIXED, T_FIG}, - { P("FN"), fn_attr, HTML_FN_ATTRIBUTES, SGML_MIXED, T_FN}, - { P("FONT"), font_attr, HTML_FONT_ATTRIBUTES, SGML_MIXED, T_FONT}, - { P("FORM"), form_attr, HTML_FORM_ATTRIBUTES, SGML_MIXED, T_FORM}, - { P("FRAME"), frame_attr, HTML_FRAME_ATTRIBUTES, SGML_EMPTY, T_FRAME}, - { P("FRAMESET"), frameset_attr, HTML_FRAMESET_ATTRIBUTES, SGML_ELEMENT, T_FRAMESET}, - { P0("H1"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H1}, - { P0("H2"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H2}, - { P0("H3"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H3}, - { P0("H4"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H4}, - { P0("H5"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H5}, - { P0("H6"), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H6}, - { P("HEAD"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_ELEMENT, T_HEAD}, - { P("HR"), hr_attr, HTML_HR_ATTRIBUTES, SGML_EMPTY, T_HR}, - { P("HTML"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_HTML}, - { P("HY"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_HY}, - { P("I"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_I}, - { P("IFRAME"), iframe_attr, HTML_IFRAME_ATTRIBUTES, SGML_MIXED, T_IFRAME}, - { P("IMG"), img_attr, HTML_IMG_ATTRIBUTES, SGML_EMPTY, T_IMG}, - { P("INPUT"), input_attr, HTML_INPUT_ATTRIBUTES, SGML_EMPTY, T_INPUT}, - { P("INS"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_INS}, - { P("ISINDEX"), isindex_attr, HTML_ISINDEX_ATTRIBUTES, SGML_EMPTY, T_ISINDEX}, - { P("KBD"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_KBD}, - { P("KEYGEN"), keygen_attr, HTML_KEYGEN_ATTRIBUTES, SGML_EMPTY, T_KEYGEN}, - { P("LABEL"), label_attr, HTML_LABEL_ATTRIBUTES, SGML_MIXED, T_LABEL}, - { P("LEGEND"), legend_attr, HTML_LEGEND_ATTRIBUTES, SGML_MIXED, T_LEGEND}, - { P("LH"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_LH}, - { P("LI"), li_attr, HTML_LI_ATTRIBUTES, SGML_MIXED, T_LI}, - { P("LINK"), link_attr, HTML_LINK_ATTRIBUTES, SGML_EMPTY, T_LINK}, - { P("LISTING"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_LISTING}, - { P("MAP"), map_attr, HTML_MAP_ATTRIBUTES, SGML_ELEMENT, T_MAP}, - { P("MARQUEE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_MARQUEE}, - { P("MATH"), math_attr, HTML_MATH_ATTRIBUTES, SGML_PCDATA, T_MATH}, - { P("MENU"), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_MENU}, - { P("META"), meta_attr, HTML_META_ATTRIBUTES, SGML_EMPTY, T_META}, - { P("NEXTID"), nextid_attr, HTML_NEXTID_ATTRIBUTES, SGML_EMPTY, T_NEXTID}, - { P("NOFRAMES"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_NOFRAMES}, - { P("NOTE"), note_attr, HTML_NOTE_ATTRIBUTES, SGML_MIXED, T_NOTE}, - { P("OBJECT"), object_attr, HTML_OBJECT_ATTRIBUTES, SGML_LITTERAL,T_OBJECT}, - { P("OL"), ol_attr, HTML_OL_ATTRIBUTES, SGML_MIXED, T_OL}, - { P("OPTION"), option_attr, HTML_OPTION_ATTRIBUTES, SGML_PCDATA, T_OPTION}, - { P("OVERLAY"), overlay_attr, HTML_OVERLAY_ATTRIBUTES, SGML_PCDATA, T_OVERLAY}, - { P("P"), p_attr, HTML_P_ATTRIBUTES, SGML_MIXED, T_P}, - { P("PARAM"), param_attr, HTML_PARAM_ATTRIBUTES, SGML_EMPTY, T_PARAM}, - { P("PLAINTEXT"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_PLAINTEXT}, - { P0("PRE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_PRE}, - { P("Q"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_Q}, - { P("S"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_S}, - { P("SAMP"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SAMP}, - { P("SCRIPT"), script_attr, HTML_SCRIPT_ATTRIBUTES, SGML_SCRIPT, T_SCRIPT}, - { P("SELECT"), select_attr, HTML_SELECT_ATTRIBUTES, SGML_ELEMENT, T_SELECT}, - { P("SHY"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_SHY}, - { P("SMALL"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SMALL}, - { P("SPAN"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SPAN}, - { P("SPOT"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_SPOT}, - { P("STRIKE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_STRIKE}, - { P("STRONG"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_STRONG}, - { P("STYLE"), style_attr, HTML_STYLE_ATTRIBUTES, SGML_CDATA, T_STYLE}, - { P("SUB"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SUB}, - { P("SUP"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SUP}, - { P("TAB"), tab_attr, HTML_TAB_ATTRIBUTES, SGML_EMPTY, T_TAB}, - { P("TABLE"), table_attr, HTML_TABLE_ATTRIBUTES, SGML_ELEMENT, T_TABLE}, - { P("TBODY"), tr_attr, HTML_TR_ATTRIBUTES, SGML_ELEMENT, T_TBODY}, - { P("TD"), td_attr, HTML_TD_ATTRIBUTES, SGML_MIXED, T_TD}, - { P("TEXTAREA"), textarea_attr, HTML_TEXTAREA_ATTRIBUTES, SGML_PCDATA, T_TEXTAREA}, - { P("TEXTFLOW"), bodytext_attr, HTML_BODYTEXT_ATTRIBUTES, SGML_MIXED, T_TEXTFLOW}, - { P("TFOOT"), tr_attr, HTML_TR_ATTRIBUTES, SGML_ELEMENT, T_TFOOT}, - { P("TH"), td_attr, HTML_TD_ATTRIBUTES, SGML_MIXED, T_TH}, - { P("THEAD"), tr_attr, HTML_TR_ATTRIBUTES, SGML_ELEMENT, T_THEAD}, - { P("TITLE"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_PCDATA, T_TITLE}, - { P("TR"), tr_attr, HTML_TR_ATTRIBUTES, SGML_MIXED, T_TR}, - { P("TT"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_TT}, - { P("U"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_U}, - { P("UL"), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_UL}, - { P("VAR"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_VAR}, - { P("WBR"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_WBR}, - { P0("XMP"), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_XMP}, + { P(A), a_attr, HTML_A_ATTRIBUTES, SGML_MIXED, T_A}, + { P(ABBR), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_ABBR}, + { P(ACRONYM), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_ACRONYM}, + { P(ADDRESS), address_attr, HTML_ADDRESS_ATTRIBUTES, SGML_MIXED, T_ADDRESS}, + { P(APPLET), applet_attr, HTML_APPLET_ATTRIBUTES, SGML_MIXED, T_APPLET}, + { P(AREA), area_attr, HTML_AREA_ATTRIBUTES, SGML_EMPTY, T_AREA}, + { P(AU), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_AU}, + { P(AUTHOR), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_AUTHOR}, + { P(B), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_B}, + { P0(BANNER), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BANNER}, + { P(BASE), base_attr, HTML_BASE_ATTRIBUTES, SGML_EMPTY, T_BASE}, + { P(BASEFONT), font_attr, HTML_FONT_ATTRIBUTES, SGML_EMPTY, T_BASEFONT}, + { P(BDO), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BDO}, + { P(BGSOUND), bgsound_attr, HTML_BGSOUND_ATTRIBUTES, SGML_EMPTY, T_BGSOUND}, + { P(BIG), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BIG}, + { P(BLINK), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_BLINK}, + { P(BLOCKQUOTE), bq_attr, HTML_BQ_ATTRIBUTES, SGML_MIXED, T_BLOCKQUOTE}, + { P(BODY), body_attr, HTML_BODY_ATTRIBUTES, SGML_MIXED, T_BODY}, + { P(BODYTEXT), bodytext_attr, HTML_BODYTEXT_ATTRIBUTES, SGML_MIXED, T_BODYTEXT}, + { P(BQ), bq_attr, HTML_BQ_ATTRIBUTES, SGML_MIXED, T_BQ}, + { P(BR), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_BR}, + { P(BUTTON), button_attr, HTML_BUTTON_ATTRIBUTES, SGML_MIXED, T_BUTTON}, + { P(CAPTION), caption_attr, HTML_CAPTION_ATTRIBUTES, SGML_MIXED, T_CAPTION}, + { P(CENTER), div_attr, HTML_DIV_ATTRIBUTES, SGML_MIXED, T_CENTER}, + { P(CITE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_CITE}, + { P(CODE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_CODE}, + { P(COL), col_attr, HTML_COL_ATTRIBUTES, SGML_EMPTY, T_COL}, + { P(COLGROUP), col_attr, HTML_COL_ATTRIBUTES, SGML_ELEMENT, T_COLGROUP}, + { P(COMMENT), gen_attr, HTML_GEN_ATTRIBUTES, SGML_PCDATA, T_COMMENT}, + { P(CREDIT), credit_attr, HTML_CREDIT_ATTRIBUTES, SGML_MIXED, T_CREDIT}, + { P(DD), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DD}, + { P(DEL), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DEL}, + { P(DFN), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DFN}, + { P(DIR), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_DIR}, + { P(DIV), div_attr, HTML_DIV_ATTRIBUTES, SGML_MIXED, T_DIV}, + { P(DL), dl_attr, HTML_DL_ATTRIBUTES, SGML_MIXED, T_DL}, + { P(DLC), dl_attr, HTML_DL_ATTRIBUTES, SGML_MIXED, T_DLC}, + { P(DT), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_DT}, + { P(EM), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_EM}, + { P(EMBED), embed_attr, HTML_EMBED_ATTRIBUTES, SGML_EMPTY, T_EMBED}, + { P(FIELDSET), fieldset_attr, HTML_FIELDSET_ATTRIBUTES, SGML_MIXED, T_FIELDSET}, + { P(FIG), fig_attr, HTML_FIG_ATTRIBUTES, SGML_MIXED, T_FIG}, + { P(FN), fn_attr, HTML_FN_ATTRIBUTES, SGML_MIXED, T_FN}, + { P(FONT), font_attr, HTML_FONT_ATTRIBUTES, SGML_MIXED, T_FONT}, + { P(FORM), form_attr, HTML_FORM_ATTRIBUTES, SGML_MIXED, T_FORM}, + { P(FRAME), frame_attr, HTML_FRAME_ATTRIBUTES, SGML_EMPTY, T_FRAME}, + { P(FRAMESET), frameset_attr, HTML_FRAMESET_ATTRIBUTES, SGML_ELEMENT, T_FRAMESET}, + { P0(H1), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H1}, + { P0(H2), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H2}, + { P0(H3), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H3}, + { P0(H4), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H4}, + { P0(H5), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H5}, + { P0(H6), h_attr, HTML_H_ATTRIBUTES, SGML_MIXED, T_H6}, + { P(HEAD), gen_attr, HTML_GEN_ATTRIBUTES, SGML_ELEMENT, T_HEAD}, + { P(HR), hr_attr, HTML_HR_ATTRIBUTES, SGML_EMPTY, T_HR}, + { P(HTML), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_HTML}, + { P(HY), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_HY}, + { P(I), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_I}, + { P(IFRAME), iframe_attr, HTML_IFRAME_ATTRIBUTES, SGML_MIXED, T_IFRAME}, + { P(IMG), img_attr, HTML_IMG_ATTRIBUTES, SGML_EMPTY, T_IMG}, + { P(INPUT), input_attr, HTML_INPUT_ATTRIBUTES, SGML_EMPTY, T_INPUT}, + { P(INS), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_INS}, + { P(ISINDEX), isindex_attr, HTML_ISINDEX_ATTRIBUTES, SGML_EMPTY, T_ISINDEX}, + { P(KBD), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_KBD}, + { P(KEYGEN), keygen_attr, HTML_KEYGEN_ATTRIBUTES, SGML_EMPTY, T_KEYGEN}, + { P(LABEL), label_attr, HTML_LABEL_ATTRIBUTES, SGML_MIXED, T_LABEL}, + { P(LEGEND), legend_attr, HTML_LEGEND_ATTRIBUTES, SGML_MIXED, T_LEGEND}, + { P(LH), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_LH}, + { P(LI), li_attr, HTML_LI_ATTRIBUTES, SGML_MIXED, T_LI}, + { P(LINK), link_attr, HTML_LINK_ATTRIBUTES, SGML_EMPTY, T_LINK}, + { P(LISTING), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_LISTING}, + { P(MAP), map_attr, HTML_MAP_ATTRIBUTES, SGML_ELEMENT, T_MAP}, + { P(MARQUEE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_MARQUEE}, + { P(MATH), math_attr, HTML_MATH_ATTRIBUTES, SGML_PCDATA, T_MATH}, + { P(MENU), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_MENU}, + { P(META), meta_attr, HTML_META_ATTRIBUTES, SGML_EMPTY, T_META}, + { P(NEXTID), nextid_attr, HTML_NEXTID_ATTRIBUTES, SGML_EMPTY, T_NEXTID}, + { P(NOFRAMES), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_NOFRAMES}, + { P(NOTE), note_attr, HTML_NOTE_ATTRIBUTES, SGML_MIXED, T_NOTE}, + { P(OBJECT), object_attr, HTML_OBJECT_ATTRIBUTES, SGML_LITTERAL,T_OBJECT}, + { P(OL), ol_attr, HTML_OL_ATTRIBUTES, SGML_MIXED, T_OL}, + { P(OPTION), option_attr, HTML_OPTION_ATTRIBUTES, SGML_PCDATA, T_OPTION}, + { P(OVERLAY), overlay_attr, HTML_OVERLAY_ATTRIBUTES, SGML_PCDATA, T_OVERLAY}, + { P(P), p_attr, HTML_P_ATTRIBUTES, SGML_MIXED, T_P}, + { P(PARAM), param_attr, HTML_PARAM_ATTRIBUTES, SGML_EMPTY, T_PARAM}, + { P(PLAINTEXT), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_PLAINTEXT}, + { P0(PRE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_PRE}, + { P(Q), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_Q}, + { P(S), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_S}, + { P(SAMP), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SAMP}, + { P(SCRIPT), script_attr, HTML_SCRIPT_ATTRIBUTES, SGML_SCRIPT, T_SCRIPT}, + { P(SELECT), select_attr, HTML_SELECT_ATTRIBUTES, SGML_ELEMENT, T_SELECT}, + { P(SHY), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_SHY}, + { P(SMALL), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SMALL}, + { P(SPAN), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SPAN}, + { P(SPOT), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_SPOT}, + { P(STRIKE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_STRIKE}, + { P(STRONG), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_STRONG}, + { P(STYLE), style_attr, HTML_STYLE_ATTRIBUTES, SGML_CDATA, T_STYLE}, + { P(SUB), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SUB}, + { P(SUP), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_SUP}, + { P(TAB), tab_attr, HTML_TAB_ATTRIBUTES, SGML_EMPTY, T_TAB}, + { P(TABLE), table_attr, HTML_TABLE_ATTRIBUTES, SGML_ELEMENT, T_TABLE}, + { P(TBODY), tr_attr, HTML_TR_ATTRIBUTES, SGML_ELEMENT, T_TBODY}, + { P(TD), td_attr, HTML_TD_ATTRIBUTES, SGML_MIXED, T_TD}, + { P(TEXTAREA), textarea_attr, HTML_TEXTAREA_ATTRIBUTES, SGML_PCDATA, T_TEXTAREA}, + { P(TEXTFLOW), bodytext_attr, HTML_BODYTEXT_ATTRIBUTES, SGML_MIXED, T_TEXTFLOW}, + { P(TFOOT), tr_attr, HTML_TR_ATTRIBUTES, SGML_ELEMENT, T_TFOOT}, + { P(TH), td_attr, HTML_TD_ATTRIBUTES, SGML_MIXED, T_TH}, + { P(THEAD), tr_attr, HTML_TR_ATTRIBUTES, SGML_ELEMENT, T_THEAD}, + { P(TITLE), gen_attr, HTML_GEN_ATTRIBUTES, SGML_PCDATA, T_TITLE}, + { P(TR), tr_attr, HTML_TR_ATTRIBUTES, SGML_MIXED, T_TR}, + { P(TT), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_TT}, + { P(U), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_U}, + { P(UL), ul_attr, HTML_UL_ATTRIBUTES, SGML_MIXED, T_UL}, + { P(VAR), gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED, T_VAR}, + { P(WBR), gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY, T_WBR}, + { P0(XMP), gen_attr, HTML_GEN_ATTRIBUTES, SGML_LITTERAL,T_XMP}, /* additional (alternative variants), not counted in HTML_ELEMENTS: */ /* This one will be used as a temporary substitute within the parser when it has been signalled to parse OBJECT content as MIXED. - kw */ - { P("OBJECT"), object_attr, HTML_OBJECT_ATTRIBUTES, SGML_MIXED, T_OBJECT_PCDATA}, + { P(OBJECT), object_attr, HTML_OBJECT_ATTRIBUTES, SGML_MIXED, T_OBJECT_PCDATA}, }; /* *INDENT-ON* */ |