// // Duplicate names between elements and tags // // in the case where a given name applies to both an element and a tag, // m4 requires that I diffrentiate which is which. I settled on the following // prefixes: // // tag_ means I chose to rename an element // attr_ means I chose to rename an attribute of an element // // I believe I made sane choices. The prefixed elements were chosen on the basis // of which was least likely to be used, or which was deprecated, or which was // least *frequently* used you only ever need one title element() which is provided // in the template, but you need many title attributes in a document) // // the following list indicates which element/attributes got which prefix: // // attr_link // link // // attr_abbr // abbr // // cite // tag_cite // // attr_code // code // // dir // tag_dir // // attr_label // label // // attr_object // object // // attr_span // span // // style // tag_style // // title // tag_title // // tag_col // col // empty elements #define base(XX) ) #define meta(XX) ) #define link(XX) ) #define hr(XX)
) #define br(XX)
) #define basefont(XX) ) #define param(XX) ) #define img(XX) ) #define area(XX) ) #define input(XX) ) #define isindex(XX) ) #define tag_col(XX) ) // non-empty elements #define a(XX, YY) (YY)) #define abbr(XX, YY) (YY)) #define acronym(XX, YY) (YY)) #define address(XX, YY)
(YY)
) #define applet(XX, YY) (YY)) #define b(XX, YY) (YY)) #define bdo(XX, YY) (YY)) #define big(XX, YY) (YY)) #define blockquote(XX, YY)
(YY)
) #define body(XX, YY) (YY)) #define button(XX, YY) ) #define caption(XX, YY) (YY)) #define center(XX, YY)
(YY)
) #define tag_cite(XX, YY) (YY)) #define code(XX, YY) (YY)) #define colgroup(XX, YY) (YY)) #define dd(XX, YY)
(YY)
) #define del(XX, YY) (YY)) #define dfn(XX, YY) (YY)) #define tag_dir(XX, YY) (YY)) #define div(XX, YY)
(YY)
) #define dl(XX, YY)
(YY)
) #define dt(XX, YY)
(YY)
) #define em(XX, YY) (YY)) #define fieldset(XX, YY)
(YY)
) #define font(XX, YY) (YY)) #define form(XX, YY)
(YY)
) #define h1(XX, YY)

(YY)

) #define h2(XX, YY)

(YY)

) #define h3(XX, YY)

(YY)

) #define h4(XX, YY)

(YY)

) #define h5(XX, YY)
(YY)
) #define h6(XX, YY)
(YY)
) #define head(XX, YY) (YY)) #define html(XX, YY) (YY)) #define i(XX, YY) (YY)) #define iframe(XX, YY) ) #define ins(XX, YY) (YY)) #define kbd(XX, YY) (YY)) #define label(XX, YY) ) #define legend(XX, YY) (YY)) #define li(XX, YY)
  • (YY)
  • ) #define map(XX, YY) (YY)) #define menu(XX, YY) (YY)) #define noframes(XX, YY) (YY)) #define noscript(XX, YY) ) #define object(XX, YY) (YY)) #define ol(XX, YY)
      (YY)
    ) #define optgroup(XX, YY) (YY)) #define option(XX, YY) ) #define p(XX, YY)

    (YY)

    ) #define pre(XX, YY)
    (YY)
    ) #define q(XX, YY) (YY)) #define s(XX, YY) (YY)) #define samp(XX, YY) (YY)) #define script(XX, YY) ) #define select(XX, YY) ) #define small(XX, YY) (YY)) #define span(XX, YY) (YY)) #define strike(XX, YY) (YY)) #define strong(XX, YY) (YY)) #define style(XX, YY) ) #define sub(XX, YY) (YY)) #define sup(XX, YY) (YY)) #define table(XX, YY) (YY)
    ) #define tbody(XX, YY) (YY)) #define td(XX, YY) (YY)) #define textarea(XX, YY) ) #define tfoot(XX, YY) (YY)) #define th(XX, YY) (YY)) #define thead(XX, YY) (YY)) #define tag_title(XX, YY) (YY)) #define tr(XX, YY) (YY)) #define tt(XX, YY) (YY)) #define u(XX, YY) (YY)) #define ul(XX, YY) ) // attributes #define attr_abbr(XX) abbr="(XX)") #define accept(XX) accept="(XX)") #define acceptcharset(XX) accept-charset="(XX)") #define accesskey(XX) accesskey="(XX)") #define action(XX) action="(XX)") #define align(XX) align="(XX)") #define alink(XX) alink="(XX)") #define alt(XX) alt="(XX)") #define archive(XX) archive="(XX)") #define axis(XX) axis="(XX)") #define background(XX) background="(XX)") #define bgcolor(XX) bgcolor="(XX)") #define border(XX) border="(XX)") #define cellpadding(XX) cellpadding="(XX)") #define cellspacing(XX) cellspacing="(XX)") #define char(XX) char="(XX)") #define charoff(XX) charoff="(XX)") #define charset(XX) charset="(XX)") #define checked(XX) checked="(XX)") #define cite(XX) cite="(XX)") #define class(XX) class="(XX)") #define classid(XX) classid="(XX)") #define clear(XX) clear="(XX)") #define attr_code(XX) code="(XX)") #define codebase(XX) codebase="(XX)") #define codetype(XX) codetype="(XX)") #define color(XX) color="(XX)") #define cols(XX) cols="(XX)") #define colspan(XX) colspan="(XX)") #define compact(XX) compact="(XX)") #define content(XX) content="(XX)") #define coords(XX) coords="(XX)") #define data(XX) data="(XX)") #define datetime(XX) datetime="(XX)") #define declare(XX) declare="(XX)") #define defer(XX) defer="(XX)") #define dir(XX) dir="(XX)") #define disabled(XX) disabled="(XX)") #define enctype(XX) enctype="(XX)") #define face(XX) face="(XX)") #define for(XX) for="(XX)") #define frame(XX) frame="(XX)") #define frameborder(XX) frameborder="(XX)") #define headers(XX) headers="(XX)") #define height(XX) height="(XX)") #define href(XX) href="(XX)") #define hreflang(XX) hreflang="(XX)") #define hspace(XX) hspace="(XX)") #define httpequiv(XX) http-equiv="(XX)") #define id(XX) id="(XX)") #define ismap(XX) ismap="(XX)") #define attr_label(XX) label="(XX)") #define lang(XX) lang="(XX)") #define language(XX) language="(XX)") #define attr_link(XX) link="(XX)") #define longdesc(XX) longdesc="(XX)") #define marginheight(XX) marginheight="(XX)") #define marginwidth(XX) marginwidth="(XX)") #define maxlength(XX) maxlength="(XX)") #define media(XX) media="(XX)") #define method(XX) method="(XX)") #define multiple(XX) multiple="(XX)") #define name(XX) name="(XX)") #define nohref(XX) nohref="(XX)") #define noshade(XX) noshade="(XX)") #define nowrap(XX) nowrap="(XX)") #define attr_object(XX) object="(XX)") #define onblur(XX) onblur="(XX)") #define onchange(XX) onchange="(XX)") #define onclick(XX) onclick="(XX)") #define ondblclick(XX) ondblclick="(XX)") #define onfocus(XX) onfocus="(XX)") #define onkeydown(XX) onkeydown="(XX)") #define onkeypress(XX) onkeypress="(XX)") #define onkeyup(XX) onkeyup="(XX)") #define onload(XX) onload="(XX)") #define onmousedown(XX) onmousedown="(XX)") #define onmousemove(XX) onmousemove="(XX)") #define onmouseout(XX) onmouseout="(XX)") #define onmouseover(XX) onmouseover="(XX)") #define onmouseup(XX) onmouseup="(XX)") #define onreset(XX) onreset="(XX)") #define onselect(XX) onselect="(XX)") #define onsubmit(XX) onsubmit="(XX)") #define onunload(XX) onunload="(XX)") #define profile(XX) profile="(XX)") #define prompt(XX) prompt="(XX)") #define readonly(XX) readonly="(XX)") #define rel(XX) rel="(XX)") #define rev(XX) rev="(XX)") #define rows(XX) rows="(XX)") #define rowspan(XX) rowspan="(XX)") #define rules(XX) rules="(XX)") #define scheme(XX) scheme="(XX)") #define scope(XX) scope="(XX)") #define scrolling(XX) scrolling="(XX)") #define selected(XX) selected="(XX)") #define shape(XX) shape="(XX)") #define size(XX) size="(XX)") #define attr_span(XX) span="(XX)") #define src(XX) src="(XX)") #define standby(XX) standby="(XX)") #define start(XX) start="(XX)") #define style(XX) style="(XX)") #define summary(XX) summary="(XX)") #define tabindex(XX) tabindex="(XX)") #define target(XX) target="(XX)") #define text(XX) text="(XX)") #define title(XX) title="(XX)") #define type(XX) type="(XX)") #define usemap(XX) usemap="(XX)") #define valign(XX) valign="(XX)") #define value(XX) value="(XX)") #define valuetype(XX) valuetype="(XX)") #define vlink(XX) vlink="(XX)") #define vspace(XX) vspace="(XX)") #define width(XX) width="(XX)") #define xmllang(XX) xml:lang="(XX)") #define xmlspace(XX) xml:space="(XX)") #define xmlns(XX) xmlns="(XX)")