diff --git a/lib/pure/base64.nim b/lib/pure/base64.nim
index 2abdc805d4..a590ac0026 100644
--- a/lib/pure/base64.nim
+++ b/lib/pure/base64.nim
@@ -149,9 +149,9 @@ proc encode*[T: SomeInteger|char](s: openArray[T], safe = false): string =
## This procedure encodes an openarray (array or sequence) of either integers
## or characters.
##
- ## If ``safe`` is ``true`` then it will encode using the
+ ## If `safe` is `true` then it will encode using the
## URL-Safe and Filesystem-safe standard alphabet characters,
- ## which substitutes ``-`` instead of ``+`` and ``_`` instead of ``/``.
+ ## which substitutes `-` instead of `+` and `_` instead of `/`.
## * https://en.wikipedia.org/wiki/Base64#URL_applications
## * https://tools.ietf.org/html/rfc4648#page-7
##
@@ -165,13 +165,13 @@ proc encode*[T: SomeInteger|char](s: openArray[T], safe = false): string =
encodeImpl()
proc encode*(s: string, safe = false): string =
- ## Encodes ``s`` into base64 representation.
+ ## Encodes `s` into base64 representation.
##
## This procedure encodes a string.
##
- ## If ``safe`` is ``true`` then it will encode using the
+ ## If `safe` is `true` then it will encode using the
## URL-Safe and Filesystem-safe standard alphabet characters,
- ## which substitutes ``-`` instead of ``+`` and ``_`` instead of ``/``.
+ ## which substitutes `-` instead of `+` and `_` instead of `/`.
## * https://en.wikipedia.org/wiki/Base64#URL_applications
## * https://tools.ietf.org/html/rfc4648#page-7
##
@@ -183,8 +183,8 @@ proc encode*(s: string, safe = false): string =
encodeImpl()
proc encodeMime*(s: string, lineLen = 75, newLine = "\r\n"): string =
- ## Encodes ``s`` into base64 representation as lines.
- ## Used in email MIME format, use ``lineLen`` and ``newline``.
+ ## Encodes `s` into base64 representation as lines.
+ ## Used in email MIME format, use `lineLen` and `newline`.
##
## This procedure encodes a string according to MIME spec.
##
@@ -215,7 +215,7 @@ const
decodeTable = initDecodeTable()
proc decode*(s: string): string =
- ## Decodes string ``s`` in base64 representation back into its original form.
+ ## Decodes string `s` in base64 representation back into its original form.
## The initial whitespace is skipped.
##
## **See also:**
diff --git a/lib/pure/dynlib.nim b/lib/pure/dynlib.nim
index 42d13535f8..caf2c1ec32 100644
--- a/lib/pure/dynlib.nim
+++ b/lib/pure/dynlib.nim
@@ -8,8 +8,8 @@
#
## This module implements the ability to access symbols from shared
-## libraries. On POSIX this uses the ``dlsym`` mechanism, on
-## Windows ``LoadLibrary``.
+## libraries. On POSIX this uses the `dlsym` mechanism, on
+## Windows `LoadLibrary`.
##
## Examples
## ========
diff --git a/lib/pure/fenv.nim b/lib/pure/fenv.nim
index 1a895bfa8d..57fb40449c 100644
--- a/lib/pure/fenv.nim
+++ b/lib/pure/fenv.nim
@@ -130,7 +130,7 @@ template fpRadix*: int = FLT_RADIX
## point type on the architecture used to build the program.
template mantissaDigits*(T: typedesc[float32]): int = FLT_MANT_DIG
- ## Number of digits (in base ``floatingPointRadix``) in the mantissa
+ ## Number of digits (in base `floatingPointRadix`) in the mantissa
## of 32-bit floating-point numbers.
template digits*(T: typedesc[float32]): int = FLT_DIG
## Number of decimal digits that can be represented in a
@@ -156,7 +156,7 @@ template epsilon*(T: typedesc[float32]): float32 = FLT_EPSILON
## 1.0 that can be represented in a 32-bit floating-point type.
template mantissaDigits*(T: typedesc[float64]): int = DBL_MANT_DIG
- ## Number of digits (in base ``floatingPointRadix``) in the mantissa
+ ## Number of digits (in base `floatingPointRadix`) in the mantissa
## of 64-bit floating-point numbers.
template digits*(T: typedesc[float64]): int = DBL_DIG
## Number of decimal digits that can be represented in a
diff --git a/lib/pure/htmlgen.nim b/lib/pure/htmlgen.nim
index 7bff697747..fbecf337da 100644
--- a/lib/pure/htmlgen.nim
+++ b/lib/pure/htmlgen.nim
@@ -8,9 +8,9 @@
#
## Do yourself a favor and import the module
-## as ``from htmlgen import nil`` and then fully qualify the macros.
+## as `from htmlgen import nil` and then fully qualify the macros.
##
-## *Note*: The Karax project (``nimble install karax``) has a better
+## *Note*: The Karax project (`nimble install karax`) has a better
## way to achieve the same, see https://github.com/pragmagic/karax/blob/master/tests/nativehtmlgen.nim
## for an example.
##
@@ -116,230 +116,230 @@ proc xmlCheckedTag*(argsList: NimNode, tag: string, optAttr = "", reqAttr = "",
result = nestList(ident"&", result)
macro a*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``a`` element.
+ ## Generates the HTML `a` element.
result = xmlCheckedTag(e, "a", "href target download rel hreflang type " &
commonAttr)
macro abbr*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``abbr`` element.
+ ## Generates the HTML `abbr` element.
result = xmlCheckedTag(e, "abbr", commonAttr)
macro address*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``address`` element.
+ ## Generates the HTML `address` element.
result = xmlCheckedTag(e, "address", commonAttr)
macro area*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``area`` element.
+ ## Generates the HTML `area` element.
result = xmlCheckedTag(e, "area", "coords download href hreflang rel " &
"shape target type" & commonAttr, "alt", true)
macro article*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``article`` element.
+ ## Generates the HTML `article` element.
result = xmlCheckedTag(e, "article", commonAttr)
macro aside*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``aside`` element.
+ ## Generates the HTML `aside` element.
result = xmlCheckedTag(e, "aside", commonAttr)
macro audio*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``audio`` element.
+ ## Generates the HTML `audio` element.
result = xmlCheckedTag(e, "audio", "src crossorigin preload " &
"autoplay mediagroup loop muted controls" & commonAttr)
macro b*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``b`` element.
+ ## Generates the HTML `b` element.
result = xmlCheckedTag(e, "b", commonAttr)
macro base*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``base`` element.
+ ## Generates the HTML `base` element.
result = xmlCheckedTag(e, "base", "href target" & commonAttr, "", true)
macro bdi*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``bdi`` element.
+ ## Generates the HTML `bdi` element.
result = xmlCheckedTag(e, "bdi", commonAttr)
macro bdo*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``bdo`` element.
+ ## Generates the HTML `bdo` element.
result = xmlCheckedTag(e, "bdo", commonAttr)
macro big*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``big`` element.
+ ## Generates the HTML `big` element.
result = xmlCheckedTag(e, "big", commonAttr)
macro blockquote*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``blockquote`` element.
+ ## Generates the HTML `blockquote` element.
result = xmlCheckedTag(e, "blockquote", " cite" & commonAttr)
macro body*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``body`` element.
+ ## Generates the HTML `body` element.
result = xmlCheckedTag(e, "body", "onafterprint onbeforeprint " &
"onbeforeunload onhashchange onmessage onoffline ononline onpagehide " &
"onpageshow onpopstate onstorage onunload" & commonAttr)
macro br*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``br`` element.
+ ## Generates the HTML `br` element.
result = xmlCheckedTag(e, "br", commonAttr, "", true)
macro button*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``button`` element.
+ ## Generates the HTML `button` element.
result = xmlCheckedTag(e, "button", "autofocus disabled form formaction " &
"formenctype formmethod formnovalidate formtarget menu name type value" &
commonAttr)
macro canvas*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``canvas`` element.
+ ## Generates the HTML `canvas` element.
result = xmlCheckedTag(e, "canvas", "width height" & commonAttr)
macro caption*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``caption`` element.
+ ## Generates the HTML `caption` element.
result = xmlCheckedTag(e, "caption", commonAttr)
macro center*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``center`` element.
+ ## Generates the HTML `center` element.
result = xmlCheckedTag(e, "center", commonAttr)
macro cite*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``cite`` element.
+ ## Generates the HTML `cite` element.
result = xmlCheckedTag(e, "cite", commonAttr)
macro code*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``code`` element.
+ ## Generates the HTML `code` element.
result = xmlCheckedTag(e, "code", commonAttr)
macro col*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``col`` element.
+ ## Generates the HTML `col` element.
result = xmlCheckedTag(e, "col", "span" & commonAttr, "", true)
macro colgroup*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``colgroup`` element.
+ ## Generates the HTML `colgroup` element.
result = xmlCheckedTag(e, "colgroup", "span" & commonAttr)
macro data*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``data`` element.
+ ## Generates the HTML `data` element.
result = xmlCheckedTag(e, "data", "value" & commonAttr)
macro datalist*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``datalist`` element.
+ ## Generates the HTML `datalist` element.
result = xmlCheckedTag(e, "datalist", commonAttr)
macro dd*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``dd`` element.
+ ## Generates the HTML `dd` element.
result = xmlCheckedTag(e, "dd", commonAttr)
macro del*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``del`` element.
+ ## Generates the HTML `del` element.
result = xmlCheckedTag(e, "del", "cite datetime" & commonAttr)
macro details*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``details`` element.
+ ## Generates the HTML `details` element.
result = xmlCheckedTag(e, "details", commonAttr & "open")
macro dfn*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``dfn`` element.
+ ## Generates the HTML `dfn` element.
result = xmlCheckedTag(e, "dfn", commonAttr)
macro dialog*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``dialog`` element.
+ ## Generates the HTML `dialog` element.
result = xmlCheckedTag(e, "dialog", commonAttr & "open")
macro `div`*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``div`` element.
+ ## Generates the HTML `div` element.
result = xmlCheckedTag(e, "div", commonAttr)
macro dl*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``dl`` element.
+ ## Generates the HTML `dl` element.
result = xmlCheckedTag(e, "dl", commonAttr)
macro dt*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``dt`` element.
+ ## Generates the HTML `dt` element.
result = xmlCheckedTag(e, "dt", commonAttr)
macro em*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``em`` element.
+ ## Generates the HTML `em` element.
result = xmlCheckedTag(e, "em", commonAttr)
macro embed*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``embed`` element.
+ ## Generates the HTML `embed` element.
result = xmlCheckedTag(e, "embed", "src type height width" &
commonAttr, "", true)
macro fieldset*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``fieldset`` element.
+ ## Generates the HTML `fieldset` element.
result = xmlCheckedTag(e, "fieldset", "disabled form name" & commonAttr)
macro figure*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``figure`` element.
+ ## Generates the HTML `figure` element.
result = xmlCheckedTag(e, "figure", commonAttr)
macro figcaption*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``figcaption`` element.
+ ## Generates the HTML `figcaption` element.
result = xmlCheckedTag(e, "figcaption", commonAttr)
macro footer*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``footer`` element.
+ ## Generates the HTML `footer` element.
result = xmlCheckedTag(e, "footer", commonAttr)
macro form*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``form`` element.
+ ## Generates the HTML `form` element.
result = xmlCheckedTag(e, "form", "accept-charset action autocomplete " &
"enctype method name novalidate target" & commonAttr)
macro h1*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``h1`` element.
+ ## Generates the HTML `h1` element.
result = xmlCheckedTag(e, "h1", commonAttr)
macro h2*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``h2`` element.
+ ## Generates the HTML `h2` element.
result = xmlCheckedTag(e, "h2", commonAttr)
macro h3*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``h3`` element.
+ ## Generates the HTML `h3` element.
result = xmlCheckedTag(e, "h3", commonAttr)
macro h4*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``h4`` element.
+ ## Generates the HTML `h4` element.
result = xmlCheckedTag(e, "h4", commonAttr)
macro h5*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``h5`` element.
+ ## Generates the HTML `h5` element.
result = xmlCheckedTag(e, "h5", commonAttr)
macro h6*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``h6`` element.
+ ## Generates the HTML `h6` element.
result = xmlCheckedTag(e, "h6", commonAttr)
macro head*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``head`` element.
+ ## Generates the HTML `head` element.
result = xmlCheckedTag(e, "head", commonAttr)
macro header*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``header`` element.
+ ## Generates the HTML `header` element.
result = xmlCheckedTag(e, "header", commonAttr)
macro html*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``html`` element.
+ ## Generates the HTML `html` element.
result = xmlCheckedTag(e, "html", "xmlns" & commonAttr, "")
macro hr*(): untyped =
- ## Generates the HTML ``hr`` element.
+ ## Generates the HTML `hr` element.
result = xmlCheckedTag(newNimNode(nnkArglist), "hr", commonAttr, "", true)
macro i*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``i`` element.
+ ## Generates the HTML `i` element.
result = xmlCheckedTag(e, "i", commonAttr)
macro iframe*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``iframe`` element.
+ ## Generates the HTML `iframe` element.
result = xmlCheckedTag(e, "iframe", "src srcdoc name sandbox width height loading" &
commonAttr)
macro img*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``img`` element.
+ ## Generates the HTML `img` element.
result = xmlCheckedTag(e, "img", "crossorigin usemap ismap height width loading" &
commonAttr, "src alt", true)
macro input*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``input`` element.
+ ## Generates the HTML `input` element.
result = xmlCheckedTag(e, "input", "accept alt autocomplete autofocus " &
"checked dirname disabled form formaction formenctype formmethod " &
"formnovalidate formtarget height inputmode list max maxlength min " &
@@ -347,397 +347,397 @@ macro input*(e: varargs[untyped]): untyped =
"src step type value width" & commonAttr, "", true)
macro ins*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``ins`` element.
+ ## Generates the HTML `ins` element.
result = xmlCheckedTag(e, "ins", "cite datetime" & commonAttr)
macro kbd*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``kbd`` element.
+ ## Generates the HTML `kbd` element.
result = xmlCheckedTag(e, "kbd", commonAttr)
macro keygen*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``keygen`` element.
+ ## Generates the HTML `keygen` element.
result = xmlCheckedTag(e, "keygen", "autofocus challenge disabled " &
"form keytype name" & commonAttr)
macro label*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``label`` element.
+ ## Generates the HTML `label` element.
result = xmlCheckedTag(e, "label", "form for" & commonAttr)
macro legend*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``legend`` element.
+ ## Generates the HTML `legend` element.
result = xmlCheckedTag(e, "legend", commonAttr)
macro li*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``li`` element.
+ ## Generates the HTML `li` element.
result = xmlCheckedTag(e, "li", "value" & commonAttr)
macro link*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``link`` element.
+ ## Generates the HTML `link` element.
result = xmlCheckedTag(e, "link", "href crossorigin rel media hreflang " &
"type sizes" & commonAttr, "", true)
macro main*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``main`` element.
+ ## Generates the HTML `main` element.
result = xmlCheckedTag(e, "main", commonAttr)
macro map*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``map`` element.
+ ## Generates the HTML `map` element.
result = xmlCheckedTag(e, "map", "name" & commonAttr)
macro mark*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mark`` element.
+ ## Generates the HTML `mark` element.
result = xmlCheckedTag(e, "mark", commonAttr)
macro marquee*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``marquee`` element.
+ ## Generates the HTML `marquee` element.
result = xmlCheckedTag(e, "marquee", coreAttr &
"behavior bgcolor direction height hspace loop scrollamount " &
"scrolldelay truespeed vspace width onbounce onfinish onstart")
macro meta*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``meta`` element.
+ ## Generates the HTML `meta` element.
result = xmlCheckedTag(e, "meta", "name http-equiv content charset" &
commonAttr, "", true)
macro meter*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``meter`` element.
+ ## Generates the HTML `meter` element.
result = xmlCheckedTag(e, "meter", "value min max low high optimum" &
commonAttr)
macro nav*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``nav`` element.
+ ## Generates the HTML `nav` element.
result = xmlCheckedTag(e, "nav", commonAttr)
macro noscript*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``noscript`` element.
+ ## Generates the HTML `noscript` element.
result = xmlCheckedTag(e, "noscript", commonAttr)
macro `object`*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``object`` element.
+ ## Generates the HTML `object` element.
result = xmlCheckedTag(e, "object", "data type typemustmatch name usemap " &
"form width height" & commonAttr)
macro ol*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``ol`` element.
+ ## Generates the HTML `ol` element.
result = xmlCheckedTag(e, "ol", "reversed start type" & commonAttr)
macro optgroup*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``optgroup`` element.
+ ## Generates the HTML `optgroup` element.
result = xmlCheckedTag(e, "optgroup", "disabled" & commonAttr, "label", false)
macro option*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``option`` element.
+ ## Generates the HTML `option` element.
result = xmlCheckedTag(e, "option", "disabled label selected value" &
commonAttr)
macro output*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``output`` element.
+ ## Generates the HTML `output` element.
result = xmlCheckedTag(e, "output", "for form name" & commonAttr)
macro p*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``p`` element.
+ ## Generates the HTML `p` element.
result = xmlCheckedTag(e, "p", commonAttr)
macro param*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``param`` element.
+ ## Generates the HTML `param` element.
result = xmlCheckedTag(e, "param", commonAttr, "name value", true)
macro picture*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``picture`` element.
+ ## Generates the HTML `picture` element.
result = xmlCheckedTag(e, "picture", commonAttr)
macro pre*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``pre`` element.
+ ## Generates the HTML `pre` element.
result = xmlCheckedTag(e, "pre", commonAttr)
macro progress*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``progress`` element.
+ ## Generates the HTML `progress` element.
result = xmlCheckedTag(e, "progress", "value max" & commonAttr)
macro q*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``q`` element.
+ ## Generates the HTML `q` element.
result = xmlCheckedTag(e, "q", "cite" & commonAttr)
macro rb*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``rb`` element.
+ ## Generates the HTML `rb` element.
result = xmlCheckedTag(e, "rb", commonAttr)
macro rp*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``rp`` element.
+ ## Generates the HTML `rp` element.
result = xmlCheckedTag(e, "rp", commonAttr)
macro rt*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``rt`` element.
+ ## Generates the HTML `rt` element.
result = xmlCheckedTag(e, "rt", commonAttr)
macro rtc*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``rtc`` element.
+ ## Generates the HTML `rtc` element.
result = xmlCheckedTag(e, "rtc", commonAttr)
macro ruby*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``ruby`` element.
+ ## Generates the HTML `ruby` element.
result = xmlCheckedTag(e, "ruby", commonAttr)
macro s*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``s`` element.
+ ## Generates the HTML `s` element.
result = xmlCheckedTag(e, "s", commonAttr)
macro samp*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``samp`` element.
+ ## Generates the HTML `samp` element.
result = xmlCheckedTag(e, "samp", commonAttr)
macro script*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``script`` element.
+ ## Generates the HTML `script` element.
result = xmlCheckedTag(e, "script", "src type charset async defer " &
"crossorigin" & commonAttr)
macro section*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``section`` element.
+ ## Generates the HTML `section` element.
result = xmlCheckedTag(e, "section", commonAttr)
macro select*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``select`` element.
+ ## Generates the HTML `select` element.
result = xmlCheckedTag(e, "select", "autofocus disabled form multiple " &
"name required size" & commonAttr)
macro slot*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``slot`` element.
+ ## Generates the HTML `slot` element.
result = xmlCheckedTag(e, "slot", commonAttr)
macro small*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``small`` element.
+ ## Generates the HTML `small` element.
result = xmlCheckedTag(e, "small", commonAttr)
macro source*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``source`` element.
+ ## Generates the HTML `source` element.
result = xmlCheckedTag(e, "source", "type" & commonAttr, "src", true)
macro span*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``span`` element.
+ ## Generates the HTML `span` element.
result = xmlCheckedTag(e, "span", commonAttr)
macro strong*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``strong`` element.
+ ## Generates the HTML `strong` element.
result = xmlCheckedTag(e, "strong", commonAttr)
macro style*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``style`` element.
+ ## Generates the HTML `style` element.
result = xmlCheckedTag(e, "style", "media type" & commonAttr)
macro sub*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``sub`` element.
+ ## Generates the HTML `sub` element.
result = xmlCheckedTag(e, "sub", commonAttr)
macro summary*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``summary`` element.
+ ## Generates the HTML `summary` element.
result = xmlCheckedTag(e, "summary", commonAttr)
macro sup*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``sup`` element.
+ ## Generates the HTML `sup` element.
result = xmlCheckedTag(e, "sup", commonAttr)
macro table*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``table`` element.
+ ## Generates the HTML `table` element.
result = xmlCheckedTag(e, "table", "border sortable" & commonAttr)
macro tbody*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``tbody`` element.
+ ## Generates the HTML `tbody` element.
result = xmlCheckedTag(e, "tbody", commonAttr)
macro td*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``td`` element.
+ ## Generates the HTML `td` element.
result = xmlCheckedTag(e, "td", "colspan rowspan headers" & commonAttr)
macro `template`*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``template`` element.
+ ## Generates the HTML `template` element.
result = xmlCheckedTag(e, "template", commonAttr)
macro textarea*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``textarea`` element.
+ ## Generates the HTML `textarea` element.
result = xmlCheckedTag(e, "textarea", "autocomplete autofocus cols " &
"dirname disabled form inputmode maxlength minlength name placeholder " &
"readonly required rows wrap" & commonAttr)
macro tfoot*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``tfoot`` element.
+ ## Generates the HTML `tfoot` element.
result = xmlCheckedTag(e, "tfoot", commonAttr)
macro th*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``th`` element.
+ ## Generates the HTML `th` element.
result = xmlCheckedTag(e, "th", "colspan rowspan headers abbr scope axis" &
" sorted" & commonAttr)
macro thead*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``thead`` element.
+ ## Generates the HTML `thead` element.
result = xmlCheckedTag(e, "thead", commonAttr)
macro time*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``time`` element.
+ ## Generates the HTML `time` element.
result = xmlCheckedTag(e, "time", "datetime" & commonAttr)
macro title*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``title`` element.
+ ## Generates the HTML `title` element.
result = xmlCheckedTag(e, "title", commonAttr)
macro tr*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``tr`` element.
+ ## Generates the HTML `tr` element.
result = xmlCheckedTag(e, "tr", commonAttr)
macro track*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``track`` element.
+ ## Generates the HTML `track` element.
result = xmlCheckedTag(e, "track", "kind srclang label default" &
commonAttr, "src", true)
macro tt*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``tt`` element.
+ ## Generates the HTML `tt` element.
result = xmlCheckedTag(e, "tt", commonAttr)
macro u*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``u`` element.
+ ## Generates the HTML `u` element.
result = xmlCheckedTag(e, "u", commonAttr)
macro ul*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``ul`` element.
+ ## Generates the HTML `ul` element.
result = xmlCheckedTag(e, "ul", commonAttr)
macro `var`*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``var`` element.
+ ## Generates the HTML `var` element.
result = xmlCheckedTag(e, "var", commonAttr)
macro video*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``video`` element.
+ ## Generates the HTML `video` element.
result = xmlCheckedTag(e, "video", "src crossorigin poster preload " &
"autoplay mediagroup loop muted controls width height" & commonAttr)
macro wbr*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``wbr`` element.
+ ## Generates the HTML `wbr` element.
result = xmlCheckedTag(e, "wbr", commonAttr, "", true)
macro math*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``math`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `math` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/math#Examples
result = xmlCheckedTag(e, "math", "mathbackground mathcolor href overflow" & commonAttr)
macro maction*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``maction`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `maction` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/maction
result = xmlCheckedTag(e, "maction", "mathbackground mathcolor href" & commonAttr)
macro menclose*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``menclose`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `menclose` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/menclose
result = xmlCheckedTag(e, "menclose", "mathbackground mathcolor href notation" & commonAttr)
macro merror*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``merror`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `merror` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/merror
result = xmlCheckedTag(e, "merror", "mathbackground mathcolor href" & commonAttr)
macro mfenced*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mfenced`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mfenced` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mfenced
result = xmlCheckedTag(e, "mfenced", "mathbackground mathcolor href open separators" & commonAttr)
macro mfrac*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mfrac`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mfrac` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mfrac
result = xmlCheckedTag(e, "mfrac", "mathbackground mathcolor href linethickness numalign" & commonAttr)
macro mglyph*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mglyph`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mglyph` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mglyph
result = xmlCheckedTag(e, "mglyph", "mathbackground mathcolor href src valign" & commonAttr)
macro mi*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mi`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mi` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mi
result = xmlCheckedTag(e, "mi", "mathbackground mathcolor href mathsize mathvariant" & commonAttr)
macro mlabeledtr*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mlabeledtr`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mlabeledtr` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mlabeledtr
result = xmlCheckedTag(e, "mlabeledtr", "mathbackground mathcolor href columnalign groupalign rowalign" & commonAttr)
macro mmultiscripts*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mmultiscripts`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mmultiscripts` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mmultiscripts
result = xmlCheckedTag(e, "mmultiscripts", "mathbackground mathcolor href subscriptshift superscriptshift" & commonAttr)
macro mn*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mn`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mn` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mn
result = xmlCheckedTag(e, "mn", "mathbackground mathcolor href mathsize mathvariant" & commonAttr)
macro mo*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mo`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mo` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mo
result = xmlCheckedTag(e, "mo",
"mathbackground mathcolor fence form largeop lspace mathsize mathvariant movablelimits rspace separator stretchy symmetric" & commonAttr)
macro mover*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mover`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mover` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mover
result = xmlCheckedTag(e, "mover", "mathbackground mathcolor accent href" & commonAttr)
macro mpadded*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mpadded`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mpadded` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mpadded
result = xmlCheckedTag(e, "mpadded", "mathbackground mathcolor depth href lspace voffset" & commonAttr)
macro mphantom*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mphantom`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mphantom` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mphantom
result = xmlCheckedTag(e, "mphantom", "mathbackground" & commonAttr)
macro mroot*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mroot`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mroot` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mroot
result = xmlCheckedTag(e, "mroot", "mathbackground mathcolor href" & commonAttr)
macro mrow*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mrow`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mrow` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mrow
result = xmlCheckedTag(e, "mrow", "mathbackground mathcolor href" & commonAttr)
macro ms*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``ms`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `ms` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/ms
result = xmlCheckedTag(e, "ms", "mathbackground mathcolor href lquote mathsize mathvariant rquote" & commonAttr)
macro mspace*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mspace`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mspace` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mspace
result = xmlCheckedTag(e, "mspace", "mathbackground mathcolor href linebreak" & commonAttr)
macro msqrt*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``msqrt`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `msqrt` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msqrt
result = xmlCheckedTag(e, "msqrt", "mathbackground mathcolor href" & commonAttr)
macro mstyle*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mstyle`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mstyle` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mstyle
result = xmlCheckedTag(e, "mstyle", ("mathbackground mathcolor href decimalpoint displaystyle " &
"infixlinebreakstyle scriptlevel scriptminsize scriptsizemultiplier" & commonAttr))
macro msub*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``msub`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `msub` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msub
result = xmlCheckedTag(e, "msub", "mathbackground mathcolor href subscriptshift" & commonAttr)
macro msubsup*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``msubsup`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `msubsup` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msubsup
result = xmlCheckedTag(e, "msubsup", "mathbackground mathcolor href subscriptshift superscriptshift" & commonAttr)
macro msup*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``msup`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `msup` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msup
result = xmlCheckedTag(e, "msup", "mathbackground mathcolor href superscriptshift" & commonAttr)
macro mtable*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mtable`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mtable` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtable
result = xmlCheckedTag(e, "mtable", ("mathbackground mathcolor href align " &
"alignmentscope columnalign columnlines columnspacing columnwidth " &
@@ -745,38 +745,38 @@ macro mtable*(e: varargs[untyped]): untyped =
"rowalign rowlines rowspacing side width" & commonAttr))
macro mtd*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mtd`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mtd` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtd
result = xmlCheckedTag(e, "mtd",
"mathbackground mathcolor href columnalign columnspan groupalign rowalign rowspan" & commonAttr)
macro mtext*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``mtext`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `mtext` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtext
result = xmlCheckedTag(e, "mtext", "mathbackground mathcolor href mathsize mathvariant" & commonAttr)
macro munder*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``munder`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `munder` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/munder
result = xmlCheckedTag(e, "munder", "mathbackground mathcolor href accentunder align" & commonAttr)
macro munderover*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``munderover`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `munderover` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/munderover
result = xmlCheckedTag(e, "munderover", "mathbackground mathcolor href accentunder accent align" & commonAttr)
macro semantics*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``semantics`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `semantics` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/semantics
result = xmlCheckedTag(e, "semantics", "mathbackground mathcolor href definitionURL encoding cd src" & commonAttr)
macro annotation*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``annotation`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `annotation` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/semantics
result = xmlCheckedTag(e, "annotation", "mathbackground mathcolor href definitionURL encoding cd src" & commonAttr)
macro `annotation-xml`*(e: varargs[untyped]): untyped =
- ## Generates the HTML ``annotation-xml`` element. MathML https://wikipedia.org/wiki/MathML
+ ## Generates the HTML `annotation-xml` element. MathML https://wikipedia.org/wiki/MathML
## https://developer.mozilla.org/en-US/docs/Web/MathML/Element/semantics
result = xmlCheckedTag(e, "annotation", "mathbackground mathcolor href definitionURL encoding cd src" & commonAttr)
diff --git a/lib/pure/htmlparser.nim b/lib/pure/htmlparser.nim
index 4b305cfd63..05bfbfe4db 100644
--- a/lib/pure/htmlparser.nim
+++ b/lib/pure/htmlparser.nim
@@ -19,7 +19,7 @@
##
## Every tag in the resulting tree is in lower case.
##
-## **Note:** The resulting ``XmlNode`` already uses the ``clientData`` field,
+## **Note:** The resulting `XmlNode` already uses the `clientData` field,
## so it cannot be used by clients of this library.
##
## Example: Transforming hyperlinks
@@ -27,7 +27,7 @@
##
## This code demonstrates how you can iterate over all the tags in an HTML file
## and write back the modified version. In this case we look for hyperlinks
-## ending with the extension ``.rst`` and convert them to ``.html``.
+## ending with the extension `.rst` and convert them to `.html`.
##
## .. code-block:: Nim
## :test:
@@ -55,129 +55,129 @@ type
HtmlTag* = enum ## list of all supported HTML tags; order will always be
## alphabetically
tagUnknown, ## unknown HTML element
- tagA, ## the HTML ``a`` element
- tagAbbr, ## the deprecated HTML ``abbr`` element
- tagAcronym, ## the HTML ``acronym`` element
- tagAddress, ## the HTML ``address`` element
- tagApplet, ## the deprecated HTML ``applet`` element
- tagArea, ## the HTML ``area`` element
- tagArticle, ## the HTML ``article`` element
- tagAside, ## the HTML ``aside`` element
- tagAudio, ## the HTML ``audio`` element
- tagB, ## the HTML ``b`` element
- tagBase, ## the HTML ``base`` element
- tagBdi, ## the HTML ``bdi`` element
- tagBdo, ## the deprecated HTML ``dbo`` element
- tagBasefont, ## the deprecated HTML ``basefont`` element
- tagBig, ## the HTML ``big`` element
- tagBlockquote, ## the HTML ``blockquote`` element
- tagBody, ## the HTML ``body`` element
- tagBr, ## the HTML ``br`` element
- tagButton, ## the HTML ``button`` element
- tagCanvas, ## the HTML ``canvas`` element
- tagCaption, ## the HTML ``caption`` element
- tagCenter, ## the deprecated HTML ``center`` element
- tagCite, ## the HTML ``cite`` element
- tagCode, ## the HTML ``code`` element
- tagCol, ## the HTML ``col`` element
- tagColgroup, ## the HTML ``colgroup`` element
- tagCommand, ## the HTML ``command`` element
- tagDatalist, ## the HTML ``datalist`` element
- tagDd, ## the HTML ``dd`` element
- tagDel, ## the HTML ``del`` element
- tagDetails, ## the HTML ``details`` element
- tagDfn, ## the HTML ``dfn`` element
- tagDialog, ## the HTML ``dialog`` element
- tagDiv, ## the HTML ``div`` element
- tagDir, ## the deprecated HTLM ``dir`` element
- tagDl, ## the HTML ``dl`` element
- tagDt, ## the HTML ``dt`` element
- tagEm, ## the HTML ``em`` element
- tagEmbed, ## the HTML ``embed`` element
- tagFieldset, ## the HTML ``fieldset`` element
- tagFigcaption, ## the HTML ``figcaption`` element
- tagFigure, ## the HTML ``figure`` element
- tagFont, ## the deprecated HTML ``font`` element
- tagFooter, ## the HTML ``footer`` element
- tagForm, ## the HTML ``form`` element
- tagFrame, ## the HTML ``frame`` element
- tagFrameset, ## the deprecated HTML ``frameset`` element
- tagH1, ## the HTML ``h1`` element
- tagH2, ## the HTML ``h2`` element
- tagH3, ## the HTML ``h3`` element
- tagH4, ## the HTML ``h4`` element
- tagH5, ## the HTML ``h5`` element
- tagH6, ## the HTML ``h6`` element
- tagHead, ## the HTML ``head`` element
- tagHeader, ## the HTML ``header`` element
- tagHgroup, ## the HTML ``hgroup`` element
- tagHtml, ## the HTML ``html`` element
- tagHr, ## the HTML ``hr`` element
- tagI, ## the HTML ``i`` element
- tagIframe, ## the deprecated HTML ``iframe`` element
- tagImg, ## the HTML ``img`` element
- tagInput, ## the HTML ``input`` element
- tagIns, ## the HTML ``ins`` element
- tagIsindex, ## the deprecated HTML ``isindex`` element
- tagKbd, ## the HTML ``kbd`` element
- tagKeygen, ## the HTML ``keygen`` element
- tagLabel, ## the HTML ``label`` element
- tagLegend, ## the HTML ``legend`` element
- tagLi, ## the HTML ``li`` element
- tagLink, ## the HTML ``link`` element
- tagMap, ## the HTML ``map`` element
- tagMark, ## the HTML ``mark`` element
- tagMenu, ## the deprecated HTML ``menu`` element
- tagMeta, ## the HTML ``meta`` element
- tagMeter, ## the HTML ``meter`` element
- tagNav, ## the HTML ``nav`` element
- tagNobr, ## the deprecated HTML ``nobr`` element
- tagNoframes, ## the deprecated HTML ``noframes`` element
- tagNoscript, ## the HTML ``noscript`` element
- tagObject, ## the HTML ``object`` element
- tagOl, ## the HTML ``ol`` element
- tagOptgroup, ## the HTML ``optgroup`` element
- tagOption, ## the HTML ``option`` element
- tagOutput, ## the HTML ``output`` element
- tagP, ## the HTML ``p`` element
- tagParam, ## the HTML ``param`` element
- tagPre, ## the HTML ``pre`` element
- tagProgress, ## the HTML ``progress`` element
- tagQ, ## the HTML ``q`` element
- tagRp, ## the HTML ``rp`` element
- tagRt, ## the HTML ``rt`` element
- tagRuby, ## the HTML ``ruby`` element
- tagS, ## the deprecated HTML ``s`` element
- tagSamp, ## the HTML ``samp`` element
- tagScript, ## the HTML ``script`` element
- tagSection, ## the HTML ``section`` element
- tagSelect, ## the HTML ``select`` element
- tagSmall, ## the HTML ``small`` element
- tagSource, ## the HTML ``source`` element
- tagSpan, ## the HTML ``span`` element
- tagStrike, ## the deprecated HTML ``strike`` element
- tagStrong, ## the HTML ``strong`` element
- tagStyle, ## the HTML ``style`` element
- tagSub, ## the HTML ``sub`` element
- tagSummary, ## the HTML ``summary`` element
- tagSup, ## the HTML ``sup`` element
- tagTable, ## the HTML ``table`` element
- tagTbody, ## the HTML ``tbody`` element
- tagTd, ## the HTML ``td`` element
- tagTextarea, ## the HTML ``textarea`` element
- tagTfoot, ## the HTML ``tfoot`` element
- tagTh, ## the HTML ``th`` element
- tagThead, ## the HTML ``thead`` element
- tagTime, ## the HTML ``time`` element
- tagTitle, ## the HTML ``title`` element
- tagTr, ## the HTML ``tr`` element
- tagTrack, ## the HTML ``track`` element
- tagTt, ## the HTML ``tt`` element
- tagU, ## the deprecated HTML ``u`` element
- tagUl, ## the HTML ``ul`` element
- tagVar, ## the HTML ``var`` element
- tagVideo, ## the HTML ``video`` element
- tagWbr ## the HTML ``wbr`` element
+ tagA, ## the HTML `a` element
+ tagAbbr, ## the deprecated HTML `abbr` element
+ tagAcronym, ## the HTML `acronym` element
+ tagAddress, ## the HTML `address` element
+ tagApplet, ## the deprecated HTML `applet` element
+ tagArea, ## the HTML `area` element
+ tagArticle, ## the HTML `article` element
+ tagAside, ## the HTML `aside` element
+ tagAudio, ## the HTML `audio` element
+ tagB, ## the HTML `b` element
+ tagBase, ## the HTML `base` element
+ tagBdi, ## the HTML `bdi` element
+ tagBdo, ## the deprecated HTML `dbo` element
+ tagBasefont, ## the deprecated HTML `basefont` element
+ tagBig, ## the HTML `big` element
+ tagBlockquote, ## the HTML `blockquote` element
+ tagBody, ## the HTML `body` element
+ tagBr, ## the HTML `br` element
+ tagButton, ## the HTML `button` element
+ tagCanvas, ## the HTML `canvas` element
+ tagCaption, ## the HTML `caption` element
+ tagCenter, ## the deprecated HTML `center` element
+ tagCite, ## the HTML `cite` element
+ tagCode, ## the HTML `code` element
+ tagCol, ## the HTML `col` element
+ tagColgroup, ## the HTML `colgroup` element
+ tagCommand, ## the HTML `command` element
+ tagDatalist, ## the HTML `datalist` element
+ tagDd, ## the HTML `dd` element
+ tagDel, ## the HTML `del` element
+ tagDetails, ## the HTML `details` element
+ tagDfn, ## the HTML `dfn` element
+ tagDialog, ## the HTML `dialog` element
+ tagDiv, ## the HTML `div` element
+ tagDir, ## the deprecated HTLM `dir` element
+ tagDl, ## the HTML `dl` element
+ tagDt, ## the HTML `dt` element
+ tagEm, ## the HTML `em` element
+ tagEmbed, ## the HTML `embed` element
+ tagFieldset, ## the HTML `fieldset` element
+ tagFigcaption, ## the HTML `figcaption` element
+ tagFigure, ## the HTML `figure` element
+ tagFont, ## the deprecated HTML `font` element
+ tagFooter, ## the HTML `footer` element
+ tagForm, ## the HTML `form` element
+ tagFrame, ## the HTML `frame` element
+ tagFrameset, ## the deprecated HTML `frameset` element
+ tagH1, ## the HTML `h1` element
+ tagH2, ## the HTML `h2` element
+ tagH3, ## the HTML `h3` element
+ tagH4, ## the HTML `h4` element
+ tagH5, ## the HTML `h5` element
+ tagH6, ## the HTML `h6` element
+ tagHead, ## the HTML `head` element
+ tagHeader, ## the HTML `header` element
+ tagHgroup, ## the HTML `hgroup` element
+ tagHtml, ## the HTML `html` element
+ tagHr, ## the HTML `hr` element
+ tagI, ## the HTML `i` element
+ tagIframe, ## the deprecated HTML `iframe` element
+ tagImg, ## the HTML `img` element
+ tagInput, ## the HTML `input` element
+ tagIns, ## the HTML `ins` element
+ tagIsindex, ## the deprecated HTML `isindex` element
+ tagKbd, ## the HTML `kbd` element
+ tagKeygen, ## the HTML `keygen` element
+ tagLabel, ## the HTML `label` element
+ tagLegend, ## the HTML `legend` element
+ tagLi, ## the HTML `li` element
+ tagLink, ## the HTML `link` element
+ tagMap, ## the HTML `map` element
+ tagMark, ## the HTML `mark` element
+ tagMenu, ## the deprecated HTML `menu` element
+ tagMeta, ## the HTML `meta` element
+ tagMeter, ## the HTML `meter` element
+ tagNav, ## the HTML `nav` element
+ tagNobr, ## the deprecated HTML `nobr` element
+ tagNoframes, ## the deprecated HTML `noframes` element
+ tagNoscript, ## the HTML `noscript` element
+ tagObject, ## the HTML `object` element
+ tagOl, ## the HTML `ol` element
+ tagOptgroup, ## the HTML `optgroup` element
+ tagOption, ## the HTML `option` element
+ tagOutput, ## the HTML `output` element
+ tagP, ## the HTML `p` element
+ tagParam, ## the HTML `param` element
+ tagPre, ## the HTML `pre` element
+ tagProgress, ## the HTML `progress` element
+ tagQ, ## the HTML `q` element
+ tagRp, ## the HTML `rp` element
+ tagRt, ## the HTML `rt` element
+ tagRuby, ## the HTML `ruby` element
+ tagS, ## the deprecated HTML `s` element
+ tagSamp, ## the HTML `samp` element
+ tagScript, ## the HTML `script` element
+ tagSection, ## the HTML `section` element
+ tagSelect, ## the HTML `select` element
+ tagSmall, ## the HTML `small` element
+ tagSource, ## the HTML `source` element
+ tagSpan, ## the HTML `span` element
+ tagStrike, ## the deprecated HTML `strike` element
+ tagStrong, ## the HTML `strong` element
+ tagStyle, ## the HTML `style` element
+ tagSub, ## the HTML `sub` element
+ tagSummary, ## the HTML `summary` element
+ tagSup, ## the HTML `sup` element
+ tagTable, ## the HTML `table` element
+ tagTbody, ## the HTML `tbody` element
+ tagTd, ## the HTML `td` element
+ tagTextarea, ## the HTML `textarea` element
+ tagTfoot, ## the HTML `tfoot` element
+ tagTh, ## the HTML `th` element
+ tagThead, ## the HTML `thead` element
+ tagTime, ## the HTML `time` element
+ tagTitle, ## the HTML `title` element
+ tagTr, ## the HTML `tr` element
+ tagTrack, ## the HTML `track` element
+ tagTt, ## the HTML `tt` element
+ tagU, ## the deprecated HTML `u` element
+ tagUl, ## the HTML `ul` element
+ tagVar, ## the HTML `var` element
+ tagVideo, ## the HTML `video` element
+ tagWbr ## the HTML `wbr` element
const
tagToStr* = [
@@ -351,13 +351,13 @@ proc toHtmlTag(s: string): HtmlTag =
proc htmlTag*(n: XmlNode): HtmlTag =
- ## Gets `n`'s tag as a ``HtmlTag``.
+ ## Gets `n`'s tag as a `HtmlTag`.
if n.clientData == 0:
n.clientData = toHtmlTag(n.tag).ord
result = HtmlTag(n.clientData)
proc htmlTag*(s: string): HtmlTag =
- ## Converts `s` to a ``HtmlTag``. If `s` is no HTML tag, ``tagUnknown`` is
+ ## Converts `s` to a `HtmlTag`. If `s` is no HTML tag, `tagUnknown` is
## returned.
let s = if allLower(s): s else: toLowerAscii(s)
result = toHtmlTag(s)
@@ -374,8 +374,8 @@ proc runeToEntity*(rune: Rune): string =
else: result = '#' & $rune.ord
proc entityToRune*(entity: string): Rune =
- ## Converts an HTML entity name like ``Ü`` or values like ``Ü``
- ## or ``Ü`` to its UTF-8 equivalent.
+ ## Converts an HTML entity name like `Ü` or values like `Ü`
+ ## or `Ü` to its UTF-8 equivalent.
## Rune(0) is returned if the entity name is unknown.
runnableExamples:
import unicode
@@ -395,7 +395,7 @@ proc entityToRune*(entity: string): Rune =
of 'x', 'X': # not case sensitive here
try: runeValue = parseHexInt(entity[2..^1])
except: discard
- else: discard # other entities are not defined with prefix ``#``
+ else: discard # other entities are not defined with prefix `#`
if runeValue notin 0..0x10FFFF: runeValue = 0 # only return legal values
return Rune(runeValue)
case entity # entity names are case sensitive
@@ -1867,8 +1867,8 @@ proc entityToRune*(entity: string): Rune =
else: Rune(0)
proc entityToUtf8*(entity: string): string =
- ## Converts an HTML entity name like ``Ü`` or values like ``Ü``
- ## or ``Ü`` to its UTF-8 equivalent.
+ ## Converts an HTML entity name like `Ü` or values like `Ü`
+ ## or `Ü` to its UTF-8 equivalent.
## "" is returned if the entity name is unknown. The HTML parser
## already converts entities to UTF-8.
runnableExamples:
@@ -1905,7 +1905,7 @@ template adderr(x: untyped) =
proc untilElementEnd(x: var XmlParser, result: XmlNode,
errors: var seq[string]) =
- # we parsed e.g. ``
`` and don't really expect a ````:
+ # we parsed e.g. `
` and don't really expect a ``:
if result.htmlTag in SingleTags:
if x.kind != xmlElementEnd or cmpIgnoreCase(x.elemName, result.tag) != 0:
return
@@ -1914,8 +1914,8 @@ proc untilElementEnd(x: var XmlParser, result: XmlNode,
of xmlElementStart, xmlElementOpen:
case result.htmlTag
of tagP, tagInput, tagOption:
- # some tags are common to have no ````, like ``
`` in `
` in `