# -------------------------------------------------------------------- # The ElementTree toolkit is # Copyright (c) 1999-2004 by Fredrik Lundh # -------------------------------------------------------------------- """ A set of HTML generator tags for building HTML documents. Usage:: >>> from lxml.html.builder import * >>> html = HTML( ... HEAD( TITLE("Hello World") ), ... BODY( CLASS("main"), ... H1("Hello World !") ... ) ... ) >>> import lxml.etree >>> print lxml.etree.tostring(html, pretty_print=True) Hello World

Hello World !

""" from lxml.builder import ElementMaker from lxml.html import html_parser E = ElementMaker(makeelement=html_parser.makeelement) # elements A = E.a #: anchor ABBR = E.abbr #: abbreviated form (e.g., WWW, HTTP, etc.) ACRONYM = E.acronym #: ADDRESS = E.address #: information on author APPLET = E.applet #: Java applet (DEPRECATED) AREA = E.area #: client-side image map area ARTICLE = E.article #: self-contained article ASIDE = E.aside #: indirectly-related content AUDIO = E.audio #: embedded audio file B = E.b #: bold text style BASE = E.base #: document base URI BASEFONT = E.basefont #: base font size (DEPRECATED) BDI = E.bdi #: isolate bidirectional text BDO = E.bdo #: I18N BiDi over-ride BIG = E.big #: large text style BLOCKQUOTE = E.blockquote #: long quotation BODY = E.body #: document body BR = E.br #: forced line break BUTTON = E.button #: push button CANVAS = E.canvas #: scriptable graphics container CAPTION = E.caption #: table caption CENTER = E.center #: shorthand for DIV align=center (DEPRECATED) CITE = E.cite #: citation CODE = E.code #: computer code fragment COL = E.col #: table column COLGROUP = E.colgroup #: table column group DATA = E.data #: machine-readable translation DATALIST = E.datalist #: list of options for an input DD = E.dd #: definition description DEL = getattr(E, 'del') #: deleted text DETAILS = E.details #: expandable section DFN = E.dfn #: instance definition DIALOG = E.dialog #: dialog box DIR = E.dir #: directory list (DEPRECATED) DIV = E.div #: generic language/style container DL = E.dl #: definition list DT = E.dt #: definition term EM = E.em #: emphasis EMBED = E.embed #: embedded external content FIELDSET = E.fieldset #: form control group FIGCAPTION = E.figcaption #: figure caption FIGURE = E.figure #: self-contained, possibly-captioned content FONT = E.font #: local change to font (DEPRECATED) FOOTER = E.footer #: footer for nearest ancestor FORM = E.form #: interactive form FRAME = E.frame #: subwindow FRAMESET = E.frameset #: window subdivision H1 = E.h1 #: heading H2 = E.h2 #: heading H3 = E.h3 #: heading H4 = E.h4 #: heading H5 = E.h5 #: heading H6 = E.h6 #: heading HEAD = E.head #: document head HEADER = E.header #: heading content HGROUP = E.hgroup #: heading group HR = E.hr #: horizontal rule HTML = E.html #: document root element I = E.i #: italic text style IFRAME = E.iframe #: inline subwindow IMG = E.img #: Embedded image INPUT = E.input #: form control INS = E.ins #: inserted text ISINDEX = E.isindex #: single line prompt (DEPRECATED) KBD = E.kbd #: text to be entered by the user LABEL = E.label #: form field label text LEGEND = E.legend #: fieldset legend LI = E.li #: list item LINK = E.link #: a media-independent link MAIN = E.main #: main content MAP = E.map #: client-side image map MARK = E.mark #: marked/highlighted text MARQUEE = E.marquee #: scrolling text MENU = E.menu #: menu list (DEPRECATED) META = E.meta #: generic metainformation METER = E.meter #: numerical value display NAV = E.nav #: navigation section NOBR = E.nobr #: prevent wrapping NOFRAMES = E.noframes #: alternate content container for non frame-based rendering NOSCRIPT = E.noscript #: alternate content container for non script-based rendering OBJECT = E.object #: generic embedded object OL = E.ol #: ordered list OPTGROUP = E.optgroup #: option group OPTION = E.option #: selectable choice OUTPUT = E.output #: result of a calculation P = E.p #: paragraph PARAM = E.param #: named property value PICTURE = E.picture #: picture with multiple sources PORTAL = E.portal #: embedded preview PRE = E.pre #: preformatted text PROGRESS = E.progress #: progress bar Q = E.q #: short inline quotation RB = E.rb #: ruby base text RP = E.rp #: ruby parentheses RT = E.rt #: ruby text component RTC = E.rtc #: ruby semantic annotation RUBY = E.ruby #: ruby annotations S = E.s #: strike-through text style (DEPRECATED) SAMP = E.samp #: sample program output, scripts, etc. SCRIPT = E.script #: script statements SEARCH = E.search #: set of form controls for a search SECTION = E.section #: generic standalone section SELECT = E.select #: option selector SLOT = E.slot #: placeholder for JS use SMALL = E.small #: small text style SOURCE = E.source #: source for picture/audio/video element SPAN = E.span #: generic language/style container STRIKE = E.strike #: strike-through text (DEPRECATED) STRONG = E.strong #: strong emphasis STYLE = E.style #: style info SUB = E.sub #: subscript SUMMARY = E.summary #: summary for
SUP = E.sup #: superscript TABLE = E.table #: TBODY = E.tbody #: table body TD = E.td #: table data cell TEMPLATE = E.template #: fragment for JS use TEXTAREA = E.textarea #: multi-line text field TFOOT = E.tfoot #: table footer TH = E.th #: table header cell THEAD = E.thead #: table header TIME = E.time #: date/time TITLE = E.title #: document title TR = E.tr #: table row TRACK = E.track #: audio/video track TT = E.tt #: teletype or monospaced text style U = E.u #: underlined text style (DEPRECATED) UL = E.ul #: unordered list VAR = E.var #: instance of a variable or program argument VIDEO = E.video #: embedded video file WBR = E.wbr #: word break # attributes (only reserved words are included here) ATTR = dict def CLASS(v): return {'class': v} def FOR(v): return {'for': v}