summaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-01-31 03:01:42 +0000
committerNorbert Preining <norbert@preining.info>2022-01-31 03:01:42 +0000
commitbf3e5a0ef8f4536286b8606775c8d34fd9840b18 (patch)
tree6cd7f3919b0ae4fa43995c3fd721346e2eb03c7e /macros
parent7ee4987532f1c1d25e5a2683ae21b7c298d103b5 (diff)
CTAN sync 202201310301
Diffstat (limited to 'macros')
-rw-r--r--macros/generic/markdown/README.md10
-rw-r--r--macros/generic/markdown/VERSION2
-rw-r--r--macros/generic/markdown/examples/context-mkii.tex (renamed from macros/generic/markdown/examples/context.tex)20
-rw-r--r--macros/generic/markdown/examples/context-mkiv.tex65
-rw-r--r--macros/generic/markdown/libraries/markdown-tinyyaml.lua104
-rw-r--r--macros/generic/markdown/markdown.dtx244
-rw-r--r--macros/generic/markdown/markdown.html3227
-rw-r--r--macros/generic/markdown/markdown.pdfbin738241 -> 743629 bytes
-rw-r--r--macros/latex/contrib/clistmap/README.md6
-rw-r--r--macros/latex/contrib/clistmap/clistmap.dtx2080
-rw-r--r--macros/latex/contrib/clistmap/clistmap.ins66
-rw-r--r--macros/latex/contrib/clistmap/clistmap.pdfbin0 -> 691752 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx8
-rw-r--r--macros/latex/contrib/easybook/easybook.pdfbin575448 -> 575831 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.tex22
-rw-r--r--macros/latex/contrib/secnum/README.md5
-rw-r--r--macros/latex/contrib/secnum/secnum.dtx568
-rw-r--r--macros/latex/contrib/secnum/secnum.pdfbin429962 -> 456091 bytes
-rw-r--r--macros/xetex/latex/bidi/README9
-rw-r--r--macros/xetex/latex/bidi/bidi-doc-intro.ltx8
-rw-r--r--macros/xetex/latex/bidi/bidi-doc-title.ltx11
-rw-r--r--macros/xetex/latex/bidi/bidi-doc.ltx2
-rw-r--r--macros/xetex/latex/bidi/bidi-doc.pdfbin173289 -> 180395 bytes
-rw-r--r--macros/xetex/latex/bidi/bidi.dtx227
-rw-r--r--macros/xetex/latex/bidi/bidi.pdfbin3111844 -> 3119340 bytes
-rw-r--r--macros/xetex/latex/xepersian/README11
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc-intro.ltx8
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc-title.ltx11
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc.ltx2
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc.pdfbin234762 -> 242527 bytes
-rw-r--r--macros/xetex/latex/xepersian/xepersian.dtx59
-rw-r--r--macros/xetex/latex/xepersian/xepersian.pdfbin755776 -> 757400 bytes
32 files changed, 4758 insertions, 2017 deletions
diff --git a/macros/generic/markdown/README.md b/macros/generic/markdown/README.md
index de007e36af..38661d1c3a 100644
--- a/macros/generic/markdown/README.md
+++ b/macros/generic/markdown/README.md
@@ -4,7 +4,7 @@ Markdown
[![license](https://img.shields.io/github/license/witiko/markdown)](LICENSE)
[![release](https://img.shields.io/github/release/witiko/markdown.svg)][release]
[![docker pulls](https://img.shields.io/docker/pulls/witiko/markdown)][docker-witiko/markdown]
-[![docker image size](https://img.shields.io/docker/image-size/witiko/markdown)][docker-witiko/markdown]
+[![docker image size](https://img.shields.io/docker/image-size/witiko/markdown/latest)][docker-witiko/markdown]
[![ci](https://github.com/witiko/markdown/actions/workflows/main.yml/badge.svg)][ci]
[release]: https://github.com/Witiko/markdown/releases/latest "Releases · Witiko/markdown"
@@ -130,8 +130,10 @@ We will receive the following output, where the markdown markup has been
replaced by TeX commands:
``` tex
+\markdownDocumentBegin
Hello \markdownRendererEmphasis{Markdown}!
-$a\markdownRendererEmphasis{x + b}x = c_x$\relax
+$a\markdownRendererEmphasis{x + b}x = c_x$
+\markdownDocumentEnd
```
We can see right away that the Markdown package has incorrectly interpreted
@@ -141,8 +143,10 @@ We can see right away that the Markdown package has incorrectly interpreted
docker run --rm -i witiko/markdown markdown-cli hybrid=true underscores=false < document.md
``` tex
+\markdownDocumentBegin
Hello \markdownRendererEmphasis{Markdown}!
-$a_x + b_x = c_x$\relax
+$a_x + b_x = c_x$
+\markdownDocumentEnd
```
Much better! If the Markdown package ever surprises you, use the Lua CLI to
diff --git a/macros/generic/markdown/VERSION b/macros/generic/markdown/VERSION
index 737ea04a37..6e699bbb01 100644
--- a/macros/generic/markdown/VERSION
+++ b/macros/generic/markdown/VERSION
@@ -1 +1 @@
-2.12.0-1-g976f074 (2021/12/30)
+2.13.0-0-g1f680a8 (2022/01/30)
diff --git a/macros/generic/markdown/examples/context.tex b/macros/generic/markdown/examples/context-mkii.tex
index 85815149d1..b5aaa0e04e 100644
--- a/macros/generic/markdown/examples/context.tex
+++ b/macros/generic/markdown/examples/context-mkii.tex
@@ -2,7 +2,11 @@
\usetypescript[modern][ec]
\setupbodyfont[10pt,rm]
\setupexternalfigures[location={local,global,default}]
+
+% Load the Markdown module.
\usemodule[t][markdown]
+
+% Set options of the Markdown module.
\def\markdownOptionHashEnumerators{true}
\def\markdownOptionDefinitionLists{true}
\def\markdownOptionSmartEllipses{true}
@@ -13,9 +17,17 @@
\def\markdownOptionPipeTables{true}
\def\markdownOptionTableCaptions{true}
\def\markdownOptionTaskLists{true}
-\definetyping [latex]
-\setuptyping [latex] [option=TEX]
+
+% Set renderers of the Markdown module.
+\definetyping
+ [latex]
+
+\setuptyping
+ [latex]
+ [option=TEX]
+
\starttext
+
% Typeset the document `example.md` by letting the Markdown package handle
% the conversion internally.
\markdownInput{./example.md}
@@ -25,7 +37,9 @@
% of the document `example.md`.
\doiffileelse{./example.tex}{\input example}{}
+% Typeset inline markdown text.
\startmarkdown
+
Here are some non-ASCII characters: *ěščřžýáíé*
and ConTeXt special characters: *|*.
@@ -33,5 +47,7 @@ Here is a hard line break that we inserted directly from the TeX source
by typing two spaces at the end of a line.
This is stretching TeX's abilities and is only supported in ConTeXt MkIV
and later.
+
\stopmarkdown
+
\stoptext
diff --git a/macros/generic/markdown/examples/context-mkiv.tex b/macros/generic/markdown/examples/context-mkiv.tex
new file mode 100644
index 0000000000..65d1d05468
--- /dev/null
+++ b/macros/generic/markdown/examples/context-mkiv.tex
@@ -0,0 +1,65 @@
+\enableregime[utf]
+\usetypescript[modern][ec]
+\setupbodyfont[10pt,rm]
+\setupexternalfigures[location={local,global,default}]
+
+% Load the Markdown module.
+\usemodule[t][markdown]
+
+% Set options of the Markdown module.
+\def\markdownOptionHashEnumerators{true}
+\def\markdownOptionDefinitionLists{true}
+\def\markdownOptionSmartEllipses{true}
+\def\markdownOptionFootnotes{true}
+\def\markdownOptionInlineFootnotes{true}
+\def\markdownOptionFencedCode{true}
+\def\markdownOptionContentBlocks{true}
+\def\markdownOptionPipeTables{true}
+\def\markdownOptionTableCaptions{true}
+\def\markdownOptionTaskLists{true}
+
+% Set renderers of the Markdown module.
+\definehighlight
+ [markdownRendererEmphasis]
+ [style=\em]
+
+\definehighlight
+ [markdownRendererStrongEmphasis]
+ [style=bold]
+
+\definehighlight
+ [markdownRendererCodeSpan]
+ [style=mono]
+
+\definetyping
+ [latex]
+
+\setuptyping
+ [latex]
+ [option=TEX]
+
+\starttext
+
+% Typeset the document `example.md` by letting the Markdown package handle
+% the conversion internally.
+\markdownInput{./example.md}
+
+% Typeset the document `example.tex` that we prepared separately using the
+% Lua command-line interface and that contains a plain TeX representation
+% of the document `example.md`.
+\doiffileelse{./example.tex}{\input example}{}
+
+% Typeset inline markdown text.
+\startmarkdown
+
+Here are some non-ASCII characters: *ěščřžýáíé*
+and ConTeXt special characters: *|*.
+
+Here is a hard line break that we inserted directly from the TeX source
+by typing two spaces at the end of a line.
+This is stretching TeX's abilities and is only supported in ConTeXt MkIV
+and later.
+
+\stopmarkdown
+
+\stoptext
diff --git a/macros/generic/markdown/libraries/markdown-tinyyaml.lua b/macros/generic/markdown/libraries/markdown-tinyyaml.lua
index f921ac4571..7a57ef2422 100644
--- a/macros/generic/markdown/libraries/markdown-tinyyaml.lua
+++ b/macros/generic/markdown/libraries/markdown-tinyyaml.lua
@@ -32,6 +32,7 @@ local sfind, smatch = string.find, string.match
local tinsert, tconcat, tremove = table.insert, table.concat, table.remove
local setmetatable = setmetatable
local pairs = pairs
+local rawget = rawget
local type = type
local tonumber = tonumber
local math = math
@@ -167,11 +168,15 @@ local function countindent(line)
return j, ssub(line, j+1)
end
-local function parsestring(line, stopper)
+local Parser = {
+ timestamps=true,-- parse timestamps as objects instead of strings
+}
+
+function Parser:parsestring(line, stopper)
stopper = stopper or ''
local q = ssub(line, 1, 1)
if q == ' ' or q == '\t' then
- return parsestring(ssub(line, 2))
+ return self:parsestring(ssub(line, 2))
end
if q == "'" then
local i = sfind(line, "'", 2, true)
@@ -220,6 +225,11 @@ local function parsestring(line, stopper)
return nil, line
end
end
+
+ if line == "*" then
+ error("did not find expected alphabetic or numeric character")
+ end
+
local buf = ''
while #line > 0 do
local c = ssub(line, 1, 1)
@@ -269,10 +279,10 @@ local function compactifyemptylines(lines)
end
local function checkdupekey(map, key)
- if map[key] ~= nil then
+ if rawget(map, key) ~= nil then
-- print("found a duplicate key '"..key.."' in line: "..line)
local suffix = 1
- while map[key..'_'..suffix] do
+ while rawget(map, key..'_'..suffix) do
suffix = suffix + 1
end
key = key ..'_'..suffix
@@ -280,7 +290,8 @@ local function checkdupekey(map, key)
return key
end
-local function parseflowstyle(line, lines)
+
+function Parser:parseflowstyle(line, lines)
local stack = {}
while true do
if #line == 0 then
@@ -335,7 +346,7 @@ local function parseflowstyle(line, lines)
line = ','..line
end
else
- local s, rest = parsestring(line, ',{}[]')
+ local s, rest = self:parsestring(line, ',{}[]')
if not s then
error('invalid flowstyle line: '..line)
end
@@ -346,7 +357,7 @@ local function parseflowstyle(line, lines)
return stack[1].v, line
end
-local function parseblockstylestring(line, lines, indent)
+function Parser:parseblockstylestring(line, lines, indent)
if #lines == 0 then
error("failed to find multi-line scalar content")
end
@@ -402,6 +413,11 @@ local function parseblockstylestring(line, lines, indent)
else
error('invalid blockstyle string:'..line)
end
+
+ if #s == 0 then
+ return ""
+ end
+
local _, eonl = s[#s]:gsub('\n', '\n')
s[#s] = rtrim(s[#s])
if striptrailing then
@@ -416,7 +432,7 @@ local function parseblockstylestring(line, lines, indent)
return tconcat(s, sep)..string.rep('\n', eonl)
end
-local function parsetimestamp(line)
+function Parser:parsetimestamp(line)
local _, p1, y, m, d = sfind(line, '^(%d%d%d%d)%-(%d%d)%-(%d%d)')
if not p1 then
return nil, line
@@ -455,7 +471,7 @@ local function parsetimestamp(line)
return types.timestamp(y, m, d, h, i, s, f, z), ssub(line, p4+1)
end
-local function parsescalar(line, lines, indent)
+function Parser:parsescalar(line, lines, indent)
line = trim(line)
line = gsub(line, '^%s*#.*$', '') -- comment only -> ''
line = gsub(line, '^%s*', '') -- trim head spaces
@@ -464,12 +480,14 @@ local function parsescalar(line, lines, indent)
return null
end
- local ts, _ = parsetimestamp(line)
- if ts then
- return ts
+ if self.timestamps then
+ local ts, _ = self:parsetimestamp(line)
+ if ts then
+ return ts
+ end
end
- local s, _ = parsestring(line)
+ local s, _ = self:parsestring(line)
-- startswith quote ... string
-- not startswith quote ... maybe string
if s and (startswith(line, '"') or startswith(line, "'")) then
@@ -488,11 +506,11 @@ local function parsescalar(line, lines, indent)
end
if startswith(line, '{') or startswith(line, '[') then
- return parseflowstyle(line, lines)
+ return self:parseflowstyle(line, lines)
end
if startswith(line, '|') or startswith(line, '>') then
- return parseblockstylestring(line, lines, indent)
+ return self:parseblockstylestring(line, lines, indent)
end
-- Regular unquoted string
@@ -520,9 +538,7 @@ local function parsescalar(line, lines, indent)
return s or v
end
-local parsemap; -- : func
-
-local function parseseq(line, lines, indent)
+function Parser:parseseq(line, lines, indent)
local seq = setmetatable({}, types.seq)
if line ~= '' then
error()
@@ -576,12 +592,12 @@ local function parseseq(line, lines, indent)
-- - foo:bar
local indent2 = j
lines[1] = string.rep(' ', indent2)..rest
- tinsert(seq, parsemap('', lines, indent2))
+ tinsert(seq, self:parsemap('', lines, indent2))
elseif sfind(rest, '^%-%s+') then
-- Inline nested seq
local indent2 = j
lines[1] = string.rep(' ', indent2)..rest
- tinsert(seq, parseseq('', lines, indent2))
+ tinsert(seq, self:parseseq('', lines, indent2))
elseif isemptyline(rest) then
tremove(lines, 1)
if #lines == 0 then
@@ -595,25 +611,27 @@ local function parseseq(line, lines, indent)
-- Null seqay entry
tinsert(seq, null)
else
- tinsert(seq, parseseq('', lines, indent2))
+ tinsert(seq, self:parseseq('', lines, indent2))
end
else
-- - # comment
-- key: value
local nextline = lines[1]
local indent2 = countindent(nextline)
- tinsert(seq, parsemap('', lines, indent2))
+ tinsert(seq, self:parsemap('', lines, indent2))
end
+ elseif line == "*" then
+ error("did not find expected alphabetic or numeric character")
elseif rest then
-- Array entry with a value
tremove(lines, 1)
- tinsert(seq, parsescalar(rest, lines))
+ tinsert(seq, self:parsescalar(rest, lines))
end
end
return seq
end
-local function parseset(line, lines, indent)
+function Parser:parseset(line, lines, indent)
if not isemptyline(line) then
error('not seq line: '..line)
end
@@ -649,7 +667,7 @@ local function parseset(line, lines, indent)
-- Inline nested hash
local indent2 = j
lines[1] = string.rep(' ', indent2)..rest
- set[parsemap('', lines, indent2)] = true
+ set[self:parsemap('', lines, indent2)] = true
elseif sfind(rest, '^%s+$') then
tremove(lines, 1)
if #lines == 0 then
@@ -662,13 +680,13 @@ local function parseset(line, lines, indent)
-- Null array entry
set[null] = true
else
- set[parseseq('', lines, indent2)] = true
+ set[self:parseseq('', lines, indent2)] = true
end
end
elseif rest then
tremove(lines, 1)
- set[parsescalar(rest, lines)] = true
+ set[self:parsescalar(rest, lines)] = true
else
error("failed to classify line: "..line)
end
@@ -676,7 +694,7 @@ local function parseset(line, lines, indent)
return set
end
-function parsemap(line, lines, indent)
+function Parser:parsemap(line, lines, indent)
if not isemptyline(line) then
error('not map line: '..line)
end
@@ -701,11 +719,11 @@ function parsemap(line, lines, indent)
-- Find the key
local key
- local s, rest = parsestring(line)
+ local s, rest = self:parsestring(line)
-- Quoted keys
if s and startswith(rest, ':') then
- local sc = parsescalar(s, {}, 0)
+ local sc = self:parsescalar(s, {}, 0)
if sc and type(sc) ~= 'string' then
key = sc
else
@@ -729,7 +747,7 @@ function parsemap(line, lines, indent)
if not isemptyline(line) then
tremove(lines, 1)
line = ltrim(line)
- map[key] = parsescalar(line, lines, indent)
+ map[key] = self:parsescalar(line, lines, indent)
else
-- An indent
tremove(lines, 1)
@@ -739,17 +757,17 @@ function parsemap(line, lines, indent)
end
if sfind(lines[1], '^%s*%-') then
local indent2 = countindent(lines[1])
- map[key] = parseseq('', lines, indent2)
+ map[key] = self:parseseq('', lines, indent2)
elseif sfind(lines[1], '^%s*%?') then
local indent2 = countindent(lines[1])
- map[key] = parseset('', lines, indent2)
+ map[key] = self:parseset('', lines, indent2)
else
local indent2 = countindent(lines[1])
if indent >= indent2 then
-- Null hash entry
map[key] = null
else
- map[key] = parsemap('', lines, indent2)
+ map[key] = self:parsemap('', lines, indent2)
end
end
end
@@ -759,7 +777,7 @@ end
-- : (list<str>)->dict
-local function parsedocuments(lines)
+function Parser:parsedocuments(lines)
lines = compactifyemptylines(lines)
if sfind(lines[1], '^%%YAML') then tremove(lines, 1) end
@@ -779,7 +797,7 @@ local function parsedocuments(lines)
if docright then
if (not sfind(docright, '^%s+$') and
not sfind(docright, '^%s+#')) then
- tinsert(root, parsescalar(docright, lines))
+ tinsert(root, self:parsescalar(docright, lines))
end
elseif #lines == 0 or startswith(line, '---') then
-- A naked document
@@ -795,11 +813,11 @@ local function parsedocuments(lines)
error('parse error: '..line)
elseif sfind(line, '^%s*%-') then
-- An array at the root
- tinsert(root, parseseq('', lines, 0))
+ tinsert(root, self:parseseq('', lines, 0))
elseif sfind(line, '^%s*[^%s]') then
-- A hash at the root
local level = countindent(line)
- tinsert(root, parsemap('', lines, level))
+ tinsert(root, self:parsemap('', lines, level))
else
-- Shouldn't get here. @lines have whitespace-only lines
-- stripped, and previous match is a line with any
@@ -818,13 +836,13 @@ local function parsedocuments(lines)
end
--- Parse yaml string into table.
-local function parse(source)
+function Parser:parse(source)
local lines = {}
for line in string.gmatch(source .. '\n', '(.-)\r?\n') do
tinsert(lines, line)
end
- local docs = parsedocuments(lines)
+ local docs = self:parsedocuments(lines)
if #docs == 1 then
return docs[1]
end
@@ -832,6 +850,12 @@ local function parse(source)
return docs
end
+local function parse(source, options)
+ local options = options or {}
+ local parser = setmetatable (options, {__index=Parser})
+ return parser:parse(source)
+end
+
return {
version = 0.1,
parse = parse,
diff --git a/macros/generic/markdown/markdown.dtx b/macros/generic/markdown/markdown.dtx
index b624b04879..4b6b148082 100644
--- a/macros/generic/markdown/markdown.dtx
+++ b/macros/generic/markdown/markdown.dtx
@@ -81,9 +81,11 @@
citations,
definitionLists,
fencedCode,
+ footnotes,
headerAttributes,
- hybrid,
html,
+ hybrid,
+ inlineFootnotes,
jekyllData,
stripPercentSigns,
underscores = false,
@@ -7719,6 +7721,162 @@ following text:
%
% \begin{markdown}
+#### Markdown Document Renderers
+The \mdef{markdownRendererDocumentBegin} and \mdef{markdownRendererDocumentEnd}
+macros represent the beginning and the end of a *markdown* document. The macros
+receive no arguments.
+
+A \TeX{} document may contain any number of markdown documents. Additionally,
+markdown documents may appear not only in a sequence, but several markdown
+documents may also be *nested*. Redefinitions of the macros should take this
+into account.
+
+% \end{markdown}
+%
+% \iffalse
+
+##### \LaTeX{} Example {.unnumbered}
+
+\def\markdownRendererDocumentEnd{%
+ \endgroup
+ This is the end of a document.\par
+}
+\def\markdownRendererDocumentBegin{%
+ This is the beginning of a document.\par
+ \begingroup
+ \def\markdownRendererDocumentBegin{%
+ This is the beginning of a nested document.\par
+ \begingroup
+ \def\markdownRendererDocumentBegin{%
+ This is the beginning of a nested document.\par
+ \begingroup
+ }%
+ \def\markdownRendererDocumentEnd{%
+ \endgroup
+ This is the end of a nested document.\par
+ }%
+ }%
+}
+
+Using a text editor, create a text document named `nested.md` with the
+following content:
+``` md
+This is a *nested* markdown document.
+```
+
+Using a text editor, create a text document named `document.tex` with the
+following content:
+``` tex
+\documentclass{article}
+\usepackage[contentBlocks]{markdown}
+\markdownSetup{
+ renderers = {
+ contentBlock = {%
+ \markdownInput{#3}%
+ },
+ documentBegin = {%
+ \par
+ \emph{(The beginning of a document)}
+ \par
+ \begingroup
+ \markdownSetup{snippet=first-nesting-level}%
+ },
+ documentEnd = {%
+ \endgroup
+ \par
+ \emph{(The end of a document)}
+ \par
+ },
+ },
+}
+\markdownSetupSnippet{first-nesting-level}{
+ renderers = {
+ documentBegin = {
+ \par
+ \emph{(The beginning of a nested document)}
+ \par
+ \begingroup
+ \markdownSetup{snippet=second-nesting-level-and-below}
+ },
+ },
+}
+\markdownSetupSnippet{second-nesting-level-and-below}{
+ renderers = {
+ documentBegin = {
+ \par
+ \emph{(The beginning of a nested document)}
+ \par
+ \begingroup
+ },
+ documentEnd = {
+ \endgroup
+ \par
+ \emph{(The end of a nested document)}
+ \par
+ },
+ },
+}
+\begin{document}
+\begin{markdown}
+Hello *world*!
+
+/nested.md
+
+_Foo_ bar!
+\end{markdown}
+\begin{markdown}
+
+Bar baz!
+
+\end{markdown}
+\end{document}
+```````
+Next, invoke LuaTeX from the terminal:
+``` sh
+lualatex document.tex
+``````
+A PDF document named `document.pdf` should be produced and contain the
+following text:
+
+> *(The beginning of a document)*
+>
+> Hello *world*!
+>
+> *(The beginning of a nested document)*
+>
+> This is a *nested* markdown document.
+>
+> *(The end of a nested document)*
+>
+> _Foo_ bar!
+>
+> *(The end of a document)*
+>
+> *(The beginning of a document)*
+>
+> Bar baz!
+>
+> *(The end of a document)*
+
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+% \begin{macrocode}
+\def\markdownRendererDocumentBegin{%
+ \markdownRendererDocumentBeginPrototype}%
+\def\markdownRendererDocumentEnd{%
+ \markdownRendererDocumentEndPrototype}%
+% \end{macrocode}
+% \par
+%
+% \iffalse
+%</tex>
+%<*manual-tokens>
+% \fi
+%
+% \begin{markdown}
+
#### Interblock Separator Renderer
The \mdef{markdownRendererInterblockSeparator} macro represents a separator
between two markdown block elements. The macro receives no arguments.
@@ -11899,6 +12057,8 @@ following text:
%
% \end{markdown}
% \begin{macrocode}
+\def\markdownRendererDocumentBeginPrototype{}%
+\def\markdownRendererDocumentEndPrototype{}%
\def\markdownRendererInterblockSeparatorPrototype{}%
\def\markdownRendererLineBreakPrototype{}%
\def\markdownRendererEllipsisPrototype{}%
@@ -12946,6 +13106,10 @@ The following ordered list will be preceded by roman numerals:
%
% \end{markdown}
% \begin{macrocode}
+\define@key{markdownRenderers}{documentBegin}{%
+ \renewcommand\markdownRendererDocumentBegin{#1}}%
+\define@key{markdownRenderers}{documentEnd}{%
+ \renewcommand\markdownRendererDocumentEnd{#1}}%
\define@key{markdownRenderers}{interblockSeparator}{%
\renewcommand\markdownRendererInterblockSeparator{#1}}%
\define@key{markdownRenderers}{lineBreak}{%
@@ -13117,6 +13281,10 @@ The following ordered list will be preceded by roman numerals:
%
% \end{markdown}
% \begin{macrocode}
+\define@key{markdownRendererPrototypes}{documentBegin}{%
+ \renewcommand\markdownRendererDocumentBeginPrototype{#1}}%
+\define@key{markdownRendererPrototypes}{documentEnd}{%
+ \renewcommand\markdownRendererDocumentEndPrototype{#1}}%
\define@key{markdownRendererPrototypes}{interblockSeparator}{%
\renewcommand\markdownRendererInterblockSeparatorPrototype{#1}}%
\define@key{markdownRendererPrototypes}{lineBreak}{%
@@ -15989,15 +16157,6 @@ function M.writer.new(options)
% \par
% \begin{markdown}
%
-% Define \luamdef{writer->eof} as the end of file marker in the output format.
-%
-% \end{markdown}
-% \begin{macrocode}
- self.eof = [[\relax]]
-% \end{macrocode}
-% \par
-% \begin{markdown}
-%
% Define \luamdef{writer->linebreak} as the output format of a forced line break.
%
% \end{markdown}
@@ -16498,6 +16657,19 @@ function M.writer.new(options)
% \par
% \begin{markdown}
%
+% Define \luamdef{writer->document} as a function that will transform a
+% document `d` to the output format.
+%
+% \end{markdown}
+% \begin{macrocode}
+ function self.document(d)
+ return {"\\markdownRendererDocumentBegin\n", d,
+ "\\markdownRendererDocumentEnd"}
+ end
+% \end{macrocode}
+% \par
+% \begin{markdown}
+%
% Define \luamdef{writer->jekyllData} as a function that will transform an
% input \acro{yaml} table `d` to the output format. The table is the value for
% the key `p` in the parent table; if `p` is nil, then the table has no parent.
@@ -18276,7 +18448,7 @@ larsers.PipeTable = Ct(larsers.table_row * parsers.newline
* (P("---") + P("..."))
/ function(text)
local tinyyaml = require("markdown-tinyyaml")
- data = tinyyaml.parse(text)
+ data = tinyyaml.parse(text,{timestamps=false})
return writer.jekyllData(data, function(s)
return parse_blocks(s)
end, nil)
@@ -18717,7 +18889,8 @@ larsers.PipeTable = Ct(larsers.table_row * parsers.newline
% \end{markdown}
% \begin{macrocode}
local function convert(input)
- return util.rope_to_string(parse_blocks_toplevel(input)) .. writer.eof
+ local document = parse_blocks_toplevel(input)
+ return util.rope_to_string(writer.document(document))
end
if options.eagerCache or options.finalizeCache then
local name = util.cache(options.cacheDir, input, salt, convert, ".md" .. writer.suffix)
@@ -20031,7 +20204,25 @@ end
dlBeginTight = {\markdownRendererDlBegin},
dlEndTight = {\markdownRendererDlEnd}}}}
\RequirePackage{amsmath}
-\RequirePackage{amssymb}
+% \end{macrocode}
+% \par
+% \begin{markdown}
+%
+% Unless the \pkg{unicode-math} package has been loaded, load the \pkg{amssymb}
+% package with symbols to be used for tickboxes.
+%
+% \end{markdown}
+% \begin{macrocode}
+\@ifpackageloaded{unicode-math}{
+ \markdownSetup{rendererPrototypes={
+ untickedBox = {$\mdlgwhtsquare$},
+ }}
+}{
+ \RequirePackage{amssymb}
+ \markdownSetup{rendererPrototypes={
+ untickedBox = {$\square$},
+ }}
+}
\RequirePackage{csvsimple}
\RequirePackage{fancyvrb}
\RequirePackage{graphicx}
@@ -20045,7 +20236,31 @@ end
backslash = {\textbackslash},
tilde = {\textasciitilde},
pipe = {\textbar},
- codeSpan = {\texttt{#1}},
+% \end{macrocode}
+% \par
+% \begin{markdown}
+%
+% We can capitalize on the fact that the expansion of renderers is performed by
+% \TeX{} during the typesetting. Therefore, even if we don't know whether a
+% span of text is part of math formula or not when we are parsing markdown,%
+% ^[This property may actually be undecidable. Suppose a span of text is a part
+% of a macro definition. Then, whether the span of text is part of a math
+% formula or not depends on where the macro is later used, which may easily
+% be *both* inside and outside a math formula.] we can reliably detect math
+% mode inside the renderer.
+%
+% Here, we will redefine the code span renderer prototype to typeset upright
+% text in math formulae and typewriter text outside math formulae.
+%
+% \end{markdown}
+% \begin{macrocode}
+ codeSpan = {%
+ \ifmmode
+ \text{#1}%
+ \else
+ \texttt{#1}%
+ \fi
+ },
contentBlock = {%
\ifthenelse{\equal{#1}{csv}}{%
\begin{table}%
@@ -20088,7 +20303,6 @@ end
emphasis = {\emph{#1}},
tickedBox = {$\boxtimes$},
halfTickedBox = {$\boxdot$},
- untickedBox = {$\square$},
blockQuoteBegin = {\begin{quotation}},
blockQuoteEnd = {\end{quotation}},
inputVerbatim = {\VerbatimInput{#1}},
diff --git a/macros/generic/markdown/markdown.html b/macros/generic/markdown/markdown.html
index 852e39a3b1..3576b6edaf 100644
--- a/macros/generic/markdown/markdown.html
+++ b/macros/generic/markdown/markdown.html
@@ -82,7 +82,7 @@
<header id="title-block-header">
<h1 class="title">Markdown Package User Manual</h1>
<p class="author">Vít Novotný</p>
-<p class="date">2.12.0-1-g976f074 (2021/12/30)</p>
+<p class="date">2.13.0-0-g1f680a8 (2022/01/30)</p>
</header>
<nav id="TOC" role="doc-toc">
<ul>
@@ -4084,52 +4084,137 @@ Thomas,Edison,1847</code></pre>
<li>Yes I can!</li>
</ul>
</blockquote>
-<h4 data-number="2.3.1.2" id="interblock-separator-renderer"><span class="header-section-number">2.3.1.2</span> Interblock Separator Renderer</h4>
+<h4 data-number="2.3.1.2" id="markdown-document-renderers"><span class="header-section-number">2.3.1.2</span> Markdown Document Renderers</h4>
+<p>The <code>\markdownRendererDocumentBegin</code> and <code>\markdownRendererDocumentEnd</code> macros represent the beginning and the end of a <em>markdown</em> document. The macros receive no arguments.</p>
+<p>A <span class="tex">T<sub>e</sub>X</span> document may contain any number of markdown documents. Additionally, markdown documents may appear not only in a sequence, but several markdown documents may also be <em>nested</em>. Redefinitions of the macros should take this into account.</p>
+<h5 class="unnumbered" data-number="" id="latex-example-36"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<p>Using a text editor, create a text document named <code>nested.md</code> with the following content:</p>
+<div class="sourceCode" id="cb344"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb344-1"><a href="#cb344-1" aria-hidden="true"></a>This is a *nested* markdown document.</span></code></pre></div>
+<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
+<div class="sourceCode" id="cb345"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb345-1"><a href="#cb345-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb345-2"><a href="#cb345-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[contentBlocks]{<span class="ex">markdown</span>}</span>
+<span id="cb345-3"><a href="#cb345-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb345-4"><a href="#cb345-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb345-5"><a href="#cb345-5" aria-hidden="true"></a> contentBlock = {<span class="co">%</span></span>
+<span id="cb345-6"><a href="#cb345-6" aria-hidden="true"></a> <span class="fu">\markdownInput</span>{#3}<span class="co">%</span></span>
+<span id="cb345-7"><a href="#cb345-7" aria-hidden="true"></a> },</span>
+<span id="cb345-8"><a href="#cb345-8" aria-hidden="true"></a> documentBegin = {<span class="co">%</span></span>
+<span id="cb345-9"><a href="#cb345-9" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb345-10"><a href="#cb345-10" aria-hidden="true"></a> <span class="fu">\emph</span>{(The beginning of a document)}</span>
+<span id="cb345-11"><a href="#cb345-11" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb345-12"><a href="#cb345-12" aria-hidden="true"></a> <span class="fu">\begingroup</span></span>
+<span id="cb345-13"><a href="#cb345-13" aria-hidden="true"></a> <span class="fu">\markdownSetup</span>{snippet=first-nesting-level}<span class="co">%</span></span>
+<span id="cb345-14"><a href="#cb345-14" aria-hidden="true"></a> },</span>
+<span id="cb345-15"><a href="#cb345-15" aria-hidden="true"></a> documentEnd = {<span class="co">%</span></span>
+<span id="cb345-16"><a href="#cb345-16" aria-hidden="true"></a> <span class="fu">\endgroup</span></span>
+<span id="cb345-17"><a href="#cb345-17" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb345-18"><a href="#cb345-18" aria-hidden="true"></a> <span class="fu">\emph</span>{(The end of a document)}</span>
+<span id="cb345-19"><a href="#cb345-19" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb345-20"><a href="#cb345-20" aria-hidden="true"></a> },</span>
+<span id="cb345-21"><a href="#cb345-21" aria-hidden="true"></a> },</span>
+<span id="cb345-22"><a href="#cb345-22" aria-hidden="true"></a>}</span>
+<span id="cb345-23"><a href="#cb345-23" aria-hidden="true"></a><span class="fu">\markdownSetupSnippet</span>{first-nesting-level}{</span>
+<span id="cb345-24"><a href="#cb345-24" aria-hidden="true"></a> renderers = {</span>
+<span id="cb345-25"><a href="#cb345-25" aria-hidden="true"></a> documentBegin = {</span>
+<span id="cb345-26"><a href="#cb345-26" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb345-27"><a href="#cb345-27" aria-hidden="true"></a> <span class="fu">\emph</span>{(The beginning of a nested document)}</span>
+<span id="cb345-28"><a href="#cb345-28" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb345-29"><a href="#cb345-29" aria-hidden="true"></a> <span class="fu">\begingroup</span></span>
+<span id="cb345-30"><a href="#cb345-30" aria-hidden="true"></a> <span class="fu">\markdownSetup</span>{snippet=second-nesting-level-and-below}</span>
+<span id="cb345-31"><a href="#cb345-31" aria-hidden="true"></a> },</span>
+<span id="cb345-32"><a href="#cb345-32" aria-hidden="true"></a> },</span>
+<span id="cb345-33"><a href="#cb345-33" aria-hidden="true"></a>}</span>
+<span id="cb345-34"><a href="#cb345-34" aria-hidden="true"></a><span class="fu">\markdownSetupSnippet</span>{second-nesting-level-and-below}{</span>
+<span id="cb345-35"><a href="#cb345-35" aria-hidden="true"></a> renderers = {</span>
+<span id="cb345-36"><a href="#cb345-36" aria-hidden="true"></a> documentBegin = {</span>
+<span id="cb345-37"><a href="#cb345-37" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb345-38"><a href="#cb345-38" aria-hidden="true"></a> <span class="fu">\emph</span>{(The beginning of a nested document)}</span>
+<span id="cb345-39"><a href="#cb345-39" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb345-40"><a href="#cb345-40" aria-hidden="true"></a> <span class="fu">\begingroup</span></span>
+<span id="cb345-41"><a href="#cb345-41" aria-hidden="true"></a> },</span>
+<span id="cb345-42"><a href="#cb345-42" aria-hidden="true"></a> documentEnd = {</span>
+<span id="cb345-43"><a href="#cb345-43" aria-hidden="true"></a> <span class="fu">\endgroup</span></span>
+<span id="cb345-44"><a href="#cb345-44" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb345-45"><a href="#cb345-45" aria-hidden="true"></a> <span class="fu">\emph</span>{(The end of a nested document)}</span>
+<span id="cb345-46"><a href="#cb345-46" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb345-47"><a href="#cb345-47" aria-hidden="true"></a> },</span>
+<span id="cb345-48"><a href="#cb345-48" aria-hidden="true"></a> },</span>
+<span id="cb345-49"><a href="#cb345-49" aria-hidden="true"></a>}</span>
+<span id="cb345-50"><a href="#cb345-50" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb345-51"><a href="#cb345-51" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb345-52"><a href="#cb345-52" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb345-53"><a href="#cb345-53" aria-hidden="true"></a></span>
+<span id="cb345-54"><a href="#cb345-54" aria-hidden="true"></a>/nested.md</span>
+<span id="cb345-55"><a href="#cb345-55" aria-hidden="true"></a></span>
+<span id="cb345-56"><a href="#cb345-56" aria-hidden="true"></a>_Foo_ bar!</span>
+<span id="cb345-57"><a href="#cb345-57" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb345-58"><a href="#cb345-58" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb345-59"><a href="#cb345-59" aria-hidden="true"></a></span>
+<span id="cb345-60"><a href="#cb345-60" aria-hidden="true"></a>Bar baz!</span>
+<span id="cb345-61"><a href="#cb345-61" aria-hidden="true"></a></span>
+<span id="cb345-62"><a href="#cb345-62" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb345-63"><a href="#cb345-63" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb346"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb346-1"><a href="#cb346-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
+<blockquote>
+<p><em>(The beginning of a document)</em></p>
+<p>Hello <em>world</em>!</p>
+<p><em>(The beginning of a nested document)</em></p>
+<p>This is a <em>nested</em> markdown document.</p>
+<p><em>(The end of a nested document)</em></p>
+<p><em>Foo</em> bar!</p>
+<p><em>(The end of a document)</em></p>
+<p><em>(The beginning of a document)</em></p>
+<p>Bar baz!</p>
+<p><em>(The end of a document)</em></p>
+</blockquote>
+<h4 data-number="2.3.1.3" id="interblock-separator-renderer"><span class="header-section-number">2.3.1.3</span> Interblock Separator Renderer</h4>
<p>The <code>\markdownRendererInterblockSeparator</code> macro represents a separator between two markdown block elements. The macro receives no arguments.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-17">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb344"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb344-1"><a href="#cb344-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb344-2"><a href="#cb344-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb344-3"><a href="#cb344-3" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb344-4"><a href="#cb344-4" aria-hidden="true"></a> {<span class="fu">\it</span>(The end of a block)}<span class="co">%</span></span>
-<span id="cb344-5"><a href="#cb344-5" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb344-6"><a href="#cb344-6" aria-hidden="true"></a>}</span>
-<span id="cb344-7"><a href="#cb344-7" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb344-8"><a href="#cb344-8" aria-hidden="true"></a>Hello *world*!</span>
-<span id="cb344-9"><a href="#cb344-9" aria-hidden="true"></a></span>
-<span id="cb344-10"><a href="#cb344-10" aria-hidden="true"></a>_Foo_ bar!</span>
-<span id="cb344-11"><a href="#cb344-11" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb344-12"><a href="#cb344-12" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<div class="sourceCode" id="cb347"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb347-1"><a href="#cb347-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb347-2"><a href="#cb347-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb347-3"><a href="#cb347-3" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb347-4"><a href="#cb347-4" aria-hidden="true"></a> {<span class="fu">\it</span>(The end of a block)}<span class="co">%</span></span>
+<span id="cb347-5"><a href="#cb347-5" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb347-6"><a href="#cb347-6" aria-hidden="true"></a>}</span>
+<span id="cb347-7"><a href="#cb347-7" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb347-8"><a href="#cb347-8" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb347-9"><a href="#cb347-9" aria-hidden="true"></a></span>
+<span id="cb347-10"><a href="#cb347-10" aria-hidden="true"></a>_Foo_ bar!</span>
+<span id="cb347-11"><a href="#cb347-11" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb347-12"><a href="#cb347-12" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb345"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb345-1"><a href="#cb345-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb348"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb348-1"><a href="#cb348-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Hello <em>world</em>!</p>
<p><em>(The end of a block)</em></p>
<p><em>Foo</em> bar!</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-36"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-37"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb346"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb346-1"><a href="#cb346-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb346-2"><a href="#cb346-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
-<span id="cb346-3"><a href="#cb346-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb346-4"><a href="#cb346-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb346-5"><a href="#cb346-5" aria-hidden="true"></a> interblockSeparator = {<span class="co">%</span></span>
-<span id="cb346-6"><a href="#cb346-6" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb346-7"><a href="#cb346-7" aria-hidden="true"></a> <span class="fu">\emph</span>{(The end of a block)}<span class="co">%</span></span>
-<span id="cb346-8"><a href="#cb346-8" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb346-9"><a href="#cb346-9" aria-hidden="true"></a> },</span>
-<span id="cb346-10"><a href="#cb346-10" aria-hidden="true"></a> },</span>
-<span id="cb346-11"><a href="#cb346-11" aria-hidden="true"></a>}</span>
-<span id="cb346-12"><a href="#cb346-12" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb346-13"><a href="#cb346-13" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb346-14"><a href="#cb346-14" aria-hidden="true"></a>Hello *world*!</span>
-<span id="cb346-15"><a href="#cb346-15" aria-hidden="true"></a></span>
-<span id="cb346-16"><a href="#cb346-16" aria-hidden="true"></a>_Foo_ bar!</span>
-<span id="cb346-17"><a href="#cb346-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb346-18"><a href="#cb346-18" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb347"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb347-1"><a href="#cb347-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb349"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb349-1"><a href="#cb349-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb349-2"><a href="#cb349-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb349-3"><a href="#cb349-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb349-4"><a href="#cb349-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb349-5"><a href="#cb349-5" aria-hidden="true"></a> interblockSeparator = {<span class="co">%</span></span>
+<span id="cb349-6"><a href="#cb349-6" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb349-7"><a href="#cb349-7" aria-hidden="true"></a> <span class="fu">\emph</span>{(The end of a block)}<span class="co">%</span></span>
+<span id="cb349-8"><a href="#cb349-8" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb349-9"><a href="#cb349-9" aria-hidden="true"></a> },</span>
+<span id="cb349-10"><a href="#cb349-10" aria-hidden="true"></a> },</span>
+<span id="cb349-11"><a href="#cb349-11" aria-hidden="true"></a>}</span>
+<span id="cb349-12"><a href="#cb349-12" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb349-13"><a href="#cb349-13" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb349-14"><a href="#cb349-14" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb349-15"><a href="#cb349-15" aria-hidden="true"></a></span>
+<span id="cb349-16"><a href="#cb349-16" aria-hidden="true"></a>_Foo_ bar!</span>
+<span id="cb349-17"><a href="#cb349-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb349-18"><a href="#cb349-18" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb350"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb350-1"><a href="#cb350-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Hello <em>world</em>!</p>
@@ -4138,69 +4223,69 @@ Thomas,Edison,1847</code></pre>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-29">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb348"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb348-1"><a href="#cb348-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb348-2"><a href="#cb348-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb348-3"><a href="#cb348-3" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb348-4"><a href="#cb348-4" aria-hidden="true"></a> <span class="fu">\emph</span>{(The end of a block)}<span class="co">%</span></span>
-<span id="cb348-5"><a href="#cb348-5" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb348-6"><a href="#cb348-6" aria-hidden="true"></a>}</span>
-<span id="cb348-7"><a href="#cb348-7" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb348-8"><a href="#cb348-8" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb348-9"><a href="#cb348-9" aria-hidden="true"></a>Hello *world*!</span>
-<span id="cb348-10"><a href="#cb348-10" aria-hidden="true"></a></span>
-<span id="cb348-11"><a href="#cb348-11" aria-hidden="true"></a>_Foo_ bar!</span>
-<span id="cb348-12"><a href="#cb348-12" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb348-13"><a href="#cb348-13" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<div class="sourceCode" id="cb351"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb351-1"><a href="#cb351-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb351-2"><a href="#cb351-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb351-3"><a href="#cb351-3" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb351-4"><a href="#cb351-4" aria-hidden="true"></a> <span class="fu">\emph</span>{(The end of a block)}<span class="co">%</span></span>
+<span id="cb351-5"><a href="#cb351-5" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb351-6"><a href="#cb351-6" aria-hidden="true"></a>}</span>
+<span id="cb351-7"><a href="#cb351-7" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb351-8"><a href="#cb351-8" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb351-9"><a href="#cb351-9" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb351-10"><a href="#cb351-10" aria-hidden="true"></a></span>
+<span id="cb351-11"><a href="#cb351-11" aria-hidden="true"></a>_Foo_ bar!</span>
+<span id="cb351-12"><a href="#cb351-12" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb351-13"><a href="#cb351-13" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb349"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb349-1"><a href="#cb349-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb352"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb352-1"><a href="#cb352-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Hello <em>world</em>!</p>
<p><em>(The end of a block)</em></p>
<p><em>Foo</em> bar!</p>
</blockquote>
-<h4 data-number="2.3.1.3" id="line-break-renderer"><span class="header-section-number">2.3.1.3</span> Line Break Renderer</h4>
+<h4 data-number="2.3.1.4" id="line-break-renderer"><span class="header-section-number">2.3.1.4</span> Line Break Renderer</h4>
<p>The <code>\markdownRendererLineBreak</code> macro represents a forced line break. The macro receives no arguments.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-18">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb350"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb350-1"><a href="#cb350-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb350-2"><a href="#cb350-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLineBreak</span>{<span class="co">%</span></span>
-<span id="cb350-3"><a href="#cb350-3" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb350-4"><a href="#cb350-4" aria-hidden="true"></a> {<span class="fu">\it</span>(A forced linebreak)}<span class="co">%</span></span>
-<span id="cb350-5"><a href="#cb350-5" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb350-6"><a href="#cb350-6" aria-hidden="true"></a>}</span>
-<span id="cb350-7"><a href="#cb350-7" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
-<span id="cb350-8"><a href="#cb350-8" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<div class="sourceCode" id="cb353"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb353-1"><a href="#cb353-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb353-2"><a href="#cb353-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLineBreak</span>{<span class="co">%</span></span>
+<span id="cb353-3"><a href="#cb353-3" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb353-4"><a href="#cb353-4" aria-hidden="true"></a> {<span class="fu">\it</span>(A forced linebreak)}<span class="co">%</span></span>
+<span id="cb353-5"><a href="#cb353-5" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb353-6"><a href="#cb353-6" aria-hidden="true"></a>}</span>
+<span id="cb353-7"><a href="#cb353-7" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb353-8"><a href="#cb353-8" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
<p>Using a text editor, create a text document named <code>example.md</code> with the following content. Note the two spaces at the end of the first line, which specify a hard linebreak. Due to the limitations of the <span class="tex">T<sub>e</sub>X</span> input processor, hard linebreaks would be ignored if we typed them directly into the <code>document.tex</code> document.</p>
<pre><code>Hello world! <br/>_Foo_ bar!</code></pre>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb351"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb351-1"><a href="#cb351-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb354"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb354-1"><a href="#cb354-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Hello <em>world</em>!</p>
<p><em>(A forced linebreak)</em></p>
<p><em>Foo</em> bar!</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-37"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-38"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb352"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb352-1"><a href="#cb352-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb352-2"><a href="#cb352-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
-<span id="cb352-3"><a href="#cb352-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb352-4"><a href="#cb352-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb352-5"><a href="#cb352-5" aria-hidden="true"></a> lineBreak = {<span class="co">%</span></span>
-<span id="cb352-6"><a href="#cb352-6" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb352-7"><a href="#cb352-7" aria-hidden="true"></a> <span class="fu">\emph</span>{(A forced linebreak)}<span class="co">%</span></span>
-<span id="cb352-8"><a href="#cb352-8" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb352-9"><a href="#cb352-9" aria-hidden="true"></a> },</span>
-<span id="cb352-10"><a href="#cb352-10" aria-hidden="true"></a> },</span>
-<span id="cb352-11"><a href="#cb352-11" aria-hidden="true"></a>}</span>
-<span id="cb352-12"><a href="#cb352-12" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb352-13"><a href="#cb352-13" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
-<span id="cb352-14"><a href="#cb352-14" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<div class="sourceCode" id="cb355"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb355-1"><a href="#cb355-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb355-2"><a href="#cb355-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb355-3"><a href="#cb355-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb355-4"><a href="#cb355-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb355-5"><a href="#cb355-5" aria-hidden="true"></a> lineBreak = {<span class="co">%</span></span>
+<span id="cb355-6"><a href="#cb355-6" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb355-7"><a href="#cb355-7" aria-hidden="true"></a> <span class="fu">\emph</span>{(A forced linebreak)}<span class="co">%</span></span>
+<span id="cb355-8"><a href="#cb355-8" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb355-9"><a href="#cb355-9" aria-hidden="true"></a> },</span>
+<span id="cb355-10"><a href="#cb355-10" aria-hidden="true"></a> },</span>
+<span id="cb355-11"><a href="#cb355-11" aria-hidden="true"></a>}</span>
+<span id="cb355-12"><a href="#cb355-12" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb355-13"><a href="#cb355-13" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb355-14"><a href="#cb355-14" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
<p>Using a text editor, create a text document named <code>example.md</code> with the following content. Note the two spaces at the end of the first line, which specify a hard linebreak. Due to the limitations of the <span class="tex">T<sub>e</sub>X</span> input processor, hard linebreaks would be ignored if we typed them directly into the <code>document.tex</code> document.</p>
<pre><code>Hello world! <br/>_Foo_ bar!</code></pre>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb353"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb353-1"><a href="#cb353-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb356"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb356-1"><a href="#cb356-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Hello <em>world</em>!</p>
@@ -4209,123 +4294,123 @@ Thomas,Edison,1847</code></pre>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-30">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb354"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb354-1"><a href="#cb354-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb354-2"><a href="#cb354-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLineBreak</span>{<span class="co">%</span></span>
-<span id="cb354-3"><a href="#cb354-3" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb354-4"><a href="#cb354-4" aria-hidden="true"></a> <span class="fu">\emph</span>{(A forced linebreak)}<span class="co">%</span></span>
-<span id="cb354-5"><a href="#cb354-5" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb354-6"><a href="#cb354-6" aria-hidden="true"></a>}</span>
-<span id="cb354-7"><a href="#cb354-7" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb354-8"><a href="#cb354-8" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
-<span id="cb354-9"><a href="#cb354-9" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<div class="sourceCode" id="cb357"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb357-1"><a href="#cb357-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb357-2"><a href="#cb357-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLineBreak</span>{<span class="co">%</span></span>
+<span id="cb357-3"><a href="#cb357-3" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb357-4"><a href="#cb357-4" aria-hidden="true"></a> <span class="fu">\emph</span>{(A forced linebreak)}<span class="co">%</span></span>
+<span id="cb357-5"><a href="#cb357-5" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb357-6"><a href="#cb357-6" aria-hidden="true"></a>}</span>
+<span id="cb357-7"><a href="#cb357-7" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb357-8"><a href="#cb357-8" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb357-9"><a href="#cb357-9" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
<p>Using a text editor, create a text document named <code>example.md</code> with the following content. Note the two spaces at the end of the first line, which specify a hard linebreak. Due to the limitations of the <span class="tex">T<sub>e</sub>X</span> input processor, hard linebreaks would be ignored if we typed them directly into the <code>document.tex</code> document.</p>
<pre><code>Hello world! <br/>_Foo_ bar!</code></pre>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb355"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb355-1"><a href="#cb355-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb358"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb358-1"><a href="#cb358-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Hello <em>world</em>!</p>
<p><em>(A forced linebreak)</em></p>
<p><em>Foo</em> bar!</p>
</blockquote>
-<h4 data-number="2.3.1.4" id="ellipsis-renderer"><span class="header-section-number">2.3.1.4</span> Ellipsis Renderer</h4>
+<h4 data-number="2.3.1.5" id="ellipsis-renderer"><span class="header-section-number">2.3.1.5</span> Ellipsis Renderer</h4>
<p>The <code>\markdownRendererEllipsis</code> macro replaces any occurance of ASCII ellipses in the input text. This macro will only be produced, when the <strong><code>smartEllipses</code></strong> option is enabled. The macro receives no arguments.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-19">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb356"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb356-1"><a href="#cb356-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb356-2"><a href="#cb356-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionSmartEllipses</span>{true}</span>
-<span id="cb356-3"><a href="#cb356-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererEllipsis</span>{{<span class="fu">\it</span> SHAZAM}!}</span>
-<span id="cb356-4"><a href="#cb356-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb356-5"><a href="#cb356-5" aria-hidden="true"></a>The secret word is ...</span>
-<span id="cb356-6"><a href="#cb356-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb356-7"><a href="#cb356-7" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<div class="sourceCode" id="cb359"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb359-1"><a href="#cb359-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb359-2"><a href="#cb359-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionSmartEllipses</span>{true}</span>
+<span id="cb359-3"><a href="#cb359-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererEllipsis</span>{{<span class="fu">\it</span> SHAZAM}!}</span>
+<span id="cb359-4"><a href="#cb359-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb359-5"><a href="#cb359-5" aria-hidden="true"></a>The secret word is ...</span>
+<span id="cb359-6"><a href="#cb359-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb359-7"><a href="#cb359-7" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb357"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb357-1"><a href="#cb357-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb360"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb360-1"><a href="#cb360-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>The secret word is <em>SHAZAM</em>!</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-38"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-39"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb358"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb358-1"><a href="#cb358-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb358-2"><a href="#cb358-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[smartEllipses]{<span class="ex">markdown</span>}</span>
-<span id="cb358-3"><a href="#cb358-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb358-4"><a href="#cb358-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb358-5"><a href="#cb358-5" aria-hidden="true"></a> ellipsis = <span class="fu">\emph</span>{SHAZAM}!,</span>
-<span id="cb358-6"><a href="#cb358-6" aria-hidden="true"></a> },</span>
-<span id="cb358-7"><a href="#cb358-7" aria-hidden="true"></a>}</span>
-<span id="cb358-8"><a href="#cb358-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb358-9"><a href="#cb358-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb358-10"><a href="#cb358-10" aria-hidden="true"></a>The secret word is ...</span>
-<span id="cb358-11"><a href="#cb358-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb358-12"><a href="#cb358-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<div class="sourceCode" id="cb361"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb361-1"><a href="#cb361-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb361-2"><a href="#cb361-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[smartEllipses]{<span class="ex">markdown</span>}</span>
+<span id="cb361-3"><a href="#cb361-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb361-4"><a href="#cb361-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb361-5"><a href="#cb361-5" aria-hidden="true"></a> ellipsis = <span class="fu">\emph</span>{SHAZAM}!,</span>
+<span id="cb361-6"><a href="#cb361-6" aria-hidden="true"></a> },</span>
+<span id="cb361-7"><a href="#cb361-7" aria-hidden="true"></a>}</span>
+<span id="cb361-8"><a href="#cb361-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb361-9"><a href="#cb361-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb361-10"><a href="#cb361-10" aria-hidden="true"></a>The secret word is ...</span>
+<span id="cb361-11"><a href="#cb361-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb361-12"><a href="#cb361-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb359"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb359-1"><a href="#cb359-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb362"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb362-1"><a href="#cb362-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>The secret word is <em>SHAZAM</em>!</p>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-31">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb360"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb360-1"><a href="#cb360-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb360-2"><a href="#cb360-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionSmartEllipses</span>{true}</span>
-<span id="cb360-3"><a href="#cb360-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererEllipsis</span>{<span class="fu">\emph</span>{SHAZAM}!}</span>
-<span id="cb360-4"><a href="#cb360-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb360-5"><a href="#cb360-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb360-6"><a href="#cb360-6" aria-hidden="true"></a>The secret word is ...</span>
-<span id="cb360-7"><a href="#cb360-7" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb360-8"><a href="#cb360-8" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<div class="sourceCode" id="cb363"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb363-1"><a href="#cb363-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb363-2"><a href="#cb363-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionSmartEllipses</span>{true}</span>
+<span id="cb363-3"><a href="#cb363-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererEllipsis</span>{<span class="fu">\emph</span>{SHAZAM}!}</span>
+<span id="cb363-4"><a href="#cb363-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb363-5"><a href="#cb363-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb363-6"><a href="#cb363-6" aria-hidden="true"></a>The secret word is ...</span>
+<span id="cb363-7"><a href="#cb363-7" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb363-8"><a href="#cb363-8" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb361"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb361-1"><a href="#cb361-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb364"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb364-1"><a href="#cb364-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Hello <em>world</em>!</p>
<p><em>(The end of a block)</em></p>
<p><em>Foo</em> bar!</p>
</blockquote>
-<h4 data-number="2.3.1.5" id="non-breaking-space-renderer"><span class="header-section-number">2.3.1.5</span> Non-Breaking Space Renderer</h4>
+<h4 data-number="2.3.1.6" id="non-breaking-space-renderer"><span class="header-section-number">2.3.1.6</span> Non-Breaking Space Renderer</h4>
<p>The <code>\markdownRendererNbsp</code> macro represents a non-breaking space.</p>
-<h5 class="unnumbered" data-number="" id="latex-example-39"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-40"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.bib</code> with the following content:</p>
-<div class="sourceCode" id="cb362"><pre class="sourceCode bib"><code class="sourceCode bibtex"><span id="cb362-1"><a href="#cb362-1" aria-hidden="true"></a><span class="va">@book</span>{<span class="ot">knuth:tex</span>,</span>
-<span id="cb362-2"><a href="#cb362-2" aria-hidden="true"></a> <span class="dt">author</span> = &quot;<span class="st">Knuth, Donald Ervin</span>&quot;,</span>
-<span id="cb362-3"><a href="#cb362-3" aria-hidden="true"></a> <span class="dt">title</span> = &quot;<span class="st">The </span><span class="ch">\TeX</span><span class="st"> book, volume A of Computers and typesetting</span>&quot;,</span>
-<span id="cb362-4"><a href="#cb362-4" aria-hidden="true"></a> <span class="dt">publisher</span> = &quot;<span class="st">Addison-Wesley</span>&quot;,</span>
-<span id="cb362-5"><a href="#cb362-5" aria-hidden="true"></a> <span class="dt">year</span> = &quot;<span class="st">1984</span>&quot;</span>
-<span id="cb362-6"><a href="#cb362-6" aria-hidden="true"></a>}</span></code></pre></div>
-<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb363"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb363-1"><a href="#cb363-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb363-2"><a href="#cb363-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[</span>
-<span id="cb363-3"><a href="#cb363-3" aria-hidden="true"></a> citations,</span>
-<span id="cb363-4"><a href="#cb363-4" aria-hidden="true"></a> citationNbsps,</span>
-<span id="cb363-5"><a href="#cb363-5" aria-hidden="true"></a>]{<span class="ex">markdown</span>}</span>
-<span id="cb363-6"><a href="#cb363-6" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb363-7"><a href="#cb363-7" aria-hidden="true"></a> renderers = {</span>
-<span id="cb363-8"><a href="#cb363-8" aria-hidden="true"></a> nbsp = {<span class="ss">$</span><span class="sc">\cdot</span><span class="ss">$</span>},</span>
-<span id="cb363-9"><a href="#cb363-9" aria-hidden="true"></a> },</span>
-<span id="cb363-10"><a href="#cb363-10" aria-hidden="true"></a>}</span>
-<span id="cb363-11"><a href="#cb363-11" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb363-12"><a href="#cb363-12" aria-hidden="true"></a></span>
-<span id="cb363-13"><a href="#cb363-13" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb363-14"><a href="#cb363-14" aria-hidden="true"></a>The TeXbook [@knuth:tex, p. 123 and 130] is good.</span>
-<span id="cb363-15"><a href="#cb363-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb363-16"><a href="#cb363-16" aria-hidden="true"></a></span>
-<span id="cb363-17"><a href="#cb363-17" aria-hidden="true"></a><span class="bu">\bibliographystyle</span>{<span class="ex">plain</span>}</span>
-<span id="cb363-18"><a href="#cb363-18" aria-hidden="true"></a><span class="bu">\bibliography</span>{<span class="ex">document.bib</span>}</span>
-<span id="cb363-19"><a href="#cb363-19" aria-hidden="true"></a></span>
-<span id="cb363-20"><a href="#cb363-20" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<div class="sourceCode" id="cb365"><pre class="sourceCode bib"><code class="sourceCode bibtex"><span id="cb365-1"><a href="#cb365-1" aria-hidden="true"></a><span class="va">@book</span>{<span class="ot">knuth:tex</span>,</span>
+<span id="cb365-2"><a href="#cb365-2" aria-hidden="true"></a> <span class="dt">author</span> = &quot;<span class="st">Knuth, Donald Ervin</span>&quot;,</span>
+<span id="cb365-3"><a href="#cb365-3" aria-hidden="true"></a> <span class="dt">title</span> = &quot;<span class="st">The </span><span class="ch">\TeX</span><span class="st"> book, volume A of Computers and typesetting</span>&quot;,</span>
+<span id="cb365-4"><a href="#cb365-4" aria-hidden="true"></a> <span class="dt">publisher</span> = &quot;<span class="st">Addison-Wesley</span>&quot;,</span>
+<span id="cb365-5"><a href="#cb365-5" aria-hidden="true"></a> <span class="dt">year</span> = &quot;<span class="st">1984</span>&quot;</span>
+<span id="cb365-6"><a href="#cb365-6" aria-hidden="true"></a>}</span></code></pre></div>
+<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
+<div class="sourceCode" id="cb366"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb366-1"><a href="#cb366-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb366-2"><a href="#cb366-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[</span>
+<span id="cb366-3"><a href="#cb366-3" aria-hidden="true"></a> citations,</span>
+<span id="cb366-4"><a href="#cb366-4" aria-hidden="true"></a> citationNbsps,</span>
+<span id="cb366-5"><a href="#cb366-5" aria-hidden="true"></a>]{<span class="ex">markdown</span>}</span>
+<span id="cb366-6"><a href="#cb366-6" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb366-7"><a href="#cb366-7" aria-hidden="true"></a> renderers = {</span>
+<span id="cb366-8"><a href="#cb366-8" aria-hidden="true"></a> nbsp = {<span class="ss">$</span><span class="sc">\cdot</span><span class="ss">$</span>},</span>
+<span id="cb366-9"><a href="#cb366-9" aria-hidden="true"></a> },</span>
+<span id="cb366-10"><a href="#cb366-10" aria-hidden="true"></a>}</span>
+<span id="cb366-11"><a href="#cb366-11" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb366-12"><a href="#cb366-12" aria-hidden="true"></a></span>
+<span id="cb366-13"><a href="#cb366-13" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb366-14"><a href="#cb366-14" aria-hidden="true"></a>The TeXbook [@knuth:tex, p. 123 and 130] is good.</span>
+<span id="cb366-15"><a href="#cb366-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb366-16"><a href="#cb366-16" aria-hidden="true"></a></span>
+<span id="cb366-17"><a href="#cb366-17" aria-hidden="true"></a><span class="bu">\bibliographystyle</span>{<span class="ex">plain</span>}</span>
+<span id="cb366-18"><a href="#cb366-18" aria-hidden="true"></a><span class="bu">\bibliography</span>{<span class="ex">document.bib</span>}</span>
+<span id="cb366-19"><a href="#cb366-19" aria-hidden="true"></a></span>
+<span id="cb366-20"><a href="#cb366-20" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
<p>Next, invoke LuaTeX and BibTeX from the terminal:</p>
-<div class="sourceCode" id="cb364"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb364-1"><a href="#cb364-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span>
-<span id="cb364-2"><a href="#cb364-2" aria-hidden="true"></a><span class="ex">bibtex</span> document.aux</span>
-<span id="cb364-3"><a href="#cb364-3" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span>
-<span id="cb364-4"><a href="#cb364-4" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb367"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb367-1"><a href="#cb367-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span>
+<span id="cb367-2"><a href="#cb367-2" aria-hidden="true"></a><span class="ex">bibtex</span> document.aux</span>
+<span id="cb367-3"><a href="#cb367-3" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span>
+<span id="cb367-4"><a href="#cb367-4" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>The TeXbook [1, p.·123·and·130] is good.</p>
<h3 id="references-2">References</h3>
<p>[1] Donald Ervin Knuth. <em>The TeXbook, volume A of Computers and typesetting.</em> Addison-Wesley, 1984.</p>
</blockquote>
-<h4 data-number="2.3.1.6" id="special-character-renderers"><span class="header-section-number">2.3.1.6</span> Special Character Renderers</h4>
+<h4 data-number="2.3.1.7" id="special-character-renderers"><span class="header-section-number">2.3.1.7</span> Special Character Renderers</h4>
<p>The following macros replace any special plain <span class="tex">T<sub>e</sub>X</span> characters, including the active pipe character (<code>|</code>) of Con<span class="tex">T<sub>e</sub>X</span>t, in the input text:</p>
<ul>
<li><code>\markdownRendererAmpersand</code> replaces the ampersand (<code>&amp;</code>).</li>
@@ -4342,106 +4427,106 @@ Thomas,Edison,1847</code></pre>
</ul>
<h5 class="unnumbered" data-number="" id="plain-tex-example-20">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content. We will make the tilde behave as if it were written in <span class="tex">T<sub>e</sub>X</span>, where it represents a non-breaking space.</p>
-<div class="sourceCode" id="cb365"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb365-1"><a href="#cb365-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb365-2"><a href="#cb365-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererTilde</span>{~}</span>
-<span id="cb365-3"><a href="#cb365-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb365-4"><a href="#cb365-4" aria-hidden="true"></a>Bartel~Leendert van~der~Waerden</span>
-<span id="cb365-5"><a href="#cb365-5" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb365-6"><a href="#cb365-6" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb366"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb366-1"><a href="#cb366-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb368"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb368-1"><a href="#cb368-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb368-2"><a href="#cb368-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererTilde</span>{~}</span>
+<span id="cb368-3"><a href="#cb368-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb368-4"><a href="#cb368-4" aria-hidden="true"></a>Bartel~Leendert van~der~Waerden</span>
+<span id="cb368-5"><a href="#cb368-5" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb368-6"><a href="#cb368-6" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb369"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb369-1"><a href="#cb369-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text, where the middot (<code>·</code>) denotes a non-breaking space:</p>
<blockquote>
<p>Bartel·Leendert van·der·Waerden</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-40"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-41"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content. We will make the tilde behave as if it were written in <span class="tex">T<sub>e</sub>X</span>, where it represents a non-breaking space.</p>
-<div class="sourceCode" id="cb367"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb367-1"><a href="#cb367-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb367-2"><a href="#cb367-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
-<span id="cb367-3"><a href="#cb367-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb367-4"><a href="#cb367-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb367-5"><a href="#cb367-5" aria-hidden="true"></a> tilde = ~,</span>
-<span id="cb367-6"><a href="#cb367-6" aria-hidden="true"></a> },</span>
-<span id="cb367-7"><a href="#cb367-7" aria-hidden="true"></a>}</span>
-<span id="cb367-8"><a href="#cb367-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb367-9"><a href="#cb367-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb367-10"><a href="#cb367-10" aria-hidden="true"></a>Bartel~Leendert van~der~Waerden</span>
-<span id="cb367-11"><a href="#cb367-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb367-12"><a href="#cb367-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb368"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb368-1"><a href="#cb368-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb370"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb370-1"><a href="#cb370-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb370-2"><a href="#cb370-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb370-3"><a href="#cb370-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb370-4"><a href="#cb370-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb370-5"><a href="#cb370-5" aria-hidden="true"></a> tilde = ~,</span>
+<span id="cb370-6"><a href="#cb370-6" aria-hidden="true"></a> },</span>
+<span id="cb370-7"><a href="#cb370-7" aria-hidden="true"></a>}</span>
+<span id="cb370-8"><a href="#cb370-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb370-9"><a href="#cb370-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb370-10"><a href="#cb370-10" aria-hidden="true"></a>Bartel~Leendert van~der~Waerden</span>
+<span id="cb370-11"><a href="#cb370-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb370-12"><a href="#cb370-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb371"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb371-1"><a href="#cb371-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text, where the middot (<code>·</code>) denotes a non-breaking space:</p>
<blockquote>
<p>Bartel·Leendert van·der·Waerden</p>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-32">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content. We will make the tilde behave as if it were written in <span class="tex">T<sub>e</sub>X</span>, where it represents a non-breaking space.</p>
-<div class="sourceCode" id="cb369"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb369-1"><a href="#cb369-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb369-2"><a href="#cb369-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererTilde</span>{~}</span>
-<span id="cb369-3"><a href="#cb369-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb369-4"><a href="#cb369-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb369-5"><a href="#cb369-5" aria-hidden="true"></a>Bartel~Leendert van~der~Waerden</span>
-<span id="cb369-6"><a href="#cb369-6" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb369-7"><a href="#cb369-7" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb370"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb370-1"><a href="#cb370-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb372"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb372-1"><a href="#cb372-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb372-2"><a href="#cb372-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererTilde</span>{~}</span>
+<span id="cb372-3"><a href="#cb372-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb372-4"><a href="#cb372-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb372-5"><a href="#cb372-5" aria-hidden="true"></a>Bartel~Leendert van~der~Waerden</span>
+<span id="cb372-6"><a href="#cb372-6" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb372-7"><a href="#cb372-7" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb373"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb373-1"><a href="#cb373-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text, where the middot (<code>·</code>) denotes a non-breaking space:</p>
<blockquote>
<p>Bartel·Leendert van·der·Waerden</p>
</blockquote>
-<h4 data-number="2.3.1.7" id="code-span-renderer"><span class="header-section-number">2.3.1.7</span> Code Span Renderer</h4>
+<h4 data-number="2.3.1.8" id="code-span-renderer"><span class="header-section-number">2.3.1.8</span> Code Span Renderer</h4>
<p>The <code>\markdownRendererCodeSpan</code> macro represents inlined code span in the input text. It receives a single argument that corresponds to the inlined code span.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-21">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb371"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb371-1"><a href="#cb371-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb371-2"><a href="#cb371-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
-<span id="cb371-3"><a href="#cb371-3" aria-hidden="true"></a></span>
-<span id="cb371-4"><a href="#cb371-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererCodeSpan</span>#1{#1}</span>
-<span id="cb371-5"><a href="#cb371-5" aria-hidden="true"></a></span>
-<span id="cb371-6"><a href="#cb371-6" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb371-7"><a href="#cb371-7" aria-hidden="true"></a>`<span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>`</span>
-<span id="cb371-8"><a href="#cb371-8" aria-hidden="true"></a></span>
-<span id="cb371-9"><a href="#cb371-9" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
-<span id="cb371-10"><a href="#cb371-10" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb371-11"><a href="#cb371-11" aria-hidden="true"></a></span>
-<span id="cb371-12"><a href="#cb371-12" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
-<span id="cb371-13"><a href="#cb371-13" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb371-14"><a href="#cb371-14" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
-<span id="cb371-15"><a href="#cb371-15" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb371-16"><a href="#cb371-16" aria-hidden="true"></a></span>
-<span id="cb371-17"><a href="#cb371-17" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb372"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb372-1"><a href="#cb372-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb374"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb374-1"><a href="#cb374-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb374-2"><a href="#cb374-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb374-3"><a href="#cb374-3" aria-hidden="true"></a></span>
+<span id="cb374-4"><a href="#cb374-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererCodeSpan</span>#1{#1}</span>
+<span id="cb374-5"><a href="#cb374-5" aria-hidden="true"></a></span>
+<span id="cb374-6"><a href="#cb374-6" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb374-7"><a href="#cb374-7" aria-hidden="true"></a>`<span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>`</span>
+<span id="cb374-8"><a href="#cb374-8" aria-hidden="true"></a></span>
+<span id="cb374-9"><a href="#cb374-9" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
+<span id="cb374-10"><a href="#cb374-10" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb374-11"><a href="#cb374-11" aria-hidden="true"></a></span>
+<span id="cb374-12"><a href="#cb374-12" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
+<span id="cb374-13"><a href="#cb374-13" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb374-14"><a href="#cb374-14" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
+<span id="cb374-15"><a href="#cb374-15" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb374-16"><a href="#cb374-16" aria-hidden="true"></a></span>
+<span id="cb374-17"><a href="#cb374-17" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb375"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb375-1"><a href="#cb375-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>$\sqrt{-1}$ *equals* $i$.</p>
<p>$\sqrt{-1}$ <em>equals</em> $i$.</p>
<p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-41"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-42"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb373"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb373-1"><a href="#cb373-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb373-2"><a href="#cb373-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[smartEllipses]{<span class="ex">markdown</span>}</span>
-<span id="cb373-3"><a href="#cb373-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb373-4"><a href="#cb373-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb373-5"><a href="#cb373-5" aria-hidden="true"></a> codeSpan = {#1},</span>
-<span id="cb373-6"><a href="#cb373-6" aria-hidden="true"></a> },</span>
-<span id="cb373-7"><a href="#cb373-7" aria-hidden="true"></a>}</span>
-<span id="cb373-8"><a href="#cb373-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb373-9"><a href="#cb373-9" aria-hidden="true"></a></span>
-<span id="cb373-10"><a href="#cb373-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb373-11"><a href="#cb373-11" aria-hidden="true"></a>`<span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>`</span>
-<span id="cb373-12"><a href="#cb373-12" aria-hidden="true"></a></span>
-<span id="cb373-13"><a href="#cb373-13" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
-<span id="cb373-14"><a href="#cb373-14" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb373-15"><a href="#cb373-15" aria-hidden="true"></a></span>
-<span id="cb373-16"><a href="#cb373-16" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{hybrid}</span>
-<span id="cb373-17"><a href="#cb373-17" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
-<span id="cb373-18"><a href="#cb373-18" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
-<span id="cb373-19"><a href="#cb373-19" aria-hidden="true"></a></span>
-<span id="cb373-20"><a href="#cb373-20" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb374"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb374-1"><a href="#cb374-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb376"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb376-1"><a href="#cb376-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb376-2"><a href="#cb376-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[smartEllipses]{<span class="ex">markdown</span>}</span>
+<span id="cb376-3"><a href="#cb376-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb376-4"><a href="#cb376-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb376-5"><a href="#cb376-5" aria-hidden="true"></a> codeSpan = {#1},</span>
+<span id="cb376-6"><a href="#cb376-6" aria-hidden="true"></a> },</span>
+<span id="cb376-7"><a href="#cb376-7" aria-hidden="true"></a>}</span>
+<span id="cb376-8"><a href="#cb376-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb376-9"><a href="#cb376-9" aria-hidden="true"></a></span>
+<span id="cb376-10"><a href="#cb376-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb376-11"><a href="#cb376-11" aria-hidden="true"></a>`<span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>`</span>
+<span id="cb376-12"><a href="#cb376-12" aria-hidden="true"></a></span>
+<span id="cb376-13"><a href="#cb376-13" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
+<span id="cb376-14"><a href="#cb376-14" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb376-15"><a href="#cb376-15" aria-hidden="true"></a></span>
+<span id="cb376-16"><a href="#cb376-16" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{hybrid}</span>
+<span id="cb376-17"><a href="#cb376-17" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
+<span id="cb376-18"><a href="#cb376-18" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb376-19"><a href="#cb376-19" aria-hidden="true"></a></span>
+<span id="cb376-20"><a href="#cb376-20" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb377"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb377-1"><a href="#cb377-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>$\sqrt{-1}$ *equals* $i$.</p>
@@ -4450,203 +4535,203 @@ Thomas,Edison,1847</code></pre>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-33">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb375"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb375-1"><a href="#cb375-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb375-2"><a href="#cb375-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererCodeSpan</span>#1{#1}</span>
-<span id="cb375-3"><a href="#cb375-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb375-4"><a href="#cb375-4" aria-hidden="true"></a></span>
-<span id="cb375-5"><a href="#cb375-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb375-6"><a href="#cb375-6" aria-hidden="true"></a>`<span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>`</span>
-<span id="cb375-7"><a href="#cb375-7" aria-hidden="true"></a></span>
-<span id="cb375-8"><a href="#cb375-8" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
-<span id="cb375-9"><a href="#cb375-9" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb375-10"><a href="#cb375-10" aria-hidden="true"></a></span>
-<span id="cb375-11"><a href="#cb375-11" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
-<span id="cb375-12"><a href="#cb375-12" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb375-13"><a href="#cb375-13" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
-<span id="cb375-14"><a href="#cb375-14" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb375-15"><a href="#cb375-15" aria-hidden="true"></a></span>
-<span id="cb375-16"><a href="#cb375-16" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb376"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb376-1"><a href="#cb376-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb378"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb378-1"><a href="#cb378-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb378-2"><a href="#cb378-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererCodeSpan</span>#1{#1}</span>
+<span id="cb378-3"><a href="#cb378-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb378-4"><a href="#cb378-4" aria-hidden="true"></a></span>
+<span id="cb378-5"><a href="#cb378-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb378-6"><a href="#cb378-6" aria-hidden="true"></a>`<span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>`</span>
+<span id="cb378-7"><a href="#cb378-7" aria-hidden="true"></a></span>
+<span id="cb378-8"><a href="#cb378-8" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
+<span id="cb378-9"><a href="#cb378-9" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb378-10"><a href="#cb378-10" aria-hidden="true"></a></span>
+<span id="cb378-11"><a href="#cb378-11" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
+<span id="cb378-12"><a href="#cb378-12" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb378-13"><a href="#cb378-13" aria-hidden="true"></a><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></span>
+<span id="cb378-14"><a href="#cb378-14" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb378-15"><a href="#cb378-15" aria-hidden="true"></a></span>
+<span id="cb378-16"><a href="#cb378-16" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb379"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb379-1"><a href="#cb379-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>$\sqrt{-1}$ *equals* $i$.</p>
<p>$\sqrt{-1}$ <em>equals</em> $i$.</p>
<p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
</blockquote>
-<h4 data-number="2.3.1.8" id="link-renderer"><span class="header-section-number">2.3.1.8</span> Link Renderer</h4>
+<h4 data-number="2.3.1.9" id="link-renderer"><span class="header-section-number">2.3.1.9</span> Link Renderer</h4>
<p>The <code>\markdownRendererLink</code> macro represents a hyperlink. It receives four arguments: the label, the fully escaped <abbr>uri</abbr> that can be directly typeset, the raw <abbr>uri</abbr> that can be used outside typesetting, and the title of the link.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-22">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb377"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb377-1"><a href="#cb377-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb377-2"><a href="#cb377-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLink</span>#1#2#3#4{<span class="co">%</span></span>
-<span id="cb377-3"><a href="#cb377-3" aria-hidden="true"></a> #1 {<span class="fu">\tt</span>#2} titled {<span class="fu">\it</span>#4}<span class="co">%</span></span>
-<span id="cb377-4"><a href="#cb377-4" aria-hidden="true"></a>}</span>
-<span id="cb377-5"><a href="#cb377-5" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb377-6"><a href="#cb377-6" aria-hidden="true"></a>Please visit [the link][ctan].</span>
-<span id="cb377-7"><a href="#cb377-7" aria-hidden="true"></a></span>
-<span id="cb377-8"><a href="#cb377-8" aria-hidden="true"></a> [ctan]: https://ctan.org/</span>
-<span id="cb377-9"><a href="#cb377-9" aria-hidden="true"></a> (the Comprehensive TeX Archive Network)</span>
-<span id="cb377-10"><a href="#cb377-10" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb377-11"><a href="#cb377-11" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<div class="sourceCode" id="cb380"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb380-1"><a href="#cb380-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb380-2"><a href="#cb380-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLink</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb380-3"><a href="#cb380-3" aria-hidden="true"></a> #1 {<span class="fu">\tt</span>#2} titled {<span class="fu">\it</span>#4}<span class="co">%</span></span>
+<span id="cb380-4"><a href="#cb380-4" aria-hidden="true"></a>}</span>
+<span id="cb380-5"><a href="#cb380-5" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb380-6"><a href="#cb380-6" aria-hidden="true"></a>Please visit [the link][ctan].</span>
+<span id="cb380-7"><a href="#cb380-7" aria-hidden="true"></a></span>
+<span id="cb380-8"><a href="#cb380-8" aria-hidden="true"></a> [ctan]: https://ctan.org/</span>
+<span id="cb380-9"><a href="#cb380-9" aria-hidden="true"></a> (the Comprehensive TeX Archive Network)</span>
+<span id="cb380-10"><a href="#cb380-10" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb380-11"><a href="#cb380-11" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb378"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb378-1"><a href="#cb378-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb381"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb381-1"><a href="#cb381-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Please visit the link <a href="https://ctan.org/" class="uri">https://ctan.org/</a> titled <em>the Comprehensive TeX Archive Network</em>.</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-42"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-43"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb379"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb379-1"><a href="#cb379-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb379-2"><a href="#cb379-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
-<span id="cb379-3"><a href="#cb379-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb379-4"><a href="#cb379-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb379-5"><a href="#cb379-5" aria-hidden="true"></a> link = {<span class="co">%</span></span>
-<span id="cb379-6"><a href="#cb379-6" aria-hidden="true"></a> #1 <span class="fu">\texttt</span>{#2} titled <span class="fu">\emph</span>{#4}<span class="co">%</span></span>
-<span id="cb379-7"><a href="#cb379-7" aria-hidden="true"></a> },</span>
-<span id="cb379-8"><a href="#cb379-8" aria-hidden="true"></a> },</span>
-<span id="cb379-9"><a href="#cb379-9" aria-hidden="true"></a>}</span>
-<span id="cb379-10"><a href="#cb379-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb379-11"><a href="#cb379-11" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb379-12"><a href="#cb379-12" aria-hidden="true"></a>Please visit [the link][ctan].</span>
-<span id="cb379-13"><a href="#cb379-13" aria-hidden="true"></a></span>
-<span id="cb379-14"><a href="#cb379-14" aria-hidden="true"></a> [ctan]: https://ctan.org/</span>
-<span id="cb379-15"><a href="#cb379-15" aria-hidden="true"></a> (the Comprehensive TeX Archive Network)</span>
-<span id="cb379-16"><a href="#cb379-16" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb379-17"><a href="#cb379-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb380"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb380-1"><a href="#cb380-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb382"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb382-1"><a href="#cb382-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb382-2"><a href="#cb382-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb382-3"><a href="#cb382-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb382-4"><a href="#cb382-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb382-5"><a href="#cb382-5" aria-hidden="true"></a> link = {<span class="co">%</span></span>
+<span id="cb382-6"><a href="#cb382-6" aria-hidden="true"></a> #1 <span class="fu">\texttt</span>{#2} titled <span class="fu">\emph</span>{#4}<span class="co">%</span></span>
+<span id="cb382-7"><a href="#cb382-7" aria-hidden="true"></a> },</span>
+<span id="cb382-8"><a href="#cb382-8" aria-hidden="true"></a> },</span>
+<span id="cb382-9"><a href="#cb382-9" aria-hidden="true"></a>}</span>
+<span id="cb382-10"><a href="#cb382-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb382-11"><a href="#cb382-11" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb382-12"><a href="#cb382-12" aria-hidden="true"></a>Please visit [the link][ctan].</span>
+<span id="cb382-13"><a href="#cb382-13" aria-hidden="true"></a></span>
+<span id="cb382-14"><a href="#cb382-14" aria-hidden="true"></a> [ctan]: https://ctan.org/</span>
+<span id="cb382-15"><a href="#cb382-15" aria-hidden="true"></a> (the Comprehensive TeX Archive Network)</span>
+<span id="cb382-16"><a href="#cb382-16" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb382-17"><a href="#cb382-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb383"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb383-1"><a href="#cb383-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Please visit the link <a href="https://ctan.org/" class="uri">https://ctan.org/</a> titled <em>the Comprehensive TeX Archive Network</em>.</p>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-34">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb381"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb381-1"><a href="#cb381-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb381-2"><a href="#cb381-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLink</span>#1#2#3#4{<span class="co">%</span></span>
-<span id="cb381-3"><a href="#cb381-3" aria-hidden="true"></a> #1 {<span class="fu">\tt</span>#2} titled <span class="fu">\emph</span>{#4}<span class="co">%</span></span>
-<span id="cb381-4"><a href="#cb381-4" aria-hidden="true"></a>}</span>
-<span id="cb381-5"><a href="#cb381-5" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb381-6"><a href="#cb381-6" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb381-7"><a href="#cb381-7" aria-hidden="true"></a>Please visit [the link][ctan].</span>
-<span id="cb381-8"><a href="#cb381-8" aria-hidden="true"></a></span>
-<span id="cb381-9"><a href="#cb381-9" aria-hidden="true"></a> [ctan]: https://ctan.org/</span>
-<span id="cb381-10"><a href="#cb381-10" aria-hidden="true"></a> (the Comprehensive TeX Archive Network)</span>
-<span id="cb381-11"><a href="#cb381-11" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb381-12"><a href="#cb381-12" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<div class="sourceCode" id="cb384"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb384-1"><a href="#cb384-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb384-2"><a href="#cb384-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLink</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb384-3"><a href="#cb384-3" aria-hidden="true"></a> #1 {<span class="fu">\tt</span>#2} titled <span class="fu">\emph</span>{#4}<span class="co">%</span></span>
+<span id="cb384-4"><a href="#cb384-4" aria-hidden="true"></a>}</span>
+<span id="cb384-5"><a href="#cb384-5" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb384-6"><a href="#cb384-6" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb384-7"><a href="#cb384-7" aria-hidden="true"></a>Please visit [the link][ctan].</span>
+<span id="cb384-8"><a href="#cb384-8" aria-hidden="true"></a></span>
+<span id="cb384-9"><a href="#cb384-9" aria-hidden="true"></a> [ctan]: https://ctan.org/</span>
+<span id="cb384-10"><a href="#cb384-10" aria-hidden="true"></a> (the Comprehensive TeX Archive Network)</span>
+<span id="cb384-11"><a href="#cb384-11" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb384-12"><a href="#cb384-12" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb382"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb382-1"><a href="#cb382-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb385"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb385-1"><a href="#cb385-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Please visit the link <a href="https://ctan.org/" class="uri">https://ctan.org/</a> titled <em>the Comprehensive TeX Archive Network</em>.</p>
</blockquote>
-<h4 data-number="2.3.1.9" id="image-renderer"><span class="header-section-number">2.3.1.9</span> Image Renderer</h4>
+<h4 data-number="2.3.1.10" id="image-renderer"><span class="header-section-number">2.3.1.10</span> Image Renderer</h4>
<p>The <code>\markdownRendererImage</code> macro represents an image. It receives four arguments: the label, the fully escaped <abbr>uri</abbr> that can be directly typeset, the raw <abbr>uri</abbr> that can be used outside typesetting, and the title of the link.</p>
-<h5 class="unnumbered" data-number="" id="latex-example-43"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-44"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb383"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb383-1"><a href="#cb383-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb383-2"><a href="#cb383-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
-<span id="cb383-3"><a href="#cb383-3" aria-hidden="true"></a><span class="fu">\begingroup</span></span>
-<span id="cb383-4"><a href="#cb383-4" aria-hidden="true"></a><span class="fu">\catcode</span>`<span class="fu">\@</span>=11</span>
-<span id="cb383-5"><a href="#cb383-5" aria-hidden="true"></a><span class="fu">\catcode</span>`<span class="fu">\%</span>=12</span>
-<span id="cb383-6"><a href="#cb383-6" aria-hidden="true"></a><span class="fu">\catcode</span>`<span class="fu">\^</span>^A=14</span>
-<span id="cb383-7"><a href="#cb383-7" aria-hidden="true"></a><span class="fu">\global\def\markdownRendererImage</span>#1#2#3#4{^^A</span>
-<span id="cb383-8"><a href="#cb383-8" aria-hidden="true"></a> <span class="fu">\immediate\write</span>18{^^A</span></code></pre></div>
-<div class="sourceCode" id="cb384"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb384-1"><a href="#cb384-1" aria-hidden="true"></a> <span class="kw">if</span> <span class="bu">printf</span> <span class="st">&#39;%s&#39;</span> <span class="st">&quot;#3&quot;</span> <span class="kw">|</span> <span class="fu">grep</span> -q ^http<span class="kw">;</span> <span class="kw">then</span></span>
-<span id="cb384-2"><a href="#cb384-2" aria-hidden="true"></a> <span class="va">OUTPUT=</span><span class="st">&quot;</span><span class="va">$(</span><span class="bu">printf</span> <span class="st">&#39;%s&#39;</span> <span class="st">&quot;#3&quot;</span> <span class="kw">|</span> <span class="ex">md5sum</span> <span class="kw">|</span> <span class="fu">cut</span> -d<span class="st">&#39; &#39;</span> -f1<span class="va">)</span><span class="st">.^^A</span></span>
-<span id="cb384-3"><a href="#cb384-3" aria-hidden="true"></a><span class="st"> </span><span class="va">$(</span><span class="bu">printf</span> <span class="st">&#39;%s&#39;</span> <span class="st">&quot;#3&quot;</span> <span class="kw">|</span> <span class="fu">sed</span> <span class="st">&#39;s/.*[.]//&#39;</span><span class="va">)</span><span class="st">&quot;</span>;</span>
-<span id="cb384-4"><a href="#cb384-4" aria-hidden="true"></a> <span class="kw">if</span> !<span class="bu"> [</span> <span class="ot">-e</span> <span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span><span class="bu"> ]</span>; <span class="kw">then</span></span>
-<span id="cb384-5"><a href="#cb384-5" aria-hidden="true"></a> <span class="fu">wget</span> -O <span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span> <span class="st">&#39;#3&#39;</span> <span class="kw">||</span> <span class="fu">rm</span> <span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span><span class="kw">;</span></span>
-<span id="cb384-6"><a href="#cb384-6" aria-hidden="true"></a> <span class="ex">convert</span> <span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span> png:<span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span><span class="kw">;</span></span>
-<span id="cb384-7"><a href="#cb384-7" aria-hidden="true"></a> <span class="kw">fi</span>;</span>
-<span id="cb384-8"><a href="#cb384-8" aria-hidden="true"></a> <span class="bu">printf</span> <span class="st">&#39;%s%%&#39;</span> <span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span> <span class="op">&gt;</span> \jobname.fetched<span class="kw">;</span></span>
-<span id="cb384-9"><a href="#cb384-9" aria-hidden="true"></a> <span class="kw">else</span></span>
-<span id="cb384-10"><a href="#cb384-10" aria-hidden="true"></a> <span class="bu">printf</span> <span class="st">&#39;%s%%&#39;</span> <span class="st">&quot;#3&quot;</span> <span class="op">&gt;</span> \jobname.fetched<span class="kw">;</span></span>
-<span id="cb384-11"><a href="#cb384-11" aria-hidden="true"></a> <span class="kw">fi</span>^^<span class="ex">A</span></span></code></pre></div>
-<div class="sourceCode" id="cb385"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb385-1"><a href="#cb385-1" aria-hidden="true"></a> }^^A</span>
-<span id="cb385-2"><a href="#cb385-2" aria-hidden="true"></a> {^^A</span>
-<span id="cb385-3"><a href="#cb385-3" aria-hidden="true"></a> <span class="fu">\everyeof</span>={<span class="fu">\noexpand</span>}^^A</span>
-<span id="cb385-4"><a href="#cb385-4" aria-hidden="true"></a> <span class="fu">\edef\filename</span>{<span class="fu">\_</span>_markdowninput&quot;<span class="fu">\jobname</span>.fetched&quot; }^^A</span>
-<span id="cb385-5"><a href="#cb385-5" aria-hidden="true"></a> <span class="bu">\includegraphics</span>[width=<span class="fu">\textwidth</span>]{<span class="fu">\filename</span>}^^A</span>
-<span id="cb385-6"><a href="#cb385-6" aria-hidden="true"></a> }^^A</span>
-<span id="cb385-7"><a href="#cb385-7" aria-hidden="true"></a>}</span>
-<span id="cb385-8"><a href="#cb385-8" aria-hidden="true"></a><span class="fu">\endgroup</span></span>
-<span id="cb385-9"><a href="#cb385-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb385-10"><a href="#cb385-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb385-11"><a href="#cb385-11" aria-hidden="true"></a>![TUGboat](https://tug.org/tugboat/noword.jpg)</span>
-<span id="cb385-12"><a href="#cb385-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb385-13"><a href="#cb385-13" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb386"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb386-1"><a href="#cb386-1" aria-hidden="true"></a><span class="ex">lualatex</span> --shell-escape document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb386"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb386-1"><a href="#cb386-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb386-2"><a href="#cb386-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb386-3"><a href="#cb386-3" aria-hidden="true"></a><span class="fu">\begingroup</span></span>
+<span id="cb386-4"><a href="#cb386-4" aria-hidden="true"></a><span class="fu">\catcode</span>`<span class="fu">\@</span>=11</span>
+<span id="cb386-5"><a href="#cb386-5" aria-hidden="true"></a><span class="fu">\catcode</span>`<span class="fu">\%</span>=12</span>
+<span id="cb386-6"><a href="#cb386-6" aria-hidden="true"></a><span class="fu">\catcode</span>`<span class="fu">\^</span>^A=14</span>
+<span id="cb386-7"><a href="#cb386-7" aria-hidden="true"></a><span class="fu">\global\def\markdownRendererImage</span>#1#2#3#4{^^A</span>
+<span id="cb386-8"><a href="#cb386-8" aria-hidden="true"></a> <span class="fu">\immediate\write</span>18{^^A</span></code></pre></div>
+<div class="sourceCode" id="cb387"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb387-1"><a href="#cb387-1" aria-hidden="true"></a> <span class="kw">if</span> <span class="bu">printf</span> <span class="st">&#39;%s&#39;</span> <span class="st">&quot;#3&quot;</span> <span class="kw">|</span> <span class="fu">grep</span> -q ^http<span class="kw">;</span> <span class="kw">then</span></span>
+<span id="cb387-2"><a href="#cb387-2" aria-hidden="true"></a> <span class="va">OUTPUT=</span><span class="st">&quot;</span><span class="va">$(</span><span class="bu">printf</span> <span class="st">&#39;%s&#39;</span> <span class="st">&quot;#3&quot;</span> <span class="kw">|</span> <span class="ex">md5sum</span> <span class="kw">|</span> <span class="fu">cut</span> -d<span class="st">&#39; &#39;</span> -f1<span class="va">)</span><span class="st">.^^A</span></span>
+<span id="cb387-3"><a href="#cb387-3" aria-hidden="true"></a><span class="st"> </span><span class="va">$(</span><span class="bu">printf</span> <span class="st">&#39;%s&#39;</span> <span class="st">&quot;#3&quot;</span> <span class="kw">|</span> <span class="fu">sed</span> <span class="st">&#39;s/.*[.]//&#39;</span><span class="va">)</span><span class="st">&quot;</span>;</span>
+<span id="cb387-4"><a href="#cb387-4" aria-hidden="true"></a> <span class="kw">if</span> !<span class="bu"> [</span> <span class="ot">-e</span> <span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span><span class="bu"> ]</span>; <span class="kw">then</span></span>
+<span id="cb387-5"><a href="#cb387-5" aria-hidden="true"></a> <span class="fu">wget</span> -O <span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span> <span class="st">&#39;#3&#39;</span> <span class="kw">||</span> <span class="fu">rm</span> <span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span><span class="kw">;</span></span>
+<span id="cb387-6"><a href="#cb387-6" aria-hidden="true"></a> <span class="ex">convert</span> <span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span> png:<span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span><span class="kw">;</span></span>
+<span id="cb387-7"><a href="#cb387-7" aria-hidden="true"></a> <span class="kw">fi</span>;</span>
+<span id="cb387-8"><a href="#cb387-8" aria-hidden="true"></a> <span class="bu">printf</span> <span class="st">&#39;%s%%&#39;</span> <span class="st">&quot;</span><span class="va">$OUTPUT</span><span class="st">&quot;</span> <span class="op">&gt;</span> \jobname.fetched<span class="kw">;</span></span>
+<span id="cb387-9"><a href="#cb387-9" aria-hidden="true"></a> <span class="kw">else</span></span>
+<span id="cb387-10"><a href="#cb387-10" aria-hidden="true"></a> <span class="bu">printf</span> <span class="st">&#39;%s%%&#39;</span> <span class="st">&quot;#3&quot;</span> <span class="op">&gt;</span> \jobname.fetched<span class="kw">;</span></span>
+<span id="cb387-11"><a href="#cb387-11" aria-hidden="true"></a> <span class="kw">fi</span>^^<span class="ex">A</span></span></code></pre></div>
+<div class="sourceCode" id="cb388"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb388-1"><a href="#cb388-1" aria-hidden="true"></a> }^^A</span>
+<span id="cb388-2"><a href="#cb388-2" aria-hidden="true"></a> {^^A</span>
+<span id="cb388-3"><a href="#cb388-3" aria-hidden="true"></a> <span class="fu">\everyeof</span>={<span class="fu">\noexpand</span>}^^A</span>
+<span id="cb388-4"><a href="#cb388-4" aria-hidden="true"></a> <span class="fu">\edef\filename</span>{<span class="fu">\_</span>_markdowninput&quot;<span class="fu">\jobname</span>.fetched&quot; }^^A</span>
+<span id="cb388-5"><a href="#cb388-5" aria-hidden="true"></a> <span class="bu">\includegraphics</span>[width=<span class="fu">\textwidth</span>]{<span class="fu">\filename</span>}^^A</span>
+<span id="cb388-6"><a href="#cb388-6" aria-hidden="true"></a> }^^A</span>
+<span id="cb388-7"><a href="#cb388-7" aria-hidden="true"></a>}</span>
+<span id="cb388-8"><a href="#cb388-8" aria-hidden="true"></a><span class="fu">\endgroup</span></span>
+<span id="cb388-9"><a href="#cb388-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb388-10"><a href="#cb388-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb388-11"><a href="#cb388-11" aria-hidden="true"></a>![TUGboat](https://tug.org/tugboat/noword.jpg)</span>
+<span id="cb388-12"><a href="#cb388-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb388-13"><a href="#cb388-13" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb389"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb389-1"><a href="#cb389-1" aria-hidden="true"></a><span class="ex">lualatex</span> --shell-escape document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following content. This assumes that you use a Unix-like operating system with Bourne or Bourne again shell as the default shell of the current user. It also assumes that the <code>md5sum</code>, <code>wget</code>, and <code>convert</code> binaries are installed and that the <span class="tex">T<sub>e</sub>X</span> engine has shell access.</p>
<blockquote>
<p><img src="https://tug.org/tugboat/noword.jpg" title="The Communications of the TeX Users Group" /></p>
</blockquote>
-<h4 data-number="2.3.1.10" id="content-block-renderers"><span class="header-section-number">2.3.1.10</span> Content Block Renderers</h4>
+<h4 data-number="2.3.1.11" id="content-block-renderers"><span class="header-section-number">2.3.1.11</span> Content Block Renderers</h4>
<p> The <code>\markdownRendererContentBlock</code> macro represents an iA Writer content block. It receives four arguments: the local file or online image filename extension cast to the lower case, the fully escaped <abbr>uri</abbr> that can be directly typeset, the raw <abbr>uri</abbr> that can be used outside typesetting, and the title of the content block.</p>
<p>The <code>\markdownRendererContentBlockOnlineImage</code> macro represents an iA Writer online image content block. The macro receives the same arguments as .</p>
<p>The <code>\markdownRendererContentBlockCode</code> macro represents an iA Writer content block that was recognized as a file in a known programming language by its filename extension <span class="math inline"><em>s</em></span>. If any <code>markdown-languages.json</code> file found by <strong><code>kpathsea</code></strong> contains a record <span class="math inline">(<em>k</em>, <em>v</em>)</span>, then a non-online-image content block with the filename extension <span class="math inline"><em>s</em>, <em>s</em></span><code>:lower()</code><span class="math inline"> = <em>k</em></span> is considered to be in a known programming language <span class="math inline"><em>v</em></span>. The macro receives five arguments: the local file name extension <span class="math inline"><em>s</em></span> cast to the lower case, the language <span class="math inline"><em>v</em></span>, the fully escaped <abbr>uri</abbr> that can be directly typeset, the raw <abbr>uri</abbr> that can be used outside typesetting, and the title of the content block.</p>
<p>Note that you will need to place place a <code>markdown-languages.json</code> file inside your working directory or inside your local <span class="tex">T<sub>e</sub>X</span> directory structure. In this file, you will define a mapping between filename extensions and the language names recognized by your favorite syntax highlighter; there may exist other creative uses beside syntax highlighting. <a href="https://github.com/iainc/Markdown-Content-Blocks" title="File transclusion syntax for Markdown">The <code>Languages.json</code> file provided by Anton Sotkov</a> is a good starting point.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-23">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb387"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb387-1"><a href="#cb387-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb387-2"><a href="#cb387-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionContentBlocks</span>{true}</span>
-<span id="cb387-3"><a href="#cb387-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlock</span>#1#2#3#4{<span class="co">%</span></span>
-<span id="cb387-4"><a href="#cb387-4" aria-hidden="true"></a> This is {<span class="fu">\tt</span> #2}, #4.</span>
-<span id="cb387-5"><a href="#cb387-5" aria-hidden="true"></a>}</span>
-<span id="cb387-6"><a href="#cb387-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlockOnlineImage</span>#1#2#3#4{<span class="co">%</span></span>
-<span id="cb387-7"><a href="#cb387-7" aria-hidden="true"></a> This is the image {<span class="fu">\tt</span> #2}, #4.</span>
-<span id="cb387-8"><a href="#cb387-8" aria-hidden="true"></a>}</span>
-<span id="cb387-9"><a href="#cb387-9" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlockCode</span>#1#2#3#4#5{<span class="co">%</span></span>
-<span id="cb387-10"><a href="#cb387-10" aria-hidden="true"></a> This is the #2 (<span class="fu">\uppercase</span>{#1}) document {<span class="fu">\tt</span> #3}, #5.</span>
-<span id="cb387-11"><a href="#cb387-11" aria-hidden="true"></a>}</span>
-<span id="cb387-12"><a href="#cb387-12" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb387-13"><a href="#cb387-13" aria-hidden="true"></a>/document.tex (the document that we are currently typesetting)</span>
-<span id="cb387-14"><a href="#cb387-14" aria-hidden="true"></a>/markdown-languages.json (the mapping between filename extensions</span>
-<span id="cb387-15"><a href="#cb387-15" aria-hidden="true"></a> and programming language names)</span>
-<span id="cb387-16"><a href="#cb387-16" aria-hidden="true"></a>https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</span>
-<span id="cb387-17"><a href="#cb387-17" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb387-18"><a href="#cb387-18" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<div class="sourceCode" id="cb390"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb390-1"><a href="#cb390-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb390-2"><a href="#cb390-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionContentBlocks</span>{true}</span>
+<span id="cb390-3"><a href="#cb390-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlock</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb390-4"><a href="#cb390-4" aria-hidden="true"></a> This is {<span class="fu">\tt</span> #2}, #4.</span>
+<span id="cb390-5"><a href="#cb390-5" aria-hidden="true"></a>}</span>
+<span id="cb390-6"><a href="#cb390-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlockOnlineImage</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb390-7"><a href="#cb390-7" aria-hidden="true"></a> This is the image {<span class="fu">\tt</span> #2}, #4.</span>
+<span id="cb390-8"><a href="#cb390-8" aria-hidden="true"></a>}</span>
+<span id="cb390-9"><a href="#cb390-9" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlockCode</span>#1#2#3#4#5{<span class="co">%</span></span>
+<span id="cb390-10"><a href="#cb390-10" aria-hidden="true"></a> This is the #2 (<span class="fu">\uppercase</span>{#1}) document {<span class="fu">\tt</span> #3}, #5.</span>
+<span id="cb390-11"><a href="#cb390-11" aria-hidden="true"></a>}</span>
+<span id="cb390-12"><a href="#cb390-12" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb390-13"><a href="#cb390-13" aria-hidden="true"></a>/document.tex (the document that we are currently typesetting)</span>
+<span id="cb390-14"><a href="#cb390-14" aria-hidden="true"></a>/markdown-languages.json (the mapping between filename extensions</span>
+<span id="cb390-15"><a href="#cb390-15" aria-hidden="true"></a> and programming language names)</span>
+<span id="cb390-16"><a href="#cb390-16" aria-hidden="true"></a>https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</span>
+<span id="cb390-17"><a href="#cb390-17" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb390-18"><a href="#cb390-18" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
<p>Create also a text document named <code>markdown-languages.json</code> with the following content:</p>
-<div class="sourceCode" id="cb388"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb388-1"><a href="#cb388-1" aria-hidden="true"></a>{</span>
-<span id="cb388-2"><a href="#cb388-2" aria-hidden="true"></a> <span class="st">&quot;json&quot;</span><span class="op">:</span> <span class="st">&quot;JavaScript Object Notation&quot;</span><span class="op">,</span></span>
-<span id="cb388-3"><a href="#cb388-3" aria-hidden="true"></a>}</span></code></pre></div>
+<div class="sourceCode" id="cb391"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb391-1"><a href="#cb391-1" aria-hidden="true"></a>{</span>
+<span id="cb391-2"><a href="#cb391-2" aria-hidden="true"></a> <span class="st">&quot;json&quot;</span><span class="op">:</span> <span class="st">&quot;JavaScript Object Notation&quot;</span><span class="op">,</span></span>
+<span id="cb391-3"><a href="#cb391-3" aria-hidden="true"></a>}</span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb389"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb389-1"><a href="#cb389-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb392"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb392-1"><a href="#cb392-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is <code>document.tex</code>, the document that we are currently typesetting.</p>
<p>This is the JavaScript Object Notation (JSON) document <code>markdown-languages.json</code>, the mapping between filename extensions and programming language names.</p>
<p>This is the image <code>https://tug.org/tugboat/noword.jpg</code>, the logotype of TUGboat.</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-44"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-45"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb390"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb390-1"><a href="#cb390-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb390-2"><a href="#cb390-2" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">filecontents</span>}[overwrite,nosearch,noheader]{markdown-languages.json}</span>
-<span id="cb390-3"><a href="#cb390-3" aria-hidden="true"></a>{</span>
-<span id="cb390-4"><a href="#cb390-4" aria-hidden="true"></a> &quot;json&quot;: &quot;JavaScript Object Notation&quot;,</span>
-<span id="cb390-5"><a href="#cb390-5" aria-hidden="true"></a>}</span>
-<span id="cb390-6"><a href="#cb390-6" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">filecontents</span>}</span>
-<span id="cb390-7"><a href="#cb390-7" aria-hidden="true"></a><span class="bu">\usepackage</span>[contentBlocks]{<span class="ex">markdown</span>}</span>
-<span id="cb390-8"><a href="#cb390-8" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb390-9"><a href="#cb390-9" aria-hidden="true"></a> renderers = {</span>
-<span id="cb390-10"><a href="#cb390-10" aria-hidden="true"></a> contentBlock = {This is <span class="fu">\texttt</span>{#2}, #4.},</span>
-<span id="cb390-11"><a href="#cb390-11" aria-hidden="true"></a> contentBlockOnlineImage = {This is the image <span class="fu">\texttt</span>{#2}, #4.},</span>
-<span id="cb390-12"><a href="#cb390-12" aria-hidden="true"></a> contentBlockCode = {<span class="co">%</span></span>
-<span id="cb390-13"><a href="#cb390-13" aria-hidden="true"></a> This is the #2 (<span class="fu">\MakeUppercase</span>{#1}) document <span class="fu">\texttt</span>{#3}, #5.</span>
-<span id="cb390-14"><a href="#cb390-14" aria-hidden="true"></a> },</span>
-<span id="cb390-15"><a href="#cb390-15" aria-hidden="true"></a> },</span>
-<span id="cb390-16"><a href="#cb390-16" aria-hidden="true"></a>}</span>
-<span id="cb390-17"><a href="#cb390-17" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb390-18"><a href="#cb390-18" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb390-19"><a href="#cb390-19" aria-hidden="true"></a>/document.tex (the document that we are currently typesetting)</span>
-<span id="cb390-20"><a href="#cb390-20" aria-hidden="true"></a>/markdown-languages.json (the mapping between filename extensions</span>
-<span id="cb390-21"><a href="#cb390-21" aria-hidden="true"></a> and programming language names)</span>
-<span id="cb390-22"><a href="#cb390-22" aria-hidden="true"></a>https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</span>
-<span id="cb390-23"><a href="#cb390-23" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb390-24"><a href="#cb390-24" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb391"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb391-1"><a href="#cb391-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb393"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb393-1"><a href="#cb393-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb393-2"><a href="#cb393-2" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">filecontents</span>}[overwrite,nosearch,noheader]{markdown-languages.json}</span>
+<span id="cb393-3"><a href="#cb393-3" aria-hidden="true"></a>{</span>
+<span id="cb393-4"><a href="#cb393-4" aria-hidden="true"></a> &quot;json&quot;: &quot;JavaScript Object Notation&quot;,</span>
+<span id="cb393-5"><a href="#cb393-5" aria-hidden="true"></a>}</span>
+<span id="cb393-6"><a href="#cb393-6" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">filecontents</span>}</span>
+<span id="cb393-7"><a href="#cb393-7" aria-hidden="true"></a><span class="bu">\usepackage</span>[contentBlocks]{<span class="ex">markdown</span>}</span>
+<span id="cb393-8"><a href="#cb393-8" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb393-9"><a href="#cb393-9" aria-hidden="true"></a> renderers = {</span>
+<span id="cb393-10"><a href="#cb393-10" aria-hidden="true"></a> contentBlock = {This is <span class="fu">\texttt</span>{#2}, #4.},</span>
+<span id="cb393-11"><a href="#cb393-11" aria-hidden="true"></a> contentBlockOnlineImage = {This is the image <span class="fu">\texttt</span>{#2}, #4.},</span>
+<span id="cb393-12"><a href="#cb393-12" aria-hidden="true"></a> contentBlockCode = {<span class="co">%</span></span>
+<span id="cb393-13"><a href="#cb393-13" aria-hidden="true"></a> This is the #2 (<span class="fu">\MakeUppercase</span>{#1}) document <span class="fu">\texttt</span>{#3}, #5.</span>
+<span id="cb393-14"><a href="#cb393-14" aria-hidden="true"></a> },</span>
+<span id="cb393-15"><a href="#cb393-15" aria-hidden="true"></a> },</span>
+<span id="cb393-16"><a href="#cb393-16" aria-hidden="true"></a>}</span>
+<span id="cb393-17"><a href="#cb393-17" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb393-18"><a href="#cb393-18" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb393-19"><a href="#cb393-19" aria-hidden="true"></a>/document.tex (the document that we are currently typesetting)</span>
+<span id="cb393-20"><a href="#cb393-20" aria-hidden="true"></a>/markdown-languages.json (the mapping between filename extensions</span>
+<span id="cb393-21"><a href="#cb393-21" aria-hidden="true"></a> and programming language names)</span>
+<span id="cb393-22"><a href="#cb393-22" aria-hidden="true"></a>https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</span>
+<span id="cb393-23"><a href="#cb393-23" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb393-24"><a href="#cb393-24" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb394"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb394-1"><a href="#cb394-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is <code>document.tex</code>, the document that we are currently typesetting.</p>
@@ -4655,38 +4740,38 @@ Thomas,Edison,1847</code></pre>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-35">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb392"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb392-1"><a href="#cb392-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb392-2"><a href="#cb392-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionContentBlocks</span>{true}</span>
-<span id="cb392-3"><a href="#cb392-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlock</span>#1#2#3#4{<span class="co">%</span></span>
-<span id="cb392-4"><a href="#cb392-4" aria-hidden="true"></a> This is {<span class="fu">\tt</span> #2}, #4.</span>
-<span id="cb392-5"><a href="#cb392-5" aria-hidden="true"></a>}</span>
-<span id="cb392-6"><a href="#cb392-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlockOnlineImage</span>#1#2#3#4{<span class="co">%</span></span>
-<span id="cb392-7"><a href="#cb392-7" aria-hidden="true"></a> This is the image {<span class="fu">\tt</span> #2}, #4.</span>
-<span id="cb392-8"><a href="#cb392-8" aria-hidden="true"></a>}</span>
-<span id="cb392-9"><a href="#cb392-9" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlockCode</span>#1#2#3#4#5{<span class="co">%</span></span>
-<span id="cb392-10"><a href="#cb392-10" aria-hidden="true"></a> This is the #2 (<span class="fu">\uppercase</span>{#1}) document {<span class="fu">\tt</span> #3}, #5.</span>
-<span id="cb392-11"><a href="#cb392-11" aria-hidden="true"></a>}</span>
-<span id="cb392-12"><a href="#cb392-12" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb392-13"><a href="#cb392-13" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb392-14"><a href="#cb392-14" aria-hidden="true"></a>/document.tex (the document that we are currently typesetting)</span>
-<span id="cb392-15"><a href="#cb392-15" aria-hidden="true"></a>/markdown-languages.json (the mapping between filename extensions</span>
-<span id="cb392-16"><a href="#cb392-16" aria-hidden="true"></a> and programming language names)</span>
-<span id="cb392-17"><a href="#cb392-17" aria-hidden="true"></a>https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</span>
-<span id="cb392-18"><a href="#cb392-18" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb392-19"><a href="#cb392-19" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<div class="sourceCode" id="cb395"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb395-1"><a href="#cb395-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb395-2"><a href="#cb395-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionContentBlocks</span>{true}</span>
+<span id="cb395-3"><a href="#cb395-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlock</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb395-4"><a href="#cb395-4" aria-hidden="true"></a> This is {<span class="fu">\tt</span> #2}, #4.</span>
+<span id="cb395-5"><a href="#cb395-5" aria-hidden="true"></a>}</span>
+<span id="cb395-6"><a href="#cb395-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlockOnlineImage</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb395-7"><a href="#cb395-7" aria-hidden="true"></a> This is the image {<span class="fu">\tt</span> #2}, #4.</span>
+<span id="cb395-8"><a href="#cb395-8" aria-hidden="true"></a>}</span>
+<span id="cb395-9"><a href="#cb395-9" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlockCode</span>#1#2#3#4#5{<span class="co">%</span></span>
+<span id="cb395-10"><a href="#cb395-10" aria-hidden="true"></a> This is the #2 (<span class="fu">\uppercase</span>{#1}) document {<span class="fu">\tt</span> #3}, #5.</span>
+<span id="cb395-11"><a href="#cb395-11" aria-hidden="true"></a>}</span>
+<span id="cb395-12"><a href="#cb395-12" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb395-13"><a href="#cb395-13" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb395-14"><a href="#cb395-14" aria-hidden="true"></a>/document.tex (the document that we are currently typesetting)</span>
+<span id="cb395-15"><a href="#cb395-15" aria-hidden="true"></a>/markdown-languages.json (the mapping between filename extensions</span>
+<span id="cb395-16"><a href="#cb395-16" aria-hidden="true"></a> and programming language names)</span>
+<span id="cb395-17"><a href="#cb395-17" aria-hidden="true"></a>https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</span>
+<span id="cb395-18"><a href="#cb395-18" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb395-19"><a href="#cb395-19" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
<p>Create also a text document named <code>markdown-languages.json</code> with the following content:</p>
-<div class="sourceCode" id="cb393"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb393-1"><a href="#cb393-1" aria-hidden="true"></a>{</span>
-<span id="cb393-2"><a href="#cb393-2" aria-hidden="true"></a> <span class="st">&quot;json&quot;</span><span class="op">:</span> <span class="st">&quot;JavaScript Object Notation&quot;</span><span class="op">,</span></span>
-<span id="cb393-3"><a href="#cb393-3" aria-hidden="true"></a>}</span></code></pre></div>
+<div class="sourceCode" id="cb396"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb396-1"><a href="#cb396-1" aria-hidden="true"></a>{</span>
+<span id="cb396-2"><a href="#cb396-2" aria-hidden="true"></a> <span class="st">&quot;json&quot;</span><span class="op">:</span> <span class="st">&quot;JavaScript Object Notation&quot;</span><span class="op">,</span></span>
+<span id="cb396-3"><a href="#cb396-3" aria-hidden="true"></a>}</span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb394"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb394-1"><a href="#cb394-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb397"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb397-1"><a href="#cb397-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is <code>document.tex</code>, the document that we are currently typesetting.</p>
<p>This is the JavaScript Object Notation (JSON) document <code>markdown-languages.json</code>, the mapping between filename extensions and programming language names.</p>
<p>This is the image <code>https://tug.org/tugboat/noword.jpg</code>, the logotype of TUGboat.</p>
</blockquote>
-<h4 data-number="2.3.1.11" id="bullet-list-renderers"><span class="header-section-number">2.3.1.11</span> Bullet List Renderers</h4>
+<h4 data-number="2.3.1.12" id="bullet-list-renderers"><span class="header-section-number">2.3.1.12</span> Bullet List Renderers</h4>
<p>The <code>\markdownRendererUlBegin</code> macro represents the beginning of a bulleted list that contains an item with several paragraphs of text (the list is not tight). The macro receives no arguments.</p>
<p>The <code>\markdownRendererUlBeginTight</code> macro represents the beginning of a bulleted list that contains no item with several paragraphs of text (the list is tight). This macro will only be produced, when the <strong><code>tightLists</code></strong> option is <code>false</code>. The macro receives no arguments.</p>
<p>The <code>\markdownRendererUlItem</code> macro represents an item in a bulleted list. The macro receives no arguments.</p>
@@ -4695,50 +4780,50 @@ Thomas,Edison,1847</code></pre>
<p>The <code>\markdownRendererUlEndTight</code> macro represents the end of a bulleted list that contains no item with several paragraphs of text (the list is tight). This macro will only be produced, when the <strong><code>tightLists</code></strong> option is <code>false</code>. The macro receives no arguments.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-24">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb395"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb395-1"><a href="#cb395-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb395-2"><a href="#cb395-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
-<span id="cb395-3"><a href="#cb395-3" aria-hidden="true"></a></span>
-<span id="cb395-4"><a href="#cb395-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
-<span id="cb395-5"><a href="#cb395-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBeginTight</span>{ (}</span>
-<span id="cb395-6"><a href="#cb395-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
-<span id="cb395-7"><a href="#cb395-7" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
-<span id="cb395-8"><a href="#cb395-8" aria-hidden="true"></a> ,</span>
-<span id="cb395-9"><a href="#cb395-9" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{, and }<span class="co">%</span></span>
-<span id="cb395-10"><a href="#cb395-10" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb395-11"><a href="#cb395-11" aria-hidden="true"></a>}</span>
-<span id="cb395-12"><a href="#cb395-12" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{}</span>
-<span id="cb395-13"><a href="#cb395-13" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEndTight</span>{).}</span>
-<span id="cb395-14"><a href="#cb395-14" aria-hidden="true"></a></span>
-<span id="cb395-15"><a href="#cb395-15" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb395-16"><a href="#cb395-16" aria-hidden="true"></a>This is a tight list</span>
-<span id="cb395-17"><a href="#cb395-17" aria-hidden="true"></a></span>
-<span id="cb395-18"><a href="#cb395-18" aria-hidden="true"></a>- the first item</span>
-<span id="cb395-19"><a href="#cb395-19" aria-hidden="true"></a>- the second item</span>
-<span id="cb395-20"><a href="#cb395-20" aria-hidden="true"></a>- the third item</span>
-<span id="cb395-21"><a href="#cb395-21" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb395-22"><a href="#cb395-22" aria-hidden="true"></a></span>
-<span id="cb395-23"><a href="#cb395-23" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb395-24"><a href="#cb395-24" aria-hidden="true"></a> :<span class="fu">\par</span></span>
-<span id="cb395-25"><a href="#cb395-25" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb395-26"><a href="#cb395-26" aria-hidden="true"></a>}</span>
-<span id="cb395-27"><a href="#cb395-27" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBegin</span>{}</span>
-<span id="cb395-28"><a href="#cb395-28" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{--<span class="fu">\kern</span> 0.5em}</span>
-<span id="cb395-29"><a href="#cb395-29" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{.<span class="fu">\par</span>}</span>
-<span id="cb395-30"><a href="#cb395-30" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEnd</span>{}</span>
-<span id="cb395-31"><a href="#cb395-31" aria-hidden="true"></a></span>
-<span id="cb395-32"><a href="#cb395-32" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb395-33"><a href="#cb395-33" aria-hidden="true"></a>This is a loose list</span>
-<span id="cb395-34"><a href="#cb395-34" aria-hidden="true"></a></span>
-<span id="cb395-35"><a href="#cb395-35" aria-hidden="true"></a>- This is the first item</span>
-<span id="cb395-36"><a href="#cb395-36" aria-hidden="true"></a></span>
-<span id="cb395-37"><a href="#cb395-37" aria-hidden="true"></a>- This is the second item</span>
-<span id="cb395-38"><a href="#cb395-38" aria-hidden="true"></a></span>
-<span id="cb395-39"><a href="#cb395-39" aria-hidden="true"></a>- This is the third item</span>
-<span id="cb395-40"><a href="#cb395-40" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb395-41"><a href="#cb395-41" aria-hidden="true"></a></span>
-<span id="cb395-42"><a href="#cb395-42" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb396"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb396-1"><a href="#cb396-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb398"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb398-1"><a href="#cb398-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb398-2"><a href="#cb398-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
+<span id="cb398-3"><a href="#cb398-3" aria-hidden="true"></a></span>
+<span id="cb398-4"><a href="#cb398-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb398-5"><a href="#cb398-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBeginTight</span>{ (}</span>
+<span id="cb398-6"><a href="#cb398-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
+<span id="cb398-7"><a href="#cb398-7" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
+<span id="cb398-8"><a href="#cb398-8" aria-hidden="true"></a> ,</span>
+<span id="cb398-9"><a href="#cb398-9" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{, and }<span class="co">%</span></span>
+<span id="cb398-10"><a href="#cb398-10" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb398-11"><a href="#cb398-11" aria-hidden="true"></a>}</span>
+<span id="cb398-12"><a href="#cb398-12" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{}</span>
+<span id="cb398-13"><a href="#cb398-13" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEndTight</span>{).}</span>
+<span id="cb398-14"><a href="#cb398-14" aria-hidden="true"></a></span>
+<span id="cb398-15"><a href="#cb398-15" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb398-16"><a href="#cb398-16" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb398-17"><a href="#cb398-17" aria-hidden="true"></a></span>
+<span id="cb398-18"><a href="#cb398-18" aria-hidden="true"></a>- the first item</span>
+<span id="cb398-19"><a href="#cb398-19" aria-hidden="true"></a>- the second item</span>
+<span id="cb398-20"><a href="#cb398-20" aria-hidden="true"></a>- the third item</span>
+<span id="cb398-21"><a href="#cb398-21" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb398-22"><a href="#cb398-22" aria-hidden="true"></a></span>
+<span id="cb398-23"><a href="#cb398-23" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb398-24"><a href="#cb398-24" aria-hidden="true"></a> :<span class="fu">\par</span></span>
+<span id="cb398-25"><a href="#cb398-25" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb398-26"><a href="#cb398-26" aria-hidden="true"></a>}</span>
+<span id="cb398-27"><a href="#cb398-27" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBegin</span>{}</span>
+<span id="cb398-28"><a href="#cb398-28" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{--<span class="fu">\kern</span> 0.5em}</span>
+<span id="cb398-29"><a href="#cb398-29" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{.<span class="fu">\par</span>}</span>
+<span id="cb398-30"><a href="#cb398-30" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEnd</span>{}</span>
+<span id="cb398-31"><a href="#cb398-31" aria-hidden="true"></a></span>
+<span id="cb398-32"><a href="#cb398-32" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb398-33"><a href="#cb398-33" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb398-34"><a href="#cb398-34" aria-hidden="true"></a></span>
+<span id="cb398-35"><a href="#cb398-35" aria-hidden="true"></a>- This is the first item</span>
+<span id="cb398-36"><a href="#cb398-36" aria-hidden="true"></a></span>
+<span id="cb398-37"><a href="#cb398-37" aria-hidden="true"></a>- This is the second item</span>
+<span id="cb398-38"><a href="#cb398-38" aria-hidden="true"></a></span>
+<span id="cb398-39"><a href="#cb398-39" aria-hidden="true"></a>- This is the third item</span>
+<span id="cb398-40"><a href="#cb398-40" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb398-41"><a href="#cb398-41" aria-hidden="true"></a></span>
+<span id="cb398-42"><a href="#cb398-42" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb399"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb399-1"><a href="#cb399-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a tight list (the first item, the second item, and the third item).</p>
@@ -4749,57 +4834,57 @@ Thomas,Edison,1847</code></pre>
<li><p>This is the third item.</p></li>
</ul>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-45"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-46"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb397"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb397-1"><a href="#cb397-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb397-2"><a href="#cb397-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[tightLists]{<span class="ex">markdown</span>}</span>
-<span id="cb397-3"><a href="#cb397-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb397-4"><a href="#cb397-4" aria-hidden="true"></a></span>
-<span id="cb397-5"><a href="#cb397-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
-<span id="cb397-6"><a href="#cb397-6" aria-hidden="true"></a> renderers = {</span>
-<span id="cb397-7"><a href="#cb397-7" aria-hidden="true"></a> interblockSeparator = {},</span>
-<span id="cb397-8"><a href="#cb397-8" aria-hidden="true"></a> ulBeginTight = { (},</span>
-<span id="cb397-9"><a href="#cb397-9" aria-hidden="true"></a> ulItem = {<span class="co">%</span></span>
-<span id="cb397-10"><a href="#cb397-10" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
-<span id="cb397-11"><a href="#cb397-11" aria-hidden="true"></a> ,</span>
-<span id="cb397-12"><a href="#cb397-12" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{, and }<span class="co">%</span></span>
-<span id="cb397-13"><a href="#cb397-13" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb397-14"><a href="#cb397-14" aria-hidden="true"></a> },</span>
-<span id="cb397-15"><a href="#cb397-15" aria-hidden="true"></a> ulItemEnd = {},</span>
-<span id="cb397-16"><a href="#cb397-16" aria-hidden="true"></a> ulEndTight = {).},</span>
-<span id="cb397-17"><a href="#cb397-17" aria-hidden="true"></a> },</span>
-<span id="cb397-18"><a href="#cb397-18" aria-hidden="true"></a>}</span>
-<span id="cb397-19"><a href="#cb397-19" aria-hidden="true"></a>This is a tight list</span>
-<span id="cb397-20"><a href="#cb397-20" aria-hidden="true"></a></span>
-<span id="cb397-21"><a href="#cb397-21" aria-hidden="true"></a>- the first item</span>
-<span id="cb397-22"><a href="#cb397-22" aria-hidden="true"></a>- the second item</span>
-<span id="cb397-23"><a href="#cb397-23" aria-hidden="true"></a>- the third item</span>
-<span id="cb397-24"><a href="#cb397-24" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
-<span id="cb397-25"><a href="#cb397-25" aria-hidden="true"></a></span>
-<span id="cb397-26"><a href="#cb397-26" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
-<span id="cb397-27"><a href="#cb397-27" aria-hidden="true"></a> renderers = {</span>
-<span id="cb397-28"><a href="#cb397-28" aria-hidden="true"></a> interblockSeparator = {<span class="co">%</span></span>
-<span id="cb397-29"><a href="#cb397-29" aria-hidden="true"></a> :<span class="fu">\par</span></span>
-<span id="cb397-30"><a href="#cb397-30" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb397-31"><a href="#cb397-31" aria-hidden="true"></a> },</span>
-<span id="cb397-32"><a href="#cb397-32" aria-hidden="true"></a> ulBeginTight = {<span class="kw">\begin</span>{<span class="ex">itemize</span>}},</span>
-<span id="cb397-33"><a href="#cb397-33" aria-hidden="true"></a> ulItem = {<span class="fu">\item</span>},</span>
-<span id="cb397-34"><a href="#cb397-34" aria-hidden="true"></a> ulItemEnd = {.},</span>
-<span id="cb397-35"><a href="#cb397-35" aria-hidden="true"></a> ulEnd = {<span class="kw">\end</span>{<span class="ex">itemize</span>}},</span>
-<span id="cb397-36"><a href="#cb397-36" aria-hidden="true"></a> },</span>
-<span id="cb397-37"><a href="#cb397-37" aria-hidden="true"></a>}</span>
-<span id="cb397-38"><a href="#cb397-38" aria-hidden="true"></a>This is a loose list</span>
-<span id="cb397-39"><a href="#cb397-39" aria-hidden="true"></a></span>
-<span id="cb397-40"><a href="#cb397-40" aria-hidden="true"></a>- This is the first item</span>
-<span id="cb397-41"><a href="#cb397-41" aria-hidden="true"></a></span>
-<span id="cb397-42"><a href="#cb397-42" aria-hidden="true"></a>- This is the second item</span>
-<span id="cb397-43"><a href="#cb397-43" aria-hidden="true"></a></span>
-<span id="cb397-44"><a href="#cb397-44" aria-hidden="true"></a>- This is the third item</span>
-<span id="cb397-45"><a href="#cb397-45" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
-<span id="cb397-46"><a href="#cb397-46" aria-hidden="true"></a></span>
-<span id="cb397-47"><a href="#cb397-47" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb398"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb398-1"><a href="#cb398-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb400"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb400-1"><a href="#cb400-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb400-2"><a href="#cb400-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[tightLists]{<span class="ex">markdown</span>}</span>
+<span id="cb400-3"><a href="#cb400-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb400-4"><a href="#cb400-4" aria-hidden="true"></a></span>
+<span id="cb400-5"><a href="#cb400-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb400-6"><a href="#cb400-6" aria-hidden="true"></a> renderers = {</span>
+<span id="cb400-7"><a href="#cb400-7" aria-hidden="true"></a> interblockSeparator = {},</span>
+<span id="cb400-8"><a href="#cb400-8" aria-hidden="true"></a> ulBeginTight = { (},</span>
+<span id="cb400-9"><a href="#cb400-9" aria-hidden="true"></a> ulItem = {<span class="co">%</span></span>
+<span id="cb400-10"><a href="#cb400-10" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
+<span id="cb400-11"><a href="#cb400-11" aria-hidden="true"></a> ,</span>
+<span id="cb400-12"><a href="#cb400-12" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{, and }<span class="co">%</span></span>
+<span id="cb400-13"><a href="#cb400-13" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb400-14"><a href="#cb400-14" aria-hidden="true"></a> },</span>
+<span id="cb400-15"><a href="#cb400-15" aria-hidden="true"></a> ulItemEnd = {},</span>
+<span id="cb400-16"><a href="#cb400-16" aria-hidden="true"></a> ulEndTight = {).},</span>
+<span id="cb400-17"><a href="#cb400-17" aria-hidden="true"></a> },</span>
+<span id="cb400-18"><a href="#cb400-18" aria-hidden="true"></a>}</span>
+<span id="cb400-19"><a href="#cb400-19" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb400-20"><a href="#cb400-20" aria-hidden="true"></a></span>
+<span id="cb400-21"><a href="#cb400-21" aria-hidden="true"></a>- the first item</span>
+<span id="cb400-22"><a href="#cb400-22" aria-hidden="true"></a>- the second item</span>
+<span id="cb400-23"><a href="#cb400-23" aria-hidden="true"></a>- the third item</span>
+<span id="cb400-24"><a href="#cb400-24" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb400-25"><a href="#cb400-25" aria-hidden="true"></a></span>
+<span id="cb400-26"><a href="#cb400-26" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb400-27"><a href="#cb400-27" aria-hidden="true"></a> renderers = {</span>
+<span id="cb400-28"><a href="#cb400-28" aria-hidden="true"></a> interblockSeparator = {<span class="co">%</span></span>
+<span id="cb400-29"><a href="#cb400-29" aria-hidden="true"></a> :<span class="fu">\par</span></span>
+<span id="cb400-30"><a href="#cb400-30" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb400-31"><a href="#cb400-31" aria-hidden="true"></a> },</span>
+<span id="cb400-32"><a href="#cb400-32" aria-hidden="true"></a> ulBeginTight = {<span class="kw">\begin</span>{<span class="ex">itemize</span>}},</span>
+<span id="cb400-33"><a href="#cb400-33" aria-hidden="true"></a> ulItem = {<span class="fu">\item</span>},</span>
+<span id="cb400-34"><a href="#cb400-34" aria-hidden="true"></a> ulItemEnd = {.},</span>
+<span id="cb400-35"><a href="#cb400-35" aria-hidden="true"></a> ulEnd = {<span class="kw">\end</span>{<span class="ex">itemize</span>}},</span>
+<span id="cb400-36"><a href="#cb400-36" aria-hidden="true"></a> },</span>
+<span id="cb400-37"><a href="#cb400-37" aria-hidden="true"></a>}</span>
+<span id="cb400-38"><a href="#cb400-38" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb400-39"><a href="#cb400-39" aria-hidden="true"></a></span>
+<span id="cb400-40"><a href="#cb400-40" aria-hidden="true"></a>- This is the first item</span>
+<span id="cb400-41"><a href="#cb400-41" aria-hidden="true"></a></span>
+<span id="cb400-42"><a href="#cb400-42" aria-hidden="true"></a>- This is the second item</span>
+<span id="cb400-43"><a href="#cb400-43" aria-hidden="true"></a></span>
+<span id="cb400-44"><a href="#cb400-44" aria-hidden="true"></a>- This is the third item</span>
+<span id="cb400-45"><a href="#cb400-45" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb400-46"><a href="#cb400-46" aria-hidden="true"></a></span>
+<span id="cb400-47"><a href="#cb400-47" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb401"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb401-1"><a href="#cb401-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a tight list (the first item, the second item, and the third item).</p>
@@ -4812,51 +4897,51 @@ Thomas,Edison,1847</code></pre>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-36">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb399"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb399-1"><a href="#cb399-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb399-2"><a href="#cb399-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
-<span id="cb399-3"><a href="#cb399-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb399-4"><a href="#cb399-4" aria-hidden="true"></a></span>
-<span id="cb399-5"><a href="#cb399-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
-<span id="cb399-6"><a href="#cb399-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBeginTight</span>{ (}</span>
-<span id="cb399-7"><a href="#cb399-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
-<span id="cb399-8"><a href="#cb399-8" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
-<span id="cb399-9"><a href="#cb399-9" aria-hidden="true"></a> ,</span>
-<span id="cb399-10"><a href="#cb399-10" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{, and }<span class="co">%</span></span>
-<span id="cb399-11"><a href="#cb399-11" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb399-12"><a href="#cb399-12" aria-hidden="true"></a>}</span>
-<span id="cb399-13"><a href="#cb399-13" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{}</span>
-<span id="cb399-14"><a href="#cb399-14" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEndTight</span>{).}</span>
-<span id="cb399-15"><a href="#cb399-15" aria-hidden="true"></a></span>
-<span id="cb399-16"><a href="#cb399-16" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb399-17"><a href="#cb399-17" aria-hidden="true"></a>This is a tight list</span>
-<span id="cb399-18"><a href="#cb399-18" aria-hidden="true"></a></span>
-<span id="cb399-19"><a href="#cb399-19" aria-hidden="true"></a>- the first item</span>
-<span id="cb399-20"><a href="#cb399-20" aria-hidden="true"></a>- the second item</span>
-<span id="cb399-21"><a href="#cb399-21" aria-hidden="true"></a>- the third item</span>
-<span id="cb399-22"><a href="#cb399-22" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb399-23"><a href="#cb399-23" aria-hidden="true"></a></span>
-<span id="cb399-24"><a href="#cb399-24" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb399-25"><a href="#cb399-25" aria-hidden="true"></a> :<span class="fu">\par</span></span>
-<span id="cb399-26"><a href="#cb399-26" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb399-27"><a href="#cb399-27" aria-hidden="true"></a>}</span>
-<span id="cb399-28"><a href="#cb399-28" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBegin</span>{<span class="fu">\startitemize</span>}</span>
-<span id="cb399-29"><a href="#cb399-29" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{<span class="fu">\item</span>}</span>
-<span id="cb399-30"><a href="#cb399-30" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{.}</span>
-<span id="cb399-31"><a href="#cb399-31" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEnd</span>{<span class="fu">\stopitemize</span>}</span>
-<span id="cb399-32"><a href="#cb399-32" aria-hidden="true"></a></span>
-<span id="cb399-33"><a href="#cb399-33" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb399-34"><a href="#cb399-34" aria-hidden="true"></a>This is a loose list</span>
-<span id="cb399-35"><a href="#cb399-35" aria-hidden="true"></a></span>
-<span id="cb399-36"><a href="#cb399-36" aria-hidden="true"></a>- This is the first item</span>
-<span id="cb399-37"><a href="#cb399-37" aria-hidden="true"></a></span>
-<span id="cb399-38"><a href="#cb399-38" aria-hidden="true"></a>- This is the second item</span>
-<span id="cb399-39"><a href="#cb399-39" aria-hidden="true"></a></span>
-<span id="cb399-40"><a href="#cb399-40" aria-hidden="true"></a>- This is the third item</span>
-<span id="cb399-41"><a href="#cb399-41" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb399-42"><a href="#cb399-42" aria-hidden="true"></a></span>
-<span id="cb399-43"><a href="#cb399-43" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb400"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb400-1"><a href="#cb400-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb402"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb402-1"><a href="#cb402-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb402-2"><a href="#cb402-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
+<span id="cb402-3"><a href="#cb402-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb402-4"><a href="#cb402-4" aria-hidden="true"></a></span>
+<span id="cb402-5"><a href="#cb402-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb402-6"><a href="#cb402-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBeginTight</span>{ (}</span>
+<span id="cb402-7"><a href="#cb402-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
+<span id="cb402-8"><a href="#cb402-8" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
+<span id="cb402-9"><a href="#cb402-9" aria-hidden="true"></a> ,</span>
+<span id="cb402-10"><a href="#cb402-10" aria-hidden="true"></a> <span class="fu">\def\markdownRendererUlItem</span>{, and }<span class="co">%</span></span>
+<span id="cb402-11"><a href="#cb402-11" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb402-12"><a href="#cb402-12" aria-hidden="true"></a>}</span>
+<span id="cb402-13"><a href="#cb402-13" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{}</span>
+<span id="cb402-14"><a href="#cb402-14" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEndTight</span>{).}</span>
+<span id="cb402-15"><a href="#cb402-15" aria-hidden="true"></a></span>
+<span id="cb402-16"><a href="#cb402-16" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb402-17"><a href="#cb402-17" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb402-18"><a href="#cb402-18" aria-hidden="true"></a></span>
+<span id="cb402-19"><a href="#cb402-19" aria-hidden="true"></a>- the first item</span>
+<span id="cb402-20"><a href="#cb402-20" aria-hidden="true"></a>- the second item</span>
+<span id="cb402-21"><a href="#cb402-21" aria-hidden="true"></a>- the third item</span>
+<span id="cb402-22"><a href="#cb402-22" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb402-23"><a href="#cb402-23" aria-hidden="true"></a></span>
+<span id="cb402-24"><a href="#cb402-24" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb402-25"><a href="#cb402-25" aria-hidden="true"></a> :<span class="fu">\par</span></span>
+<span id="cb402-26"><a href="#cb402-26" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb402-27"><a href="#cb402-27" aria-hidden="true"></a>}</span>
+<span id="cb402-28"><a href="#cb402-28" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBegin</span>{<span class="fu">\startitemize</span>}</span>
+<span id="cb402-29"><a href="#cb402-29" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{<span class="fu">\item</span>}</span>
+<span id="cb402-30"><a href="#cb402-30" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{.}</span>
+<span id="cb402-31"><a href="#cb402-31" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEnd</span>{<span class="fu">\stopitemize</span>}</span>
+<span id="cb402-32"><a href="#cb402-32" aria-hidden="true"></a></span>
+<span id="cb402-33"><a href="#cb402-33" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb402-34"><a href="#cb402-34" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb402-35"><a href="#cb402-35" aria-hidden="true"></a></span>
+<span id="cb402-36"><a href="#cb402-36" aria-hidden="true"></a>- This is the first item</span>
+<span id="cb402-37"><a href="#cb402-37" aria-hidden="true"></a></span>
+<span id="cb402-38"><a href="#cb402-38" aria-hidden="true"></a>- This is the second item</span>
+<span id="cb402-39"><a href="#cb402-39" aria-hidden="true"></a></span>
+<span id="cb402-40"><a href="#cb402-40" aria-hidden="true"></a>- This is the third item</span>
+<span id="cb402-41"><a href="#cb402-41" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb402-42"><a href="#cb402-42" aria-hidden="true"></a></span>
+<span id="cb402-43"><a href="#cb402-43" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb403"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb403-1"><a href="#cb403-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a tight list (the first item, the second item, and the third item).</p>
@@ -4867,7 +4952,7 @@ Thomas,Edison,1847</code></pre>
<li><p>This is the third item.</p></li>
</ul>
</blockquote>
-<h4 data-number="2.3.1.12" id="ordered-list-renderers"><span class="header-section-number">2.3.1.12</span> Ordered List Renderers</h4>
+<h4 data-number="2.3.1.13" id="ordered-list-renderers"><span class="header-section-number">2.3.1.13</span> Ordered List Renderers</h4>
<p>The <code>\markdownRendererOlBegin</code> macro represents the beginning of an ordered list that contains an item with several paragraphs of text (the list is not tight). The macro receives no arguments.</p>
<p>The <code>\markdownRendererOlBeginTight</code> macro represents the beginning of an ordered list that contains no item with several paragraphs of text (the list is tight). This macro will only be produced, when the <strong><code>tightLists</code></strong> option is <code>false</code>. The macro receives no arguments.</p>
<p>The <code>\markdownRendererOlItem</code> macro represents an item in an ordered list. This macro will only be produced, when the <strong><code>startNumber</code></strong> option is <code>false</code>. The macro receives no arguments.</p>
@@ -4877,68 +4962,68 @@ Thomas,Edison,1847</code></pre>
<p>The <code>\markdownRendererOlEndTight</code> macro represents the end of an ordered list that contains no item with several paragraphs of text (the list is tight). This macro will only be produced, when the <strong><code>tightLists</code></strong> option is <code>false</code>. The macro receives no arguments.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-25">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb401"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb401-1"><a href="#cb401-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb401-2"><a href="#cb401-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
-<span id="cb401-3"><a href="#cb401-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionStartNumber</span>{true}</span>
-<span id="cb401-4"><a href="#cb401-4" aria-hidden="true"></a></span>
-<span id="cb401-5"><a href="#cb401-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
-<span id="cb401-6"><a href="#cb401-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBeginTight</span>{ (}</span>
-<span id="cb401-7"><a href="#cb401-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
-<span id="cb401-8"><a href="#cb401-8" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
-<span id="cb401-9"><a href="#cb401-9" aria-hidden="true"></a> the first</span>
-<span id="cb401-10"><a href="#cb401-10" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb401-11"><a href="#cb401-11" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
-<span id="cb401-12"><a href="#cb401-12" aria-hidden="true"></a> , the second</span>
-<span id="cb401-13"><a href="#cb401-13" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb401-14"><a href="#cb401-14" aria-hidden="true"></a> , and the third</span>
-<span id="cb401-15"><a href="#cb401-15" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb401-16"><a href="#cb401-16" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb401-17"><a href="#cb401-17" aria-hidden="true"></a>}</span>
-<span id="cb401-18"><a href="#cb401-18" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{}</span>
-<span id="cb401-19"><a href="#cb401-19" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEndTight</span>{).}</span>
-<span id="cb401-20"><a href="#cb401-20" aria-hidden="true"></a></span>
-<span id="cb401-21"><a href="#cb401-21" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb401-22"><a href="#cb401-22" aria-hidden="true"></a>This is a tight list</span>
-<span id="cb401-23"><a href="#cb401-23" aria-hidden="true"></a></span>
-<span id="cb401-24"><a href="#cb401-24" aria-hidden="true"></a>1. item</span>
-<span id="cb401-25"><a href="#cb401-25" aria-hidden="true"></a>2. item</span>
-<span id="cb401-26"><a href="#cb401-26" aria-hidden="true"></a>3. item</span>
-<span id="cb401-27"><a href="#cb401-27" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb401-28"><a href="#cb401-28" aria-hidden="true"></a></span>
-<span id="cb401-29"><a href="#cb401-29" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb401-30"><a href="#cb401-30" aria-hidden="true"></a> :<span class="fu">\par</span></span>
-<span id="cb401-31"><a href="#cb401-31" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb401-32"><a href="#cb401-32" aria-hidden="true"></a>}</span>
-<span id="cb401-33"><a href="#cb401-33" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBegin</span>{}</span>
-<span id="cb401-34"><a href="#cb401-34" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
-<span id="cb401-35"><a href="#cb401-35" aria-hidden="true"></a> #1.<span class="fu">\kern</span> 0.5em<span class="co">%</span></span>
-<span id="cb401-36"><a href="#cb401-36" aria-hidden="true"></a> This is the</span>
-<span id="cb401-37"><a href="#cb401-37" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
-<span id="cb401-38"><a href="#cb401-38" aria-hidden="true"></a> first</span>
-<span id="cb401-39"><a href="#cb401-39" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb401-40"><a href="#cb401-40" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
-<span id="cb401-41"><a href="#cb401-41" aria-hidden="true"></a> second</span>
-<span id="cb401-42"><a href="#cb401-42" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb401-43"><a href="#cb401-43" aria-hidden="true"></a> third</span>
-<span id="cb401-44"><a href="#cb401-44" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb401-45"><a href="#cb401-45" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb401-46"><a href="#cb401-46" aria-hidden="true"></a>}</span>
-<span id="cb401-47"><a href="#cb401-47" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{.<span class="fu">\par</span>}</span>
-<span id="cb401-48"><a href="#cb401-48" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEnd</span>{}</span>
-<span id="cb401-49"><a href="#cb401-49" aria-hidden="true"></a></span>
-<span id="cb401-50"><a href="#cb401-50" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb401-51"><a href="#cb401-51" aria-hidden="true"></a>This is a loose list</span>
-<span id="cb401-52"><a href="#cb401-52" aria-hidden="true"></a></span>
-<span id="cb401-53"><a href="#cb401-53" aria-hidden="true"></a>1. item</span>
-<span id="cb401-54"><a href="#cb401-54" aria-hidden="true"></a></span>
-<span id="cb401-55"><a href="#cb401-55" aria-hidden="true"></a>2. item</span>
-<span id="cb401-56"><a href="#cb401-56" aria-hidden="true"></a></span>
-<span id="cb401-57"><a href="#cb401-57" aria-hidden="true"></a>3. item</span>
-<span id="cb401-58"><a href="#cb401-58" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb401-59"><a href="#cb401-59" aria-hidden="true"></a></span>
-<span id="cb401-60"><a href="#cb401-60" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb402"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb402-1"><a href="#cb402-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb404"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb404-1"><a href="#cb404-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb404-2"><a href="#cb404-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
+<span id="cb404-3"><a href="#cb404-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionStartNumber</span>{true}</span>
+<span id="cb404-4"><a href="#cb404-4" aria-hidden="true"></a></span>
+<span id="cb404-5"><a href="#cb404-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb404-6"><a href="#cb404-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBeginTight</span>{ (}</span>
+<span id="cb404-7"><a href="#cb404-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
+<span id="cb404-8"><a href="#cb404-8" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb404-9"><a href="#cb404-9" aria-hidden="true"></a> the first</span>
+<span id="cb404-10"><a href="#cb404-10" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb404-11"><a href="#cb404-11" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb404-12"><a href="#cb404-12" aria-hidden="true"></a> , the second</span>
+<span id="cb404-13"><a href="#cb404-13" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb404-14"><a href="#cb404-14" aria-hidden="true"></a> , and the third</span>
+<span id="cb404-15"><a href="#cb404-15" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb404-16"><a href="#cb404-16" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb404-17"><a href="#cb404-17" aria-hidden="true"></a>}</span>
+<span id="cb404-18"><a href="#cb404-18" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{}</span>
+<span id="cb404-19"><a href="#cb404-19" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEndTight</span>{).}</span>
+<span id="cb404-20"><a href="#cb404-20" aria-hidden="true"></a></span>
+<span id="cb404-21"><a href="#cb404-21" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb404-22"><a href="#cb404-22" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb404-23"><a href="#cb404-23" aria-hidden="true"></a></span>
+<span id="cb404-24"><a href="#cb404-24" aria-hidden="true"></a>1. item</span>
+<span id="cb404-25"><a href="#cb404-25" aria-hidden="true"></a>2. item</span>
+<span id="cb404-26"><a href="#cb404-26" aria-hidden="true"></a>3. item</span>
+<span id="cb404-27"><a href="#cb404-27" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb404-28"><a href="#cb404-28" aria-hidden="true"></a></span>
+<span id="cb404-29"><a href="#cb404-29" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb404-30"><a href="#cb404-30" aria-hidden="true"></a> :<span class="fu">\par</span></span>
+<span id="cb404-31"><a href="#cb404-31" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb404-32"><a href="#cb404-32" aria-hidden="true"></a>}</span>
+<span id="cb404-33"><a href="#cb404-33" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBegin</span>{}</span>
+<span id="cb404-34"><a href="#cb404-34" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
+<span id="cb404-35"><a href="#cb404-35" aria-hidden="true"></a> #1.<span class="fu">\kern</span> 0.5em<span class="co">%</span></span>
+<span id="cb404-36"><a href="#cb404-36" aria-hidden="true"></a> This is the</span>
+<span id="cb404-37"><a href="#cb404-37" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb404-38"><a href="#cb404-38" aria-hidden="true"></a> first</span>
+<span id="cb404-39"><a href="#cb404-39" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb404-40"><a href="#cb404-40" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb404-41"><a href="#cb404-41" aria-hidden="true"></a> second</span>
+<span id="cb404-42"><a href="#cb404-42" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb404-43"><a href="#cb404-43" aria-hidden="true"></a> third</span>
+<span id="cb404-44"><a href="#cb404-44" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb404-45"><a href="#cb404-45" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb404-46"><a href="#cb404-46" aria-hidden="true"></a>}</span>
+<span id="cb404-47"><a href="#cb404-47" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{.<span class="fu">\par</span>}</span>
+<span id="cb404-48"><a href="#cb404-48" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEnd</span>{}</span>
+<span id="cb404-49"><a href="#cb404-49" aria-hidden="true"></a></span>
+<span id="cb404-50"><a href="#cb404-50" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb404-51"><a href="#cb404-51" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb404-52"><a href="#cb404-52" aria-hidden="true"></a></span>
+<span id="cb404-53"><a href="#cb404-53" aria-hidden="true"></a>1. item</span>
+<span id="cb404-54"><a href="#cb404-54" aria-hidden="true"></a></span>
+<span id="cb404-55"><a href="#cb404-55" aria-hidden="true"></a>2. item</span>
+<span id="cb404-56"><a href="#cb404-56" aria-hidden="true"></a></span>
+<span id="cb404-57"><a href="#cb404-57" aria-hidden="true"></a>3. item</span>
+<span id="cb404-58"><a href="#cb404-58" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb404-59"><a href="#cb404-59" aria-hidden="true"></a></span>
+<span id="cb404-60"><a href="#cb404-60" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb405"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb405-1"><a href="#cb405-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a tight list (the first item, the second item, and the third item).</p>
@@ -4949,73 +5034,73 @@ Thomas,Edison,1847</code></pre>
<li><p>This is the third item.</p></li>
</ol>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-46"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-47"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb403"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb403-1"><a href="#cb403-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb403-2"><a href="#cb403-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[tightLists, startNumber]{<span class="ex">markdown</span>}</span>
-<span id="cb403-3"><a href="#cb403-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb403-4"><a href="#cb403-4" aria-hidden="true"></a></span>
-<span id="cb403-5"><a href="#cb403-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
-<span id="cb403-6"><a href="#cb403-6" aria-hidden="true"></a> renderers = {</span>
-<span id="cb403-7"><a href="#cb403-7" aria-hidden="true"></a> interblockSeparator = {},</span>
-<span id="cb403-8"><a href="#cb403-8" aria-hidden="true"></a> olBeginTight = { (},</span>
-<span id="cb403-9"><a href="#cb403-9" aria-hidden="true"></a> olItemWithNumber = {<span class="co">%</span></span>
-<span id="cb403-10"><a href="#cb403-10" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
-<span id="cb403-11"><a href="#cb403-11" aria-hidden="true"></a> the first</span>
-<span id="cb403-12"><a href="#cb403-12" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb403-13"><a href="#cb403-13" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
-<span id="cb403-14"><a href="#cb403-14" aria-hidden="true"></a> , the second</span>
-<span id="cb403-15"><a href="#cb403-15" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb403-16"><a href="#cb403-16" aria-hidden="true"></a> , and the third</span>
-<span id="cb403-17"><a href="#cb403-17" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb403-18"><a href="#cb403-18" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb403-19"><a href="#cb403-19" aria-hidden="true"></a> },</span>
-<span id="cb403-20"><a href="#cb403-20" aria-hidden="true"></a> olItemEnd = {},</span>
-<span id="cb403-21"><a href="#cb403-21" aria-hidden="true"></a> olEndTight = {).},</span>
-<span id="cb403-22"><a href="#cb403-22" aria-hidden="true"></a> },</span>
-<span id="cb403-23"><a href="#cb403-23" aria-hidden="true"></a>}</span>
-<span id="cb403-24"><a href="#cb403-24" aria-hidden="true"></a>This is a tight list</span>
-<span id="cb403-25"><a href="#cb403-25" aria-hidden="true"></a></span>
-<span id="cb403-26"><a href="#cb403-26" aria-hidden="true"></a>1. item</span>
-<span id="cb403-27"><a href="#cb403-27" aria-hidden="true"></a>2. item</span>
-<span id="cb403-28"><a href="#cb403-28" aria-hidden="true"></a>3. item</span>
-<span id="cb403-29"><a href="#cb403-29" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
-<span id="cb403-30"><a href="#cb403-30" aria-hidden="true"></a></span>
-<span id="cb403-31"><a href="#cb403-31" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
-<span id="cb403-32"><a href="#cb403-32" aria-hidden="true"></a> renderers = {</span>
-<span id="cb403-33"><a href="#cb403-33" aria-hidden="true"></a> interblockSeparator = {<span class="co">%</span></span>
-<span id="cb403-34"><a href="#cb403-34" aria-hidden="true"></a> :<span class="fu">\par</span></span>
-<span id="cb403-35"><a href="#cb403-35" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb403-36"><a href="#cb403-36" aria-hidden="true"></a> },</span>
-<span id="cb403-37"><a href="#cb403-37" aria-hidden="true"></a> olBeginTight = {<span class="kw">\begin</span>{<span class="ex">enumerate</span>}},</span>
-<span id="cb403-38"><a href="#cb403-38" aria-hidden="true"></a> olItemWithNumber = {<span class="co">%</span></span>
-<span id="cb403-39"><a href="#cb403-39" aria-hidden="true"></a> <span class="fu">\item</span> This is the</span>
-<span id="cb403-40"><a href="#cb403-40" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
-<span id="cb403-41"><a href="#cb403-41" aria-hidden="true"></a> first</span>
-<span id="cb403-42"><a href="#cb403-42" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb403-43"><a href="#cb403-43" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
-<span id="cb403-44"><a href="#cb403-44" aria-hidden="true"></a> second</span>
-<span id="cb403-45"><a href="#cb403-45" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb403-46"><a href="#cb403-46" aria-hidden="true"></a> third</span>
-<span id="cb403-47"><a href="#cb403-47" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb403-48"><a href="#cb403-48" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb403-49"><a href="#cb403-49" aria-hidden="true"></a> },</span>
-<span id="cb403-50"><a href="#cb403-50" aria-hidden="true"></a> olItemEnd = {.},</span>
-<span id="cb403-51"><a href="#cb403-51" aria-hidden="true"></a> olEnd = {<span class="kw">\end</span>{<span class="ex">enumerate</span>}},</span>
-<span id="cb403-52"><a href="#cb403-52" aria-hidden="true"></a> },</span>
-<span id="cb403-53"><a href="#cb403-53" aria-hidden="true"></a>}</span>
-<span id="cb403-54"><a href="#cb403-54" aria-hidden="true"></a>This is a loose list</span>
-<span id="cb403-55"><a href="#cb403-55" aria-hidden="true"></a></span>
-<span id="cb403-56"><a href="#cb403-56" aria-hidden="true"></a>1. item</span>
-<span id="cb403-57"><a href="#cb403-57" aria-hidden="true"></a></span>
-<span id="cb403-58"><a href="#cb403-58" aria-hidden="true"></a>2. item</span>
-<span id="cb403-59"><a href="#cb403-59" aria-hidden="true"></a></span>
-<span id="cb403-60"><a href="#cb403-60" aria-hidden="true"></a>3. item</span>
-<span id="cb403-61"><a href="#cb403-61" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
-<span id="cb403-62"><a href="#cb403-62" aria-hidden="true"></a></span>
-<span id="cb403-63"><a href="#cb403-63" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb404"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb404-1"><a href="#cb404-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb406"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb406-1"><a href="#cb406-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb406-2"><a href="#cb406-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[tightLists, startNumber]{<span class="ex">markdown</span>}</span>
+<span id="cb406-3"><a href="#cb406-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb406-4"><a href="#cb406-4" aria-hidden="true"></a></span>
+<span id="cb406-5"><a href="#cb406-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb406-6"><a href="#cb406-6" aria-hidden="true"></a> renderers = {</span>
+<span id="cb406-7"><a href="#cb406-7" aria-hidden="true"></a> interblockSeparator = {},</span>
+<span id="cb406-8"><a href="#cb406-8" aria-hidden="true"></a> olBeginTight = { (},</span>
+<span id="cb406-9"><a href="#cb406-9" aria-hidden="true"></a> olItemWithNumber = {<span class="co">%</span></span>
+<span id="cb406-10"><a href="#cb406-10" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb406-11"><a href="#cb406-11" aria-hidden="true"></a> the first</span>
+<span id="cb406-12"><a href="#cb406-12" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb406-13"><a href="#cb406-13" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb406-14"><a href="#cb406-14" aria-hidden="true"></a> , the second</span>
+<span id="cb406-15"><a href="#cb406-15" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb406-16"><a href="#cb406-16" aria-hidden="true"></a> , and the third</span>
+<span id="cb406-17"><a href="#cb406-17" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb406-18"><a href="#cb406-18" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb406-19"><a href="#cb406-19" aria-hidden="true"></a> },</span>
+<span id="cb406-20"><a href="#cb406-20" aria-hidden="true"></a> olItemEnd = {},</span>
+<span id="cb406-21"><a href="#cb406-21" aria-hidden="true"></a> olEndTight = {).},</span>
+<span id="cb406-22"><a href="#cb406-22" aria-hidden="true"></a> },</span>
+<span id="cb406-23"><a href="#cb406-23" aria-hidden="true"></a>}</span>
+<span id="cb406-24"><a href="#cb406-24" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb406-25"><a href="#cb406-25" aria-hidden="true"></a></span>
+<span id="cb406-26"><a href="#cb406-26" aria-hidden="true"></a>1. item</span>
+<span id="cb406-27"><a href="#cb406-27" aria-hidden="true"></a>2. item</span>
+<span id="cb406-28"><a href="#cb406-28" aria-hidden="true"></a>3. item</span>
+<span id="cb406-29"><a href="#cb406-29" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb406-30"><a href="#cb406-30" aria-hidden="true"></a></span>
+<span id="cb406-31"><a href="#cb406-31" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb406-32"><a href="#cb406-32" aria-hidden="true"></a> renderers = {</span>
+<span id="cb406-33"><a href="#cb406-33" aria-hidden="true"></a> interblockSeparator = {<span class="co">%</span></span>
+<span id="cb406-34"><a href="#cb406-34" aria-hidden="true"></a> :<span class="fu">\par</span></span>
+<span id="cb406-35"><a href="#cb406-35" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb406-36"><a href="#cb406-36" aria-hidden="true"></a> },</span>
+<span id="cb406-37"><a href="#cb406-37" aria-hidden="true"></a> olBeginTight = {<span class="kw">\begin</span>{<span class="ex">enumerate</span>}},</span>
+<span id="cb406-38"><a href="#cb406-38" aria-hidden="true"></a> olItemWithNumber = {<span class="co">%</span></span>
+<span id="cb406-39"><a href="#cb406-39" aria-hidden="true"></a> <span class="fu">\item</span> This is the</span>
+<span id="cb406-40"><a href="#cb406-40" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb406-41"><a href="#cb406-41" aria-hidden="true"></a> first</span>
+<span id="cb406-42"><a href="#cb406-42" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb406-43"><a href="#cb406-43" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb406-44"><a href="#cb406-44" aria-hidden="true"></a> second</span>
+<span id="cb406-45"><a href="#cb406-45" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb406-46"><a href="#cb406-46" aria-hidden="true"></a> third</span>
+<span id="cb406-47"><a href="#cb406-47" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb406-48"><a href="#cb406-48" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb406-49"><a href="#cb406-49" aria-hidden="true"></a> },</span>
+<span id="cb406-50"><a href="#cb406-50" aria-hidden="true"></a> olItemEnd = {.},</span>
+<span id="cb406-51"><a href="#cb406-51" aria-hidden="true"></a> olEnd = {<span class="kw">\end</span>{<span class="ex">enumerate</span>}},</span>
+<span id="cb406-52"><a href="#cb406-52" aria-hidden="true"></a> },</span>
+<span id="cb406-53"><a href="#cb406-53" aria-hidden="true"></a>}</span>
+<span id="cb406-54"><a href="#cb406-54" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb406-55"><a href="#cb406-55" aria-hidden="true"></a></span>
+<span id="cb406-56"><a href="#cb406-56" aria-hidden="true"></a>1. item</span>
+<span id="cb406-57"><a href="#cb406-57" aria-hidden="true"></a></span>
+<span id="cb406-58"><a href="#cb406-58" aria-hidden="true"></a>2. item</span>
+<span id="cb406-59"><a href="#cb406-59" aria-hidden="true"></a></span>
+<span id="cb406-60"><a href="#cb406-60" aria-hidden="true"></a>3. item</span>
+<span id="cb406-61"><a href="#cb406-61" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb406-62"><a href="#cb406-62" aria-hidden="true"></a></span>
+<span id="cb406-63"><a href="#cb406-63" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb407"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb407-1"><a href="#cb407-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a tight list (the first item, the second item, and the third item).</p>
@@ -5028,69 +5113,69 @@ Thomas,Edison,1847</code></pre>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-37">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb405"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb405-1"><a href="#cb405-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb405-2"><a href="#cb405-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
-<span id="cb405-3"><a href="#cb405-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionStartNumber</span>{true}</span>
-<span id="cb405-4"><a href="#cb405-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb405-5"><a href="#cb405-5" aria-hidden="true"></a></span>
-<span id="cb405-6"><a href="#cb405-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
-<span id="cb405-7"><a href="#cb405-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBeginTight</span>{ (}</span>
-<span id="cb405-8"><a href="#cb405-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
-<span id="cb405-9"><a href="#cb405-9" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
-<span id="cb405-10"><a href="#cb405-10" aria-hidden="true"></a> the first</span>
-<span id="cb405-11"><a href="#cb405-11" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb405-12"><a href="#cb405-12" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
-<span id="cb405-13"><a href="#cb405-13" aria-hidden="true"></a> , the second</span>
-<span id="cb405-14"><a href="#cb405-14" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb405-15"><a href="#cb405-15" aria-hidden="true"></a> , and the third</span>
-<span id="cb405-16"><a href="#cb405-16" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb405-17"><a href="#cb405-17" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb405-18"><a href="#cb405-18" aria-hidden="true"></a>}</span>
-<span id="cb405-19"><a href="#cb405-19" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{}</span>
-<span id="cb405-20"><a href="#cb405-20" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEndTight</span>{).}</span>
-<span id="cb405-21"><a href="#cb405-21" aria-hidden="true"></a></span>
-<span id="cb405-22"><a href="#cb405-22" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb405-23"><a href="#cb405-23" aria-hidden="true"></a>This is a tight list</span>
-<span id="cb405-24"><a href="#cb405-24" aria-hidden="true"></a></span>
-<span id="cb405-25"><a href="#cb405-25" aria-hidden="true"></a>1. item</span>
-<span id="cb405-26"><a href="#cb405-26" aria-hidden="true"></a>2. item</span>
-<span id="cb405-27"><a href="#cb405-27" aria-hidden="true"></a>3. item</span>
-<span id="cb405-28"><a href="#cb405-28" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb405-29"><a href="#cb405-29" aria-hidden="true"></a></span>
-<span id="cb405-30"><a href="#cb405-30" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb405-31"><a href="#cb405-31" aria-hidden="true"></a> :<span class="fu">\par</span></span>
-<span id="cb405-32"><a href="#cb405-32" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb405-33"><a href="#cb405-33" aria-hidden="true"></a>}</span>
-<span id="cb405-34"><a href="#cb405-34" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBegin</span>{<span class="fu">\startitemize</span>}</span>
-<span id="cb405-35"><a href="#cb405-35" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
-<span id="cb405-36"><a href="#cb405-36" aria-hidden="true"></a> <span class="fu">\sym</span>{#1.}</span>
-<span id="cb405-37"><a href="#cb405-37" aria-hidden="true"></a> This is the</span>
-<span id="cb405-38"><a href="#cb405-38" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
-<span id="cb405-39"><a href="#cb405-39" aria-hidden="true"></a> first</span>
-<span id="cb405-40"><a href="#cb405-40" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb405-41"><a href="#cb405-41" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
-<span id="cb405-42"><a href="#cb405-42" aria-hidden="true"></a> second</span>
-<span id="cb405-43"><a href="#cb405-43" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb405-44"><a href="#cb405-44" aria-hidden="true"></a> third</span>
-<span id="cb405-45"><a href="#cb405-45" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb405-46"><a href="#cb405-46" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb405-47"><a href="#cb405-47" aria-hidden="true"></a>}</span>
-<span id="cb405-48"><a href="#cb405-48" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{.<span class="fu">\par</span>}</span>
-<span id="cb405-49"><a href="#cb405-49" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEnd</span>{<span class="fu">\stopitemize</span>}</span>
-<span id="cb405-50"><a href="#cb405-50" aria-hidden="true"></a></span>
-<span id="cb405-51"><a href="#cb405-51" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb405-52"><a href="#cb405-52" aria-hidden="true"></a>This is a loose list</span>
-<span id="cb405-53"><a href="#cb405-53" aria-hidden="true"></a></span>
-<span id="cb405-54"><a href="#cb405-54" aria-hidden="true"></a>1. item</span>
-<span id="cb405-55"><a href="#cb405-55" aria-hidden="true"></a></span>
-<span id="cb405-56"><a href="#cb405-56" aria-hidden="true"></a>2. item</span>
-<span id="cb405-57"><a href="#cb405-57" aria-hidden="true"></a></span>
-<span id="cb405-58"><a href="#cb405-58" aria-hidden="true"></a>3. item</span>
-<span id="cb405-59"><a href="#cb405-59" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb405-60"><a href="#cb405-60" aria-hidden="true"></a></span>
-<span id="cb405-61"><a href="#cb405-61" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb406"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb406-1"><a href="#cb406-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb408"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb408-1"><a href="#cb408-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb408-2"><a href="#cb408-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
+<span id="cb408-3"><a href="#cb408-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionStartNumber</span>{true}</span>
+<span id="cb408-4"><a href="#cb408-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb408-5"><a href="#cb408-5" aria-hidden="true"></a></span>
+<span id="cb408-6"><a href="#cb408-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb408-7"><a href="#cb408-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBeginTight</span>{ (}</span>
+<span id="cb408-8"><a href="#cb408-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
+<span id="cb408-9"><a href="#cb408-9" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb408-10"><a href="#cb408-10" aria-hidden="true"></a> the first</span>
+<span id="cb408-11"><a href="#cb408-11" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb408-12"><a href="#cb408-12" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb408-13"><a href="#cb408-13" aria-hidden="true"></a> , the second</span>
+<span id="cb408-14"><a href="#cb408-14" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb408-15"><a href="#cb408-15" aria-hidden="true"></a> , and the third</span>
+<span id="cb408-16"><a href="#cb408-16" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb408-17"><a href="#cb408-17" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb408-18"><a href="#cb408-18" aria-hidden="true"></a>}</span>
+<span id="cb408-19"><a href="#cb408-19" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{}</span>
+<span id="cb408-20"><a href="#cb408-20" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEndTight</span>{).}</span>
+<span id="cb408-21"><a href="#cb408-21" aria-hidden="true"></a></span>
+<span id="cb408-22"><a href="#cb408-22" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb408-23"><a href="#cb408-23" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb408-24"><a href="#cb408-24" aria-hidden="true"></a></span>
+<span id="cb408-25"><a href="#cb408-25" aria-hidden="true"></a>1. item</span>
+<span id="cb408-26"><a href="#cb408-26" aria-hidden="true"></a>2. item</span>
+<span id="cb408-27"><a href="#cb408-27" aria-hidden="true"></a>3. item</span>
+<span id="cb408-28"><a href="#cb408-28" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb408-29"><a href="#cb408-29" aria-hidden="true"></a></span>
+<span id="cb408-30"><a href="#cb408-30" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb408-31"><a href="#cb408-31" aria-hidden="true"></a> :<span class="fu">\par</span></span>
+<span id="cb408-32"><a href="#cb408-32" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb408-33"><a href="#cb408-33" aria-hidden="true"></a>}</span>
+<span id="cb408-34"><a href="#cb408-34" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBegin</span>{<span class="fu">\startitemize</span>}</span>
+<span id="cb408-35"><a href="#cb408-35" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
+<span id="cb408-36"><a href="#cb408-36" aria-hidden="true"></a> <span class="fu">\sym</span>{#1.}</span>
+<span id="cb408-37"><a href="#cb408-37" aria-hidden="true"></a> This is the</span>
+<span id="cb408-38"><a href="#cb408-38" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb408-39"><a href="#cb408-39" aria-hidden="true"></a> first</span>
+<span id="cb408-40"><a href="#cb408-40" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb408-41"><a href="#cb408-41" aria-hidden="true"></a> <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb408-42"><a href="#cb408-42" aria-hidden="true"></a> second</span>
+<span id="cb408-43"><a href="#cb408-43" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb408-44"><a href="#cb408-44" aria-hidden="true"></a> third</span>
+<span id="cb408-45"><a href="#cb408-45" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb408-46"><a href="#cb408-46" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb408-47"><a href="#cb408-47" aria-hidden="true"></a>}</span>
+<span id="cb408-48"><a href="#cb408-48" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{.<span class="fu">\par</span>}</span>
+<span id="cb408-49"><a href="#cb408-49" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEnd</span>{<span class="fu">\stopitemize</span>}</span>
+<span id="cb408-50"><a href="#cb408-50" aria-hidden="true"></a></span>
+<span id="cb408-51"><a href="#cb408-51" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb408-52"><a href="#cb408-52" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb408-53"><a href="#cb408-53" aria-hidden="true"></a></span>
+<span id="cb408-54"><a href="#cb408-54" aria-hidden="true"></a>1. item</span>
+<span id="cb408-55"><a href="#cb408-55" aria-hidden="true"></a></span>
+<span id="cb408-56"><a href="#cb408-56" aria-hidden="true"></a>2. item</span>
+<span id="cb408-57"><a href="#cb408-57" aria-hidden="true"></a></span>
+<span id="cb408-58"><a href="#cb408-58" aria-hidden="true"></a>3. item</span>
+<span id="cb408-59"><a href="#cb408-59" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb408-60"><a href="#cb408-60" aria-hidden="true"></a></span>
+<span id="cb408-61"><a href="#cb408-61" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb409"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb409-1"><a href="#cb409-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a tight list (the first item, the second item, and the third item).</p>
@@ -5101,7 +5186,7 @@ Thomas,Edison,1847</code></pre>
<li><p>This is the third item.</p></li>
</ol>
</blockquote>
-<h4 data-number="2.3.1.13" id="definition-list-renderers"><span class="header-section-number">2.3.1.13</span> Definition List Renderers</h4>
+<h4 data-number="2.3.1.14" id="definition-list-renderers"><span class="header-section-number">2.3.1.14</span> Definition List Renderers</h4>
<p>The following macros are only produced, when the <strong><code>definitionLists</code></strong> option is enabled.</p>
<p>The <code>\markdownRendererDlBegin</code> macro represents the beginning of a definition list that contains an item with several paragraphs of text (the list is not tight). The macro receives no arguments.</p>
<p>The <code>\markdownRendererDlBeginTight</code> macro represents the beginning of a definition list that contains an item with several paragraphs of text (the list is not tight). This macro will only be produced, when the <strong><code>tightLists</code></strong> option is <code>false</code>. The macro receives no arguments.</p>
@@ -5113,86 +5198,86 @@ Thomas,Edison,1847</code></pre>
<p>The <code>\markdownRendererDlEndTight</code> macro represents the end of a definition list that contains no item with several paragraphs of text (the list is tight). This macro will only be produced, when the <strong><code>tightLists</code></strong> option is <code>false</code>. The macro receives no arguments.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-26">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb407"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb407-1"><a href="#cb407-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb407-2"><a href="#cb407-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionDefinitionLists</span>{true}</span>
-<span id="cb407-3"><a href="#cb407-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
-<span id="cb407-4"><a href="#cb407-4" aria-hidden="true"></a></span>
-<span id="cb407-5"><a href="#cb407-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb407-6"><a href="#cb407-6" aria-hidden="true"></a> :<span class="co">%</span></span>
-<span id="cb407-7"><a href="#cb407-7" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb407-8"><a href="#cb407-8" aria-hidden="true"></a>}</span>
-<span id="cb407-9"><a href="#cb407-9" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBeginTight</span>{<span class="co">%</span></span>
-<span id="cb407-10"><a href="#cb407-10" aria-hidden="true"></a> <span class="fu">\begingroup</span></span>
-<span id="cb407-11"><a href="#cb407-11" aria-hidden="true"></a> <span class="fu">\parindent</span>=0pt</span>
-<span id="cb407-12"><a href="#cb407-12" aria-hidden="true"></a>}</span>
-<span id="cb407-13"><a href="#cb407-13" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
-<span id="cb407-14"><a href="#cb407-14" aria-hidden="true"></a> <span class="fu">\par</span>{<span class="fu">\bf</span>#1}<span class="co">%</span></span>
-<span id="cb407-15"><a href="#cb407-15" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
-<span id="cb407-16"><a href="#cb407-16" aria-hidden="true"></a> ,</span>
-<span id="cb407-17"><a href="#cb407-17" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
-<span id="cb407-18"><a href="#cb407-18" aria-hidden="true"></a> , and</span>
-<span id="cb407-19"><a href="#cb407-19" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{.}<span class="co">%</span></span>
-<span id="cb407-20"><a href="#cb407-20" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb407-21"><a href="#cb407-21" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb407-22"><a href="#cb407-22" aria-hidden="true"></a>}</span>
-<span id="cb407-23"><a href="#cb407-23" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{}</span>
-<span id="cb407-24"><a href="#cb407-24" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="fu">\par</span>--<span class="fu">\kern</span> 0.5em}</span>
-<span id="cb407-25"><a href="#cb407-25" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEndTight</span>{<span class="fu">\endgroup</span>}</span>
-<span id="cb407-26"><a href="#cb407-26" aria-hidden="true"></a></span>
-<span id="cb407-27"><a href="#cb407-27" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb407-28"><a href="#cb407-28" aria-hidden="true"></a>This is a tight definition list</span>
-<span id="cb407-29"><a href="#cb407-29" aria-hidden="true"></a></span>
-<span id="cb407-30"><a href="#cb407-30" aria-hidden="true"></a>Coffee</span>
-<span id="cb407-31"><a href="#cb407-31" aria-hidden="true"></a>: black hot drink</span>
-<span id="cb407-32"><a href="#cb407-32" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
-<span id="cb407-33"><a href="#cb407-33" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
-<span id="cb407-34"><a href="#cb407-34" aria-hidden="true"></a></span>
-<span id="cb407-35"><a href="#cb407-35" aria-hidden="true"></a>Milk</span>
-<span id="cb407-36"><a href="#cb407-36" aria-hidden="true"></a>: white cold drink</span>
-<span id="cb407-37"><a href="#cb407-37" aria-hidden="true"></a>: nutrient-rich</span>
-<span id="cb407-38"><a href="#cb407-38" aria-hidden="true"></a>: produced on an industrial scale</span>
-<span id="cb407-39"><a href="#cb407-39" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb407-40"><a href="#cb407-40" aria-hidden="true"></a></span>
-<span id="cb407-41"><a href="#cb407-41" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb407-42"><a href="#cb407-42" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb407-43"><a href="#cb407-43" aria-hidden="true"></a>}</span>
-<span id="cb407-44"><a href="#cb407-44" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBegin</span>{}</span>
-<span id="cb407-45"><a href="#cb407-45" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
-<span id="cb407-46"><a href="#cb407-46" aria-hidden="true"></a> . #1 is a</span>
-<span id="cb407-47"><a href="#cb407-47" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
-<span id="cb407-48"><a href="#cb407-48" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
-<span id="cb407-49"><a href="#cb407-49" aria-hidden="true"></a> ,</span>
-<span id="cb407-50"><a href="#cb407-50" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{, and }<span class="co">%</span></span>
-<span id="cb407-51"><a href="#cb407-51" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb407-52"><a href="#cb407-52" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb407-53"><a href="#cb407-53" aria-hidden="true"></a>}</span>
-<span id="cb407-54"><a href="#cb407-54" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{}</span>
-<span id="cb407-55"><a href="#cb407-55" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlDefinitionEnd</span>{}</span>
-<span id="cb407-56"><a href="#cb407-56" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEnd</span>{.}</span>
-<span id="cb407-57"><a href="#cb407-57" aria-hidden="true"></a></span>
-<span id="cb407-58"><a href="#cb407-58" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb407-59"><a href="#cb407-59" aria-hidden="true"></a>This is a loose definition list</span>
-<span id="cb407-60"><a href="#cb407-60" aria-hidden="true"></a></span>
-<span id="cb407-61"><a href="#cb407-61" aria-hidden="true"></a>Coffee</span>
-<span id="cb407-62"><a href="#cb407-62" aria-hidden="true"></a></span>
-<span id="cb407-63"><a href="#cb407-63" aria-hidden="true"></a>: black hot drink</span>
-<span id="cb407-64"><a href="#cb407-64" aria-hidden="true"></a></span>
-<span id="cb407-65"><a href="#cb407-65" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
-<span id="cb407-66"><a href="#cb407-66" aria-hidden="true"></a></span>
-<span id="cb407-67"><a href="#cb407-67" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
-<span id="cb407-68"><a href="#cb407-68" aria-hidden="true"></a></span>
-<span id="cb407-69"><a href="#cb407-69" aria-hidden="true"></a>Milk</span>
-<span id="cb407-70"><a href="#cb407-70" aria-hidden="true"></a></span>
-<span id="cb407-71"><a href="#cb407-71" aria-hidden="true"></a>: white cold drink</span>
-<span id="cb407-72"><a href="#cb407-72" aria-hidden="true"></a></span>
-<span id="cb407-73"><a href="#cb407-73" aria-hidden="true"></a>: nutrient-rich</span>
-<span id="cb407-74"><a href="#cb407-74" aria-hidden="true"></a></span>
-<span id="cb407-75"><a href="#cb407-75" aria-hidden="true"></a>: produced on an industrial scale</span>
-<span id="cb407-76"><a href="#cb407-76" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb407-77"><a href="#cb407-77" aria-hidden="true"></a></span>
-<span id="cb407-78"><a href="#cb407-78" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb408"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb408-1"><a href="#cb408-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb410"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb410-1"><a href="#cb410-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb410-2"><a href="#cb410-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionDefinitionLists</span>{true}</span>
+<span id="cb410-3"><a href="#cb410-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
+<span id="cb410-4"><a href="#cb410-4" aria-hidden="true"></a></span>
+<span id="cb410-5"><a href="#cb410-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb410-6"><a href="#cb410-6" aria-hidden="true"></a> :<span class="co">%</span></span>
+<span id="cb410-7"><a href="#cb410-7" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb410-8"><a href="#cb410-8" aria-hidden="true"></a>}</span>
+<span id="cb410-9"><a href="#cb410-9" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBeginTight</span>{<span class="co">%</span></span>
+<span id="cb410-10"><a href="#cb410-10" aria-hidden="true"></a> <span class="fu">\begingroup</span></span>
+<span id="cb410-11"><a href="#cb410-11" aria-hidden="true"></a> <span class="fu">\parindent</span>=0pt</span>
+<span id="cb410-12"><a href="#cb410-12" aria-hidden="true"></a>}</span>
+<span id="cb410-13"><a href="#cb410-13" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
+<span id="cb410-14"><a href="#cb410-14" aria-hidden="true"></a> <span class="fu">\par</span>{<span class="fu">\bf</span>#1}<span class="co">%</span></span>
+<span id="cb410-15"><a href="#cb410-15" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb410-16"><a href="#cb410-16" aria-hidden="true"></a> ,</span>
+<span id="cb410-17"><a href="#cb410-17" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb410-18"><a href="#cb410-18" aria-hidden="true"></a> , and</span>
+<span id="cb410-19"><a href="#cb410-19" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{.}<span class="co">%</span></span>
+<span id="cb410-20"><a href="#cb410-20" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb410-21"><a href="#cb410-21" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb410-22"><a href="#cb410-22" aria-hidden="true"></a>}</span>
+<span id="cb410-23"><a href="#cb410-23" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{}</span>
+<span id="cb410-24"><a href="#cb410-24" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="fu">\par</span>--<span class="fu">\kern</span> 0.5em}</span>
+<span id="cb410-25"><a href="#cb410-25" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEndTight</span>{<span class="fu">\endgroup</span>}</span>
+<span id="cb410-26"><a href="#cb410-26" aria-hidden="true"></a></span>
+<span id="cb410-27"><a href="#cb410-27" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb410-28"><a href="#cb410-28" aria-hidden="true"></a>This is a tight definition list</span>
+<span id="cb410-29"><a href="#cb410-29" aria-hidden="true"></a></span>
+<span id="cb410-30"><a href="#cb410-30" aria-hidden="true"></a>Coffee</span>
+<span id="cb410-31"><a href="#cb410-31" aria-hidden="true"></a>: black hot drink</span>
+<span id="cb410-32"><a href="#cb410-32" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
+<span id="cb410-33"><a href="#cb410-33" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
+<span id="cb410-34"><a href="#cb410-34" aria-hidden="true"></a></span>
+<span id="cb410-35"><a href="#cb410-35" aria-hidden="true"></a>Milk</span>
+<span id="cb410-36"><a href="#cb410-36" aria-hidden="true"></a>: white cold drink</span>
+<span id="cb410-37"><a href="#cb410-37" aria-hidden="true"></a>: nutrient-rich</span>
+<span id="cb410-38"><a href="#cb410-38" aria-hidden="true"></a>: produced on an industrial scale</span>
+<span id="cb410-39"><a href="#cb410-39" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb410-40"><a href="#cb410-40" aria-hidden="true"></a></span>
+<span id="cb410-41"><a href="#cb410-41" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb410-42"><a href="#cb410-42" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb410-43"><a href="#cb410-43" aria-hidden="true"></a>}</span>
+<span id="cb410-44"><a href="#cb410-44" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBegin</span>{}</span>
+<span id="cb410-45"><a href="#cb410-45" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
+<span id="cb410-46"><a href="#cb410-46" aria-hidden="true"></a> . #1 is a</span>
+<span id="cb410-47"><a href="#cb410-47" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb410-48"><a href="#cb410-48" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb410-49"><a href="#cb410-49" aria-hidden="true"></a> ,</span>
+<span id="cb410-50"><a href="#cb410-50" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{, and }<span class="co">%</span></span>
+<span id="cb410-51"><a href="#cb410-51" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb410-52"><a href="#cb410-52" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb410-53"><a href="#cb410-53" aria-hidden="true"></a>}</span>
+<span id="cb410-54"><a href="#cb410-54" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{}</span>
+<span id="cb410-55"><a href="#cb410-55" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlDefinitionEnd</span>{}</span>
+<span id="cb410-56"><a href="#cb410-56" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEnd</span>{.}</span>
+<span id="cb410-57"><a href="#cb410-57" aria-hidden="true"></a></span>
+<span id="cb410-58"><a href="#cb410-58" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb410-59"><a href="#cb410-59" aria-hidden="true"></a>This is a loose definition list</span>
+<span id="cb410-60"><a href="#cb410-60" aria-hidden="true"></a></span>
+<span id="cb410-61"><a href="#cb410-61" aria-hidden="true"></a>Coffee</span>
+<span id="cb410-62"><a href="#cb410-62" aria-hidden="true"></a></span>
+<span id="cb410-63"><a href="#cb410-63" aria-hidden="true"></a>: black hot drink</span>
+<span id="cb410-64"><a href="#cb410-64" aria-hidden="true"></a></span>
+<span id="cb410-65"><a href="#cb410-65" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
+<span id="cb410-66"><a href="#cb410-66" aria-hidden="true"></a></span>
+<span id="cb410-67"><a href="#cb410-67" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
+<span id="cb410-68"><a href="#cb410-68" aria-hidden="true"></a></span>
+<span id="cb410-69"><a href="#cb410-69" aria-hidden="true"></a>Milk</span>
+<span id="cb410-70"><a href="#cb410-70" aria-hidden="true"></a></span>
+<span id="cb410-71"><a href="#cb410-71" aria-hidden="true"></a>: white cold drink</span>
+<span id="cb410-72"><a href="#cb410-72" aria-hidden="true"></a></span>
+<span id="cb410-73"><a href="#cb410-73" aria-hidden="true"></a>: nutrient-rich</span>
+<span id="cb410-74"><a href="#cb410-74" aria-hidden="true"></a></span>
+<span id="cb410-75"><a href="#cb410-75" aria-hidden="true"></a>: produced on an industrial scale</span>
+<span id="cb410-76"><a href="#cb410-76" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb410-77"><a href="#cb410-77" aria-hidden="true"></a></span>
+<span id="cb410-78"><a href="#cb410-78" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb411"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb411-1"><a href="#cb411-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a tight definition list:</p>
@@ -5210,90 +5295,90 @@ Thomas,Edison,1847</code></pre>
</ul>
<p>This is a loose definition list. Coffee is a black hot drink, prepared from roasted coffee beans, and one of the most traded agricultural commodities in the world. Milk is a white cold drink, nutrient-rich, and produced on an industrial scale.</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-47"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-48"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb409"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb409-1"><a href="#cb409-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb409-2"><a href="#cb409-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[definitionLists, tightLists]{<span class="ex">markdown</span>}</span>
-<span id="cb409-3"><a href="#cb409-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb409-4"><a href="#cb409-4" aria-hidden="true"></a></span>
-<span id="cb409-5"><a href="#cb409-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
-<span id="cb409-6"><a href="#cb409-6" aria-hidden="true"></a> renderers = {</span>
-<span id="cb409-7"><a href="#cb409-7" aria-hidden="true"></a> interblockSeparator = {<span class="co">%</span></span>
-<span id="cb409-8"><a href="#cb409-8" aria-hidden="true"></a> :<span class="co">%</span></span>
-<span id="cb409-9"><a href="#cb409-9" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb409-10"><a href="#cb409-10" aria-hidden="true"></a> },</span>
-<span id="cb409-11"><a href="#cb409-11" aria-hidden="true"></a> dlBeginTight = {<span class="kw">\begin</span>{<span class="ex">description</span>}},</span>
-<span id="cb409-12"><a href="#cb409-12" aria-hidden="true"></a> dlItem = {<span class="co">%</span></span>
-<span id="cb409-13"><a href="#cb409-13" aria-hidden="true"></a> <span class="fu">\item</span>[#1]</span>
-<span id="cb409-14"><a href="#cb409-14" aria-hidden="true"></a> <span class="kw">\begin</span>{<span class="ex">itemize</span>}</span>
-<span id="cb409-15"><a href="#cb409-15" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
-<span id="cb409-16"><a href="#cb409-16" aria-hidden="true"></a> ,</span>
-<span id="cb409-17"><a href="#cb409-17" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
-<span id="cb409-18"><a href="#cb409-18" aria-hidden="true"></a> , and</span>
-<span id="cb409-19"><a href="#cb409-19" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{.}<span class="co">%</span></span>
-<span id="cb409-20"><a href="#cb409-20" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb409-21"><a href="#cb409-21" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb409-22"><a href="#cb409-22" aria-hidden="true"></a> },</span>
-<span id="cb409-23"><a href="#cb409-23" aria-hidden="true"></a> dlItemEnd = {<span class="kw">\end</span>{<span class="ex">itemize</span>}},</span>
-<span id="cb409-24"><a href="#cb409-24" aria-hidden="true"></a> dlDefinitionBegin = <span class="fu">\item</span>,</span>
-<span id="cb409-25"><a href="#cb409-25" aria-hidden="true"></a> dlEndTight = {<span class="kw">\end</span>{<span class="ex">description</span>}},</span>
-<span id="cb409-26"><a href="#cb409-26" aria-hidden="true"></a> },</span>
-<span id="cb409-27"><a href="#cb409-27" aria-hidden="true"></a>}</span>
-<span id="cb409-28"><a href="#cb409-28" aria-hidden="true"></a>This is a tight definition list</span>
-<span id="cb409-29"><a href="#cb409-29" aria-hidden="true"></a></span>
-<span id="cb409-30"><a href="#cb409-30" aria-hidden="true"></a>Coffee</span>
-<span id="cb409-31"><a href="#cb409-31" aria-hidden="true"></a>: black hot drink</span>
-<span id="cb409-32"><a href="#cb409-32" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
-<span id="cb409-33"><a href="#cb409-33" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
-<span id="cb409-34"><a href="#cb409-34" aria-hidden="true"></a></span>
-<span id="cb409-35"><a href="#cb409-35" aria-hidden="true"></a>Milk</span>
-<span id="cb409-36"><a href="#cb409-36" aria-hidden="true"></a>: white cold drink</span>
-<span id="cb409-37"><a href="#cb409-37" aria-hidden="true"></a>: nutrient-rich</span>
-<span id="cb409-38"><a href="#cb409-38" aria-hidden="true"></a>: produced on an industrial scale</span>
-<span id="cb409-39"><a href="#cb409-39" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
-<span id="cb409-40"><a href="#cb409-40" aria-hidden="true"></a></span>
-<span id="cb409-41"><a href="#cb409-41" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
-<span id="cb409-42"><a href="#cb409-42" aria-hidden="true"></a> renderers = {</span>
-<span id="cb409-43"><a href="#cb409-43" aria-hidden="true"></a> interblockSeparator = {<span class="co">%</span></span>
-<span id="cb409-44"><a href="#cb409-44" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb409-45"><a href="#cb409-45" aria-hidden="true"></a> },</span>
-<span id="cb409-46"><a href="#cb409-46" aria-hidden="true"></a> dlBegin = {},</span>
-<span id="cb409-47"><a href="#cb409-47" aria-hidden="true"></a> dlItem = {<span class="co">%</span></span>
-<span id="cb409-48"><a href="#cb409-48" aria-hidden="true"></a> . #1 is a</span>
-<span id="cb409-49"><a href="#cb409-49" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
-<span id="cb409-50"><a href="#cb409-50" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
-<span id="cb409-51"><a href="#cb409-51" aria-hidden="true"></a> ,</span>
-<span id="cb409-52"><a href="#cb409-52" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{, and }<span class="co">%</span></span>
-<span id="cb409-53"><a href="#cb409-53" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb409-54"><a href="#cb409-54" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb409-55"><a href="#cb409-55" aria-hidden="true"></a> },</span>
-<span id="cb409-56"><a href="#cb409-56" aria-hidden="true"></a> dlItemEnd = {},</span>
-<span id="cb409-57"><a href="#cb409-57" aria-hidden="true"></a> dlDefinitionEnd = {},</span>
-<span id="cb409-58"><a href="#cb409-58" aria-hidden="true"></a> dlEnd = {.},</span>
-<span id="cb409-59"><a href="#cb409-59" aria-hidden="true"></a> },</span>
-<span id="cb409-60"><a href="#cb409-60" aria-hidden="true"></a>}</span>
-<span id="cb409-61"><a href="#cb409-61" aria-hidden="true"></a>This is a loose definition list</span>
-<span id="cb409-62"><a href="#cb409-62" aria-hidden="true"></a></span>
-<span id="cb409-63"><a href="#cb409-63" aria-hidden="true"></a>Coffee</span>
-<span id="cb409-64"><a href="#cb409-64" aria-hidden="true"></a></span>
-<span id="cb409-65"><a href="#cb409-65" aria-hidden="true"></a>: black hot drink</span>
-<span id="cb409-66"><a href="#cb409-66" aria-hidden="true"></a></span>
-<span id="cb409-67"><a href="#cb409-67" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
-<span id="cb409-68"><a href="#cb409-68" aria-hidden="true"></a></span>
-<span id="cb409-69"><a href="#cb409-69" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
-<span id="cb409-70"><a href="#cb409-70" aria-hidden="true"></a></span>
-<span id="cb409-71"><a href="#cb409-71" aria-hidden="true"></a>Milk</span>
-<span id="cb409-72"><a href="#cb409-72" aria-hidden="true"></a></span>
-<span id="cb409-73"><a href="#cb409-73" aria-hidden="true"></a>: white cold drink</span>
-<span id="cb409-74"><a href="#cb409-74" aria-hidden="true"></a></span>
-<span id="cb409-75"><a href="#cb409-75" aria-hidden="true"></a>: nutrient-rich</span>
-<span id="cb409-76"><a href="#cb409-76" aria-hidden="true"></a></span>
-<span id="cb409-77"><a href="#cb409-77" aria-hidden="true"></a>: produced on an industrial scale</span>
-<span id="cb409-78"><a href="#cb409-78" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
-<span id="cb409-79"><a href="#cb409-79" aria-hidden="true"></a></span>
-<span id="cb409-80"><a href="#cb409-80" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb410"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb410-1"><a href="#cb410-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb412"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb412-1"><a href="#cb412-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb412-2"><a href="#cb412-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[definitionLists, tightLists]{<span class="ex">markdown</span>}</span>
+<span id="cb412-3"><a href="#cb412-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb412-4"><a href="#cb412-4" aria-hidden="true"></a></span>
+<span id="cb412-5"><a href="#cb412-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb412-6"><a href="#cb412-6" aria-hidden="true"></a> renderers = {</span>
+<span id="cb412-7"><a href="#cb412-7" aria-hidden="true"></a> interblockSeparator = {<span class="co">%</span></span>
+<span id="cb412-8"><a href="#cb412-8" aria-hidden="true"></a> :<span class="co">%</span></span>
+<span id="cb412-9"><a href="#cb412-9" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb412-10"><a href="#cb412-10" aria-hidden="true"></a> },</span>
+<span id="cb412-11"><a href="#cb412-11" aria-hidden="true"></a> dlBeginTight = {<span class="kw">\begin</span>{<span class="ex">description</span>}},</span>
+<span id="cb412-12"><a href="#cb412-12" aria-hidden="true"></a> dlItem = {<span class="co">%</span></span>
+<span id="cb412-13"><a href="#cb412-13" aria-hidden="true"></a> <span class="fu">\item</span>[#1]</span>
+<span id="cb412-14"><a href="#cb412-14" aria-hidden="true"></a> <span class="kw">\begin</span>{<span class="ex">itemize</span>}</span>
+<span id="cb412-15"><a href="#cb412-15" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb412-16"><a href="#cb412-16" aria-hidden="true"></a> ,</span>
+<span id="cb412-17"><a href="#cb412-17" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb412-18"><a href="#cb412-18" aria-hidden="true"></a> , and</span>
+<span id="cb412-19"><a href="#cb412-19" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{.}<span class="co">%</span></span>
+<span id="cb412-20"><a href="#cb412-20" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb412-21"><a href="#cb412-21" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb412-22"><a href="#cb412-22" aria-hidden="true"></a> },</span>
+<span id="cb412-23"><a href="#cb412-23" aria-hidden="true"></a> dlItemEnd = {<span class="kw">\end</span>{<span class="ex">itemize</span>}},</span>
+<span id="cb412-24"><a href="#cb412-24" aria-hidden="true"></a> dlDefinitionBegin = <span class="fu">\item</span>,</span>
+<span id="cb412-25"><a href="#cb412-25" aria-hidden="true"></a> dlEndTight = {<span class="kw">\end</span>{<span class="ex">description</span>}},</span>
+<span id="cb412-26"><a href="#cb412-26" aria-hidden="true"></a> },</span>
+<span id="cb412-27"><a href="#cb412-27" aria-hidden="true"></a>}</span>
+<span id="cb412-28"><a href="#cb412-28" aria-hidden="true"></a>This is a tight definition list</span>
+<span id="cb412-29"><a href="#cb412-29" aria-hidden="true"></a></span>
+<span id="cb412-30"><a href="#cb412-30" aria-hidden="true"></a>Coffee</span>
+<span id="cb412-31"><a href="#cb412-31" aria-hidden="true"></a>: black hot drink</span>
+<span id="cb412-32"><a href="#cb412-32" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
+<span id="cb412-33"><a href="#cb412-33" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
+<span id="cb412-34"><a href="#cb412-34" aria-hidden="true"></a></span>
+<span id="cb412-35"><a href="#cb412-35" aria-hidden="true"></a>Milk</span>
+<span id="cb412-36"><a href="#cb412-36" aria-hidden="true"></a>: white cold drink</span>
+<span id="cb412-37"><a href="#cb412-37" aria-hidden="true"></a>: nutrient-rich</span>
+<span id="cb412-38"><a href="#cb412-38" aria-hidden="true"></a>: produced on an industrial scale</span>
+<span id="cb412-39"><a href="#cb412-39" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb412-40"><a href="#cb412-40" aria-hidden="true"></a></span>
+<span id="cb412-41"><a href="#cb412-41" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb412-42"><a href="#cb412-42" aria-hidden="true"></a> renderers = {</span>
+<span id="cb412-43"><a href="#cb412-43" aria-hidden="true"></a> interblockSeparator = {<span class="co">%</span></span>
+<span id="cb412-44"><a href="#cb412-44" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb412-45"><a href="#cb412-45" aria-hidden="true"></a> },</span>
+<span id="cb412-46"><a href="#cb412-46" aria-hidden="true"></a> dlBegin = {},</span>
+<span id="cb412-47"><a href="#cb412-47" aria-hidden="true"></a> dlItem = {<span class="co">%</span></span>
+<span id="cb412-48"><a href="#cb412-48" aria-hidden="true"></a> . #1 is a</span>
+<span id="cb412-49"><a href="#cb412-49" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb412-50"><a href="#cb412-50" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb412-51"><a href="#cb412-51" aria-hidden="true"></a> ,</span>
+<span id="cb412-52"><a href="#cb412-52" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{, and }<span class="co">%</span></span>
+<span id="cb412-53"><a href="#cb412-53" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb412-54"><a href="#cb412-54" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb412-55"><a href="#cb412-55" aria-hidden="true"></a> },</span>
+<span id="cb412-56"><a href="#cb412-56" aria-hidden="true"></a> dlItemEnd = {},</span>
+<span id="cb412-57"><a href="#cb412-57" aria-hidden="true"></a> dlDefinitionEnd = {},</span>
+<span id="cb412-58"><a href="#cb412-58" aria-hidden="true"></a> dlEnd = {.},</span>
+<span id="cb412-59"><a href="#cb412-59" aria-hidden="true"></a> },</span>
+<span id="cb412-60"><a href="#cb412-60" aria-hidden="true"></a>}</span>
+<span id="cb412-61"><a href="#cb412-61" aria-hidden="true"></a>This is a loose definition list</span>
+<span id="cb412-62"><a href="#cb412-62" aria-hidden="true"></a></span>
+<span id="cb412-63"><a href="#cb412-63" aria-hidden="true"></a>Coffee</span>
+<span id="cb412-64"><a href="#cb412-64" aria-hidden="true"></a></span>
+<span id="cb412-65"><a href="#cb412-65" aria-hidden="true"></a>: black hot drink</span>
+<span id="cb412-66"><a href="#cb412-66" aria-hidden="true"></a></span>
+<span id="cb412-67"><a href="#cb412-67" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
+<span id="cb412-68"><a href="#cb412-68" aria-hidden="true"></a></span>
+<span id="cb412-69"><a href="#cb412-69" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
+<span id="cb412-70"><a href="#cb412-70" aria-hidden="true"></a></span>
+<span id="cb412-71"><a href="#cb412-71" aria-hidden="true"></a>Milk</span>
+<span id="cb412-72"><a href="#cb412-72" aria-hidden="true"></a></span>
+<span id="cb412-73"><a href="#cb412-73" aria-hidden="true"></a>: white cold drink</span>
+<span id="cb412-74"><a href="#cb412-74" aria-hidden="true"></a></span>
+<span id="cb412-75"><a href="#cb412-75" aria-hidden="true"></a>: nutrient-rich</span>
+<span id="cb412-76"><a href="#cb412-76" aria-hidden="true"></a></span>
+<span id="cb412-77"><a href="#cb412-77" aria-hidden="true"></a>: produced on an industrial scale</span>
+<span id="cb412-78"><a href="#cb412-78" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb412-79"><a href="#cb412-79" aria-hidden="true"></a></span>
+<span id="cb412-80"><a href="#cb412-80" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb413"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb413-1"><a href="#cb413-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a tight definition list:</p>
@@ -5313,85 +5398,85 @@ Thomas,Edison,1847</code></pre>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-38">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb411"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb411-1"><a href="#cb411-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb411-2"><a href="#cb411-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionDefinitionLists</span>{true}</span>
-<span id="cb411-3"><a href="#cb411-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
-<span id="cb411-4"><a href="#cb411-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb411-5"><a href="#cb411-5" aria-hidden="true"></a></span>
-<span id="cb411-6"><a href="#cb411-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb411-7"><a href="#cb411-7" aria-hidden="true"></a> :<span class="co">%</span></span>
-<span id="cb411-8"><a href="#cb411-8" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb411-9"><a href="#cb411-9" aria-hidden="true"></a>}</span>
-<span id="cb411-10"><a href="#cb411-10" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBeginTight</span>{}</span>
-<span id="cb411-11"><a href="#cb411-11" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
-<span id="cb411-12"><a href="#cb411-12" aria-hidden="true"></a> <span class="fu">\par</span>{<span class="fu">\bf</span>#1}<span class="co">%</span></span>
-<span id="cb411-13"><a href="#cb411-13" aria-hidden="true"></a> <span class="fu">\startitemize</span></span>
-<span id="cb411-14"><a href="#cb411-14" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
-<span id="cb411-15"><a href="#cb411-15" aria-hidden="true"></a> ,</span>
-<span id="cb411-16"><a href="#cb411-16" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
-<span id="cb411-17"><a href="#cb411-17" aria-hidden="true"></a> , and</span>
-<span id="cb411-18"><a href="#cb411-18" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{.}<span class="co">%</span></span>
-<span id="cb411-19"><a href="#cb411-19" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb411-20"><a href="#cb411-20" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb411-21"><a href="#cb411-21" aria-hidden="true"></a>}</span>
-<span id="cb411-22"><a href="#cb411-22" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{<span class="fu">\stopitemize</span>}</span>
-<span id="cb411-23"><a href="#cb411-23" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="fu">\item</span>}</span>
-<span id="cb411-24"><a href="#cb411-24" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEndTight</span>{}</span>
-<span id="cb411-25"><a href="#cb411-25" aria-hidden="true"></a></span>
-<span id="cb411-26"><a href="#cb411-26" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb411-27"><a href="#cb411-27" aria-hidden="true"></a>This is a tight definition list</span>
-<span id="cb411-28"><a href="#cb411-28" aria-hidden="true"></a></span>
-<span id="cb411-29"><a href="#cb411-29" aria-hidden="true"></a>Coffee</span>
-<span id="cb411-30"><a href="#cb411-30" aria-hidden="true"></a>: black hot drink</span>
-<span id="cb411-31"><a href="#cb411-31" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
-<span id="cb411-32"><a href="#cb411-32" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
-<span id="cb411-33"><a href="#cb411-33" aria-hidden="true"></a></span>
-<span id="cb411-34"><a href="#cb411-34" aria-hidden="true"></a>Milk</span>
-<span id="cb411-35"><a href="#cb411-35" aria-hidden="true"></a>: white cold drink</span>
-<span id="cb411-36"><a href="#cb411-36" aria-hidden="true"></a>: nutrient-rich</span>
-<span id="cb411-37"><a href="#cb411-37" aria-hidden="true"></a>: produced on an industrial scale</span>
-<span id="cb411-38"><a href="#cb411-38" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb411-39"><a href="#cb411-39" aria-hidden="true"></a></span>
-<span id="cb411-40"><a href="#cb411-40" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb411-41"><a href="#cb411-41" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
-<span id="cb411-42"><a href="#cb411-42" aria-hidden="true"></a>}</span>
-<span id="cb411-43"><a href="#cb411-43" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBegin</span>{}</span>
-<span id="cb411-44"><a href="#cb411-44" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
-<span id="cb411-45"><a href="#cb411-45" aria-hidden="true"></a> . #1 is a</span>
-<span id="cb411-46"><a href="#cb411-46" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
-<span id="cb411-47"><a href="#cb411-47" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
-<span id="cb411-48"><a href="#cb411-48" aria-hidden="true"></a> ,</span>
-<span id="cb411-49"><a href="#cb411-49" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{, and }<span class="co">%</span></span>
-<span id="cb411-50"><a href="#cb411-50" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb411-51"><a href="#cb411-51" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb411-52"><a href="#cb411-52" aria-hidden="true"></a>}</span>
-<span id="cb411-53"><a href="#cb411-53" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{}</span>
-<span id="cb411-54"><a href="#cb411-54" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlDefinitionEnd</span>{}</span>
-<span id="cb411-55"><a href="#cb411-55" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEnd</span>{.}</span>
-<span id="cb411-56"><a href="#cb411-56" aria-hidden="true"></a></span>
-<span id="cb411-57"><a href="#cb411-57" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb411-58"><a href="#cb411-58" aria-hidden="true"></a>This is a loose definition list</span>
-<span id="cb411-59"><a href="#cb411-59" aria-hidden="true"></a></span>
-<span id="cb411-60"><a href="#cb411-60" aria-hidden="true"></a>Coffee</span>
-<span id="cb411-61"><a href="#cb411-61" aria-hidden="true"></a></span>
-<span id="cb411-62"><a href="#cb411-62" aria-hidden="true"></a>: black hot drink</span>
-<span id="cb411-63"><a href="#cb411-63" aria-hidden="true"></a></span>
-<span id="cb411-64"><a href="#cb411-64" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
-<span id="cb411-65"><a href="#cb411-65" aria-hidden="true"></a></span>
-<span id="cb411-66"><a href="#cb411-66" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
-<span id="cb411-67"><a href="#cb411-67" aria-hidden="true"></a></span>
-<span id="cb411-68"><a href="#cb411-68" aria-hidden="true"></a>Milk</span>
-<span id="cb411-69"><a href="#cb411-69" aria-hidden="true"></a></span>
-<span id="cb411-70"><a href="#cb411-70" aria-hidden="true"></a>: white cold drink</span>
-<span id="cb411-71"><a href="#cb411-71" aria-hidden="true"></a></span>
-<span id="cb411-72"><a href="#cb411-72" aria-hidden="true"></a>: nutrient-rich</span>
-<span id="cb411-73"><a href="#cb411-73" aria-hidden="true"></a></span>
-<span id="cb411-74"><a href="#cb411-74" aria-hidden="true"></a>: produced on an industrial scale</span>
-<span id="cb411-75"><a href="#cb411-75" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb411-76"><a href="#cb411-76" aria-hidden="true"></a></span>
-<span id="cb411-77"><a href="#cb411-77" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb412"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb412-1"><a href="#cb412-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb414"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb414-1"><a href="#cb414-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb414-2"><a href="#cb414-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionDefinitionLists</span>{true}</span>
+<span id="cb414-3"><a href="#cb414-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
+<span id="cb414-4"><a href="#cb414-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb414-5"><a href="#cb414-5" aria-hidden="true"></a></span>
+<span id="cb414-6"><a href="#cb414-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb414-7"><a href="#cb414-7" aria-hidden="true"></a> :<span class="co">%</span></span>
+<span id="cb414-8"><a href="#cb414-8" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb414-9"><a href="#cb414-9" aria-hidden="true"></a>}</span>
+<span id="cb414-10"><a href="#cb414-10" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBeginTight</span>{}</span>
+<span id="cb414-11"><a href="#cb414-11" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
+<span id="cb414-12"><a href="#cb414-12" aria-hidden="true"></a> <span class="fu">\par</span>{<span class="fu">\bf</span>#1}<span class="co">%</span></span>
+<span id="cb414-13"><a href="#cb414-13" aria-hidden="true"></a> <span class="fu">\startitemize</span></span>
+<span id="cb414-14"><a href="#cb414-14" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb414-15"><a href="#cb414-15" aria-hidden="true"></a> ,</span>
+<span id="cb414-16"><a href="#cb414-16" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb414-17"><a href="#cb414-17" aria-hidden="true"></a> , and</span>
+<span id="cb414-18"><a href="#cb414-18" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{.}<span class="co">%</span></span>
+<span id="cb414-19"><a href="#cb414-19" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb414-20"><a href="#cb414-20" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb414-21"><a href="#cb414-21" aria-hidden="true"></a>}</span>
+<span id="cb414-22"><a href="#cb414-22" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{<span class="fu">\stopitemize</span>}</span>
+<span id="cb414-23"><a href="#cb414-23" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="fu">\item</span>}</span>
+<span id="cb414-24"><a href="#cb414-24" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEndTight</span>{}</span>
+<span id="cb414-25"><a href="#cb414-25" aria-hidden="true"></a></span>
+<span id="cb414-26"><a href="#cb414-26" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb414-27"><a href="#cb414-27" aria-hidden="true"></a>This is a tight definition list</span>
+<span id="cb414-28"><a href="#cb414-28" aria-hidden="true"></a></span>
+<span id="cb414-29"><a href="#cb414-29" aria-hidden="true"></a>Coffee</span>
+<span id="cb414-30"><a href="#cb414-30" aria-hidden="true"></a>: black hot drink</span>
+<span id="cb414-31"><a href="#cb414-31" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
+<span id="cb414-32"><a href="#cb414-32" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
+<span id="cb414-33"><a href="#cb414-33" aria-hidden="true"></a></span>
+<span id="cb414-34"><a href="#cb414-34" aria-hidden="true"></a>Milk</span>
+<span id="cb414-35"><a href="#cb414-35" aria-hidden="true"></a>: white cold drink</span>
+<span id="cb414-36"><a href="#cb414-36" aria-hidden="true"></a>: nutrient-rich</span>
+<span id="cb414-37"><a href="#cb414-37" aria-hidden="true"></a>: produced on an industrial scale</span>
+<span id="cb414-38"><a href="#cb414-38" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb414-39"><a href="#cb414-39" aria-hidden="true"></a></span>
+<span id="cb414-40"><a href="#cb414-40" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb414-41"><a href="#cb414-41" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb414-42"><a href="#cb414-42" aria-hidden="true"></a>}</span>
+<span id="cb414-43"><a href="#cb414-43" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBegin</span>{}</span>
+<span id="cb414-44"><a href="#cb414-44" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
+<span id="cb414-45"><a href="#cb414-45" aria-hidden="true"></a> . #1 is a</span>
+<span id="cb414-46"><a href="#cb414-46" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb414-47"><a href="#cb414-47" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb414-48"><a href="#cb414-48" aria-hidden="true"></a> ,</span>
+<span id="cb414-49"><a href="#cb414-49" aria-hidden="true"></a> <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{, and }<span class="co">%</span></span>
+<span id="cb414-50"><a href="#cb414-50" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb414-51"><a href="#cb414-51" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb414-52"><a href="#cb414-52" aria-hidden="true"></a>}</span>
+<span id="cb414-53"><a href="#cb414-53" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{}</span>
+<span id="cb414-54"><a href="#cb414-54" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlDefinitionEnd</span>{}</span>
+<span id="cb414-55"><a href="#cb414-55" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEnd</span>{.}</span>
+<span id="cb414-56"><a href="#cb414-56" aria-hidden="true"></a></span>
+<span id="cb414-57"><a href="#cb414-57" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb414-58"><a href="#cb414-58" aria-hidden="true"></a>This is a loose definition list</span>
+<span id="cb414-59"><a href="#cb414-59" aria-hidden="true"></a></span>
+<span id="cb414-60"><a href="#cb414-60" aria-hidden="true"></a>Coffee</span>
+<span id="cb414-61"><a href="#cb414-61" aria-hidden="true"></a></span>
+<span id="cb414-62"><a href="#cb414-62" aria-hidden="true"></a>: black hot drink</span>
+<span id="cb414-63"><a href="#cb414-63" aria-hidden="true"></a></span>
+<span id="cb414-64"><a href="#cb414-64" aria-hidden="true"></a>: prepared from roasted coffee beans</span>
+<span id="cb414-65"><a href="#cb414-65" aria-hidden="true"></a></span>
+<span id="cb414-66"><a href="#cb414-66" aria-hidden="true"></a>: one of the most traded agricultural commodities in the world</span>
+<span id="cb414-67"><a href="#cb414-67" aria-hidden="true"></a></span>
+<span id="cb414-68"><a href="#cb414-68" aria-hidden="true"></a>Milk</span>
+<span id="cb414-69"><a href="#cb414-69" aria-hidden="true"></a></span>
+<span id="cb414-70"><a href="#cb414-70" aria-hidden="true"></a>: white cold drink</span>
+<span id="cb414-71"><a href="#cb414-71" aria-hidden="true"></a></span>
+<span id="cb414-72"><a href="#cb414-72" aria-hidden="true"></a>: nutrient-rich</span>
+<span id="cb414-73"><a href="#cb414-73" aria-hidden="true"></a></span>
+<span id="cb414-74"><a href="#cb414-74" aria-hidden="true"></a>: produced on an industrial scale</span>
+<span id="cb414-75"><a href="#cb414-75" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb414-76"><a href="#cb414-76" aria-hidden="true"></a></span>
+<span id="cb414-77"><a href="#cb414-77" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb415"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb415-1"><a href="#cb415-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a tight definition list:</p>
@@ -5409,45 +5494,45 @@ Thomas,Edison,1847</code></pre>
</ul>
<p>This is a loose definition list. Coffee is a black hot drink, prepared from roasted coffee beans, and one of the most traded agricultural commodities in the world. Milk is a white cold drink, nutrient-rich, and produced on an industrial scale.</p>
</blockquote>
-<h4 data-number="2.3.1.14" id="emphasis-renderers"><span class="header-section-number">2.3.1.14</span> Emphasis Renderers</h4>
+<h4 data-number="2.3.1.15" id="emphasis-renderers"><span class="header-section-number">2.3.1.15</span> Emphasis Renderers</h4>
<p>The <code>\markdownRendererEmphasis</code> macro represents an emphasized span of text. The macro receives a single argument that corresponds to the emphasized span of text.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-27">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb413"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb413-1"><a href="#cb413-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb413-2"><a href="#cb413-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererEmphasis</span>#1{{<span class="fu">\it</span>#1}}</span>
-<span id="cb413-3"><a href="#cb413-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererStrongEmphasis</span>#1{{<span class="fu">\bf</span>#1}}</span>
-<span id="cb413-4"><a href="#cb413-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb413-5"><a href="#cb413-5" aria-hidden="true"></a>This is *emphasis*.</span>
-<span id="cb413-6"><a href="#cb413-6" aria-hidden="true"></a></span>
-<span id="cb413-7"><a href="#cb413-7" aria-hidden="true"></a>This is **strong emphasis**.</span>
-<span id="cb413-8"><a href="#cb413-8" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb413-9"><a href="#cb413-9" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<div class="sourceCode" id="cb416"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb416-1"><a href="#cb416-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb416-2"><a href="#cb416-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererEmphasis</span>#1{{<span class="fu">\it</span>#1}}</span>
+<span id="cb416-3"><a href="#cb416-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererStrongEmphasis</span>#1{{<span class="fu">\bf</span>#1}}</span>
+<span id="cb416-4"><a href="#cb416-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb416-5"><a href="#cb416-5" aria-hidden="true"></a>This is *emphasis*.</span>
+<span id="cb416-6"><a href="#cb416-6" aria-hidden="true"></a></span>
+<span id="cb416-7"><a href="#cb416-7" aria-hidden="true"></a>This is **strong emphasis**.</span>
+<span id="cb416-8"><a href="#cb416-8" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb416-9"><a href="#cb416-9" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb414"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb414-1"><a href="#cb414-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb417"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb417-1"><a href="#cb417-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is <em>emphasis</em>.</p>
<p>This is <strong>strong emphasis</strong>.</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-48"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-49"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb415"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb415-1"><a href="#cb415-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb415-2"><a href="#cb415-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
-<span id="cb415-3"><a href="#cb415-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb415-4"><a href="#cb415-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb415-5"><a href="#cb415-5" aria-hidden="true"></a> emphasis = {<span class="fu">\emph</span>{#1}},</span>
-<span id="cb415-6"><a href="#cb415-6" aria-hidden="true"></a> strongEmphasis = {<span class="fu">\textbf</span>{#1}},</span>
-<span id="cb415-7"><a href="#cb415-7" aria-hidden="true"></a> },</span>
-<span id="cb415-8"><a href="#cb415-8" aria-hidden="true"></a>}</span>
-<span id="cb415-9"><a href="#cb415-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb415-10"><a href="#cb415-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb415-11"><a href="#cb415-11" aria-hidden="true"></a>This is *emphasis*.</span>
-<span id="cb415-12"><a href="#cb415-12" aria-hidden="true"></a></span>
-<span id="cb415-13"><a href="#cb415-13" aria-hidden="true"></a>This is **strong emphasis**.</span>
-<span id="cb415-14"><a href="#cb415-14" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb415-15"><a href="#cb415-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb416"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb416-1"><a href="#cb416-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb418"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb418-1"><a href="#cb418-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb418-2"><a href="#cb418-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb418-3"><a href="#cb418-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb418-4"><a href="#cb418-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb418-5"><a href="#cb418-5" aria-hidden="true"></a> emphasis = {<span class="fu">\emph</span>{#1}},</span>
+<span id="cb418-6"><a href="#cb418-6" aria-hidden="true"></a> strongEmphasis = {<span class="fu">\textbf</span>{#1}},</span>
+<span id="cb418-7"><a href="#cb418-7" aria-hidden="true"></a> },</span>
+<span id="cb418-8"><a href="#cb418-8" aria-hidden="true"></a>}</span>
+<span id="cb418-9"><a href="#cb418-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb418-10"><a href="#cb418-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb418-11"><a href="#cb418-11" aria-hidden="true"></a>This is *emphasis*.</span>
+<span id="cb418-12"><a href="#cb418-12" aria-hidden="true"></a></span>
+<span id="cb418-13"><a href="#cb418-13" aria-hidden="true"></a>This is **strong emphasis**.</span>
+<span id="cb418-14"><a href="#cb418-14" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb418-15"><a href="#cb418-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb419"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb419-1"><a href="#cb419-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is <em>emphasis</em>.</p>
@@ -5455,52 +5540,52 @@ Thomas,Edison,1847</code></pre>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-39">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb417"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb417-1"><a href="#cb417-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb417-2"><a href="#cb417-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererEmphasis</span>#1{<span class="fu">\emph</span>{#1}}</span>
-<span id="cb417-3"><a href="#cb417-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererStrongEmphasis</span>#1{<span class="fu">\bold</span>{#1}}</span>
-<span id="cb417-4"><a href="#cb417-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb417-5"><a href="#cb417-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb417-6"><a href="#cb417-6" aria-hidden="true"></a>This is *emphasis*.</span>
-<span id="cb417-7"><a href="#cb417-7" aria-hidden="true"></a></span>
-<span id="cb417-8"><a href="#cb417-8" aria-hidden="true"></a>This is **strong emphasis**.</span>
-<span id="cb417-9"><a href="#cb417-9" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb417-10"><a href="#cb417-10" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<div class="sourceCode" id="cb420"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb420-1"><a href="#cb420-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb420-2"><a href="#cb420-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererEmphasis</span>#1{<span class="fu">\emph</span>{#1}}</span>
+<span id="cb420-3"><a href="#cb420-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererStrongEmphasis</span>#1{<span class="fu">\bold</span>{#1}}</span>
+<span id="cb420-4"><a href="#cb420-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb420-5"><a href="#cb420-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb420-6"><a href="#cb420-6" aria-hidden="true"></a>This is *emphasis*.</span>
+<span id="cb420-7"><a href="#cb420-7" aria-hidden="true"></a></span>
+<span id="cb420-8"><a href="#cb420-8" aria-hidden="true"></a>This is **strong emphasis**.</span>
+<span id="cb420-9"><a href="#cb420-9" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb420-10"><a href="#cb420-10" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb418"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb418-1"><a href="#cb418-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb421"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb421-1"><a href="#cb421-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is <em>emphasis</em>.</p>
<p>This is <strong>strong emphasis</strong>.</p>
</blockquote>
<p>The <code>\markdownRendererStrongEmphasis</code> macro represents a strongly emphasized span of text. The macro receives a single argument that corresponds to the emphasized span of text.</p>
-<h4 data-number="2.3.1.15" id="block-quote-renderers"><span class="header-section-number">2.3.1.15</span> Block Quote Renderers</h4>
+<h4 data-number="2.3.1.16" id="block-quote-renderers"><span class="header-section-number">2.3.1.16</span> Block Quote Renderers</h4>
<p>The <code>\markdownRendererBlockQuoteBegin</code> macro represents the beginning of a block quote. The macro receives no arguments.</p>
<p>The <code>\markdownRendererBlockQuoteEnd</code> macro represents the end of a block quote. The macro receives no arguments.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-28">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb419"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb419-1"><a href="#cb419-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb419-2"><a href="#cb419-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteBegin</span>{<span class="co">%</span></span>
-<span id="cb419-3"><a href="#cb419-3" aria-hidden="true"></a> <span class="fu">\begingroup</span></span>
-<span id="cb419-4"><a href="#cb419-4" aria-hidden="true"></a> <span class="fu">\vskip\parindent</span></span>
-<span id="cb419-5"><a href="#cb419-5" aria-hidden="true"></a> <span class="fu">\leftskip</span>=2<span class="fu">\parindent</span></span>
-<span id="cb419-6"><a href="#cb419-6" aria-hidden="true"></a> <span class="fu">\parindent</span>=0pt</span>
-<span id="cb419-7"><a href="#cb419-7" aria-hidden="true"></a>}</span>
-<span id="cb419-8"><a href="#cb419-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteEnd</span>{<span class="co">%</span></span>
-<span id="cb419-9"><a href="#cb419-9" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb419-10"><a href="#cb419-10" aria-hidden="true"></a> <span class="fu">\vskip\parindent</span></span>
-<span id="cb419-11"><a href="#cb419-11" aria-hidden="true"></a> <span class="fu">\endgroup</span></span>
-<span id="cb419-12"><a href="#cb419-12" aria-hidden="true"></a>}</span>
-<span id="cb419-13"><a href="#cb419-13" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb419-14"><a href="#cb419-14" aria-hidden="true"></a>A quote from William Shakespeare&#39;s King Lear:</span>
-<span id="cb419-15"><a href="#cb419-15" aria-hidden="true"></a></span>
-<span id="cb419-16"><a href="#cb419-16" aria-hidden="true"></a>&gt; This is the excellent foppery of the world that when we are</span>
-<span id="cb419-17"><a href="#cb419-17" aria-hidden="true"></a>&gt; sick in fortune---often the surfeit of our own behavior---we</span>
-<span id="cb419-18"><a href="#cb419-18" aria-hidden="true"></a>&gt; make guilty of our disasters the sun, the moon, and the</span>
-<span id="cb419-19"><a href="#cb419-19" aria-hidden="true"></a>&gt; stars [...]</span>
-<span id="cb419-20"><a href="#cb419-20" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb419-21"><a href="#cb419-21" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb420"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb420-1"><a href="#cb420-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb422"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb422-1"><a href="#cb422-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb422-2"><a href="#cb422-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteBegin</span>{<span class="co">%</span></span>
+<span id="cb422-3"><a href="#cb422-3" aria-hidden="true"></a> <span class="fu">\begingroup</span></span>
+<span id="cb422-4"><a href="#cb422-4" aria-hidden="true"></a> <span class="fu">\vskip\parindent</span></span>
+<span id="cb422-5"><a href="#cb422-5" aria-hidden="true"></a> <span class="fu">\leftskip</span>=2<span class="fu">\parindent</span></span>
+<span id="cb422-6"><a href="#cb422-6" aria-hidden="true"></a> <span class="fu">\parindent</span>=0pt</span>
+<span id="cb422-7"><a href="#cb422-7" aria-hidden="true"></a>}</span>
+<span id="cb422-8"><a href="#cb422-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteEnd</span>{<span class="co">%</span></span>
+<span id="cb422-9"><a href="#cb422-9" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb422-10"><a href="#cb422-10" aria-hidden="true"></a> <span class="fu">\vskip\parindent</span></span>
+<span id="cb422-11"><a href="#cb422-11" aria-hidden="true"></a> <span class="fu">\endgroup</span></span>
+<span id="cb422-12"><a href="#cb422-12" aria-hidden="true"></a>}</span>
+<span id="cb422-13"><a href="#cb422-13" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb422-14"><a href="#cb422-14" aria-hidden="true"></a>A quote from William Shakespeare&#39;s King Lear:</span>
+<span id="cb422-15"><a href="#cb422-15" aria-hidden="true"></a></span>
+<span id="cb422-16"><a href="#cb422-16" aria-hidden="true"></a>&gt; This is the excellent foppery of the world that when we are</span>
+<span id="cb422-17"><a href="#cb422-17" aria-hidden="true"></a>&gt; sick in fortune---often the surfeit of our own behavior---we</span>
+<span id="cb422-18"><a href="#cb422-18" aria-hidden="true"></a>&gt; make guilty of our disasters the sun, the moon, and the</span>
+<span id="cb422-19"><a href="#cb422-19" aria-hidden="true"></a>&gt; stars [...]</span>
+<span id="cb422-20"><a href="#cb422-20" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb422-21"><a href="#cb422-21" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb423"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb423-1"><a href="#cb423-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>A quote from William Shakespeare’s King Lear:</p>
@@ -5508,28 +5593,28 @@ Thomas,Edison,1847</code></pre>
<p>This is the excellent foppery of the world that when we are sick in fortune—often the surfeit of our own behavior—we make guilty of our disasters the sun, the moon, and the stars […]</p>
</blockquote>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-49"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-50"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb421"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb421-1"><a href="#cb421-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb421-2"><a href="#cb421-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
-<span id="cb421-3"><a href="#cb421-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb421-4"><a href="#cb421-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb421-5"><a href="#cb421-5" aria-hidden="true"></a> blockQuoteBegin = {<span class="kw">\begin</span>{<span class="ex">quote</span>}},</span>
-<span id="cb421-6"><a href="#cb421-6" aria-hidden="true"></a> blockQuoteEnd = {<span class="kw">\end</span>{<span class="ex">quote</span>}},</span>
-<span id="cb421-7"><a href="#cb421-7" aria-hidden="true"></a> },</span>
-<span id="cb421-8"><a href="#cb421-8" aria-hidden="true"></a>}</span>
-<span id="cb421-9"><a href="#cb421-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb421-10"><a href="#cb421-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb421-11"><a href="#cb421-11" aria-hidden="true"></a>A quote from William Shakespeare&#39;s King Lear:</span>
-<span id="cb421-12"><a href="#cb421-12" aria-hidden="true"></a></span>
-<span id="cb421-13"><a href="#cb421-13" aria-hidden="true"></a>&gt; This is the excellent foppery of the world that when we are</span>
-<span id="cb421-14"><a href="#cb421-14" aria-hidden="true"></a>&gt; sick in fortune---often the surfeit of our own behavior---we</span>
-<span id="cb421-15"><a href="#cb421-15" aria-hidden="true"></a>&gt; make guilty of our disasters the sun, the moon, and the</span>
-<span id="cb421-16"><a href="#cb421-16" aria-hidden="true"></a>&gt; stars [...]</span>
-<span id="cb421-17"><a href="#cb421-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb421-18"><a href="#cb421-18" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb422"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb422-1"><a href="#cb422-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb424"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb424-1"><a href="#cb424-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb424-2"><a href="#cb424-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb424-3"><a href="#cb424-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb424-4"><a href="#cb424-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb424-5"><a href="#cb424-5" aria-hidden="true"></a> blockQuoteBegin = {<span class="kw">\begin</span>{<span class="ex">quote</span>}},</span>
+<span id="cb424-6"><a href="#cb424-6" aria-hidden="true"></a> blockQuoteEnd = {<span class="kw">\end</span>{<span class="ex">quote</span>}},</span>
+<span id="cb424-7"><a href="#cb424-7" aria-hidden="true"></a> },</span>
+<span id="cb424-8"><a href="#cb424-8" aria-hidden="true"></a>}</span>
+<span id="cb424-9"><a href="#cb424-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb424-10"><a href="#cb424-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb424-11"><a href="#cb424-11" aria-hidden="true"></a>A quote from William Shakespeare&#39;s King Lear:</span>
+<span id="cb424-12"><a href="#cb424-12" aria-hidden="true"></a></span>
+<span id="cb424-13"><a href="#cb424-13" aria-hidden="true"></a>&gt; This is the excellent foppery of the world that when we are</span>
+<span id="cb424-14"><a href="#cb424-14" aria-hidden="true"></a>&gt; sick in fortune---often the surfeit of our own behavior---we</span>
+<span id="cb424-15"><a href="#cb424-15" aria-hidden="true"></a>&gt; make guilty of our disasters the sun, the moon, and the</span>
+<span id="cb424-16"><a href="#cb424-16" aria-hidden="true"></a>&gt; stars [...]</span>
+<span id="cb424-17"><a href="#cb424-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb424-18"><a href="#cb424-18" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb425"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb425-1"><a href="#cb425-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>A quote from William Shakespeare’s King Lear:</p>
@@ -5539,21 +5624,21 @@ Thomas,Edison,1847</code></pre>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-40">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb423"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb423-1"><a href="#cb423-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb423-2"><a href="#cb423-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteBegin</span>{<span class="fu">\startquotation</span>}</span>
-<span id="cb423-3"><a href="#cb423-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteEnd</span>{<span class="fu">\stopquotation</span>}</span>
-<span id="cb423-4"><a href="#cb423-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb423-5"><a href="#cb423-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb423-6"><a href="#cb423-6" aria-hidden="true"></a>A quote from William Shakespeare&#39;s King Lear:</span>
-<span id="cb423-7"><a href="#cb423-7" aria-hidden="true"></a></span>
-<span id="cb423-8"><a href="#cb423-8" aria-hidden="true"></a>&gt; This is the excellent foppery of the world that when we are</span>
-<span id="cb423-9"><a href="#cb423-9" aria-hidden="true"></a>&gt; sick in fortune---often the surfeit of our own behavior---we</span>
-<span id="cb423-10"><a href="#cb423-10" aria-hidden="true"></a>&gt; make guilty of our disasters the sun, the moon, and the</span>
-<span id="cb423-11"><a href="#cb423-11" aria-hidden="true"></a>&gt; stars [...]</span>
-<span id="cb423-12"><a href="#cb423-12" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb423-13"><a href="#cb423-13" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<div class="sourceCode" id="cb426"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb426-1"><a href="#cb426-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb426-2"><a href="#cb426-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteBegin</span>{<span class="fu">\startquotation</span>}</span>
+<span id="cb426-3"><a href="#cb426-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteEnd</span>{<span class="fu">\stopquotation</span>}</span>
+<span id="cb426-4"><a href="#cb426-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb426-5"><a href="#cb426-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb426-6"><a href="#cb426-6" aria-hidden="true"></a>A quote from William Shakespeare&#39;s King Lear:</span>
+<span id="cb426-7"><a href="#cb426-7" aria-hidden="true"></a></span>
+<span id="cb426-8"><a href="#cb426-8" aria-hidden="true"></a>&gt; This is the excellent foppery of the world that when we are</span>
+<span id="cb426-9"><a href="#cb426-9" aria-hidden="true"></a>&gt; sick in fortune---often the surfeit of our own behavior---we</span>
+<span id="cb426-10"><a href="#cb426-10" aria-hidden="true"></a>&gt; make guilty of our disasters the sun, the moon, and the</span>
+<span id="cb426-11"><a href="#cb426-11" aria-hidden="true"></a>&gt; stars [...]</span>
+<span id="cb426-12"><a href="#cb426-12" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb426-13"><a href="#cb426-13" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb424"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb424-1"><a href="#cb424-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb427"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb427-1"><a href="#cb427-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>A quote from William Shakespeare’s King Lear:</p>
@@ -5561,78 +5646,78 @@ Thomas,Edison,1847</code></pre>
<p>This is the excellent foppery of the world that when we are sick in fortune—often the surfeit of our own behavior—we make guilty of our disasters the sun, the moon, and the stars […]</p>
</blockquote>
</blockquote>
-<h4 data-number="2.3.1.16" id="code-block-renderers"><span class="header-section-number">2.3.1.16</span> Code Block Renderers</h4>
+<h4 data-number="2.3.1.17" id="code-block-renderers"><span class="header-section-number">2.3.1.17</span> Code Block Renderers</h4>
<p>The <code>\markdownRendererInputVerbatim</code> macro represents a code block. The macro receives a single argument that corresponds to the filename of a file contaning the code block contents.</p>
<p>The <code>\markdownRendererInputFencedCode</code> macro represents a fenced code block. This macro will only be produced, when the <strong><code>fencedCode</code></strong> option is enabled. The macro receives two arguments that correspond to the filename of a file contaning the code block contents and to the code fence infostring.</p>
-<h5 class="unnumbered" data-number="" id="latex-example-50"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-51"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb425"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb425-1"><a href="#cb425-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb425-2"><a href="#cb425-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">verbatim</span>}</span>
-<span id="cb425-3"><a href="#cb425-3" aria-hidden="true"></a><span class="bu">\usepackage</span>[hyphens]{<span class="ex">url</span>}</span>
-<span id="cb425-4"><a href="#cb425-4" aria-hidden="true"></a><span class="bu">\usepackage</span>[fencedCode]{<span class="ex">markdown</span>}</span>
-<span id="cb425-5"><a href="#cb425-5" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb425-6"><a href="#cb425-6" aria-hidden="true"></a> renderers = {</span>
-<span id="cb425-7"><a href="#cb425-7" aria-hidden="true"></a> interblockSeparator = {</span>
-<span id="cb425-8"><a href="#cb425-8" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb425-9"><a href="#cb425-9" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb425-10"><a href="#cb425-10" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb425-11"><a href="#cb425-11" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
-<span id="cb425-12"><a href="#cb425-12" aria-hidden="true"></a> <span class="fu">\par</span></span>
-<span id="cb425-13"><a href="#cb425-13" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb425-14"><a href="#cb425-14" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb425-15"><a href="#cb425-15" aria-hidden="true"></a> }<span class="co">%</span></span>
-<span id="cb425-16"><a href="#cb425-16" aria-hidden="true"></a> },</span>
-<span id="cb425-17"><a href="#cb425-17" aria-hidden="true"></a> inputVerbatim = {</span>
-<span id="cb425-18"><a href="#cb425-18" aria-hidden="true"></a> is contained in file <span class="fu">\url</span>{#1}:<span class="co">%</span></span>
-<span id="cb425-19"><a href="#cb425-19" aria-hidden="true"></a> <span class="fu">\verbatiminput</span>{#1}<span class="co">%</span></span>
-<span id="cb425-20"><a href="#cb425-20" aria-hidden="true"></a> },</span>
-<span id="cb425-21"><a href="#cb425-21" aria-hidden="true"></a> inputFencedCode = {</span>
-<span id="cb425-22"><a href="#cb425-22" aria-hidden="true"></a> in #2 <span class="fu">\markdownRendererInputVerbatim</span>{#1}<span class="co">%</span></span>
-<span id="cb425-23"><a href="#cb425-23" aria-hidden="true"></a> },</span>
-<span id="cb425-24"><a href="#cb425-24" aria-hidden="true"></a> },</span>
-<span id="cb425-25"><a href="#cb425-25" aria-hidden="true"></a>}</span>
-<span id="cb425-26"><a href="#cb425-26" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb425-27"><a href="#cb425-27" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb425-28"><a href="#cb425-28" aria-hidden="true"></a>The following code</span>
-<span id="cb425-29"><a href="#cb425-29" aria-hidden="true"></a></span>
-<span id="cb425-30"><a href="#cb425-30" aria-hidden="true"></a> def foo(bar):</span>
-<span id="cb425-31"><a href="#cb425-31" aria-hidden="true"></a> if len(bar) &lt;= 1:</span>
-<span id="cb425-32"><a href="#cb425-32" aria-hidden="true"></a> return bar[0]</span>
-<span id="cb425-33"><a href="#cb425-33" aria-hidden="true"></a> elif len(bar) == 2:</span>
-<span id="cb425-34"><a href="#cb425-34" aria-hidden="true"></a> return sorted(bar)</span>
-<span id="cb425-35"><a href="#cb425-35" aria-hidden="true"></a> else:</span>
-<span id="cb425-36"><a href="#cb425-36" aria-hidden="true"></a> baz = len(bar) // 2</span>
-<span id="cb425-37"><a href="#cb425-37" aria-hidden="true"></a> return foo(bar[baz:], bar[:baz])</span>
-<span id="cb425-38"><a href="#cb425-38" aria-hidden="true"></a></span>
-<span id="cb425-39"><a href="#cb425-39" aria-hidden="true"></a>The following code</span>
-<span id="cb425-40"><a href="#cb425-40" aria-hidden="true"></a></span>
-<span id="cb425-41"><a href="#cb425-41" aria-hidden="true"></a>~~~ Python</span>
-<span id="cb425-42"><a href="#cb425-42" aria-hidden="true"></a>&gt;&gt;&gt; foo([4, 2, 1, 3])</span>
-<span id="cb425-43"><a href="#cb425-43" aria-hidden="true"></a>[1, 2, 3, 4]</span>
-<span id="cb425-44"><a href="#cb425-44" aria-hidden="true"></a>~~~~~~~~~~</span>
-<span id="cb425-45"><a href="#cb425-45" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb425-46"><a href="#cb425-46" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb426"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb426-1"><a href="#cb426-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb428"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb428-1"><a href="#cb428-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb428-2"><a href="#cb428-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">verbatim</span>}</span>
+<span id="cb428-3"><a href="#cb428-3" aria-hidden="true"></a><span class="bu">\usepackage</span>[hyphens]{<span class="ex">url</span>}</span>
+<span id="cb428-4"><a href="#cb428-4" aria-hidden="true"></a><span class="bu">\usepackage</span>[fencedCode]{<span class="ex">markdown</span>}</span>
+<span id="cb428-5"><a href="#cb428-5" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb428-6"><a href="#cb428-6" aria-hidden="true"></a> renderers = {</span>
+<span id="cb428-7"><a href="#cb428-7" aria-hidden="true"></a> interblockSeparator = {</span>
+<span id="cb428-8"><a href="#cb428-8" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb428-9"><a href="#cb428-9" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb428-10"><a href="#cb428-10" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb428-11"><a href="#cb428-11" aria-hidden="true"></a> <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb428-12"><a href="#cb428-12" aria-hidden="true"></a> <span class="fu">\par</span></span>
+<span id="cb428-13"><a href="#cb428-13" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb428-14"><a href="#cb428-14" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb428-15"><a href="#cb428-15" aria-hidden="true"></a> }<span class="co">%</span></span>
+<span id="cb428-16"><a href="#cb428-16" aria-hidden="true"></a> },</span>
+<span id="cb428-17"><a href="#cb428-17" aria-hidden="true"></a> inputVerbatim = {</span>
+<span id="cb428-18"><a href="#cb428-18" aria-hidden="true"></a> is contained in file <span class="fu">\url</span>{#1}:<span class="co">%</span></span>
+<span id="cb428-19"><a href="#cb428-19" aria-hidden="true"></a> <span class="fu">\verbatiminput</span>{#1}<span class="co">%</span></span>
+<span id="cb428-20"><a href="#cb428-20" aria-hidden="true"></a> },</span>
+<span id="cb428-21"><a href="#cb428-21" aria-hidden="true"></a> inputFencedCode = {</span>
+<span id="cb428-22"><a href="#cb428-22" aria-hidden="true"></a> in #2 <span class="fu">\markdownRendererInputVerbatim</span>{#1}<span class="co">%</span></span>
+<span id="cb428-23"><a href="#cb428-23" aria-hidden="true"></a> },</span>
+<span id="cb428-24"><a href="#cb428-24" aria-hidden="true"></a> },</span>
+<span id="cb428-25"><a href="#cb428-25" aria-hidden="true"></a>}</span>
+<span id="cb428-26"><a href="#cb428-26" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb428-27"><a href="#cb428-27" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb428-28"><a href="#cb428-28" aria-hidden="true"></a>The following code</span>
+<span id="cb428-29"><a href="#cb428-29" aria-hidden="true"></a></span>
+<span id="cb428-30"><a href="#cb428-30" aria-hidden="true"></a> def foo(bar):</span>
+<span id="cb428-31"><a href="#cb428-31" aria-hidden="true"></a> if len(bar) &lt;= 1:</span>
+<span id="cb428-32"><a href="#cb428-32" aria-hidden="true"></a> return bar[0]</span>
+<span id="cb428-33"><a href="#cb428-33" aria-hidden="true"></a> elif len(bar) == 2:</span>
+<span id="cb428-34"><a href="#cb428-34" aria-hidden="true"></a> return sorted(bar)</span>
+<span id="cb428-35"><a href="#cb428-35" aria-hidden="true"></a> else:</span>
+<span id="cb428-36"><a href="#cb428-36" aria-hidden="true"></a> baz = len(bar) // 2</span>
+<span id="cb428-37"><a href="#cb428-37" aria-hidden="true"></a> return foo(bar[baz:], bar[:baz])</span>
+<span id="cb428-38"><a href="#cb428-38" aria-hidden="true"></a></span>
+<span id="cb428-39"><a href="#cb428-39" aria-hidden="true"></a>The following code</span>
+<span id="cb428-40"><a href="#cb428-40" aria-hidden="true"></a></span>
+<span id="cb428-41"><a href="#cb428-41" aria-hidden="true"></a>~~~ Python</span>
+<span id="cb428-42"><a href="#cb428-42" aria-hidden="true"></a>&gt;&gt;&gt; foo([4, 2, 1, 3])</span>
+<span id="cb428-43"><a href="#cb428-43" aria-hidden="true"></a>[1, 2, 3, 4]</span>
+<span id="cb428-44"><a href="#cb428-44" aria-hidden="true"></a>~~~~~~~~~~</span>
+<span id="cb428-45"><a href="#cb428-45" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb428-46"><a href="#cb428-46" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb429"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb429-1"><a href="#cb429-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text except for the filename, which may differ:</p>
<blockquote>
<p>The following code is contained in file <code>./_markdown_document/882453149edcf288976647f6fe147ada.verbatim</code>:</p>
-<div class="sourceCode" id="cb427"><pre class="sourceCode py"><code class="sourceCode python"><span id="cb427-1"><a href="#cb427-1" aria-hidden="true"></a><span class="kw">def</span> foo(bar):</span>
-<span id="cb427-2"><a href="#cb427-2" aria-hidden="true"></a> <span class="cf">if</span> <span class="bu">len</span>(bar) <span class="op">&lt;=</span> <span class="dv">1</span>:</span>
-<span id="cb427-3"><a href="#cb427-3" aria-hidden="true"></a> <span class="cf">return</span> bar[:<span class="dv">1</span>]</span>
-<span id="cb427-4"><a href="#cb427-4" aria-hidden="true"></a> <span class="cf">elif</span> <span class="bu">len</span>(bar) <span class="op">==</span> <span class="dv">2</span>:</span>
-<span id="cb427-5"><a href="#cb427-5" aria-hidden="true"></a> <span class="cf">return</span> <span class="bu">sorted</span>(bar)</span>
-<span id="cb427-6"><a href="#cb427-6" aria-hidden="true"></a> <span class="cf">else</span>:</span>
-<span id="cb427-7"><a href="#cb427-7" aria-hidden="true"></a> baz <span class="op">=</span> bar[<span class="bu">len</span>(bar) <span class="op">//</span> <span class="dv">2</span>]</span>
-<span id="cb427-8"><a href="#cb427-8" aria-hidden="true"></a> <span class="cf">return</span> (</span>
-<span id="cb427-9"><a href="#cb427-9" aria-hidden="true"></a> foo([qux <span class="cf">for</span> qux <span class="kw">in</span> bar <span class="cf">if</span> qux <span class="op">&lt;</span> baz]) <span class="op">+</span> [baz] <span class="op">+</span></span>
-<span id="cb427-10"><a href="#cb427-10" aria-hidden="true"></a> foo([qux <span class="cf">for</span> qux <span class="kw">in</span> bar <span class="cf">if</span> qux <span class="op">&gt;</span> baz])</span>
-<span id="cb427-11"><a href="#cb427-11" aria-hidden="true"></a> )</span></code></pre></div>
+<div class="sourceCode" id="cb430"><pre class="sourceCode py"><code class="sourceCode python"><span id="cb430-1"><a href="#cb430-1" aria-hidden="true"></a><span class="kw">def</span> foo(bar):</span>
+<span id="cb430-2"><a href="#cb430-2" aria-hidden="true"></a> <span class="cf">if</span> <span class="bu">len</span>(bar) <span class="op">&lt;=</span> <span class="dv">1</span>:</span>
+<span id="cb430-3"><a href="#cb430-3" aria-hidden="true"></a> <span class="cf">return</span> bar[:<span class="dv">1</span>]</span>
+<span id="cb430-4"><a href="#cb430-4" aria-hidden="true"></a> <span class="cf">elif</span> <span class="bu">len</span>(bar) <span class="op">==</span> <span class="dv">2</span>:</span>
+<span id="cb430-5"><a href="#cb430-5" aria-hidden="true"></a> <span class="cf">return</span> <span class="bu">sorted</span>(bar)</span>
+<span id="cb430-6"><a href="#cb430-6" aria-hidden="true"></a> <span class="cf">else</span>:</span>
+<span id="cb430-7"><a href="#cb430-7" aria-hidden="true"></a> baz <span class="op">=</span> bar[<span class="bu">len</span>(bar) <span class="op">//</span> <span class="dv">2</span>]</span>
+<span id="cb430-8"><a href="#cb430-8" aria-hidden="true"></a> <span class="cf">return</span> (</span>
+<span id="cb430-9"><a href="#cb430-9" aria-hidden="true"></a> foo([qux <span class="cf">for</span> qux <span class="kw">in</span> bar <span class="cf">if</span> qux <span class="op">&lt;</span> baz]) <span class="op">+</span> [baz] <span class="op">+</span></span>
+<span id="cb430-10"><a href="#cb430-10" aria-hidden="true"></a> foo([qux <span class="cf">for</span> qux <span class="kw">in</span> bar <span class="cf">if</span> qux <span class="op">&gt;</span> baz])</span>
+<span id="cb430-11"><a href="#cb430-11" aria-hidden="true"></a> )</span></code></pre></div>
<p>The following code in Python contained in file <code>./_markdown_document/cf2a96e2120cef5b1fae5fea36fcc27b.verbatim</code>:</p>
-<div class="sourceCode" id="cb428"><pre class="sourceCode py"><code class="sourceCode python"><span id="cb428-1"><a href="#cb428-1" aria-hidden="true"></a><span class="op">&gt;&gt;&gt;</span> foo([<span class="dv">4</span>, <span class="dv">2</span>, <span class="dv">1</span>, <span class="dv">3</span>])</span>
-<span id="cb428-2"><a href="#cb428-2" aria-hidden="true"></a>[<span class="dv">1</span>, <span class="dv">2</span>, <span class="dv">3</span>, <span class="dv">4</span>]</span></code></pre></div>
+<div class="sourceCode" id="cb431"><pre class="sourceCode py"><code class="sourceCode python"><span id="cb431-1"><a href="#cb431-1" aria-hidden="true"></a><span class="op">&gt;&gt;&gt;</span> foo([<span class="dv">4</span>, <span class="dv">2</span>, <span class="dv">1</span>, <span class="dv">3</span>])</span>
+<span id="cb431-2"><a href="#cb431-2" aria-hidden="true"></a>[<span class="dv">1</span>, <span class="dv">2</span>, <span class="dv">3</span>, <span class="dv">4</span>]</span></code></pre></div>
</blockquote>
-<h4 data-number="2.3.1.17" id="yaml-metadata-renderers"><span class="header-section-number">2.3.1.17</span> YAML Metadata Renderers</h4>
+<h4 data-number="2.3.1.18" id="yaml-metadata-renderers"><span class="header-section-number">2.3.1.18</span> YAML Metadata Renderers</h4>
<p>The <code>\markdownRendererJekyllDataBegin</code> macro represents the beginning of a <abbr>yaml</abbr> document. This macro will only be produced when the <strong><code>jekyllData</code></strong> option is enabled. The macro receives no arguments.</p>
<p>The <code>\markdownRendererJekyllDataEnd</code> macro represents the end of a <abbr>yaml</abbr> document. This macro will only be produced when the <strong><code>jekyllData</code></strong> option is enabled. The macro receives no arguments.</p>
<p>The <code>\markdownRendererJekyllDataMappingBegin</code> macro represents the beginning of a mapping in a <abbr>yaml</abbr> document. This macro will only be produced when the <strong><code>jekyllData</code></strong> option is enabled. The macro receives two arguments: the scalar key in the parent structure, cast to a string following <abbr>yaml</abbr> serialization rules, and the number of items in the mapping.</p>
@@ -5645,77 +5730,77 @@ Thomas,Edison,1847</code></pre>
<p>The <code>\markdownRendererJekyllDataEmpty</code> macro represents an empty scalar value in a <abbr>yaml</abbr> document. This macro will only be produced when the <strong><code>jekyllData</code></strong> option is enabled. The macro receives one argument: the scalar key in the parent structure, cast to a string following <abbr>yaml</abbr> serialization rules.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-29">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb429"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb429-1"><a href="#cb429-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb429-2"><a href="#cb429-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionJekyllData</span>{true}</span>
-<span id="cb429-3"><a href="#cb429-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataString</span>#1#2{<span class="fu">\gdef\name</span>{#2}}</span>
-<span id="cb429-4"><a href="#cb429-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataNumber</span>#1#2{<span class="fu">\gdef\age</span>{#2}}</span>
-<span id="cb429-5"><a href="#cb429-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataEnd</span>{<span class="co">%</span></span>
-<span id="cb429-6"><a href="#cb429-6" aria-hidden="true"></a> <span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.}</span>
-<span id="cb429-7"><a href="#cb429-7" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb429-8"><a href="#cb429-8" aria-hidden="true"></a>---</span>
-<span id="cb429-9"><a href="#cb429-9" aria-hidden="true"></a>name: Jane Doe</span>
-<span id="cb429-10"><a href="#cb429-10" aria-hidden="true"></a>age: 99</span>
-<span id="cb429-11"><a href="#cb429-11" aria-hidden="true"></a>---</span>
-<span id="cb429-12"><a href="#cb429-12" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb429-13"><a href="#cb429-13" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<div class="sourceCode" id="cb432"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb432-1"><a href="#cb432-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb432-2"><a href="#cb432-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionJekyllData</span>{true}</span>
+<span id="cb432-3"><a href="#cb432-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataString</span>#1#2{<span class="fu">\gdef\name</span>{#2}}</span>
+<span id="cb432-4"><a href="#cb432-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataNumber</span>#1#2{<span class="fu">\gdef\age</span>{#2}}</span>
+<span id="cb432-5"><a href="#cb432-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataEnd</span>{<span class="co">%</span></span>
+<span id="cb432-6"><a href="#cb432-6" aria-hidden="true"></a> <span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.}</span>
+<span id="cb432-7"><a href="#cb432-7" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb432-8"><a href="#cb432-8" aria-hidden="true"></a>---</span>
+<span id="cb432-9"><a href="#cb432-9" aria-hidden="true"></a>name: Jane Doe</span>
+<span id="cb432-10"><a href="#cb432-10" aria-hidden="true"></a>age: 99</span>
+<span id="cb432-11"><a href="#cb432-11" aria-hidden="true"></a>---</span>
+<span id="cb432-12"><a href="#cb432-12" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb432-13"><a href="#cb432-13" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb430"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb430-1"><a href="#cb430-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb433"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb433-1"><a href="#cb433-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Jane Doe is 99 years old.</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-51"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-52"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb431"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb431-1"><a href="#cb431-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb431-2"><a href="#cb431-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[jekyllData]{<span class="ex">markdown</span>}</span>
-<span id="cb431-3"><a href="#cb431-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb431-4"><a href="#cb431-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb431-5"><a href="#cb431-5" aria-hidden="true"></a> jekyllDataString = {<span class="fu">\gdef\name</span>{#2}},</span>
-<span id="cb431-6"><a href="#cb431-6" aria-hidden="true"></a> jekyllDataNumber = {<span class="fu">\gdef\age</span>{#2}},</span>
-<span id="cb431-7"><a href="#cb431-7" aria-hidden="true"></a> jekyllDataEnd = {<span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.},</span>
-<span id="cb431-8"><a href="#cb431-8" aria-hidden="true"></a> }</span>
-<span id="cb431-9"><a href="#cb431-9" aria-hidden="true"></a>}</span>
-<span id="cb431-10"><a href="#cb431-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb431-11"><a href="#cb431-11" aria-hidden="true"></a></span>
-<span id="cb431-12"><a href="#cb431-12" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb431-13"><a href="#cb431-13" aria-hidden="true"></a>---</span>
-<span id="cb431-14"><a href="#cb431-14" aria-hidden="true"></a>name: Jane Doe</span>
-<span id="cb431-15"><a href="#cb431-15" aria-hidden="true"></a>age: 99</span>
-<span id="cb431-16"><a href="#cb431-16" aria-hidden="true"></a>---</span>
-<span id="cb431-17"><a href="#cb431-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb431-18"><a href="#cb431-18" aria-hidden="true"></a></span>
-<span id="cb431-19"><a href="#cb431-19" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb432"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb432-1"><a href="#cb432-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb434"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb434-1"><a href="#cb434-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb434-2"><a href="#cb434-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[jekyllData]{<span class="ex">markdown</span>}</span>
+<span id="cb434-3"><a href="#cb434-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb434-4"><a href="#cb434-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb434-5"><a href="#cb434-5" aria-hidden="true"></a> jekyllDataString = {<span class="fu">\gdef\name</span>{#2}},</span>
+<span id="cb434-6"><a href="#cb434-6" aria-hidden="true"></a> jekyllDataNumber = {<span class="fu">\gdef\age</span>{#2}},</span>
+<span id="cb434-7"><a href="#cb434-7" aria-hidden="true"></a> jekyllDataEnd = {<span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.},</span>
+<span id="cb434-8"><a href="#cb434-8" aria-hidden="true"></a> }</span>
+<span id="cb434-9"><a href="#cb434-9" aria-hidden="true"></a>}</span>
+<span id="cb434-10"><a href="#cb434-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb434-11"><a href="#cb434-11" aria-hidden="true"></a></span>
+<span id="cb434-12"><a href="#cb434-12" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb434-13"><a href="#cb434-13" aria-hidden="true"></a>---</span>
+<span id="cb434-14"><a href="#cb434-14" aria-hidden="true"></a>name: Jane Doe</span>
+<span id="cb434-15"><a href="#cb434-15" aria-hidden="true"></a>age: 99</span>
+<span id="cb434-16"><a href="#cb434-16" aria-hidden="true"></a>---</span>
+<span id="cb434-17"><a href="#cb434-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb434-18"><a href="#cb434-18" aria-hidden="true"></a></span>
+<span id="cb434-19"><a href="#cb434-19" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb435"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb435-1"><a href="#cb435-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Jane Doe is 99 years old.</p>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-41">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb433"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb433-1"><a href="#cb433-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb433-2"><a href="#cb433-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionJekyllData</span>{true}</span>
-<span id="cb433-3"><a href="#cb433-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataString</span>#1#2{<span class="fu">\gdef\name</span>{#2}}</span>
-<span id="cb433-4"><a href="#cb433-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataNumber</span>#1#2{<span class="fu">\gdef\age</span>{#2}}</span>
-<span id="cb433-5"><a href="#cb433-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataEnd</span>{<span class="co">%</span></span>
-<span id="cb433-6"><a href="#cb433-6" aria-hidden="true"></a> <span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.}</span>
-<span id="cb433-7"><a href="#cb433-7" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb433-8"><a href="#cb433-8" aria-hidden="true"></a></span>
-<span id="cb433-9"><a href="#cb433-9" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb433-10"><a href="#cb433-10" aria-hidden="true"></a>---</span>
-<span id="cb433-11"><a href="#cb433-11" aria-hidden="true"></a>name: Jane Doe</span>
-<span id="cb433-12"><a href="#cb433-12" aria-hidden="true"></a>age: 99</span>
-<span id="cb433-13"><a href="#cb433-13" aria-hidden="true"></a>---</span>
-<span id="cb433-14"><a href="#cb433-14" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb433-15"><a href="#cb433-15" aria-hidden="true"></a></span>
-<span id="cb433-16"><a href="#cb433-16" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb434"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb434-1"><a href="#cb434-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb436"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb436-1"><a href="#cb436-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb436-2"><a href="#cb436-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionJekyllData</span>{true}</span>
+<span id="cb436-3"><a href="#cb436-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataString</span>#1#2{<span class="fu">\gdef\name</span>{#2}}</span>
+<span id="cb436-4"><a href="#cb436-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataNumber</span>#1#2{<span class="fu">\gdef\age</span>{#2}}</span>
+<span id="cb436-5"><a href="#cb436-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataEnd</span>{<span class="co">%</span></span>
+<span id="cb436-6"><a href="#cb436-6" aria-hidden="true"></a> <span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.}</span>
+<span id="cb436-7"><a href="#cb436-7" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb436-8"><a href="#cb436-8" aria-hidden="true"></a></span>
+<span id="cb436-9"><a href="#cb436-9" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb436-10"><a href="#cb436-10" aria-hidden="true"></a>---</span>
+<span id="cb436-11"><a href="#cb436-11" aria-hidden="true"></a>name: Jane Doe</span>
+<span id="cb436-12"><a href="#cb436-12" aria-hidden="true"></a>age: 99</span>
+<span id="cb436-13"><a href="#cb436-13" aria-hidden="true"></a>---</span>
+<span id="cb436-14"><a href="#cb436-14" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb436-15"><a href="#cb436-15" aria-hidden="true"></a></span>
+<span id="cb436-16"><a href="#cb436-16" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb437"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb437-1"><a href="#cb437-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Jane Doe is 99 years old.</p>
</blockquote>
-<h4 data-number="2.3.1.18" id="heading-renderers"><span class="header-section-number">2.3.1.18</span> Heading Renderers</h4>
+<h4 data-number="2.3.1.19" id="heading-renderers"><span class="header-section-number">2.3.1.19</span> Heading Renderers</h4>
<p>The <code>\markdownRendererHeadingOne</code> macro represents a first level heading. The macro receives a single argument that corresponds to the heading text.</p>
<p>The <code>\markdownRendererHeadingTwo</code> macro represents a second level heading. The macro receives a single argument that corresponds to the heading text.</p>
<p>The <code>\markdownRendererHeadingThree</code> macro represents a third level heading. The macro receives a single argument that corresponds to the heading text.</p>
@@ -5724,125 +5809,125 @@ Thomas,Edison,1847</code></pre>
<p>The <code>\markdownRendererHeadingSix</code> macro represents a sixth level heading. The macro receives a single argument that corresponds to the heading text.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-30">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb435"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb435-1"><a href="#cb435-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb435-2"><a href="#cb435-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
-<span id="cb435-3"><a href="#cb435-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingOne</span>{1}</span>
-<span id="cb435-4"><a href="#cb435-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingTwo</span>{2}</span>
-<span id="cb435-5"><a href="#cb435-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingThree</span>{3}</span>
-<span id="cb435-6"><a href="#cb435-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFour</span>{4}</span>
-<span id="cb435-7"><a href="#cb435-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFive</span>{5}</span>
-<span id="cb435-8"><a href="#cb435-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingSix</span>{6}</span>
-<span id="cb435-9"><a href="#cb435-9" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb435-10"><a href="#cb435-10" aria-hidden="true"></a>######</span>
-<span id="cb435-11"><a href="#cb435-11" aria-hidden="true"></a>#####</span>
-<span id="cb435-12"><a href="#cb435-12" aria-hidden="true"></a>#####</span>
-<span id="cb435-13"><a href="#cb435-13" aria-hidden="true"></a>###</span>
-<span id="cb435-14"><a href="#cb435-14" aria-hidden="true"></a>######</span>
-<span id="cb435-15"><a href="#cb435-15" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb435-16"><a href="#cb435-16" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb436"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb436-1"><a href="#cb436-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb438"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb438-1"><a href="#cb438-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb438-2"><a href="#cb438-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb438-3"><a href="#cb438-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingOne</span>{1}</span>
+<span id="cb438-4"><a href="#cb438-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingTwo</span>{2}</span>
+<span id="cb438-5"><a href="#cb438-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingThree</span>{3}</span>
+<span id="cb438-6"><a href="#cb438-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFour</span>{4}</span>
+<span id="cb438-7"><a href="#cb438-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFive</span>{5}</span>
+<span id="cb438-8"><a href="#cb438-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingSix</span>{6}</span>
+<span id="cb438-9"><a href="#cb438-9" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb438-10"><a href="#cb438-10" aria-hidden="true"></a>######</span>
+<span id="cb438-11"><a href="#cb438-11" aria-hidden="true"></a>#####</span>
+<span id="cb438-12"><a href="#cb438-12" aria-hidden="true"></a>#####</span>
+<span id="cb438-13"><a href="#cb438-13" aria-hidden="true"></a>###</span>
+<span id="cb438-14"><a href="#cb438-14" aria-hidden="true"></a>######</span>
+<span id="cb438-15"><a href="#cb438-15" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb438-16"><a href="#cb438-16" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb439"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb439-1"><a href="#cb439-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>65536</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-52"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-53"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb437"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb437-1"><a href="#cb437-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb437-2"><a href="#cb437-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
-<span id="cb437-3"><a href="#cb437-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb437-4"><a href="#cb437-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb437-5"><a href="#cb437-5" aria-hidden="true"></a> interblockSeparator = {},</span>
-<span id="cb437-6"><a href="#cb437-6" aria-hidden="true"></a> headingOne = 1,</span>
-<span id="cb437-7"><a href="#cb437-7" aria-hidden="true"></a> headingTwo = 2,</span>
-<span id="cb437-8"><a href="#cb437-8" aria-hidden="true"></a> headingThree = 3,</span>
-<span id="cb437-9"><a href="#cb437-9" aria-hidden="true"></a> headingFour = 4,</span>
-<span id="cb437-10"><a href="#cb437-10" aria-hidden="true"></a> headingFive = 5,</span>
-<span id="cb437-11"><a href="#cb437-11" aria-hidden="true"></a> headingSix = 6,</span>
-<span id="cb437-12"><a href="#cb437-12" aria-hidden="true"></a> },</span>
-<span id="cb437-13"><a href="#cb437-13" aria-hidden="true"></a>}</span>
-<span id="cb437-14"><a href="#cb437-14" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb437-15"><a href="#cb437-15" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb437-16"><a href="#cb437-16" aria-hidden="true"></a>######</span>
-<span id="cb437-17"><a href="#cb437-17" aria-hidden="true"></a>#####</span>
-<span id="cb437-18"><a href="#cb437-18" aria-hidden="true"></a>#####</span>
-<span id="cb437-19"><a href="#cb437-19" aria-hidden="true"></a>###</span>
-<span id="cb437-20"><a href="#cb437-20" aria-hidden="true"></a>######</span>
-<span id="cb437-21"><a href="#cb437-21" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb437-22"><a href="#cb437-22" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb438"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb438-1"><a href="#cb438-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb440"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb440-1"><a href="#cb440-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb440-2"><a href="#cb440-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb440-3"><a href="#cb440-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb440-4"><a href="#cb440-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb440-5"><a href="#cb440-5" aria-hidden="true"></a> interblockSeparator = {},</span>
+<span id="cb440-6"><a href="#cb440-6" aria-hidden="true"></a> headingOne = 1,</span>
+<span id="cb440-7"><a href="#cb440-7" aria-hidden="true"></a> headingTwo = 2,</span>
+<span id="cb440-8"><a href="#cb440-8" aria-hidden="true"></a> headingThree = 3,</span>
+<span id="cb440-9"><a href="#cb440-9" aria-hidden="true"></a> headingFour = 4,</span>
+<span id="cb440-10"><a href="#cb440-10" aria-hidden="true"></a> headingFive = 5,</span>
+<span id="cb440-11"><a href="#cb440-11" aria-hidden="true"></a> headingSix = 6,</span>
+<span id="cb440-12"><a href="#cb440-12" aria-hidden="true"></a> },</span>
+<span id="cb440-13"><a href="#cb440-13" aria-hidden="true"></a>}</span>
+<span id="cb440-14"><a href="#cb440-14" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb440-15"><a href="#cb440-15" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb440-16"><a href="#cb440-16" aria-hidden="true"></a>######</span>
+<span id="cb440-17"><a href="#cb440-17" aria-hidden="true"></a>#####</span>
+<span id="cb440-18"><a href="#cb440-18" aria-hidden="true"></a>#####</span>
+<span id="cb440-19"><a href="#cb440-19" aria-hidden="true"></a>###</span>
+<span id="cb440-20"><a href="#cb440-20" aria-hidden="true"></a>######</span>
+<span id="cb440-21"><a href="#cb440-21" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb440-22"><a href="#cb440-22" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb441"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb441-1"><a href="#cb441-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>65536</p>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-42">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb439"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb439-1"><a href="#cb439-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb439-2"><a href="#cb439-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
-<span id="cb439-3"><a href="#cb439-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingOne</span>{1}</span>
-<span id="cb439-4"><a href="#cb439-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingTwo</span>{2}</span>
-<span id="cb439-5"><a href="#cb439-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingThree</span>{3}</span>
-<span id="cb439-6"><a href="#cb439-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFour</span>{4}</span>
-<span id="cb439-7"><a href="#cb439-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFive</span>{5}</span>
-<span id="cb439-8"><a href="#cb439-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingSix</span>{6}</span>
-<span id="cb439-9"><a href="#cb439-9" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb439-10"><a href="#cb439-10" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb439-11"><a href="#cb439-11" aria-hidden="true"></a>######</span>
-<span id="cb439-12"><a href="#cb439-12" aria-hidden="true"></a>#####</span>
-<span id="cb439-13"><a href="#cb439-13" aria-hidden="true"></a>#####</span>
-<span id="cb439-14"><a href="#cb439-14" aria-hidden="true"></a>###</span>
-<span id="cb439-15"><a href="#cb439-15" aria-hidden="true"></a>######</span>
-<span id="cb439-16"><a href="#cb439-16" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb439-17"><a href="#cb439-17" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb440"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb440-1"><a href="#cb440-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb442"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb442-1"><a href="#cb442-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb442-2"><a href="#cb442-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb442-3"><a href="#cb442-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingOne</span>{1}</span>
+<span id="cb442-4"><a href="#cb442-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingTwo</span>{2}</span>
+<span id="cb442-5"><a href="#cb442-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingThree</span>{3}</span>
+<span id="cb442-6"><a href="#cb442-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFour</span>{4}</span>
+<span id="cb442-7"><a href="#cb442-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFive</span>{5}</span>
+<span id="cb442-8"><a href="#cb442-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingSix</span>{6}</span>
+<span id="cb442-9"><a href="#cb442-9" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb442-10"><a href="#cb442-10" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb442-11"><a href="#cb442-11" aria-hidden="true"></a>######</span>
+<span id="cb442-12"><a href="#cb442-12" aria-hidden="true"></a>#####</span>
+<span id="cb442-13"><a href="#cb442-13" aria-hidden="true"></a>#####</span>
+<span id="cb442-14"><a href="#cb442-14" aria-hidden="true"></a>###</span>
+<span id="cb442-15"><a href="#cb442-15" aria-hidden="true"></a>######</span>
+<span id="cb442-16"><a href="#cb442-16" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb442-17"><a href="#cb442-17" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb443"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb443-1"><a href="#cb443-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>65536</p>
</blockquote>
-<h4 data-number="2.3.1.19" id="horizontal-rule-renderer"><span class="header-section-number">2.3.1.19</span> Horizontal Rule Renderer</h4>
+<h4 data-number="2.3.1.20" id="horizontal-rule-renderer"><span class="header-section-number">2.3.1.20</span> Horizontal Rule Renderer</h4>
<p>The <code>\markdownRendererHorizontalRule</code> macro represents a horizontal rule. The macro receives no arguments.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-31">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb441"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb441-1"><a href="#cb441-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb441-2"><a href="#cb441-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererHorizontalRule</span>{<span class="fu">\vfil\break</span>}</span>
-<span id="cb441-3"><a href="#cb441-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb441-4"><a href="#cb441-4" aria-hidden="true"></a>This is the first page.</span>
-<span id="cb441-5"><a href="#cb441-5" aria-hidden="true"></a></span>
-<span id="cb441-6"><a href="#cb441-6" aria-hidden="true"></a>***</span>
-<span id="cb441-7"><a href="#cb441-7" aria-hidden="true"></a></span>
-<span id="cb441-8"><a href="#cb441-8" aria-hidden="true"></a>This is the second page.</span>
-<span id="cb441-9"><a href="#cb441-9" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb441-10"><a href="#cb441-10" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<div class="sourceCode" id="cb444"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb444-1"><a href="#cb444-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb444-2"><a href="#cb444-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererHorizontalRule</span>{<span class="fu">\vfil\break</span>}</span>
+<span id="cb444-3"><a href="#cb444-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb444-4"><a href="#cb444-4" aria-hidden="true"></a>This is the first page.</span>
+<span id="cb444-5"><a href="#cb444-5" aria-hidden="true"></a></span>
+<span id="cb444-6"><a href="#cb444-6" aria-hidden="true"></a>***</span>
+<span id="cb444-7"><a href="#cb444-7" aria-hidden="true"></a></span>
+<span id="cb444-8"><a href="#cb444-8" aria-hidden="true"></a>This is the second page.</span>
+<span id="cb444-9"><a href="#cb444-9" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb444-10"><a href="#cb444-10" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb442"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb442-1"><a href="#cb442-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb445"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb445-1"><a href="#cb445-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is the first page.</p>
<hr />
<p>This is the second page.</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-53"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-54"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb443"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb443-1"><a href="#cb443-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb443-2"><a href="#cb443-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
-<span id="cb443-3"><a href="#cb443-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb443-4"><a href="#cb443-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb443-5"><a href="#cb443-5" aria-hidden="true"></a> horizontalRule = <span class="fu">\newpage</span>,</span>
-<span id="cb443-6"><a href="#cb443-6" aria-hidden="true"></a> },</span>
-<span id="cb443-7"><a href="#cb443-7" aria-hidden="true"></a>}</span>
-<span id="cb443-8"><a href="#cb443-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb443-9"><a href="#cb443-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb443-10"><a href="#cb443-10" aria-hidden="true"></a>This is the first page.</span>
-<span id="cb443-11"><a href="#cb443-11" aria-hidden="true"></a></span>
-<span id="cb443-12"><a href="#cb443-12" aria-hidden="true"></a>***</span>
-<span id="cb443-13"><a href="#cb443-13" aria-hidden="true"></a></span>
-<span id="cb443-14"><a href="#cb443-14" aria-hidden="true"></a>This is the second page.</span>
-<span id="cb443-15"><a href="#cb443-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb443-16"><a href="#cb443-16" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb444"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb444-1"><a href="#cb444-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb446"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb446-1"><a href="#cb446-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb446-2"><a href="#cb446-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb446-3"><a href="#cb446-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb446-4"><a href="#cb446-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb446-5"><a href="#cb446-5" aria-hidden="true"></a> horizontalRule = <span class="fu">\newpage</span>,</span>
+<span id="cb446-6"><a href="#cb446-6" aria-hidden="true"></a> },</span>
+<span id="cb446-7"><a href="#cb446-7" aria-hidden="true"></a>}</span>
+<span id="cb446-8"><a href="#cb446-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb446-9"><a href="#cb446-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb446-10"><a href="#cb446-10" aria-hidden="true"></a>This is the first page.</span>
+<span id="cb446-11"><a href="#cb446-11" aria-hidden="true"></a></span>
+<span id="cb446-12"><a href="#cb446-12" aria-hidden="true"></a>***</span>
+<span id="cb446-13"><a href="#cb446-13" aria-hidden="true"></a></span>
+<span id="cb446-14"><a href="#cb446-14" aria-hidden="true"></a>This is the second page.</span>
+<span id="cb446-15"><a href="#cb446-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb446-16"><a href="#cb446-16" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb447"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb447-1"><a href="#cb447-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is the first page.</p>
@@ -5851,191 +5936,191 @@ Thomas,Edison,1847</code></pre>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-43">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb445"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb445-1"><a href="#cb445-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb445-2"><a href="#cb445-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererHorizontalRule</span>{<span class="fu">\page</span>[yes]}</span>
-<span id="cb445-3"><a href="#cb445-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb445-4"><a href="#cb445-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb445-5"><a href="#cb445-5" aria-hidden="true"></a>This is the first page.</span>
-<span id="cb445-6"><a href="#cb445-6" aria-hidden="true"></a></span>
-<span id="cb445-7"><a href="#cb445-7" aria-hidden="true"></a>***</span>
-<span id="cb445-8"><a href="#cb445-8" aria-hidden="true"></a></span>
-<span id="cb445-9"><a href="#cb445-9" aria-hidden="true"></a>This is the second page.</span>
-<span id="cb445-10"><a href="#cb445-10" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb445-11"><a href="#cb445-11" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<div class="sourceCode" id="cb448"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb448-1"><a href="#cb448-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb448-2"><a href="#cb448-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererHorizontalRule</span>{<span class="fu">\page</span>[yes]}</span>
+<span id="cb448-3"><a href="#cb448-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb448-4"><a href="#cb448-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb448-5"><a href="#cb448-5" aria-hidden="true"></a>This is the first page.</span>
+<span id="cb448-6"><a href="#cb448-6" aria-hidden="true"></a></span>
+<span id="cb448-7"><a href="#cb448-7" aria-hidden="true"></a>***</span>
+<span id="cb448-8"><a href="#cb448-8" aria-hidden="true"></a></span>
+<span id="cb448-9"><a href="#cb448-9" aria-hidden="true"></a>This is the second page.</span>
+<span id="cb448-10"><a href="#cb448-10" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb448-11"><a href="#cb448-11" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb446"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb446-1"><a href="#cb446-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb449"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb449-1"><a href="#cb449-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is the first page.</p>
<hr />
<p>This is the second page.</p>
</blockquote>
-<h4 data-number="2.3.1.20" id="footnote-renderer"><span class="header-section-number">2.3.1.20</span> Footnote Renderer</h4>
+<h4 data-number="2.3.1.21" id="footnote-renderer"><span class="header-section-number">2.3.1.21</span> Footnote Renderer</h4>
<p>The <code>\markdownRendererFootnote</code> macro represents a footnote. This macro will only be produced, when the <strong><code>footnotes</code></strong> option is enabled. The macro receives a single argument that corresponds to the footnote text.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-32">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb447"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb447-1"><a href="#cb447-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb447-2"><a href="#cb447-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFootnotes</span>{true}</span>
-<span id="cb447-3"><a href="#cb447-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererFootnote</span>#1{ (and <span class="fu">\lowercase</span>{#1})}</span>
-<span id="cb447-4"><a href="#cb447-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb447-5"><a href="#cb447-5" aria-hidden="true"></a>This is some text[^1] and this is some other text[^2].</span>
-<span id="cb447-6"><a href="#cb447-6" aria-hidden="true"></a></span>
-<span id="cb447-7"><a href="#cb447-7" aria-hidden="true"></a> [^1]: this is a footnote</span>
-<span id="cb447-8"><a href="#cb447-8" aria-hidden="true"></a></span>
-<span id="cb447-9"><a href="#cb447-9" aria-hidden="true"></a> [^2]: this is some other footnote</span>
-<span id="cb447-10"><a href="#cb447-10" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb447-11"><a href="#cb447-11" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<div class="sourceCode" id="cb450"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb450-1"><a href="#cb450-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb450-2"><a href="#cb450-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFootnotes</span>{true}</span>
+<span id="cb450-3"><a href="#cb450-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererFootnote</span>#1{ (and <span class="fu">\lowercase</span>{#1})}</span>
+<span id="cb450-4"><a href="#cb450-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb450-5"><a href="#cb450-5" aria-hidden="true"></a>This is some text[^1] and this is some other text[^2].</span>
+<span id="cb450-6"><a href="#cb450-6" aria-hidden="true"></a></span>
+<span id="cb450-7"><a href="#cb450-7" aria-hidden="true"></a> [^1]: this is a footnote</span>
+<span id="cb450-8"><a href="#cb450-8" aria-hidden="true"></a></span>
+<span id="cb450-9"><a href="#cb450-9" aria-hidden="true"></a> [^2]: this is some other footnote</span>
+<span id="cb450-10"><a href="#cb450-10" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb450-11"><a href="#cb450-11" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb448"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb448-1"><a href="#cb448-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb451"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb451-1"><a href="#cb451-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is some text (and this is a footnote) and this is some other text (and this is some other footnote).</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-54"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-55"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb449"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb449-1"><a href="#cb449-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb449-2"><a href="#cb449-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[footnotes]{<span class="ex">markdown</span>}</span>
-<span id="cb449-3"><a href="#cb449-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb449-4"><a href="#cb449-4" aria-hidden="true"></a> renderers = {</span>
-<span id="cb449-5"><a href="#cb449-5" aria-hidden="true"></a> footnote = { (and <span class="fu">\MakeLowercase</span>{#1})},</span>
-<span id="cb449-6"><a href="#cb449-6" aria-hidden="true"></a> },</span>
-<span id="cb449-7"><a href="#cb449-7" aria-hidden="true"></a>}</span>
-<span id="cb449-8"><a href="#cb449-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb449-9"><a href="#cb449-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb449-10"><a href="#cb449-10" aria-hidden="true"></a>This is some text[^1] and this is some other text[^2].</span>
-<span id="cb449-11"><a href="#cb449-11" aria-hidden="true"></a></span>
-<span id="cb449-12"><a href="#cb449-12" aria-hidden="true"></a> [^1]: this is a footnote</span>
-<span id="cb449-13"><a href="#cb449-13" aria-hidden="true"></a></span>
-<span id="cb449-14"><a href="#cb449-14" aria-hidden="true"></a> [^2]: this is some other footnote</span>
-<span id="cb449-15"><a href="#cb449-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb449-16"><a href="#cb449-16" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb450"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb450-1"><a href="#cb450-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb452"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb452-1"><a href="#cb452-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb452-2"><a href="#cb452-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[footnotes]{<span class="ex">markdown</span>}</span>
+<span id="cb452-3"><a href="#cb452-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb452-4"><a href="#cb452-4" aria-hidden="true"></a> renderers = {</span>
+<span id="cb452-5"><a href="#cb452-5" aria-hidden="true"></a> footnote = { (and <span class="fu">\MakeLowercase</span>{#1})},</span>
+<span id="cb452-6"><a href="#cb452-6" aria-hidden="true"></a> },</span>
+<span id="cb452-7"><a href="#cb452-7" aria-hidden="true"></a>}</span>
+<span id="cb452-8"><a href="#cb452-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb452-9"><a href="#cb452-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb452-10"><a href="#cb452-10" aria-hidden="true"></a>This is some text[^1] and this is some other text[^2].</span>
+<span id="cb452-11"><a href="#cb452-11" aria-hidden="true"></a></span>
+<span id="cb452-12"><a href="#cb452-12" aria-hidden="true"></a> [^1]: this is a footnote</span>
+<span id="cb452-13"><a href="#cb452-13" aria-hidden="true"></a></span>
+<span id="cb452-14"><a href="#cb452-14" aria-hidden="true"></a> [^2]: this is some other footnote</span>
+<span id="cb452-15"><a href="#cb452-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb452-16"><a href="#cb452-16" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb453"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb453-1"><a href="#cb453-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is some text (and this is a footnote) and this is some other text (and this is some other footnote).</p>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-44">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb451"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb451-1"><a href="#cb451-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb451-2"><a href="#cb451-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFootnotes</span>{true}</span>
-<span id="cb451-3"><a href="#cb451-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererFootnote</span>#1{ (and <span class="fu">\lowercase</span>{#1})}</span>
-<span id="cb451-4"><a href="#cb451-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb451-5"><a href="#cb451-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb451-6"><a href="#cb451-6" aria-hidden="true"></a>This is some text[^1] and this is some other text[^2].</span>
-<span id="cb451-7"><a href="#cb451-7" aria-hidden="true"></a></span>
-<span id="cb451-8"><a href="#cb451-8" aria-hidden="true"></a> [^1]: this is a footnote</span>
-<span id="cb451-9"><a href="#cb451-9" aria-hidden="true"></a></span>
-<span id="cb451-10"><a href="#cb451-10" aria-hidden="true"></a> [^2]: this is some other footnote</span>
-<span id="cb451-11"><a href="#cb451-11" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb451-12"><a href="#cb451-12" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<div class="sourceCode" id="cb454"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb454-1"><a href="#cb454-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb454-2"><a href="#cb454-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFootnotes</span>{true}</span>
+<span id="cb454-3"><a href="#cb454-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererFootnote</span>#1{ (and <span class="fu">\lowercase</span>{#1})}</span>
+<span id="cb454-4"><a href="#cb454-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb454-5"><a href="#cb454-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb454-6"><a href="#cb454-6" aria-hidden="true"></a>This is some text[^1] and this is some other text[^2].</span>
+<span id="cb454-7"><a href="#cb454-7" aria-hidden="true"></a></span>
+<span id="cb454-8"><a href="#cb454-8" aria-hidden="true"></a> [^1]: this is a footnote</span>
+<span id="cb454-9"><a href="#cb454-9" aria-hidden="true"></a></span>
+<span id="cb454-10"><a href="#cb454-10" aria-hidden="true"></a> [^2]: this is some other footnote</span>
+<span id="cb454-11"><a href="#cb454-11" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb454-12"><a href="#cb454-12" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb452"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb452-1"><a href="#cb452-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb455"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb455-1"><a href="#cb455-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is some text (and this is a footnote) and this is some other text (and this is some other footnote).</p>
</blockquote>
-<h4 data-number="2.3.1.21" id="parenthesized-citations-renderer"><span class="header-section-number">2.3.1.21</span> Parenthesized Citations Renderer</h4>
+<h4 data-number="2.3.1.22" id="parenthesized-citations-renderer"><span class="header-section-number">2.3.1.22</span> Parenthesized Citations Renderer</h4>
<p>The <code>\markdownRendererCite</code> macro represents a string of one or more parenthetical citations. This macro will only be produced, when the <strong><code>citations</code></strong> option is enabled. The macro receives the parameter <code>{</code>⟨<em>number of citations</em>⟩<code>}</code> followed by ⟨<em>suppress author</em>⟩ <code>{</code>⟨<em>prenote</em>⟩<code>}{</code>⟨<em>postnote</em>⟩<code>}{</code>⟨<em>name</em>⟩<code>}</code> repeated ⟨<em>number of citations</em>⟩ times. The ⟨<em>suppress author</em>⟩ parameter is either the token <code>-</code>, when the author’s name is to be suppressed, or <code>+</code> otherwise.</p>
-<h5 class="unnumbered" data-number="" id="latex-example-55"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-56"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb453"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb453-1"><a href="#cb453-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb453-2"><a href="#cb453-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</span>
-<span id="cb453-3"><a href="#cb453-3" aria-hidden="true"></a><span class="fu">\newcount\citationsCounter</span></span>
-<span id="cb453-4"><a href="#cb453-4" aria-hidden="true"></a><span class="fu">\newcount\citationsTotal</span></span>
-<span id="cb453-5"><a href="#cb453-5" aria-hidden="true"></a><span class="fu">\makeatletter</span></span>
-<span id="cb453-6"><a href="#cb453-6" aria-hidden="true"></a><span class="fu">\def\citations</span>#1#2#3#4{<span class="co">%</span></span>
-<span id="cb453-7"><a href="#cb453-7" aria-hidden="true"></a> a parenthesized citation <span class="fu">\emph</span>{#4}</span>
-<span id="cb453-8"><a href="#cb453-8" aria-hidden="true"></a> <span class="fu">\advance\citationsCounter</span> by 1<span class="fu">\relax</span></span>
-<span id="cb453-9"><a href="#cb453-9" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#2<span class="fu">\relax</span></span>
-<span id="cb453-10"><a href="#cb453-10" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
-<span id="cb453-11"><a href="#cb453-11" aria-hidden="true"></a> with a postfix <span class="fu">\emph</span>{#3}<span class="co">%</span></span>
-<span id="cb453-12"><a href="#cb453-12" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb453-13"><a href="#cb453-13" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb453-14"><a href="#cb453-14" aria-hidden="true"></a> with a prefix <span class="fu">\emph</span>{#2}<span class="co">%</span></span>
-<span id="cb453-15"><a href="#cb453-15" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
-<span id="cb453-16"><a href="#cb453-16" aria-hidden="true"></a> <span class="fu">\ </span>and a postfix <span class="fu">\emph</span>{#3}<span class="co">%</span></span>
-<span id="cb453-17"><a href="#cb453-17" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb453-18"><a href="#cb453-18" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb453-19"><a href="#cb453-19" aria-hidden="true"></a> <span class="fu">\ifnum\citationsCounter</span>&gt;<span class="fu">\citationsTotal\relax</span></span>
-<span id="cb453-20"><a href="#cb453-20" aria-hidden="true"></a> .<span class="co">%</span></span>
-<span id="cb453-21"><a href="#cb453-21" aria-hidden="true"></a> <span class="fu">\expandafter\@gobble</span></span>
-<span id="cb453-22"><a href="#cb453-22" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb453-23"><a href="#cb453-23" aria-hidden="true"></a> , and</span>
-<span id="cb453-24"><a href="#cb453-24" aria-hidden="true"></a> <span class="fu">\fi\citations</span>}</span>
-<span id="cb453-25"><a href="#cb453-25" aria-hidden="true"></a><span class="fu">\makeatother</span></span>
-<span id="cb453-26"><a href="#cb453-26" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb453-27"><a href="#cb453-27" aria-hidden="true"></a> renderers = {</span>
-<span id="cb453-28"><a href="#cb453-28" aria-hidden="true"></a> cite = {<span class="co">%</span></span>
-<span id="cb453-29"><a href="#cb453-29" aria-hidden="true"></a> <span class="fu">\citationsCounter</span>=1<span class="co">%</span></span>
-<span id="cb453-30"><a href="#cb453-30" aria-hidden="true"></a> <span class="fu">\citationsTotal</span>=#1<span class="co">%</span></span>
-<span id="cb453-31"><a href="#cb453-31" aria-hidden="true"></a> This is</span>
-<span id="cb453-32"><a href="#cb453-32" aria-hidden="true"></a> <span class="fu">\expandafter\citations</span></span>
-<span id="cb453-33"><a href="#cb453-33" aria-hidden="true"></a> },</span>
-<span id="cb453-34"><a href="#cb453-34" aria-hidden="true"></a> },</span>
-<span id="cb453-35"><a href="#cb453-35" aria-hidden="true"></a>}</span>
-<span id="cb453-36"><a href="#cb453-36" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb453-37"><a href="#cb453-37" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb453-38"><a href="#cb453-38" aria-hidden="true"></a>[see @abrahams90, pp. 12; @eijkhout91, pp. 34]</span>
-<span id="cb453-39"><a href="#cb453-39" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb453-40"><a href="#cb453-40" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb454"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb454-1"><a href="#cb454-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb456"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb456-1"><a href="#cb456-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb456-2"><a href="#cb456-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</span>
+<span id="cb456-3"><a href="#cb456-3" aria-hidden="true"></a><span class="fu">\newcount\citationsCounter</span></span>
+<span id="cb456-4"><a href="#cb456-4" aria-hidden="true"></a><span class="fu">\newcount\citationsTotal</span></span>
+<span id="cb456-5"><a href="#cb456-5" aria-hidden="true"></a><span class="fu">\makeatletter</span></span>
+<span id="cb456-6"><a href="#cb456-6" aria-hidden="true"></a><span class="fu">\def\citations</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb456-7"><a href="#cb456-7" aria-hidden="true"></a> a parenthesized citation <span class="fu">\emph</span>{#4}</span>
+<span id="cb456-8"><a href="#cb456-8" aria-hidden="true"></a> <span class="fu">\advance\citationsCounter</span> by 1<span class="fu">\relax</span></span>
+<span id="cb456-9"><a href="#cb456-9" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#2<span class="fu">\relax</span></span>
+<span id="cb456-10"><a href="#cb456-10" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
+<span id="cb456-11"><a href="#cb456-11" aria-hidden="true"></a> with a postfix <span class="fu">\emph</span>{#3}<span class="co">%</span></span>
+<span id="cb456-12"><a href="#cb456-12" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb456-13"><a href="#cb456-13" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb456-14"><a href="#cb456-14" aria-hidden="true"></a> with a prefix <span class="fu">\emph</span>{#2}<span class="co">%</span></span>
+<span id="cb456-15"><a href="#cb456-15" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
+<span id="cb456-16"><a href="#cb456-16" aria-hidden="true"></a> <span class="fu">\ </span>and a postfix <span class="fu">\emph</span>{#3}<span class="co">%</span></span>
+<span id="cb456-17"><a href="#cb456-17" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb456-18"><a href="#cb456-18" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb456-19"><a href="#cb456-19" aria-hidden="true"></a> <span class="fu">\ifnum\citationsCounter</span>&gt;<span class="fu">\citationsTotal\relax</span></span>
+<span id="cb456-20"><a href="#cb456-20" aria-hidden="true"></a> .<span class="co">%</span></span>
+<span id="cb456-21"><a href="#cb456-21" aria-hidden="true"></a> <span class="fu">\expandafter\@gobble</span></span>
+<span id="cb456-22"><a href="#cb456-22" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb456-23"><a href="#cb456-23" aria-hidden="true"></a> , and</span>
+<span id="cb456-24"><a href="#cb456-24" aria-hidden="true"></a> <span class="fu">\fi\citations</span>}</span>
+<span id="cb456-25"><a href="#cb456-25" aria-hidden="true"></a><span class="fu">\makeatother</span></span>
+<span id="cb456-26"><a href="#cb456-26" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb456-27"><a href="#cb456-27" aria-hidden="true"></a> renderers = {</span>
+<span id="cb456-28"><a href="#cb456-28" aria-hidden="true"></a> cite = {<span class="co">%</span></span>
+<span id="cb456-29"><a href="#cb456-29" aria-hidden="true"></a> <span class="fu">\citationsCounter</span>=1<span class="co">%</span></span>
+<span id="cb456-30"><a href="#cb456-30" aria-hidden="true"></a> <span class="fu">\citationsTotal</span>=#1<span class="co">%</span></span>
+<span id="cb456-31"><a href="#cb456-31" aria-hidden="true"></a> This is</span>
+<span id="cb456-32"><a href="#cb456-32" aria-hidden="true"></a> <span class="fu">\expandafter\citations</span></span>
+<span id="cb456-33"><a href="#cb456-33" aria-hidden="true"></a> },</span>
+<span id="cb456-34"><a href="#cb456-34" aria-hidden="true"></a> },</span>
+<span id="cb456-35"><a href="#cb456-35" aria-hidden="true"></a>}</span>
+<span id="cb456-36"><a href="#cb456-36" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb456-37"><a href="#cb456-37" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb456-38"><a href="#cb456-38" aria-hidden="true"></a>[see @abrahams90, pp. 12; @eijkhout91, pp. 34]</span>
+<span id="cb456-39"><a href="#cb456-39" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb456-40"><a href="#cb456-40" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb457"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb457-1"><a href="#cb457-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a parenthesized citation <em>abrahams90</em> with a prefix see and a postfix <em>pp. 12</em>, and a citation <em>eijkhout91</em> with a postfix <em>pp. 34</em>.</p>
</blockquote>
-<h4 data-number="2.3.1.22" id="text-citations-renderer"><span class="header-section-number">2.3.1.22</span> Text Citations Renderer</h4>
+<h4 data-number="2.3.1.23" id="text-citations-renderer"><span class="header-section-number">2.3.1.23</span> Text Citations Renderer</h4>
<p>The <code>\markdownRendererTextCite</code> macro represents a string of one or more text citations. This macro will only be produced, when the <strong><code>citations</code></strong> option is enabled. The macro receives parameters in the same format as the macro.</p>
-<h5 class="unnumbered" data-number="" id="latex-example-56"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-57"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb455"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb455-1"><a href="#cb455-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb455-2"><a href="#cb455-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</span>
-<span id="cb455-3"><a href="#cb455-3" aria-hidden="true"></a><span class="fu">\newcount\citationsCounter</span></span>
-<span id="cb455-4"><a href="#cb455-4" aria-hidden="true"></a><span class="fu">\newcount\citationsTotal</span></span>
-<span id="cb455-5"><a href="#cb455-5" aria-hidden="true"></a><span class="fu">\makeatletter</span></span>
-<span id="cb455-6"><a href="#cb455-6" aria-hidden="true"></a><span class="fu">\def\citations</span>#1#2#3#4{<span class="co">%</span></span>
-<span id="cb455-7"><a href="#cb455-7" aria-hidden="true"></a> a text citation <span class="fu">\emph</span>{#4}</span>
-<span id="cb455-8"><a href="#cb455-8" aria-hidden="true"></a> <span class="fu">\advance\citationsCounter</span> by 1<span class="fu">\relax</span></span>
-<span id="cb455-9"><a href="#cb455-9" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#2<span class="fu">\relax</span></span>
-<span id="cb455-10"><a href="#cb455-10" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
-<span id="cb455-11"><a href="#cb455-11" aria-hidden="true"></a> with a postfix <span class="fu">\emph</span>{#3}<span class="co">%</span></span>
-<span id="cb455-12"><a href="#cb455-12" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb455-13"><a href="#cb455-13" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb455-14"><a href="#cb455-14" aria-hidden="true"></a> with a prefix <span class="fu">\emph</span>{#2}<span class="co">%</span></span>
-<span id="cb455-15"><a href="#cb455-15" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
-<span id="cb455-16"><a href="#cb455-16" aria-hidden="true"></a> <span class="fu">\ </span>and a postfix <span class="fu">\emph</span>{#3}<span class="co">%</span></span>
-<span id="cb455-17"><a href="#cb455-17" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb455-18"><a href="#cb455-18" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb455-19"><a href="#cb455-19" aria-hidden="true"></a> <span class="fu">\ifnum\citationsCounter</span>&gt;<span class="fu">\citationsTotal\relax</span></span>
-<span id="cb455-20"><a href="#cb455-20" aria-hidden="true"></a> .<span class="co">%</span></span>
-<span id="cb455-21"><a href="#cb455-21" aria-hidden="true"></a> <span class="fu">\expandafter\@gobble</span></span>
-<span id="cb455-22"><a href="#cb455-22" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb455-23"><a href="#cb455-23" aria-hidden="true"></a> , and</span>
-<span id="cb455-24"><a href="#cb455-24" aria-hidden="true"></a> <span class="fu">\fi\citations</span>}</span>
-<span id="cb455-25"><a href="#cb455-25" aria-hidden="true"></a><span class="fu">\makeatother</span></span>
-<span id="cb455-26"><a href="#cb455-26" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb455-27"><a href="#cb455-27" aria-hidden="true"></a> renderers = {</span>
-<span id="cb455-28"><a href="#cb455-28" aria-hidden="true"></a> textCite = {<span class="co">%</span></span>
-<span id="cb455-29"><a href="#cb455-29" aria-hidden="true"></a> <span class="fu">\citationsCounter</span>=1<span class="co">%</span></span>
-<span id="cb455-30"><a href="#cb455-30" aria-hidden="true"></a> <span class="fu">\citationsTotal</span>=#1<span class="co">%</span></span>
-<span id="cb455-31"><a href="#cb455-31" aria-hidden="true"></a> This is</span>
-<span id="cb455-32"><a href="#cb455-32" aria-hidden="true"></a> <span class="fu">\expandafter\citations</span></span>
-<span id="cb455-33"><a href="#cb455-33" aria-hidden="true"></a> },</span>
-<span id="cb455-34"><a href="#cb455-34" aria-hidden="true"></a> },</span>
-<span id="cb455-35"><a href="#cb455-35" aria-hidden="true"></a>}</span>
-<span id="cb455-36"><a href="#cb455-36" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb455-37"><a href="#cb455-37" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb455-38"><a href="#cb455-38" aria-hidden="true"></a>@abrahams90 [pp. 12; also @eijkhout91]</span>
-<span id="cb455-39"><a href="#cb455-39" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb455-40"><a href="#cb455-40" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb456"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb456-1"><a href="#cb456-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb458"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb458-1"><a href="#cb458-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb458-2"><a href="#cb458-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</span>
+<span id="cb458-3"><a href="#cb458-3" aria-hidden="true"></a><span class="fu">\newcount\citationsCounter</span></span>
+<span id="cb458-4"><a href="#cb458-4" aria-hidden="true"></a><span class="fu">\newcount\citationsTotal</span></span>
+<span id="cb458-5"><a href="#cb458-5" aria-hidden="true"></a><span class="fu">\makeatletter</span></span>
+<span id="cb458-6"><a href="#cb458-6" aria-hidden="true"></a><span class="fu">\def\citations</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb458-7"><a href="#cb458-7" aria-hidden="true"></a> a text citation <span class="fu">\emph</span>{#4}</span>
+<span id="cb458-8"><a href="#cb458-8" aria-hidden="true"></a> <span class="fu">\advance\citationsCounter</span> by 1<span class="fu">\relax</span></span>
+<span id="cb458-9"><a href="#cb458-9" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#2<span class="fu">\relax</span></span>
+<span id="cb458-10"><a href="#cb458-10" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
+<span id="cb458-11"><a href="#cb458-11" aria-hidden="true"></a> with a postfix <span class="fu">\emph</span>{#3}<span class="co">%</span></span>
+<span id="cb458-12"><a href="#cb458-12" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb458-13"><a href="#cb458-13" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb458-14"><a href="#cb458-14" aria-hidden="true"></a> with a prefix <span class="fu">\emph</span>{#2}<span class="co">%</span></span>
+<span id="cb458-15"><a href="#cb458-15" aria-hidden="true"></a> <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
+<span id="cb458-16"><a href="#cb458-16" aria-hidden="true"></a> <span class="fu">\ </span>and a postfix <span class="fu">\emph</span>{#3}<span class="co">%</span></span>
+<span id="cb458-17"><a href="#cb458-17" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb458-18"><a href="#cb458-18" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb458-19"><a href="#cb458-19" aria-hidden="true"></a> <span class="fu">\ifnum\citationsCounter</span>&gt;<span class="fu">\citationsTotal\relax</span></span>
+<span id="cb458-20"><a href="#cb458-20" aria-hidden="true"></a> .<span class="co">%</span></span>
+<span id="cb458-21"><a href="#cb458-21" aria-hidden="true"></a> <span class="fu">\expandafter\@gobble</span></span>
+<span id="cb458-22"><a href="#cb458-22" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb458-23"><a href="#cb458-23" aria-hidden="true"></a> , and</span>
+<span id="cb458-24"><a href="#cb458-24" aria-hidden="true"></a> <span class="fu">\fi\citations</span>}</span>
+<span id="cb458-25"><a href="#cb458-25" aria-hidden="true"></a><span class="fu">\makeatother</span></span>
+<span id="cb458-26"><a href="#cb458-26" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb458-27"><a href="#cb458-27" aria-hidden="true"></a> renderers = {</span>
+<span id="cb458-28"><a href="#cb458-28" aria-hidden="true"></a> textCite = {<span class="co">%</span></span>
+<span id="cb458-29"><a href="#cb458-29" aria-hidden="true"></a> <span class="fu">\citationsCounter</span>=1<span class="co">%</span></span>
+<span id="cb458-30"><a href="#cb458-30" aria-hidden="true"></a> <span class="fu">\citationsTotal</span>=#1<span class="co">%</span></span>
+<span id="cb458-31"><a href="#cb458-31" aria-hidden="true"></a> This is</span>
+<span id="cb458-32"><a href="#cb458-32" aria-hidden="true"></a> <span class="fu">\expandafter\citations</span></span>
+<span id="cb458-33"><a href="#cb458-33" aria-hidden="true"></a> },</span>
+<span id="cb458-34"><a href="#cb458-34" aria-hidden="true"></a> },</span>
+<span id="cb458-35"><a href="#cb458-35" aria-hidden="true"></a>}</span>
+<span id="cb458-36"><a href="#cb458-36" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb458-37"><a href="#cb458-37" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb458-38"><a href="#cb458-38" aria-hidden="true"></a>@abrahams90 [pp. 12; also @eijkhout91]</span>
+<span id="cb458-39"><a href="#cb458-39" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb458-40"><a href="#cb458-40" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb459"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb459-1"><a href="#cb459-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a text citation <em>abrahams90</em> with a postfix <em>pp. 12</em>, and a citation <em>eijkhout91</em> with a prefix <em>also</em>.</p>
</blockquote>
-<h4 data-number="2.3.1.23" id="table-renderer"><span class="header-section-number">2.3.1.23</span> Table Renderer</h4>
+<h4 data-number="2.3.1.24" id="table-renderer"><span class="header-section-number">2.3.1.24</span> Table Renderer</h4>
<p>The <code>\markdownRendererTable</code> macro represents a table. This macro will only be produced, when the <strong><code>pipeTables</code></strong> option is enabled. The macro receives the parameters <code>{</code>⟨<em>caption</em>⟩<code>}{</code>⟨<em>number of rows</em>⟩<code>}{</code>⟨<em>number of columns</em>⟩<code>}</code> followed by <code>{</code>⟨<em>alignments</em>⟩<code>}</code> and then by <code>{</code>⟨<em>row</em>⟩<code>}</code> repeated ⟨<em>number of rows</em>⟩ times, where ⟨<em>row</em>⟩ is <code>{</code>⟨<em>column</em>⟩<code>}</code> repeated ⟨<em>number of columns</em>⟩ times, ⟨<em>alignments</em>⟩ is ⟨<em>alignment</em>⟩ repeated ⟨<em>number of columns</em>⟩ times, and ⟨<em>alignment</em>⟩ is one of the following:</p>
<ul>
<li><code>d</code> – The corresponding column has an unspecified (default) alignment.</li>
@@ -6043,93 +6128,93 @@ Thomas,Edison,1847</code></pre>
<li><code>c</code> – The corresponding column is centered.</li>
<li><code>r</code> – The corresponding column is right-aligned.</li>
</ul>
-<h5 class="unnumbered" data-number="" id="latex-example-57"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-58"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb457"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb457-1"><a href="#cb457-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb457-2"><a href="#cb457-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[pipeTables, tableCaptions]{<span class="ex">markdown</span>}</span>
-<span id="cb457-3"><a href="#cb457-3" aria-hidden="true"></a><span class="fu">\newcount\rowCounter</span></span>
-<span id="cb457-4"><a href="#cb457-4" aria-hidden="true"></a><span class="fu">\newcount\columnCounter</span></span>
-<span id="cb457-5"><a href="#cb457-5" aria-hidden="true"></a><span class="fu">\makeatletter</span></span>
-<span id="cb457-6"><a href="#cb457-6" aria-hidden="true"></a><span class="fu">\def\processRow</span>#1{<span class="co">%</span></span>
-<span id="cb457-7"><a href="#cb457-7" aria-hidden="true"></a> <span class="fu">\columnCounter</span>=1<span class="co">%</span></span>
-<span id="cb457-8"><a href="#cb457-8" aria-hidden="true"></a> <span class="fu">\ifnum\rowCounter</span>=0<span class="fu">\relax</span></span>
-<span id="cb457-9"><a href="#cb457-9" aria-hidden="true"></a> As for the alignment,</span>
-<span id="cb457-10"><a href="#cb457-10" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb457-11"><a href="#cb457-11" aria-hidden="true"></a> In row <span class="fu">\the\rowCounter</span>,</span>
-<span id="cb457-12"><a href="#cb457-12" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb457-13"><a href="#cb457-13" aria-hidden="true"></a> <span class="fu">\processColumn</span>#1</span>
-<span id="cb457-14"><a href="#cb457-14" aria-hidden="true"></a> <span class="fu">\advance\rowCounter</span> by 1<span class="fu">\relax</span></span>
-<span id="cb457-15"><a href="#cb457-15" aria-hidden="true"></a> <span class="fu">\ifnum\rowCounter</span>&gt;<span class="fu">\rowTotal\relax</span></span>
-<span id="cb457-16"><a href="#cb457-16" aria-hidden="true"></a> <span class="fu">\expandafter\@gobble</span></span>
-<span id="cb457-17"><a href="#cb457-17" aria-hidden="true"></a> <span class="fu">\fi\processRow</span>}<span class="co">%</span></span>
-<span id="cb457-18"><a href="#cb457-18" aria-hidden="true"></a><span class="fu">\def\processColumn</span>#1{<span class="co">%</span></span>
-<span id="cb457-19"><a href="#cb457-19" aria-hidden="true"></a> column number <span class="fu">\the\columnCounter</span>{}</span>
-<span id="cb457-20"><a href="#cb457-20" aria-hidden="true"></a> <span class="fu">\ifnum\rowCounter</span>=0<span class="fu">\relax</span></span>
-<span id="cb457-21"><a href="#cb457-21" aria-hidden="true"></a> <span class="fu">\if</span>#1d{}has default alignment<span class="fu">\fi</span></span>
-<span id="cb457-22"><a href="#cb457-22" aria-hidden="true"></a> <span class="fu">\if</span>#1l{}is left-aligned<span class="fu">\fi</span></span>
-<span id="cb457-23"><a href="#cb457-23" aria-hidden="true"></a> <span class="fu">\if</span>#1c{}is centered<span class="fu">\fi</span></span>
-<span id="cb457-24"><a href="#cb457-24" aria-hidden="true"></a> <span class="fu">\if</span>#1r{}is right-aligned<span class="fu">\fi</span></span>
-<span id="cb457-25"><a href="#cb457-25" aria-hidden="true"></a> <span class="fu">\else</span></span>
-<span id="cb457-26"><a href="#cb457-26" aria-hidden="true"></a> says <span class="fu">\emph</span>{#1}<span class="co">%</span></span>
-<span id="cb457-27"><a href="#cb457-27" aria-hidden="true"></a> <span class="fu">\fi</span></span>
-<span id="cb457-28"><a href="#cb457-28" aria-hidden="true"></a> <span class="fu">\advance\columnCounter</span> by 1<span class="fu">\relax</span></span>
-<span id="cb457-29"><a href="#cb457-29" aria-hidden="true"></a> <span class="fu">\ifnum\columnCounter</span>&lt;<span class="fu">\columnTotal\relax</span>, <span class="fu">\fi</span></span>
-<span id="cb457-30"><a href="#cb457-30" aria-hidden="true"></a> <span class="fu">\ifnum\columnCounter</span>=<span class="fu">\columnTotal\relax</span>, and <span class="fu">\fi</span></span>
-<span id="cb457-31"><a href="#cb457-31" aria-hidden="true"></a> <span class="fu">\ifnum\columnCounter</span>&gt;<span class="fu">\columnTotal\relax</span></span>
-<span id="cb457-32"><a href="#cb457-32" aria-hidden="true"></a> .<span class="fu">\expandafter\@gobble</span></span>
-<span id="cb457-33"><a href="#cb457-33" aria-hidden="true"></a> <span class="fu">\fi\processColumn</span>}<span class="co">%</span></span>
-<span id="cb457-34"><a href="#cb457-34" aria-hidden="true"></a><span class="fu">\makeatother</span></span>
-<span id="cb457-35"><a href="#cb457-35" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb457-36"><a href="#cb457-36" aria-hidden="true"></a> renderers = {</span>
-<span id="cb457-37"><a href="#cb457-37" aria-hidden="true"></a> table = {<span class="co">%</span></span>
-<span id="cb457-38"><a href="#cb457-38" aria-hidden="true"></a> This is a table with caption <span class="fu">\emph</span>{#1} that is #3 colums wide</span>
-<span id="cb457-39"><a href="#cb457-39" aria-hidden="true"></a> and #2 rows long.</span>
-<span id="cb457-40"><a href="#cb457-40" aria-hidden="true"></a> <span class="fu">\rowCounter</span>=0<span class="co">%</span></span>
-<span id="cb457-41"><a href="#cb457-41" aria-hidden="true"></a> <span class="fu">\def\rowTotal</span>{#2}<span class="co">%</span></span>
-<span id="cb457-42"><a href="#cb457-42" aria-hidden="true"></a> <span class="fu">\def\columnTotal</span>{#3}<span class="co">%</span></span>
-<span id="cb457-43"><a href="#cb457-43" aria-hidden="true"></a> <span class="fu">\processRow</span></span>
-<span id="cb457-44"><a href="#cb457-44" aria-hidden="true"></a> },</span>
-<span id="cb457-45"><a href="#cb457-45" aria-hidden="true"></a> },</span>
-<span id="cb457-46"><a href="#cb457-46" aria-hidden="true"></a>}</span>
-<span id="cb457-47"><a href="#cb457-47" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb457-48"><a href="#cb457-48" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb457-49"><a href="#cb457-49" aria-hidden="true"></a>| Right | Left | Default | Center |</span>
-<span id="cb457-50"><a href="#cb457-50" aria-hidden="true"></a>|------:|:-----|---------|:------:|</span>
-<span id="cb457-51"><a href="#cb457-51" aria-hidden="true"></a>| 12 | 12 | 12 | 12 |</span>
-<span id="cb457-52"><a href="#cb457-52" aria-hidden="true"></a>| 123 | 123 | 123 | 123 |</span>
-<span id="cb457-53"><a href="#cb457-53" aria-hidden="true"></a>| 1 | 1 | 1 | 1 |</span>
-<span id="cb457-54"><a href="#cb457-54" aria-hidden="true"></a></span>
-<span id="cb457-55"><a href="#cb457-55" aria-hidden="true"></a> : Demonstration of pipe table syntax</span>
-<span id="cb457-56"><a href="#cb457-56" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb457-57"><a href="#cb457-57" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb458"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb458-1"><a href="#cb458-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb460"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb460-1"><a href="#cb460-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb460-2"><a href="#cb460-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[pipeTables, tableCaptions]{<span class="ex">markdown</span>}</span>
+<span id="cb460-3"><a href="#cb460-3" aria-hidden="true"></a><span class="fu">\newcount\rowCounter</span></span>
+<span id="cb460-4"><a href="#cb460-4" aria-hidden="true"></a><span class="fu">\newcount\columnCounter</span></span>
+<span id="cb460-5"><a href="#cb460-5" aria-hidden="true"></a><span class="fu">\makeatletter</span></span>
+<span id="cb460-6"><a href="#cb460-6" aria-hidden="true"></a><span class="fu">\def\processRow</span>#1{<span class="co">%</span></span>
+<span id="cb460-7"><a href="#cb460-7" aria-hidden="true"></a> <span class="fu">\columnCounter</span>=1<span class="co">%</span></span>
+<span id="cb460-8"><a href="#cb460-8" aria-hidden="true"></a> <span class="fu">\ifnum\rowCounter</span>=0<span class="fu">\relax</span></span>
+<span id="cb460-9"><a href="#cb460-9" aria-hidden="true"></a> As for the alignment,</span>
+<span id="cb460-10"><a href="#cb460-10" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb460-11"><a href="#cb460-11" aria-hidden="true"></a> In row <span class="fu">\the\rowCounter</span>,</span>
+<span id="cb460-12"><a href="#cb460-12" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb460-13"><a href="#cb460-13" aria-hidden="true"></a> <span class="fu">\processColumn</span>#1</span>
+<span id="cb460-14"><a href="#cb460-14" aria-hidden="true"></a> <span class="fu">\advance\rowCounter</span> by 1<span class="fu">\relax</span></span>
+<span id="cb460-15"><a href="#cb460-15" aria-hidden="true"></a> <span class="fu">\ifnum\rowCounter</span>&gt;<span class="fu">\rowTotal\relax</span></span>
+<span id="cb460-16"><a href="#cb460-16" aria-hidden="true"></a> <span class="fu">\expandafter\@gobble</span></span>
+<span id="cb460-17"><a href="#cb460-17" aria-hidden="true"></a> <span class="fu">\fi\processRow</span>}<span class="co">%</span></span>
+<span id="cb460-18"><a href="#cb460-18" aria-hidden="true"></a><span class="fu">\def\processColumn</span>#1{<span class="co">%</span></span>
+<span id="cb460-19"><a href="#cb460-19" aria-hidden="true"></a> column number <span class="fu">\the\columnCounter</span>{}</span>
+<span id="cb460-20"><a href="#cb460-20" aria-hidden="true"></a> <span class="fu">\ifnum\rowCounter</span>=0<span class="fu">\relax</span></span>
+<span id="cb460-21"><a href="#cb460-21" aria-hidden="true"></a> <span class="fu">\if</span>#1d{}has default alignment<span class="fu">\fi</span></span>
+<span id="cb460-22"><a href="#cb460-22" aria-hidden="true"></a> <span class="fu">\if</span>#1l{}is left-aligned<span class="fu">\fi</span></span>
+<span id="cb460-23"><a href="#cb460-23" aria-hidden="true"></a> <span class="fu">\if</span>#1c{}is centered<span class="fu">\fi</span></span>
+<span id="cb460-24"><a href="#cb460-24" aria-hidden="true"></a> <span class="fu">\if</span>#1r{}is right-aligned<span class="fu">\fi</span></span>
+<span id="cb460-25"><a href="#cb460-25" aria-hidden="true"></a> <span class="fu">\else</span></span>
+<span id="cb460-26"><a href="#cb460-26" aria-hidden="true"></a> says <span class="fu">\emph</span>{#1}<span class="co">%</span></span>
+<span id="cb460-27"><a href="#cb460-27" aria-hidden="true"></a> <span class="fu">\fi</span></span>
+<span id="cb460-28"><a href="#cb460-28" aria-hidden="true"></a> <span class="fu">\advance\columnCounter</span> by 1<span class="fu">\relax</span></span>
+<span id="cb460-29"><a href="#cb460-29" aria-hidden="true"></a> <span class="fu">\ifnum\columnCounter</span>&lt;<span class="fu">\columnTotal\relax</span>, <span class="fu">\fi</span></span>
+<span id="cb460-30"><a href="#cb460-30" aria-hidden="true"></a> <span class="fu">\ifnum\columnCounter</span>=<span class="fu">\columnTotal\relax</span>, and <span class="fu">\fi</span></span>
+<span id="cb460-31"><a href="#cb460-31" aria-hidden="true"></a> <span class="fu">\ifnum\columnCounter</span>&gt;<span class="fu">\columnTotal\relax</span></span>
+<span id="cb460-32"><a href="#cb460-32" aria-hidden="true"></a> .<span class="fu">\expandafter\@gobble</span></span>
+<span id="cb460-33"><a href="#cb460-33" aria-hidden="true"></a> <span class="fu">\fi\processColumn</span>}<span class="co">%</span></span>
+<span id="cb460-34"><a href="#cb460-34" aria-hidden="true"></a><span class="fu">\makeatother</span></span>
+<span id="cb460-35"><a href="#cb460-35" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb460-36"><a href="#cb460-36" aria-hidden="true"></a> renderers = {</span>
+<span id="cb460-37"><a href="#cb460-37" aria-hidden="true"></a> table = {<span class="co">%</span></span>
+<span id="cb460-38"><a href="#cb460-38" aria-hidden="true"></a> This is a table with caption <span class="fu">\emph</span>{#1} that is #3 colums wide</span>
+<span id="cb460-39"><a href="#cb460-39" aria-hidden="true"></a> and #2 rows long.</span>
+<span id="cb460-40"><a href="#cb460-40" aria-hidden="true"></a> <span class="fu">\rowCounter</span>=0<span class="co">%</span></span>
+<span id="cb460-41"><a href="#cb460-41" aria-hidden="true"></a> <span class="fu">\def\rowTotal</span>{#2}<span class="co">%</span></span>
+<span id="cb460-42"><a href="#cb460-42" aria-hidden="true"></a> <span class="fu">\def\columnTotal</span>{#3}<span class="co">%</span></span>
+<span id="cb460-43"><a href="#cb460-43" aria-hidden="true"></a> <span class="fu">\processRow</span></span>
+<span id="cb460-44"><a href="#cb460-44" aria-hidden="true"></a> },</span>
+<span id="cb460-45"><a href="#cb460-45" aria-hidden="true"></a> },</span>
+<span id="cb460-46"><a href="#cb460-46" aria-hidden="true"></a>}</span>
+<span id="cb460-47"><a href="#cb460-47" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb460-48"><a href="#cb460-48" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb460-49"><a href="#cb460-49" aria-hidden="true"></a>| Right | Left | Default | Center |</span>
+<span id="cb460-50"><a href="#cb460-50" aria-hidden="true"></a>|------:|:-----|---------|:------:|</span>
+<span id="cb460-51"><a href="#cb460-51" aria-hidden="true"></a>| 12 | 12 | 12 | 12 |</span>
+<span id="cb460-52"><a href="#cb460-52" aria-hidden="true"></a>| 123 | 123 | 123 | 123 |</span>
+<span id="cb460-53"><a href="#cb460-53" aria-hidden="true"></a>| 1 | 1 | 1 | 1 |</span>
+<span id="cb460-54"><a href="#cb460-54" aria-hidden="true"></a></span>
+<span id="cb460-55"><a href="#cb460-55" aria-hidden="true"></a> : Demonstration of pipe table syntax</span>
+<span id="cb460-56"><a href="#cb460-56" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb460-57"><a href="#cb460-57" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb461"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb461-1"><a href="#cb461-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>This is a table with caption <em>Demonstration of pipe table syntax</em> that is 4 colums wide and 4 rows long. As for the alignment, column number 1 is right-aligned, column number 2 is left-aligned, column number 3 has default alignment, and column number 4 is centered. In row 1, column number 1 says <em>Right</em>, column number 2 says <em>Left</em>, column number 3 says <em>Default</em>, and column number 4 says <em>Center</em>. In row 2, column number 1 says <em>12</em>, column number 2 says <em>12</em>, column number 3 says <em>12</em>, and column number 4 says <em>12</em>. In row 3, column number 1 says <em>123</em>, column number 2 says <em>123</em>, column number 3 says <em>123</em>, and column number 4 says <em>123</em>. In row 4, column number 1 says <em>1</em>, column number 2 says <em>1</em>, column number 3 says <em>1</em>, and column number 4 says <em>1</em>.</p>
</blockquote>
-<h4 data-number="2.3.1.24" id="inline-html-comment-renderer"><span class="header-section-number">2.3.1.24</span> Inline HTML Comment Renderer</h4>
+<h4 data-number="2.3.1.25" id="inline-html-comment-renderer"><span class="header-section-number">2.3.1.25</span> Inline HTML Comment Renderer</h4>
<p>The <code>\markdownRendererInlineHtmlComment</code> macro represents the contents of an inline <abbr>HTML</abbr> comment. This macro will only be produced, when the <strong><code>html</code></strong> option is enabled. The macro receives a single argument that corresponds to the contents of the <abbr>HTML</abbr> comment.</p>
-<h5 class="unnumbered" data-number="" id="latex-example-58"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-59"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb459"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb459-1"><a href="#cb459-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb459-2"><a href="#cb459-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[html]{<span class="ex">markdown</span>}</span>
-<span id="cb459-3"><a href="#cb459-3" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">marginnote</span>}</span>
-<span id="cb459-4"><a href="#cb459-4" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb459-5"><a href="#cb459-5" aria-hidden="true"></a> renderers = {</span>
-<span id="cb459-6"><a href="#cb459-6" aria-hidden="true"></a> inlineHtmlComment = {<span class="fu">\marginnote</span>{#1}},</span>
-<span id="cb459-7"><a href="#cb459-7" aria-hidden="true"></a> },</span>
-<span id="cb459-8"><a href="#cb459-8" aria-hidden="true"></a>}</span>
-<span id="cb459-9"><a href="#cb459-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb459-10"><a href="#cb459-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb459-11"><a href="#cb459-11" aria-hidden="true"></a>A useful use of HTML comments are side notes.</span>
-<span id="cb459-12"><a href="#cb459-12" aria-hidden="true"></a>&lt;!-- Side notes are displayed in the horizontal margins next to the relevant</span>
-<span id="cb459-13"><a href="#cb459-13" aria-hidden="true"></a>passages, which makes them easier for the reader to find than footnotes. --&gt;</span>
-<span id="cb459-14"><a href="#cb459-14" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb459-15"><a href="#cb459-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb460"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb460-1"><a href="#cb460-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span>
-<span id="cb460-2"><a href="#cb460-2" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb462"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb462-1"><a href="#cb462-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb462-2"><a href="#cb462-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[html]{<span class="ex">markdown</span>}</span>
+<span id="cb462-3"><a href="#cb462-3" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">marginnote</span>}</span>
+<span id="cb462-4"><a href="#cb462-4" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb462-5"><a href="#cb462-5" aria-hidden="true"></a> renderers = {</span>
+<span id="cb462-6"><a href="#cb462-6" aria-hidden="true"></a> inlineHtmlComment = {<span class="fu">\marginnote</span>{#1}},</span>
+<span id="cb462-7"><a href="#cb462-7" aria-hidden="true"></a> },</span>
+<span id="cb462-8"><a href="#cb462-8" aria-hidden="true"></a>}</span>
+<span id="cb462-9"><a href="#cb462-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb462-10"><a href="#cb462-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb462-11"><a href="#cb462-11" aria-hidden="true"></a>A useful use of HTML comments are side notes.</span>
+<span id="cb462-12"><a href="#cb462-12" aria-hidden="true"></a>&lt;!-- Side notes are displayed in the horizontal margins next to the relevant</span>
+<span id="cb462-13"><a href="#cb462-13" aria-hidden="true"></a>passages, which makes them easier for the reader to find than footnotes. --&gt;</span>
+<span id="cb462-14"><a href="#cb462-14" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb462-15"><a href="#cb462-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb463"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb463-1"><a href="#cb463-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span>
+<span id="cb463-2"><a href="#cb463-2" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following body text:</p>
<blockquote>
<p>A useful use of HTML comments are side notes.</p>
@@ -6142,52 +6227,52 @@ Thomas,Edison,1847</code></pre>
<p>By default, token renderers point to package-defined <span class="tex">T<sub>e</sub>X</span> macros, further referred to as <em>prototypes</em>, which provide useful default definitions.</p>
<h5 class="unnumbered" data-number="" id="plain-tex-example-33">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb461"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb461-1"><a href="#cb461-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
-<span id="cb461-2"><a href="#cb461-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererTildePrototype</span>{<span class="co">%</span></span>
-<span id="cb461-3"><a href="#cb461-3" aria-hidden="true"></a> Packages can specify token renderer prototypes.<span class="co">%</span></span>
-<span id="cb461-4"><a href="#cb461-4" aria-hidden="true"></a>}</span>
-<span id="cb461-5"><a href="#cb461-5" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb461-6"><a href="#cb461-6" aria-hidden="true"></a>~</span>
-<span id="cb461-7"><a href="#cb461-7" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb461-8"><a href="#cb461-8" aria-hidden="true"></a></span>
-<span id="cb461-9"><a href="#cb461-9" aria-hidden="true"></a><span class="fu">\def\markdownRendererTilde</span>{<span class="co">%</span></span>
-<span id="cb461-10"><a href="#cb461-10" aria-hidden="true"></a> User-defined token renderers take precedence.<span class="co">%</span></span>
-<span id="cb461-11"><a href="#cb461-11" aria-hidden="true"></a>}</span>
-<span id="cb461-12"><a href="#cb461-12" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
-<span id="cb461-13"><a href="#cb461-13" aria-hidden="true"></a>~</span>
-<span id="cb461-14"><a href="#cb461-14" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
-<span id="cb461-15"><a href="#cb461-15" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb462"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb462-1"><a href="#cb462-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb464"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb464-1"><a href="#cb464-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb464-2"><a href="#cb464-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererTildePrototype</span>{<span class="co">%</span></span>
+<span id="cb464-3"><a href="#cb464-3" aria-hidden="true"></a> Packages can specify token renderer prototypes.<span class="co">%</span></span>
+<span id="cb464-4"><a href="#cb464-4" aria-hidden="true"></a>}</span>
+<span id="cb464-5"><a href="#cb464-5" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb464-6"><a href="#cb464-6" aria-hidden="true"></a>~</span>
+<span id="cb464-7"><a href="#cb464-7" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb464-8"><a href="#cb464-8" aria-hidden="true"></a></span>
+<span id="cb464-9"><a href="#cb464-9" aria-hidden="true"></a><span class="fu">\def\markdownRendererTilde</span>{<span class="co">%</span></span>
+<span id="cb464-10"><a href="#cb464-10" aria-hidden="true"></a> User-defined token renderers take precedence.<span class="co">%</span></span>
+<span id="cb464-11"><a href="#cb464-11" aria-hidden="true"></a>}</span>
+<span id="cb464-12"><a href="#cb464-12" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb464-13"><a href="#cb464-13" aria-hidden="true"></a>~</span>
+<span id="cb464-14"><a href="#cb464-14" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb464-15"><a href="#cb464-15" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb465"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb465-1"><a href="#cb465-1" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Packages can specify token renderer prototypes.</p>
<p>User-defined token renderers take precedence.</p>
</blockquote>
-<h5 class="unnumbered" data-number="" id="latex-example-59"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
-<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb463"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb463-1"><a href="#cb463-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
-<span id="cb463-2"><a href="#cb463-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
-<span id="cb463-3"><a href="#cb463-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
-<span id="cb463-4"><a href="#cb463-4" aria-hidden="true"></a> rendererPrototypes = {</span>
-<span id="cb463-5"><a href="#cb463-5" aria-hidden="true"></a> tilde = {Packages can specify token renderer prototypes.},</span>
-<span id="cb463-6"><a href="#cb463-6" aria-hidden="true"></a> },</span>
-<span id="cb463-7"><a href="#cb463-7" aria-hidden="true"></a>}</span>
-<span id="cb463-8"><a href="#cb463-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
-<span id="cb463-9"><a href="#cb463-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
-<span id="cb463-10"><a href="#cb463-10" aria-hidden="true"></a>~</span>
-<span id="cb463-11"><a href="#cb463-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
-<span id="cb463-12"><a href="#cb463-12" aria-hidden="true"></a></span>
-<span id="cb463-13"><a href="#cb463-13" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
-<span id="cb463-14"><a href="#cb463-14" aria-hidden="true"></a> renderers = {</span>
-<span id="cb463-15"><a href="#cb463-15" aria-hidden="true"></a> tilde = {User-defined token renderers take precedence.},</span>
-<span id="cb463-16"><a href="#cb463-16" aria-hidden="true"></a> },</span>
-<span id="cb463-17"><a href="#cb463-17" aria-hidden="true"></a>}</span>
-<span id="cb463-18"><a href="#cb463-18" aria-hidden="true"></a>~</span>
-<span id="cb463-19"><a href="#cb463-19" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
-<span id="cb463-20"><a href="#cb463-20" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb464"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb464-1"><a href="#cb464-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
+<h5 class="unnumbered" data-number="" id="latex-example-60"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
+<div class="sourceCode" id="cb466"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb466-1"><a href="#cb466-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb466-2"><a href="#cb466-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb466-3"><a href="#cb466-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb466-4"><a href="#cb466-4" aria-hidden="true"></a> rendererPrototypes = {</span>
+<span id="cb466-5"><a href="#cb466-5" aria-hidden="true"></a> tilde = {Packages can specify token renderer prototypes.},</span>
+<span id="cb466-6"><a href="#cb466-6" aria-hidden="true"></a> },</span>
+<span id="cb466-7"><a href="#cb466-7" aria-hidden="true"></a>}</span>
+<span id="cb466-8"><a href="#cb466-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb466-9"><a href="#cb466-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb466-10"><a href="#cb466-10" aria-hidden="true"></a>~</span>
+<span id="cb466-11"><a href="#cb466-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb466-12"><a href="#cb466-12" aria-hidden="true"></a></span>
+<span id="cb466-13"><a href="#cb466-13" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb466-14"><a href="#cb466-14" aria-hidden="true"></a> renderers = {</span>
+<span id="cb466-15"><a href="#cb466-15" aria-hidden="true"></a> tilde = {User-defined token renderers take precedence.},</span>
+<span id="cb466-16"><a href="#cb466-16" aria-hidden="true"></a> },</span>
+<span id="cb466-17"><a href="#cb466-17" aria-hidden="true"></a>}</span>
+<span id="cb466-18"><a href="#cb466-18" aria-hidden="true"></a>~</span>
+<span id="cb466-19"><a href="#cb466-19" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb466-20"><a href="#cb466-20" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb467"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb467-1"><a href="#cb467-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Packages can specify token renderer prototypes.</p>
@@ -6195,24 +6280,24 @@ Thomas,Edison,1847</code></pre>
</blockquote>
<h5 class="unnumbered" data-number="" id="context-example-45">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
<p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb465"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb465-1"><a href="#cb465-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
-<span id="cb465-2"><a href="#cb465-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererTildePrototype</span>{<span class="co">%</span></span>
-<span id="cb465-3"><a href="#cb465-3" aria-hidden="true"></a> Packages can specify token renderer prototypes.<span class="co">%</span></span>
-<span id="cb465-4"><a href="#cb465-4" aria-hidden="true"></a>}</span>
-<span id="cb465-5"><a href="#cb465-5" aria-hidden="true"></a><span class="fu">\starttext</span></span>
-<span id="cb465-6"><a href="#cb465-6" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb465-7"><a href="#cb465-7" aria-hidden="true"></a>~</span>
-<span id="cb465-8"><a href="#cb465-8" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb465-9"><a href="#cb465-9" aria-hidden="true"></a></span>
-<span id="cb465-10"><a href="#cb465-10" aria-hidden="true"></a><span class="fu">\def\markdownRendererTilde</span>{<span class="co">%</span></span>
-<span id="cb465-11"><a href="#cb465-11" aria-hidden="true"></a> User-defined token renderers take precedence.<span class="co">%</span></span>
-<span id="cb465-12"><a href="#cb465-12" aria-hidden="true"></a>}</span>
-<span id="cb465-13"><a href="#cb465-13" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
-<span id="cb465-14"><a href="#cb465-14" aria-hidden="true"></a>~</span>
-<span id="cb465-15"><a href="#cb465-15" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
-<span id="cb465-16"><a href="#cb465-16" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
-<p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb466"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb466-1"><a href="#cb466-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
+<div class="sourceCode" id="cb468"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb468-1"><a href="#cb468-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb468-2"><a href="#cb468-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererTildePrototype</span>{<span class="co">%</span></span>
+<span id="cb468-3"><a href="#cb468-3" aria-hidden="true"></a> Packages can specify token renderer prototypes.<span class="co">%</span></span>
+<span id="cb468-4"><a href="#cb468-4" aria-hidden="true"></a>}</span>
+<span id="cb468-5"><a href="#cb468-5" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb468-6"><a href="#cb468-6" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb468-7"><a href="#cb468-7" aria-hidden="true"></a>~</span>
+<span id="cb468-8"><a href="#cb468-8" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb468-9"><a href="#cb468-9" aria-hidden="true"></a></span>
+<span id="cb468-10"><a href="#cb468-10" aria-hidden="true"></a><span class="fu">\def\markdownRendererTilde</span>{<span class="co">%</span></span>
+<span id="cb468-11"><a href="#cb468-11" aria-hidden="true"></a> User-defined token renderers take precedence.<span class="co">%</span></span>
+<span id="cb468-12"><a href="#cb468-12" aria-hidden="true"></a>}</span>
+<span id="cb468-13"><a href="#cb468-13" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb468-14"><a href="#cb468-14" aria-hidden="true"></a>~</span>
+<span id="cb468-15"><a href="#cb468-15" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb468-16"><a href="#cb468-16" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
+<p>Next, invoke LuaTeX from the terminal:</p>
+<div class="sourceCode" id="cb469"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb469-1"><a href="#cb469-1" aria-hidden="true"></a><span class="ex">context</span> document.tex</span></code></pre></div>
<p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
<blockquote>
<p>Packages can specify token renderer prototypes.</p>
diff --git a/macros/generic/markdown/markdown.pdf b/macros/generic/markdown/markdown.pdf
index 2ce9620627..b49a172384 100644
--- a/macros/generic/markdown/markdown.pdf
+++ b/macros/generic/markdown/markdown.pdf
Binary files differ
diff --git a/macros/latex/contrib/clistmap/README.md b/macros/latex/contrib/clistmap/README.md
new file mode 100644
index 0000000000..478d9d20b0
--- /dev/null
+++ b/macros/latex/contrib/clistmap/README.md
@@ -0,0 +1,6 @@
+-----------------------------------------------------------------
+##### Comma separated list partition, differentiated mapping
+- Source repository: https://github.com/rogard/clistmap
+- Released under the LaTeX Project Public License v1.3c or later
+- See http://www.latex-project.org/lppl.txt
+-----------------------------------------------------------------
diff --git a/macros/latex/contrib/clistmap/clistmap.dtx b/macros/latex/contrib/clistmap/clistmap.dtx
new file mode 100644
index 0000000000..0067c6ca92
--- /dev/null
+++ b/macros/latex/contrib/clistmap/clistmap.dtx
@@ -0,0 +1,2080 @@
+% \iffalse meta-comment
+% !TEX program = pdfLaTeX
+%<*internal>
+\iffalse
+%</internal>
+%<*readme>
+-----------------------------------------------------------------
+##### Comma separated list partition, differentiated mapping
+- Source repository: https://github.com/rogard/clistmap
+- Released under the LaTeX Project Public License v1.3c or later
+- See http://www.latex-project.org/lppl.txt
+-----------------------------------------------------------------
+%</readme>
+%<*internal>
+\fi
+\def\nameofplainTeX{plain}
+\ifx\fmtname\nameofplainTeX\else
+\expandafter\begingroup
+\fi
+%</internal>
+%<*install>
+\input l3docstrip.tex
+\keepsilent
+\askforoverwritefalse
+\preamble
+----------------------------------------------------------------------------
+clistmap --- Partition a comma separated list, map differentiatedly across
+components
+Released under the LaTeX Project Public License v1.3c or later
+See http://www.latex-project.org/lppl.txt
+----------------------------------------------------------------------------
+
+\endpreamble
+\postamble
+
+Copyright (C) 2022 by Erwann Rogard
+
+This work may be distributed and/or modified under the
+conditions of the LaTeX Project Public License (LPPL), either
+version 1.3c of this license or (at your option) any later
+version. The latest version of this license is in the file:
+
+http://www.latex-project.org/lppl.txt
+
+This work is "maintained" (as per LPPL maintenance status) by
+Erwann Rogard.
+
+This work consists of the file clistmap.dtx and the derived files:
+clistmap.sty, and clistmap.pdf.
+
+\endpostamble
+\generate{
+ \file{\jobname.sty}{\from{\jobname.dtx}{package}}
+}
+%</install>
+%<install> \endbatchfile
+%<*internal>
+\generate{
+ \file{\jobname.ins}{\from{\jobname.dtx}{install}}
+}
+\nopreamble\nopostamble
+\generate{
+ \file{README.md}{\from{\jobname.dtx}{readme}}
+}
+\ifx\fmtname\nameofplainTeX
+\expandafter\endbatchfile
+\else
+\expandafter\endgroup
+\fi
+%</internal>
+%<package> \NeedsTeXFormat{LaTeX2e}[2021-06-01]
+%<package> \RequirePackage{xparse, xtemplate, l3keys2e}[2021-06-01]
+%<package> \RequirePackage{erw-l3}[2022-01-28]
+%<package> \ProvidesExplPackage
+%<package> {clistmap} %^^A Package name
+%<package> {2022-01-29} %^^A Release date
+%<package> {1.2} %^^A Release version
+%<package> {Partition a comma separated list, %^^A Description
+%<package> map differentiatedly across components}
+%<*driver>
+\documentclass{l3doc}
+\EnableCrossrefs
+\CodelineIndex
+\RecordChanges
+% ^^A\documentclass[full, show-notes]{l3doc}
+% ^^A \listfiles
+\usepackage{amsmath, amssymb, bookmark, enumitem, mathtools, microtype, tcolorbox, xparse, clistmap}
+\usepackage[bibencoding=auto, backend=biber, sorting=ynt]{biblatex}
+\begin{filecontents*}{\jobname.bib}
+@manual{interface3,
+ title = {The \LaTeX3 interfaces},
+ author = {The \LaTeX3 Project Team},
+ year = {2019},
+ note = {\url{https://ctan.math.washington.edu/tex-archive/macros/latex/contrib/l3kernel/expl3.pdf}},
+ annote = {} }
+\end{filecontents*}
+\addbibresource{\jobname.bib}
+\usepackage[french, german, english]{babel}
+\usepackage[T1]{fontenc}
+\newlist{descr}{description}{3}
+\setlist[descr]{nosep, align=left, itemindent=0pt, font=\sffamily\tiny}
+\ProvideDocumentCommand{\docfillblank}{}{\begin{minipage}[t]{\linewidth}\end{minipage}}
+\ProvideDocumentCommand{\docpipe}{}{\textbar}
+\ProvideDocumentCommand{\docexp}{}{\texttt{e}\docpipe{}\texttt{f}\docpipe{}\texttt{x}}
+\ExplSyntaxOn
+% ^^A *** Kernel
+\cs_generate_variant:Nn\tl_map_inline:nn{e}
+% ^^A *** Sectioning
+\tl_gset:Nn \partname {Part}%^^A allows to test w/o babel
+\ExplSyntaxOff
+% ^^A *** Listing
+\tcbuselibrary{listings, breakable}
+\newtcblisting[auto counter]
+{listing}[2][]{
+ noparskip,
+ breakable,
+ colback=white,
+ colframe=black,
+ opacitybacktitle=.8,%
+ fonttitle=\bfseries,
+ title={Listing~\thetcbcounter. #1},
+ arc=0pt,
+ outer arc=0pt,
+ boxrule=1pt,
+ listing and text,
+ #2}
+\usepackage{hyperref} %^^A comes last
+\begin{document}
+\DocInput{\jobname.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \GetFileInfo{\jobname.sty}
+% \title{The \pkg{clistmap}~package\thanks{^^A
+% This file describes version \fileversion, last revised \filedate.^^A
+% }^^A
+% }
+% \author{Erwann Rogard\thanks{first.lastname at gmail.com}}
+%
+% \date{Released \filedate}
+% \begin{documentation}
+% \maketitle
+% \begin{abstract}
+% Let \meta{clist}$\doteq$\meta{e_1}|,...,|\meta{e_n}\cite[l3clist]{interface3}.
+% This package provides a key-based interface for defining templates whose job is to
+% partition \meta{clist}, and map differentiatedly across its components.
+% \cs{clistmap:nnn}\Arg{clist}|{...,|\meta{instance_i}|,...}|\meta{args} iterates over the $i$'s.
+% Implicit in \meta{instance_i} is \meta{rule sequence_i} (the template), \meta{cs name_i},
+% and \meta{signature_i}$=$\meta{args}' signature.
+% A sequence of instances can be made into a new instance:
+% |serial_math_and:N|$\doteq$|{first_math:N,serial_rest_math_and:N}|, and likewise for the second component.
+% |$\clistmap_inline:nnn{Z,C,Q,R}{serial_math_and:N}|\\|{\mathbb{#1}}$| expands to
+% \ExplSyntaxOn$\clistmap_inline:nnn{Z,C,Q,R}{serial_math_and:N}{\mathbb{#1}}$\ExplSyntaxOff.
+% \cs{clistmap:nnnn} takes an additional argument, \meta{chain}$\sim$|end|\docpipe|append|\docpipe|nest|\docpipe|join|,
+% narrowing the set of instances needed to obtain a particular behaviour.
+% \end{abstract}
+%
+% \tableofcontents
+%
+% \part{Usage}\label{part:usage}
+% \section{Overview}
+% Let \meta{clist}$\equiv$\meta{head}|,|\meta{rest}.
+% The lifecycle has four stages.
+% First, one provides templates called \emph{rule}s, parameterized by
+% \meta{rule sequence}, \meta{cs name}, and \meta{signature}.
+% Typically, a rule checks for the recursion tail\cite[l3quark]{interface3} in some combination of \meta{head} and \meta{rest},
+% based on which it does either of: stop, recurse, forward to \meta{rule sequence},
+% and in each case optionally expands \cs[no-index]{\meta{cs name}:\meta{signature}n}\Arg{args}\Arg{head}.
+% Second, one associates keys to sequences of rules, \emph{rule sequence}.
+% Those preset are |first|, |middle|, |last|, |serial_second|, and |serial_last|,
+% for which the stated expression is evaluated for each \meta{e_i} in their respective subsets.
+% Brace groups are preserved.
+% Third, one declares \emph{instance}s of combinations of
+% \meta{rule sequence}, \meta{cs name}, and \meta{signature}. For example,
+% |middle_comma:N| and |serial_middle:|
+% bind together |middle| and |,#1{#2}|, and |,~#1|, respectively.
+% Fourth, define sequences of instances under the constraint that \meta{signature} is identical across them,
+% \emph{instance sequence}s. Among presets,
+% |comma:N| and |serial:| comprise in their natural order the matches for |(?:first_apply|\docpipe|comma_middle|\docpipe|comma_last):N|,
+% and |(?:first_apply|\docpipe|serial_middle|\docpipe|serial_second|\docpipe|serial_last):|, respectively.
+% They expand to |#1{|\meta{e_1}|},...,#1{|\meta{e_n}|}|, and \meta{e_1}|,~...,~and~|\meta{e_n}, respectively.
+% \cs{clistmap:nnn} works the same with an instance sequence or the list of its constituents.
+%
+% \section{Programming}
+% \subsection{\textsf{key}}
+% \begin{function}{rule}
+% \begin{syntax}
+% \cs{clistmap_keys_set:n}|{ rule = |\Arg{key}\Arg{code}| }|
+% \end{syntax}
+% \begin{descr}
+% \item[Parameter semantics]\docfillblank
+% \begin{descr}
+% \item[\#1] \meta{rule sequence}
+% \item[\#2] \meta{cs name}
+% \item[\#3] \meta{signature}
+% \item[\#4] \meta{head is group}
+% \item[\#5] \meta{arguments}
+% \item[\#6] \meta{clist head}
+% \item[\#7] \meta{clist rest}
+% \end{descr}
+% \item[Requirement] \meta{code} is in terms of \texttt{\#1-\#7}
+% \end{descr}
+% \end{function}
+% \begin{function}{rule_if_rest_is_tail_eval_else, rule_if_empty_stop_else}
+% \begin{syntax}
+% \cs{clistmap_keys_set:n}|{ rule_if_rest_is_tail_eval_else = |\Arg{name}\Arg{code}| }|
+% \end{syntax}
+% \begin{descr}
+% \item[Semantics] Specialization of |rule|
+% \end{descr}
+% \end{function}
+% \begin{function}{rule_sequence}
+% \begin{syntax}
+% \cs{clistmap_keys_set:n}|{ rule_sequence = {...,|\meta{key_j} = |{ ...|\Arg{rule_i}|...},...} }|
+% \end{syntax}
+% \end{function}
+% \begin{function}{instance}
+% \begin{syntax}
+% \cs{clistmap_keys_set:n}|{ instance = { |\meta{key prefix}| = |\Arg{rule sequence}\Arg{cs name}\Arg{signature}| } }|
+% \end{syntax}
+% \begin{descr}
+% \item[Semantics] Associates \cs{clistmap_instance_key:nn}\Arg{key prefix}\Arg{signature} with the RHS of \meta{key prefix}| = |
+% \end{descr}
+% \end{function}
+% \begin{function}{instance_sequence}
+% \begin{syntax}
+% \cs{clistmap_keys_set:n}|{ instance_sequence = { |\meta{key} = |{ ...,|\meta{instance_i}|,...},... } }|
+% \end{syntax}
+% \end{function}
+% \subsection{\textsf{cs}}
+% \begin{function}{clistmap_keys_set:n}
+% \begin{syntax}
+% \cs{clistmap_keys_set:n}\Arg{keyval list}
+% \end{syntax}
+% \end{function}
+% \begin{function}[EXP]{\clistmap_info_clist:nn, \clistmap_info_prop:nn}
+% \begin{syntax}
+% \cs{clistmap_info_clist:nn}\Arg{key}\Arg{code}
+% \end{syntax}
+% \begin{descr}
+% \item[Note] Used for generating this doc
+% \end{descr}
+% \end{function}
+% \begin{function}[EXP]
+% {\clistmap_signature:n,
+% \clistmap_instance_key:nn}
+% \begin{syntax}
+% \cs{clistmap_instance_key:n}\Arg{key prefix}\Arg{signature}
+% \end{syntax}
+% \begin{descr}
+% \item[Expands to] \meta{key prefix}|:|\meta{signature}
+% \end{descr}
+% \end{function}
+% \begin{function}[EXP]
+% { \clistmap_instance_sequence_p:n,
+% \clistmap_instance_p:n }
+% \begin{syntax}
+% \cs{clistmap_instance_p:n}\Arg{key}
+% \end{syntax}
+% \begin{descr}
+% \item[Semantics] Whether the instance has been registered
+% \end{descr}
+% \end{function}
+% \begin{function}[EXP]
+% {\clistmap_use_w:nnnn,
+% \clistmap_use_w:nnnnn,
+% \clistmap_use_w_group:nnnnnn }
+% \begin{syntax}
+% \cs{clistmap_use_w:nnnnn}
+% \Arg{rule}
+% \Arg{rule sequence (internal) }
+% \Arg{cs name}
+% \Arg{signature}
+% \Arg{head is group}\meta{more}\cs[no-index]{q_recursion_stop}
+% \end{syntax}
+% \begin{descr}
+% \item[Semantics] Evaluates \meta{code} associated with \meta{rule}
+% \item[Note] For use inside \meta{code} on the RHS of | rule = |\meta{rule bis}\meta{code}
+% \end{descr}
+% \end{function}
+% \begin{function}[EXP]
+% {\clistmap_bound_cs_group:nnnnn}
+% \begin{syntax}
+% \cs{clistmap_bound_cs_group:nnnnn}
+% \Arg{cs name}
+% \Arg{signature}
+% \Arg{group}
+% \Arg{args}
+% \Arg{elem}
+% \end{syntax}
+% \begin{descr}
+% \item[Definition] \meta{new elem}$=$|\bool_if:nTF|\Arg{group}|{|\Arg{elem}|}{|\meta{elem}|}|
+% \item[Semantics] \cs{\meta{cs name}:\meta{signature}}\meta{args}\Arg{new elem}
+% \item[Note] For use in conjunction with \cs{clistmap_use_w:nnnnn} and variants
+% \end{descr}
+% \end{function}
+% \begin{function}[EXP]
+% {\clistmap:nnn}
+% \begin{syntax}
+% \cs{clistmap:nnn}\Arg{clist}|{ ...,|\meta{instance_i}|,... }|\Arg{args}
+% \cs{clistmap:nnn}\Arg{clist}|{ ...,|\meta{instance sequence_i}|,... }|\Arg{args}
+% \end{syntax}
+% \begin{descr}
+% \item[Requirement]\docfillblank
+% \begin{description}
+% \item \meta{clist} has no trailing |,|
+% \item \meta{args} has signature \cs{clistmap_signature:n}\Arg{instance_i}
+% \end{description}
+% \item[Expands to]\docfillblank
+% \begin{descr}
+% \item[First version] For each $i$, the \meta{code} associated with \meta{rule_i}.
+% \item[Second version] Iterates over the constituents of \meta{rule sequence_i}
+% \end{descr}
+% \end{descr}
+% \end{function}
+% \begin{function}{\clistmap_inline:nnn}
+% \begin{syntax}
+% \cs{clistmap_inline:nnn}|{ ...,|\meta{instance_i}|,... }|\Arg{code}
+% \begin{descr}
+% \item[Requirement] \cs{clistmap_signature:n}\Arg{instance_i}$=$|N|
+% \end{descr}
+% \end{syntax}
+% \end{function}
+% \begin{function}[EXP]
+% {\clistmap:nnnn}
+% \begin{syntax}
+% \cs{clistmap:nnnn}\Arg{clist}\Arg{instances}\Arg{args}\Arg{end}
+% \cs{clistmap:nnnn}\Arg{clist}\Arg{instances}\Arg{args}\Arg{append}
+% \cs{clistmap:nnnn}\Arg{clist}\Arg{instances}\Arg{args}\Arg{nest}
+% \cs{clistmap:nnnn}\Arg{clist_1}\Arg{instances}\Arg{args}\Arg{join}\Arg{clist_2}
+% \end{syntax}
+% \begin{descr}
+% \item[Semantics]\docfillblank
+% \begin{descr}
+% \item[end] \cs{clistmap:nnn}\Arg{clist}\Arg{instances}\Arg{args}
+% \item[append] \meta{end}\cs{clistmap:nnnn}\Arg{clist}
+% \item[nest] \cs{clistmap:nnnn}\Arg{end}
+% \item[join] \cs{clistmap:nnnn}|{|\meta{end},\meta{clist_2}|}|
+% \end{descr}
+% \end{descr}
+% \end{function}
+% \begin{function}[EXP]
+% {\clistmap_inline:nnnn}
+% \begin{syntax}
+% \cs{clistmap_inline:nnnn}\Arg{clist}\Arg{instances}\Arg{code}\Arg{chain}
+% \end{syntax}
+% \begin{descr}
+% \item[Requirement] \cs{clistmap_signature:n}\Arg{instance_i}$=$|empty| or |N|
+% \end{descr}
+% \end{function}
+% \clearpage
+% \part{Listing}\label{part:listing}
+%
+% \section{Using keys}
+% \addcontentsline{toc}{subsection}{\texttt{rule}}
+% \iffalse
+%<*guardlisting>
+% \fi
+\begin{listing}[\texttt{rule}]
+ {label=lst:opt:rule,listing only}
+ \clistmap_keys_set:n
+ {%
+ rule = {if_rest_is_tail_stop_else_forward_rest}
+ {%
+ \quark_if_recursion_tail_stop:n{#7}
+ \clistmap_use_w:nnne
+ {#1}{#2}{#3}
+ {\tl_if_head_is_group_p:n{#7}}#5#7\q_recursion_stop
+ }
+ }
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+%
+% \addcontentsline{toc}{subsection}{\texttt{rule_sequence}}
+% \iffalse
+%<*guardlisting>
+% \fi
+\begin{listing}[\texttt{rule_sequence}]
+ {label=lst:opt:ruleseq, listing only}
+ \clistmap_keys_set:n
+ {
+ rule_sequence =
+ {
+ first =
+ {
+ {if_empty_stop_else_forward_head}
+ {if_rest_is_tail_eval_else_error}
+ }
+ }
+ }
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+%
+% \addcontentsline{toc}{subsection}{\texttt{instance}}
+% \iffalse
+%<*guardlisting>
+% \fi
+\begin{listing}[\texttt{instance}]
+ {label=lst:opt:inst, listing only}
+ \clistmap_keys_set:n
+ {
+ instance =
+ {
+ {N}{first_apply}{first}{@@_apply},
+ {}{first_apply}{first}{@@_apply}
+ }
+ }
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+%
+% \addcontentsline{toc}{subsection}{\texttt{instance_sequence}}
+% \iffalse
+%<*guardlisting>
+% \fi
+\begin{listing}[\texttt{instance_sequence}]
+ {label=lst:opt:inst_seq, listing only}
+ \clistmap_keys_set:n
+ {%
+ instance_sequence =
+ {
+ {N}{comma:}{first_apply:, rest_comma:},
+ {}{serial_and:}{first_apply:, serial_rest_and:},
+ }
+ }
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+% \section{Preset keys}
+% \addcontentsline{toc}{subsection}{\texttt{rule}}
+% \iffalse
+%<*guardlisting>
+% \fi
+\begin{listing}[\texttt{rule}]{label=lst:preset:rule, text only}
+ \ExplSyntaxOn
+ \begin{descr}
+ \clistmap_info_clist:nn{rule}{\item[#1]}
+ \end{descr}
+ \ExplSyntaxOff
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+%
+% \addcontentsline{toc}{subsection}{\texttt{rule_sequence}}
+% \iffalse
+%<*guardlisting>
+% \fi
+% \begin{listing}[\texttt{rule_sequence}]{label=lst:preset:rule_sequence, text only}
+\ExplSyntaxOn
+\begin{descr}
+ \tl_map_inline:en
+ { \clistmap_info_prop:n{rule_sequence}}{\item[\use_i:nn#1]}
+\end{descr}
+\ExplSyntaxOff
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+%
+% \addcontentsline{toc}{subsection}{\texttt{instance}}
+% \iffalse
+%<*guardlisting>
+% \fi
+\begin{listing}[\texttt{instance}]{label=lst:preset:instance, text only}
+ \ExplSyntaxOn
+ \begin{descr}
+ \tl_map_inline:en
+ { \clistmap_info_prop:n{instance} }
+ { \item[\use_i:nn#1]\docfillblank }
+ \end{descr}
+ \ExplSyntaxOff
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+%
+% \addcontentsline{toc}{subsection}{\texttt{instance_sequence}}
+% \iffalse
+%<*guardlisting>
+% \fi
+\begin{listing}[\texttt{instance_sequence}]{label=lst:preset:instance_sequence, text only}
+ \ExplSyntaxOn
+ \begin{descr}
+ \tl_map_inline:en
+ { \clistmap_info_prop:n{instance_sequence} }
+ { \item[\use_i:nn#1]\docfillblank }
+ \end{descr}
+ \ExplSyntaxOff
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+%
+% \section{\textsf{cs}}
+% \subsection{\textsf{plain}}
+% \addcontentsline{toc}{subsection}{\texttt{math}}
+% \iffalse
+%<*guardlisting>
+% \fi
+\begin{listing}[\texttt{math}]{label=lst:cs:math}
+ \ExplSyntaxOn
+ \clistmap:nnn{Z, C, Q, R}
+ { first_math:N, serial_rest_math_and:N }
+ {\mathbb}
+ \ExplSyntaxOff
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+%
+% \subsection{\textsf{chain}}
+% \addcontentsline{toc}{subsection}{\texttt{append}}
+% \iffalse
+%<*guardlisting>
+% \fi
+\begin{listing}[\texttt{append}]{label=lst:cs:append}
+ \ExplSyntaxOn
+ \clistmap_inline:nnnn
+ {{J,u,l,e,s},Jim,Catherine}
+ {first_map:N}
+ {#1}
+ {append}
+ {middle_comma:N}
+ {~#1}
+ {append}
+ {%^^A
+ serial_second:N,%^^A ignored in this case
+ serial_last:N
+ }
+ {~et~#1}
+ {end}
+ \ExplSyntaxOff
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+%
+% \addcontentsline{toc}{subsection}{\texttt{nest}}
+% \iffalse
+%<*guardlisting>
+% \fi
+\begin{listing}[\texttt{nest}]{label=lst:cs:nest}
+ \ExplSyntaxOn
+ \noindent
+ \clistmap_inline:nnnn
+ {{foo},{bar,baz},{qux}}
+ {comma_unbrace:}
+ {}
+ {nest}
+ {newline:}
+ {}
+ {end}
+ \ExplSyntaxOff
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+%
+% \addcontentsline{toc}{subsection}{\texttt{join}}
+% \iffalse
+%<*guardlisting>
+% \fi
+\begin{listing}[\texttt{join}]{label=lst:cs:join}
+ \ExplSyntaxOn
+ \clistmap_inline:nnnn
+ {foo,bar}
+ {comma:}
+ {}
+ {join}
+ {baz}
+ {comma:}
+ {}
+ {end}
+ \ExplSyntaxOff
+\end{listing}
+% \iffalse
+%</guardlisting>
+% \fi
+%
+%
+% \part{Other}
+% \section{Bibliograhy}
+% \printbibliography[heading=none]
+% \section{To do}\label{other:bug}
+% \begin{enumerate}
+% \item ``Warning: A control sequence of the form ...__clistmap''
+% That's because of the way \cs[no-index]{__clist_instance_name:nn} is set up,
+% and passing to it an internal control sequence. So?
+% Modify \cs[no-index]{__clist_instance_name:nn}.
+% \end{enumerate}
+% \section{Support}\label{other:support}
+%
+% This package is available from \url{https://github.com/rogard/clistmap}.
+%
+% \changes{v1.0}
+% {2022/01/27}
+% {Initial version}
+% \changes{v1.1}
+% {2022/01/28}
+% {Updated dependency to erw-l3 (from 4.1 to 4.2)}
+% \changes{v1.2}
+% {2022/01/29}
+% {Pkg name change}
+%
+% \StopEventually{
+% \clearpage
+% \PrintChanges
+% \PrintIndex %^^A https://tex.stackexchange.com/q/610349/112708
+% }
+%
+% \end{documentation}
+% \begin{implementation}
+% \part{Implementation}\label{part:implem}
+% \begin{macrocode}
+%<*package>
+%<@@=clistmap>
+% \ExplSyntaxOn
+% \end{macrocode}
+% \section{\textsf{boilerplate}}
+% \begin{macro}{\clistmap_keys_set:n, \clistmap_info_clist:nn}
+% \begin{macrocode}
+\cs_generate_variant:Nn\str_if_eq:nnTF{e}
+\cs_generate_variant:Nn\tl_to_str:n{e}
+\cs_generate_variant:Nn\prop_gput:Nnn{Nee}
+\cs_generate_variant:Nn\erw_parameter:n{e}
+\cs_generate_variant:Nn\erw_argument:nn{ne}
+\cs_generate_variant:Nn\erw_parameter:nn{ne}
+\cs_generate_variant:Nn\erw_clist_tl:nn{ne}
+\cs_new:Npn\@@_empty:w#1\q_recursion_stop{}
+\clist_new:N\@@_helper_clist
+\cs_new_protected:Nn
+\clistmap_keys_set:n{ \keys_set:nn{ @@ }{ #1 } }
+\prop_new:N\@@_info_clist_prop
+\cs_new_protected:Npn
+\@@_info_clist_put:nn
+#1 % <key>
+#2 % <name:signature>
+{\prop_gput:Nnn\@@_info_clist_prop{#1}{#2}}
+\cs_new_protected:Npn
+\clistmap_info_clist:nn
+#1 % <key>
+#2 % <code>
+{\clist_map_inline:cn{\prop_item:Nn\@@_info_clist_prop{#1}}{#2}}
+\prop_new:N\@@_info_prop_prop
+\cs_new_protected:Npn
+\@@_info_prop_put:nn
+#1 % <key>
+#2 % <name:signature>
+{\prop_gput:Nnn\@@_info_prop_prop{#1}{#2}}
+\cs_new:Nn
+\@@_brace:nn{{{#1}{#2}}}
+\cs_new:Npn
+\clistmap_info_prop:n
+#1 % <key>
+{ \prop_map_function:cN
+ {\prop_item:Nn\@@_info_prop_prop{#1}}\@@_brace:nn }
+\cs_new:Npn
+\clistmap_info_prop:nn
+#1 % <key>
+#2 % <code>
+{ \prop_map_inline:cn
+ {\prop_item:Nn\@@_info_prop_prop{#1}}{#2} }
+\cs_new:Nn
+\@@_group_if:nn
+{\bool_if:nTF{#2}{{#1}}{#1}}
+\cs_generate_variant:Nn\@@_group_if:nn{e}
+\cs_new:Nn
+\@@_head_clist:n
+{%
+ \exp_args:Ne
+ \tl_head:n
+ { \clist_map_function:nN{#1}\@@_head_clist_aux:n }
+}
+\cs_new:Nn
+\@@_head_clist_aux:n{#1}
+% \end{macrocode}
+% \end{macro}
+% \section{\textsf{name}}
+% \begin{macro}
+% {
+% \@@_rule_name:n,
+% \@@_instance_name:nnn,
+% \@@_instance_signature:n,
+% \@@_rule_sequence_name:n
+% }
+% \begin{macrocode}
+\cs_new:Npn
+\@@_rule_name:n
+#1 % <rules>
+{rule_#1}
+\cs_new:Npn
+\@@_instance_name:nn
+#1 % <rules>
+#2 % <cs name>
+{instance_#1_#2}
+\cs_new:Npn
+\@@_instance_name:nnn
+#1 % <rule>
+#2 % <next rules>
+#3 % <cs name>
+{\@@_instance_name:nn{#1_#2}{#3}}
+\cs_new:Npn
+\@@_instance_signature:n
+#1 % <signature>
+{n#1w}
+% \end{macrocode}
+% \end{macro}
+% \section{\textsf{c}}
+% \begin{macrocode}
+\cs_new:Npn
+\@@_c:n
+#1 % <name>
+{@@_#1}
+\cs_generate_variant:Nn\@@_c:n{e}
+\cs_new:Npn
+\@@_c:nn
+#1 % <name>
+#2 % <signature>
+{\@@_c:n{#1:#2}}
+\cs_generate_variant:Nn\@@_c:nn{e, ee}
+\cs_new:Npn
+\@@_bound_cs_c:nn
+#1 % <name>
+#2 % <signature>
+{#1:#2n}
+\cs_new:Npn
+\@@_rule_c:n
+#1 % <rule>
+{%
+ \@@_c:en
+ {\@@_rule_name:n{#1}}
+ {nnnnnnnn}
+}
+\cs_new:Npn
+\@@_instance_c:nn
+#1 % <rules>
+#2 % <cs name>
+{ \@@_c:e
+ { \@@_instance_name:nn{#1}{#2} } }
+\cs_generate_variant:Nn\@@_instance_c:nn{e}
+\cs_new:Npn
+\@@_instance_c:nnn
+#1 % <rules>
+#2 % <cs name>
+#3 % <signature>
+{%
+ \@@_c:ee
+ { \@@_instance_name:nn{#1}{#2} }
+ { \@@_instance_signature:n{#3} }
+}
+\cs_generate_variant:Nn\@@_instance_c:nnn{e, nne}
+\cs_new:Npn
+\@@_instance_c_this:nnnn
+#1 % <rule>
+#2 % <next rules>
+#3 % <cs name>
+#4 % <signature>
+{ \@@_instance_c:enn
+ {\@@_rule_link:nn{#1}{#2}}{#3}{#4} }
+% \end{macrocode}
+% \section{\textsf{rule_link}}
+% \begin{macrocode}
+\cs_new:Npn
+\@@_rule_link:nn
+#1 % <rule 1>
+#2 % <rule 2>
+{#1_#2}
+\cs_new:Npn
+\@@_rule_link:n
+#1 % <{rule{1}}...>
+{%
+ \@@_rule_link:w#1\q_recursion_tail\q_recursion_stop
+}
+\cs_generate_variant:Nn\@@_rule_link:n{e}
+\cs_new:Npn
+\@@_rule_link:w
+#1
+\q_recursion_stop
+{%
+ \quark_if_recursion_tail_stop:n{#1}
+ \@@_rule_link:nw #1 \q_recursion_stop}
+\cs_new:Npn
+\@@_rule_link:nw
+#1 % <rules>
+#2 % <{rule{1}}...>
+\q_recursion_stop
+{%
+ \quark_if_recursion_tail_stop_do:nn{#2}{#1}
+ \@@_rule_link:nnw{#1}#2\q_recursion_stop}
+\cs_generate_variant:Nn\@@_rule_link:nw{e}
+\cs_new:Npn
+\@@_rule_link:nnw
+#1 % <rules>
+#2 % <rule{1}>
+#3 % <{rule{2}}...>
+\q_recursion_stop
+{%
+ \@@_rule_link:ew
+ {%
+ \@@_rule_link:nn
+ {#1} % <rule 1>
+ {#2} % <rule 2>
+ } % <rules>
+ #3 % <{rule{1}}...>
+ \q_recursion_stop
+}
+% \end{macrocode}
+% \section{\textsf{inline}}
+% \begin{macrocode}
+\cs_new_protected:Nn
+\@@_inline_set_exp_nnnot:Nn
+{\cs_set:Nn#1
+ {\exp_not:n
+ {\exp_not:n
+ {\exp_not:n{#2}}}}}
+\cs_generate_variant:Nn\@@_inline_set_exp_nnnot:Nn{c}
+\cs_new:Nn\@@_inline_c:n{@@_#1:n}
+\cs_new:Nn\@@_inline_use:n
+{%^^A BUG
+ \use:c{\@@_inline_c:n{#1}}}
+\cs_new_protected:Nn
+\@@_inline_set_exp_nnnot:nn
+{\@@_inline_set_exp_nnnot:cn
+ {\@@_inline_c:n{#1}}{#2}}
+\msg_new:nnn{@@}
+{inline-empty-N}
+{instance~signature~must~be~empty~or~N;~got~'#1'}
+\msg_new:nnn{@@}
+{inline-empty-args}
+{instance~signature=empty;~so~should~args=#1}
+% \end{macrocode}
+% \section{\textsf{eval}}
+% \begin{macro}
+% {\clistmap:nnn, \clistmap_inline:nnn}
+% \begin{macrocode}
+\msg_new:nnn{@@}{key}
+{no~match~for~#1~in~instance~or~instance~sequence}
+\msg_new:nnn{@@}{signature-mismatch}
+{instance~signature~must~be~#1;~instances:~#2}
+\cs_new_protected:Npn
+\clistmap_inline:nnn
+#1 % <clist>
+#2 % <instances>
+#3 % <empty|code using #1>
+{%^^A
+ \bool_if:nTF
+ { \__clistmap_instance_signature_p:nn{#2}{N} }
+ {%^^A
+ \__clistmap_inline_set_exp_nnnot:nn{a}{#3}
+ \clistmap:nnn
+ {#1} % <clist>
+ {#2} % <key 1>
+ {\__clistmap_a:n}
+ }
+ {%^^A
+ \bool_if:nTF
+ { \__clistmap_instance_signature_p:nn{#2}{} }
+ {%^^A
+ \tl_if_empty:nTF
+ {#3}
+ {%^^A
+ \clistmap:nnn
+ {#1} % <clist>
+ {#2} % <key 1>
+ {}
+ }
+ {%^^A
+ \msg_error:nnnn{__clistmap}
+ {inline-empty-args}
+ {#3}
+ }
+ }
+ {%^^A
+ \msg_error:nnnn{__clistmap}
+ {inline-empty-N}
+ {#2}
+ }
+ }
+}
+\cs_new:Npn
+\clistmap:nnn
+% ^^A Warning: trailing ',' inside #2 => Error
+#1 % <clist>
+#2 % <key,...>
+#3 % <arguments>
+{%
+ \@@_eval:nenn
+ {#2} % <instance key>,...
+ {\tl_if_head_is_group_p:n{#1}} % <head is group>
+ {#3} % <arguments>
+ {#1} % <clist>
+}
+\cs_generate_variant:Nn\clistmap:nnn{e,f,x}
+\cs_new:Npn
+\@@_eval:nnnn
+#1 % <instance key>,...
+#2 % <head is group>
+#3 % <arguments>
+#4 % <clist>
+{%
+ \exp_args:Ne
+ \@@_eval_aux:nnnn
+ {\@@_instance_expand:n{#1}}
+ {#2} % <head is group>
+ {#3} % <arguments>
+ {#4} % <clist>
+}
+\cs_new:Npn
+\@@_eval_aux:nnnn
+#1 % <instance key>,...
+#2 % <head is group>
+#3 % <arguments>
+#4 % <clist>
+{%
+ \@@_eval:nnnw
+ {#2} % <head is group>
+ {#3} % <arguments>
+ {#4} % <clist>
+ #1 % <instance key>,...
+ , \q_recursion_tail
+ \q_recursion_stop
+}
+\cs_generate_variant:Nn\@@_eval:nnnn{ ne }
+\cs_new:Npn
+\@@_eval:nnnw
+#1 % <head is group>
+#2 % <arguments>
+#3 % <clist>
+#4 % <instance key>
+\q_recursion_stop
+{%
+ \quark_if_recursion_tail_stop:n{#4}
+ \@@_eval:nnnnw
+ {#1} % <head is group>
+ {#2} % <arguments>
+ {#3} % <clist>
+ #4 % <instance key>
+ \q_recursion_stop
+}
+\cs_new:Npn
+\@@_eval:nnnnw
+#1 % <head is group>
+#2 % <arguments>
+#3 % <clist>
+#4 % <instance key>
+, #5 % <instance key,...>
+\q_recursion_stop
+{%
+ \exp_last_unbraced:Ne
+ \@@_eval:nnnnnn
+ { \@@_instance_get:n{#4} }
+ {#1}{#2}{#3}
+ \@@_eval:nnnw
+ {#1} % <head is group>
+ {#2} % <arguments>
+ {#3} % <clist>
+ #5 % <instance key>
+ \q_recursion_stop
+}
+\cs_new:Npn
+\@@_eval:nnnnnn
+#1 % <rule sequence>
+#2 % <cs name>
+#3 % <signature>
+#4 % <head is group>
+#5 % <arguments>
+#6 % <clist>
+{%
+ \exp_args:Ne
+ \clistmap_use_w:nnnn
+ { \@@_rule_sequence_name:n{#1} } % <rule sequence>
+ {#2} % <cs name>
+ {#3} % <signature>
+ {#4} % <head is group>
+ #5
+ #6, \q_recursion_tail\q_recursion_stop
+}
+% \end{macrocode}
+% \end{macro}
+% \section{\textsf{chain}}
+% \begin{macrocode}
+\msg_new:nnn{@@}
+{chain}{unknown~chain~tag~#1}
+\cs_new_protected:Npn
+\@@_append:NNN
+#1 % <new>
+#2 % <\@@_append(?:_inline):nnn>
+#3 % <\clistmap(?_inline):nnnn>
+{%^^A
+ #1
+ #2
+ {%^^A
+ \clistmap:nnn{##1}{##2}{##3}
+ #3{##1}
+ }
+}
+\@@_append:NNN
+\cs_new:Nn
+\@@_append:nnn
+\clistmap:nnnn
+\@@_append:NNN
+\cs_new_protected:Nn
+\@@_append_inline:nnn
+\clistmap_inline:nnnn
+\cs_new_protected:Npn
+\@@_nest:NNN
+#1 % <new>
+#2 % <\@@_nest(?:_inline):nnn>
+#3 % <\clistmap(?_inline):nnnn>
+{%^^A
+ #1
+ #2
+ {%^^A
+ \exp_args:Ne
+ #3{ \clistmap:nnn{##1}{##2}{##3} }
+ }
+}
+\@@_nest:NNN
+\cs_new:Nn
+\@@_nest:nnn
+\clistmap:nnnn
+\@@_nest:NNN
+\cs_new_protected:Nn
+\@@_nest_inline:nnn
+\clistmap_inline:nnnn
+\cs_new_protected:Npn
+\@@_join:NNNN
+#1 % <new>
+#2 % <\@@_join(?:_inline):nnnn>
+#3 % <\@@_join(?:_inline):nnn>
+#4 % <\clistmap(?_inline):nnnn>
+{%^^A
+ #1
+ #2
+ { #4{##1,##2}{##3}{##4} }
+ #1
+ #3
+ { #2{\clistmap:nnn{##1}{##2}{##3}} }
+}
+\@@_join:NNNN
+\cs_new:Nn
+\@@_join:nnnn
+\@@_join:nnn
+\clistmap:nnnn
+\@@_join:NNNN
+\cs_new_protected:Nn
+\@@_join_inline:nnnn
+\@@_join_inline:nnn
+\clistmap_inline:nnnn
+\cs_new_protected:Npn
+\@@_chain:NNNNN
+#1 % <new>
+#2 % <@@_chain(?:_inline):nnnn>
+#3 % <@@_append(?:_inline):nnn>
+#4 % <@@_nest(?:_inline):nnn>
+#5 % <@@_join(?:_inline):nnn>
+{%^^A
+ #1
+ #2
+ {%^^A
+ \str_case:nnTF
+ {##4}
+ {%^^A
+ {end}
+ { \clistmap:nnn{##1}{##2}{##3} }
+ {append}
+ { #3{##1}{##2}{##3} }
+ {nest}
+ { #4{##1}{##2}{##3} }
+ {join}
+ { #5{##1}{##2}{##3} }
+ }
+ {}
+ { \msg_error:nnn{@@}{chain}{##4} }
+ }
+}
+\@@_chain:NNNNN
+\cs_new:Nn
+\clistmap:nnnn
+\@@_append:nnn
+\@@_nest:nnn
+\@@_join:nnn
+\@@_chain:NNNNN
+\cs_new_protected:Nn
+\@@_inline_aux:nnnn
+\@@_append_inline:nnn
+\@@_nest_inline:nnn
+\@@_join_inline:nnn
+\cs_new_protected:Npn
+\clistmap_inline:nnnn
+#1 % <clist>
+#2 % <inst>
+#3 % <args>
+#4 % <chain>
+{%^^A
+ \bool_if:nTF
+ { \@@_instance_signature_p:nn{#2}{N} }
+ {%^^A
+ \@@_inline_set_exp_nnnot:nn{a}{#3}
+ \@@_inline_aux:nnnn{#1}{#2}{\@@_a:n}{#4}
+ }
+ { \@@_inline_aux:nnnn{#1}{#2}{}{#4} }
+}
+% \end{macrocode}
+% \section{\textsf{use_w}}\label{sec:code}
+% \begin{macro}
+% {
+% \clistmap_use_w_group:nnnnnn,
+% \clistmap_use_w:nnnn,
+% \clistmap_use_w:nnnnn
+% }
+% For use inside \meta{code} inside \nameref{sec:rule}
+% \begin{macrocode}
+\cs_new:Npn
+\clistmap_use_w_group:nnnnnn
+#1 % <rule sequence>
+#2 % <cs name>
+#3 % <signature>
+#4 % <head is group>
+#5 % <arguments>
+#6 % <clist head>
+{%
+ \clistmap_use_w:nnnn
+ {#1}{#2}{#3}
+ {#4}#5{#6}
+}
+\cs_new:Npn
+\clistmap_use_w:nnnn
+#1 % <rule sequence>
+#2 % <cs name>
+#3 % <signature>
+#4 % <head is group>
+{%
+ \use:c{ \@@_instance_c:nnn{#1}{#2}{#3} }{#4}
+}
+\cs_generate_variant:Nn\clistmap_use_w:nnnn{nnne}
+\cs_new:Npn
+\clistmap_use_w:nnnnn
+#1 % <rule>
+#2 % <next rule sequence>
+#3 % <cs name>
+#4 % <signature>
+#5 % <head is group>
+{%
+ \use:c{%
+ \@@_instance_c_this:nnnn
+ {#1} % <rule>
+ {#2} % <next rules>
+ {#3} % <cs name>
+ {#4} % <signature>
+ }{#5}
+}
+\cs_generate_variant:Nn\clistmap_use_w:nnnnn{nnnne}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}
+% { \clistmap_bound_cs_group:nnnnn }
+% \begin{macrocode}
+\cs_new:Npn
+\clistmap_bound_cs_group:nnnnn
+#1 % <cs name>
+#2 % <signature>
+#3 % <group (bool)>
+#4 % <arguments>
+#5 % <clist>
+{\@@_bound_cs:nnne{#1}{#2}{#4}{\bool_if:nTF{#3}{{#5}}{#5}}}
+\cs_generate_variant:Nn\clistmap_bound_cs_use_group:nnnnn{nnenn}
+\cs_new:Npn
+\@@_bound_cs:nnnn
+#1 % <cs name>
+#2 % <signature>
+#3 % <arguments>
+#4 % <clist>
+{ \use:c{\@@_bound_cs_c:nn{#1}{#2}}#3{#4} }
+\cs_generate_variant:Nn\@@_bound_cs:nnnn{nnne}
+% \end{macrocode}
+% \end{macro}
+% \section{\textsf{rule}}\label{sec:rule}
+% \begin{macro}{rule}
+% \begin{macrocode}
+\keys_define:nn{ @@ }
+{ rule.code:n = \@@_rule:nn#1 }
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\@@_rule:nn}
+% \begin{macrocode}
+\prop_new:N\@@_rule_clist
+\@@_info_clist_put:nn{rule}{@@_rule_clist}
+\cs_new_protected:Npn
+\@@_rule:nn
+#1 % <rule>
+#2 % <code>
+{%
+ \clist_gput_right:Nn\@@_rule_clist{#1}
+ \exp_args:Nno
+ \cs_new_protected:cn
+ { \@@_rule_c:n{#1} }
+ {%
+ \@@_rule_apply:nnnnnnnn
+ {#1} % {<rule>}
+ {#2} % {<code>}
+ {##1} % <next rule>
+ {##2} % <cs name>
+ {##3} % <signature>
+ {{##4}{##5}{##6}} % <head is group>
+ % ^^A <arguments>
+ % ^^A <clist head>
+ {##7} % <clist rest>
+ {##8} % <parameters}
+ }
+}
+% ^^A ##1 % <next rules>
+% ^^A ##2 % <cs name>
+% ^^A ##3 % <signature>
+% ^^A ##4 % <head is group>
+% ^^A ##5 % <arguments>
+% ^^A ##6 % <clist head>
+% ^^A ##7 % <clist rest>
+% ^^A ##8 % <parameters>
+\cs_new_protected:Npn
+\@@_rule_apply:nnnnnnnn
+#1 % <rule>
+#2 % <code>
+#3 % <next rules>
+#4 % <cs name>
+#5 % <signature>
+#6 % {<head is group>}{<arguments>}{<clist head>}
+#7 % <clist rest>
+#8 % <parameters>
+{%
+ \@@_rule_apply:ennnnnn
+ {\@@_instance_c_this:nnnn{#1}{#3}{#4}{#5}}
+ {#2}#6{#7}{#8}
+}
+\cs_new_protected:Npn
+\@@_rule_apply:nnnnnnn
+#1 % <instance>
+#2 % <code>
+#3 % <head is group>
+#4 % <arguments>
+#5 % <clist head>
+#6 % <clist rest>
+#7 % <parameters>
+{%
+ \cs_if_exist:cF{#1}
+ {%^^A
+ \cs_new:cpn{#1}
+ #3#7#5, #6\q_recursion_stop % <parameters>
+ {#2}
+ }
+}
+\cs_generate_variant:Nn\@@_rule_apply:nnnnnnn{e}
+% \end{macrocode}
+% \end{macro}
+% \section{\textsf{rule template}}
+% \begin{macrocode}
+\cs_new:Nn
+\@@_quark_if_recursion_tail_stop:nn
+{\quark_if_recursion_tail_stop:n{#1#2}}
+\cs_generate_variant:Nn\@@_quark_if_recursion_tail_stop:nn{e}
+% \end{macrocode}
+% \begin{macro}
+% {rule_if_rest_is_tail_eval_else}
+% \begin{macrocode}
+\keys_define:nn{ @@ }
+{%
+ rule_if_rest_is_tail_eval_else.code:n
+ = {\@@_rule_if_rest_is_tail_eval_else:nn#1}
+}
+\cs_new_protected:Npn
+\@@_rule_if_rest_is_tail_eval_else:nn
+#1 % <name>
+#2 % <else code>
+{%
+ % ^^A ##1 % <next rules>
+ % ^^A ##2 % <cs name>
+ % ^^A ##3 % <signature>
+ % ^^A ##4 % <head is group>
+ % ^^A ##5 % <arguments>
+ % ^^A ##6 % <clist head>
+ % ^^A ##7 % <clist rest>
+ % ^^A ##8 % <parameters>
+ \clistmap_keys_set:n
+ {%
+ rule = {if_rest_is_tail_eval_else_#1}
+ {%
+ \quark_if_recursion_tail_stop_do:nn{##7}
+ {%
+ \clistmap_bound_cs_group:nnnnn
+ {##2} % <cs name>
+ {##3} % <signature>
+ {##4} % <head is group>
+ {##5} % <arguments>
+ {##6} % <clist>
+ }
+ #2
+ }
+ }
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{rule_if_empty_stop_else}
+% \begin{macrocode}
+\keys_define:nn
+{ @@ }
+{
+ rule_if_empty_stop_else.code:n
+ = {\@@_rule_if_empty_stop_else:nn#1}
+}
+\cs_new_protected:Npn
+\@@_rule_if_empty_stop_else:nn
+#1 % <name>
+#2 % <else code>
+{%
+ % ^^A ##1 % <next rules>
+ % ^^A ##2 % <cs name>
+ % ^^A ##3 % <signature>
+ % ^^A ##4 % <head is group>
+ % ^^A ##5 % <arguments>
+ % ^^A ##6 % <clist head>
+ % ^^A ##7 % <clist rest>
+ % ^^A ##8 % <parameters>
+ \clistmap_keys_set:n
+ {%
+ rule = {if_empty_stop_else_#1}
+ {%
+ \@@_quark_if_recursion_tail_stop:en
+ {\bool_if:nTF{##4}{{##6}}{##6}}{##7}
+ #2
+ }
+ }
+}
+% \end{macrocode}
+% \end{macro}
+% \section{\textsf{instantiate}}
+% \begin{macro}{\@@_instantiate:nnnn}
+% \begin{macrocode}
+\cs_new_protected:Npn
+\@@_instantiate:nnnn
+#1 % <rule>
+#2 % <next rules>
+#3 % <cs name>
+#4 % <signature>
+{%
+ \exp_args:Ne
+ \@@_instantiate:nnnnn
+ {\tl_count:n{#4}} % <signature arity>
+ {#1} % <rule>
+ {#2} % <next rules>
+ {#3} % <cs name>
+ {#4} % <signature>
+}
+\cs_new_protected:Npn
+\@@_instantiate:nnnnn
+#1 % <signature arity>
+#2 % <rule>
+#3 % <next rules>
+#4 % <cs name>
+#5 % <signature>
+{%^^A
+ \@@_instantiate:eeeeennn
+ { \erw_parameter:n{ 1 } } % <head is group>
+ { \erw_parameter:ne{2}{ #1 } } % <parameters>
+ { \erw_parameter:e{ \int_eval:n{#1+2} } } % <clist head>
+ { \erw_parameter:e{ \int_eval:n{#1+3} } } % <clist rest>
+ { \erw_argument:ne{2}{ #5 } } % <arguments>
+ { #2 } % <rule>
+ { #3 } % <next rules>
+ { #4 } % <cs name>
+ { #5 } % <signature>
+}
+\cs_new:Npn
+\@@_instantiate:nnnnnnnn
+#1 % <head is group>
+#2 % <parameters>
+#3 % <clist head>
+#4 % <clist rest>
+#5 % <arguments>
+#6 % <rule>
+#7 % <next rules>
+#8 % <cs name>
+#9 % <signature>
+{%
+ \use:c{ \@@_rule_c:n{#6} }
+ {#7} % <next rules>
+ {#8} % <cs name>
+ {#9} % <signature>
+ {#1} % <head is group>
+ {#2} % <arguments>
+ {#3} % <clist head>
+ {#4} % <clist rest>
+ {#2} % <parameters>
+}
+\cs_generate_variant:Nn\@@_instantiate:nnnnnnnn{eeeee}
+% \end{macrocode}
+% \end{macro}
+% \section{\textsf{property}}
+% \begin{macro}{rule_sequence}
+% \begin{macrocode}
+\cs_new:Npn
+\@@_rule_sequence_name:n
+#1 % <rule sequence>
+{%
+ \@@_rule_link:e
+ {\@@_rule_sequence_get:n{#1}{null}}
+}
+\keys_define:nn{@@}
+{ rule_sequence.code:n = \@@_rule_sequence_from_keyval:n{#1} }
+\prop_new:N\@@_rule_sequence_prop
+\@@_info_prop_put:nn{rule_sequence}{@@_rule_sequence_prop}
+\cs_new_protected:Npn
+\@@_rule_sequence_from_keyval:n
+#1 % <key = {{rule{1}}...>
+{%
+ \prop_set_from_keyval:Nn
+ \@@_rule_sequence_prop{#1}
+}
+\cs_new:Npn
+\@@_rule_sequence_get:n
+#1 % <key>
+{%
+ \exp_args:Ne
+ \@@_rule_sequence_aux:n
+ {%
+ \prop_item:Nn
+ \@@_rule_sequence_prop{#1}
+ }
+}
+\cs_new:Npn
+\@@_rule_sequence_aux:n
+#1 % <value>
+{%
+ \prop_if_in:NnTF
+ \@@_rule_sequence_prop
+ {#1}
+ {\@@_rule_sequence_get:n{#1}}
+ {#1}
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\clistmap_signature:n, \clistmap_instance_p:n}
+% \begin{macrocode}
+\prg_new_conditional:Npnn
+\clistmap_instance:n
+#1
+{p}
+{\prop_if_in:NnTF
+ \@@_instance_prop{#1}
+ {\prg_return_true:}
+ {\prg_return_false:}
+}
+\msg_new:nnn{@@}{instance-not}{#1~is~not~an~instance}
+\msg_new:nnn{@@}{key-conflict}{key~#1~already~exists~in~prop~#2}
+\prop_new:N\@@_instance_prop
+\@@_info_prop_put:nn{instance}{@@_instance_prop}
+\cs_new_protected:Npn
+\@@_instance_put:nnnn
+#1 % <key>
+#2 % <rule sequence>
+#3 % <name>
+#4 % <signature>
+{%
+ \prop_gput:Nnn
+ \@@_instance_prop{#1}
+ { {#2}{#3}{#4} }
+}
+\cs_new:Npn
+\@@_instance_get:n
+#1 % <key>
+{ \prop_item:Nn\@@_instance_prop{#1} }
+\cs_new:Nn
+\clistmap_signature:n
+{%^^A
+ \bool_if:nTF
+ { \clistmap_instance_p:n{#1} }
+ { \@@_instance_signature_get:n{#1} }
+ { \msg_error:nnn{@@}{instance-not}{#1} }
+}
+\cs_new:Npn
+\@@_instance_signature_get:n
+#1 % <instance>
+{\exp_last_unbraced:Ne\use_iii:nnn
+ {\@@_instance_get:n{#1}}}
+\cs_new:Npn
+\@@_instance_expand:n
+#1 %^^A <instance(?:_sequence)_1,...>
+{%^^A
+ \@@_instance_expand:w
+ #1, \q_recursion_tail
+ \q_recursion_stop
+}
+\cs_new:Npn
+\@@_instance_expand:w
+#1 %^^A <instance(?:_sequence)_1,...>
+,#2
+\q_recursion_stop
+{
+ \quark_if_recursion_tail_stop:n{#1#2}
+ \@@_instance_expand:nw#1, #2\q_recursion_stop
+}
+\cs_new:Npn
+\@@_instance_expand:nw
+#1 % <head>
+, #2 % <rest>
+\q_recursion_stop
+{
+ \bool_if:nTF
+ {\clistmap_instance_sequence_p:n{#1}}
+ {%^^A
+ \exp_args:Ne
+ \@@_instance_expand:n
+ { \@@_instance_sequence_get:n{#1} }
+ }
+ {%
+ \bool_if:nTF
+ {\clistmap_instance_p:n{#1}}
+ {#1}
+ {\msg_error:nnn{@@}{neither-inst-seq}{#1}}
+ }
+ \quark_if_recursion_tail_stop:n{#2},%^^A comma
+ \@@_instance_expand:nw#2\q_recursion_stop
+}
+\msg_new:nnn{@@}{neither-inst-seq}
+{#1~is~neither~an~instance~nor~a~sequence}
+\prg_new_conditional:Npnn
+\@@_instance_signature:nn
+#1 % <instance_1,...>
+#2 % <signature>
+{p}
+{%^^A
+ \bool_if:nTF
+ {
+ \exp_args:Ne
+ \@@_instance_signature_aux_p:nn
+ {%^^A
+ \exp_args:Ne
+ \clist_map_function:nN
+ { \@@_instance_expand:n{#1} }
+ \clistmap_signature:n
+ }
+ {#2}
+ }
+ {\prg_return_true:}
+ {\prg_return_false:}
+}
+\prg_new_conditional:Npnn
+\@@_instance_signature_aux:nn
+#1 % <signature_1,...>
+#2 % <signature>
+{p}
+{%
+ \tl_if_empty:nTF
+ {#1}
+ {%^^A
+ \tl_if_empty:nTF{#2}
+ {\prg_return_true:}
+ {\prg_return_false:}
+ }
+ {%^^A
+ \bool_if:nTF
+ {%^^A
+ \erw_and_tl_p:nn
+ { \str_if_eq_p:nn{#2} }
+ { #1 }
+ }
+ {\prg_return_true:}
+ {\prg_return_false:}
+ }
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{instance_sequence, \clistmap_instance_sequence_p:n}
+% \begin{macrocode}
+\keys_define:nn{ @@ }
+{%^^A
+ instance_sequence.code:n
+ = {%^^A
+ \clist_map_function:nN{#1}
+ \@@_instance_sequence_put:n
+ }
+}
+\prg_new_conditional:Npnn
+\clistmap_instance_sequence:n
+#1
+{p}
+{%
+ \prop_if_in:NnTF
+ \@@_instance_sequence_prop{#1}
+ {\prg_return_true:}
+ {\prg_return_false:}
+}
+\prop_new:N
+\@@_instance_sequence_prop
+\@@_info_prop_put:nn{instance_sequence}{@@_instance_sequence_prop}
+\cs_new:Nn\@@_first_braced:nn{{#1}}
+\cs_new:Nn\@@_instance_sequence_keys:
+{%
+ \prop_map_function:NN
+ \@@_instance_sequence_prop
+ \@@_first_braced:nn
+}
+% ^^A\cs_new_protected:Npn
+% ^^A\@@_instance_sequence_put:n
+% ^^A#1 % <{key}{key{1},...}>
+% ^^A{ \@@_instance_sequence_put:nn#1 }
+\cs_new_protected:Npn
+\@@_instance_sequence_put:n
+#1 % <{signature}{prefix key}{prefix key{1},...}>
+{ \@@_instance_sequence_put:nnn#1 }
+\cs_new:Npn
+\@@_instance_sequence_value:nn
+#1 % <signature>
+#2 % <key prefix 1,...>
+{%
+ \exp_args:Nne
+ \erw_clist_tl:nn{\c_false_bool}
+ {%^^A
+ \clist_map_tokens:nn
+ {#2}
+ { \@@_instance_sequence_value_aux:nn{#1} }
+ }
+}
+\cs_new:Nn
+\@@_instance_sequence_value_aux:nn
+{{\clistmap_instance_key:nn{#2}{#1}}}
+\cs_new_protected:Npn
+\@@_instance_sequence_put:nnn
+#1 % <signature>
+#2 % <prefix key>
+#3 % <prefix key{1}>,...
+{%^^A
+ \exp_args:Nee
+ \@@_instance_sequence_put:nn
+ { \clistmap_instance_key:nn{#2}{#1} }
+ { \@@_instance_sequence_value:nn{#1}{#3} }
+}
+\cs_new_protected:Npn
+\@@_instance_sequence_put:nn
+#1 % <key>
+#2 % <instance key{1}>,...
+{%
+ \prop_if_in:NnTF
+ \@@_instance_prop{#1}
+ {\msg_error:nnnn{@@}{key-conflict}{#1}{instance}}
+ {%
+ \prop_gput:Nnn
+ \@@_instance_sequence_prop{#1}
+ { #2 }
+ }
+}
+\cs_new:Nn
+\clistmap_instance_sequence:n
+{\@@_instance_sequence_get:n{#1}}
+\cs_new:Npn
+\@@_instance_sequence_get:n
+#1 % <key>
+{\prop_item:Nn\@@_instance_sequence_prop{#1}}
+% \end{macrocode}
+% \end{macro}
+% \section{\textsf{instance}}
+% \begin{macro}{instance, \clistmap_instance_key:nn}
+% \begin{macrocode}
+\keys_define:nn{@@}
+{ instance.code:n = \clist_map_function:nN{#1} \@@_instance:n }
+\cs_new_protected:Npn
+\@@_instance:n
+% ^^A#1 % {key prefix}{<rule sequence>}{<cs name>}{<signature>}
+#1 % {<signature>}{key prefix}{<rule sequence>}{<cs name>}
+{ \@@_instance:nnnn#1 }
+\cs_new_protected:Npn
+\@@_instance:nnnn
+% ^^A#1 % <key prefix>
+% ^^A#2 % <rule sequence>
+% ^^A#3 % <cs name>
+% ^^A#4 % <signature>
+#1 % <signature>
+#2 % <key prefix>
+#3 % <rule sequence>
+#4 % <cs name>
+{%
+ \exp_args:Ne
+ \@@_instance_aux:nnnn
+ { \clistmap_instance_key:nn{#2}{#1} }
+ {#3}{#4}{#1}
+}
+\cs_new:Npn
+\clistmap_instance_key:nn
+#1 % <key prefix>
+#2 % <signature>
+{#1:#2}
+\cs_new_protected:Npn
+\@@_instance_aux:nnnn
+#1 % <key>
+#2 % <rule sequence>
+#3 % <signature>
+#4 % <cs name>
+{%
+ \@@_instance_put:nnnn{#1}{#2}{#3}{#4}
+ \@@_instance_using_key:nnn{#2}{#3}{#4}
+}
+\cs_new_protected:Npn
+\@@_instance_using_key:nnn
+#1 % <rule sequence>
+#2 % <cs name>
+#3 % <signature>
+{%
+ \@@_instance_using_list:enn
+ { \@@_rule_sequence_get:n{#1}{null} } % <{rule{1}}...>
+ {#2} % <cs name>
+ {#3}% <signature>
+}
+\cs_new_protected:Npn
+\@@_instance_using_list:nnn
+#1 % <{rule{1}}{rule{2}}...>
+#2 % <cs name>
+#3 % <signature>
+{%
+ \exp_last_unbraced:Ne
+ \@@_instance_backward:nnnnn
+ {%
+ { \tl_count:n{#3} } % <signature arity>
+ \erw_last:n{#1} % <rule{n}>
+ { \erw_remove_first:e{\tl_reverse:n{#1}} } % <{rule{n-1}}{rule{n-2}}...>
+ }
+ { #2 } % <cs name>
+ { #3 } % <signature>
+}
+\cs_generate_variant:Nn\@@_instance_using_list:nnn{enn}
+\msg_new:nnn{@@}{null}
+{clistmap~expects~'null'~as~the~last~rule;~got~'#1'}
+\cs_new_protected:Npn
+\@@_instance_backward:nnnnn
+#1 % <signature arity>
+#2 % <rule{n}>
+#3 % <{rule{n-1}}{rule{n-2}}...>
+#4 % <cs name>
+#5 % <signature>
+{%
+ \str_case:nnTF{#2}
+ { {null}{} }
+ {%
+ \@@_instance_backward:nnnw
+ {#2} % <next rules>
+ {#4} % <cs name>
+ {#5} % <signature>
+ #3\q_recursion_tail % <{rule{n}}{rule{n-1}}...>
+ \q_recursion_stop
+ }
+ {%
+ \msg_error:nnn{@@}
+ {null}
+ {#2}
+ }
+}
+\cs_generate_variant:Nn\@@_instance_backward:nnnnn{eee}
+\cs_new_protected:Npn
+\@@_instance_backward:nnnw
+#1 % <next rules>
+#2 % <cs name>
+#3 % <signature>
+#4 % <{rule{n}}{rule{n-1}}...>
+\q_recursion_stop
+{%
+ \quark_if_recursion_tail_stop:n{#4}
+ \@@_instance_backward:nnnnw
+ {#1} % <next rules>
+ {#2} % <cs name>
+ {#3} % <signature>
+ #4 % <rule{n}>
+ % <{rule{n-1}}...>
+ \q_recursion_stop
+}
+\cs_generate_variant:Nn\@@_instance_backward:nnnw{e}
+\cs_new_protected:Npn
+\@@_instance_backward:nnnnw
+#1 % <next rules>
+#2 % <cs name>
+#3 % <signature>
+#4 % <rule{n}>
+#5 % <{rule{n-1}}...>
+\q_recursion_stop
+{%
+ \@@_instantiate:nnnn
+ {#4} % <rule>
+ {#1} % <next rules>
+ {#2} % <cs name>
+ {#3} % <signature>
+ \@@_instance_backward:ennw
+ {\@@_rule_link:nn{#4}{#1}} % <next rules>
+ {#2} % <cs name>
+ {#3} % <signature>
+ #5 % <{rule{n}}...>
+ \q_recursion_stop
+}
+% \end{macrocode}
+% \end{macro}
+% \section{\textsf{preset}}
+% \subsection{\textsf{rule}}
+% \begin{macrocode}
+\msg_new:nnn{@@}{tail}{expects~tail;~got~'#1'}
+% ^^A ##1 % <next rules>
+% ^^A ##2 % <cs name>
+% ^^A ##3 % <signature>
+% ^^A ##4 % <head is group>
+% ^^A ##5 % <arguments>
+% ^^A ##6 % <clist head>
+% ^^A ##7 % <clist rest>
+% ^^A ##8 % <args>
+\clistmap_keys_set:n
+{%
+ rule = {if_rest_is_tail_stop_else_eval_recurse}
+ {%
+ \quark_if_recursion_tail_stop:n{#7}
+ \clistmap_bound_cs_group:nnnnn
+ {#2} % <cs name>
+ {#3} % <signature>
+ {#4} % <head is group>
+ {#5} % <arguments>
+ {#6} % <clist>
+ \clistmap_use_w:nnnne
+ {if_rest_is_tail_stop_else_eval_recurse} % <rule>
+ {#1} % <next rule rule sequence>
+ {#2} % <cs name>
+ {#3} % <signature>
+ {\tl_if_head_is_group_p:n{#7}}#5#7\q_recursion_stop % <head is group>
+ },
+ rule = {if_rest_is_tail_stop_else_forward_rest}
+ {%
+ \quark_if_recursion_tail_stop:n{#7}
+ \clistmap_use_w:nnne
+ {#1}{#2}{#3}
+ {\tl_if_head_is_group_p:n{#7}}#5#7\q_recursion_stop
+ },
+ rule_if_empty_stop_else = {error}
+ {%
+ \msg_error:nnn{@@}{tail}{#6#7}
+ \@@_empty:w{}\q_recursion_stop
+ },
+ rule_if_empty_stop_else = {forward_head}
+ {%
+ \bool_if:nTF{#4}
+ {%
+ \clistmap_use_w_group:nnnnnn{#1}{#2}{#3}{#4}{#5}{#6}
+ ,\q_recursion_tail\q_recursion_stop
+ }
+ {%
+ \clistmap_use_w:nnnn{#1}{#2}{#3}
+ {#4}#5#6,\q_recursion_tail\q_recursion_stop
+ }
+ },
+ rule_if_empty_stop_else = {forward_rest}
+ {%
+ \clistmap_use_w:nnne
+ {#1}{#2}{#3}
+ {\tl_if_head_is_group_p:n{#7}}#5#7\q_recursion_stop
+ },
+ rule_if_empty_stop_else = {forward_all}
+ {%
+ \bool_if:nTF{#4}
+ {%
+ \clistmap_use_w_group:nnnnnn{#1}{#2}{#3}{#4}{#5}{#6},
+ #7\q_recursion_stop
+ }
+ {%
+ \clistmap_use_w:nnnn
+ {#1}{#2}{#3}{#4}#5#6, #7\q_recursion_stop
+ }
+ },
+ rule_if_rest_is_tail_eval_else = {error}
+ {%
+ \msg_error:nnn{@@}{tail}{#6}
+ \@@_empty:w\q_recursion_stop
+ },
+ rule_if_rest_is_tail_eval_else = {stop}
+ {%
+ \@@_empty:w{}\q_recursion_stop
+ },
+ rule_if_rest_is_tail_eval_else = {recurse}
+ {%
+ \clistmap_use_w:nnnne
+ {if_rest_is_tail_eval_else_recurse} % <rule>
+ {#1} % <next rule rule sequence>
+ {#2} % <cs name>
+ {#3} % <signature>
+ {\tl_if_head_is_group_p:n{#7}} % <head is group>
+ #5 % <argument>
+ #7 % <clist>
+ \q_recursion_stop
+ }
+}
+% \end{macrocode}
+% \subsection{\textsf{rule_sequence}}
+% \begin{macrocode}
+\clistmap_keys_set:n
+{%
+ rule_sequence =
+ {%
+ first =
+ {
+ {if_empty_stop_else_forward_head}
+ {if_rest_is_tail_eval_else_error}
+ },
+ middle =
+ {
+ {if_empty_stop_else_forward_all}
+ {if_rest_is_tail_stop_else_forward_rest}
+ {if_rest_is_tail_stop_else_eval_recurse}
+ },
+ last =
+ {
+ {if_empty_stop_else_forward_all}
+ {if_rest_is_tail_stop_else_forward_rest}
+ {if_rest_is_tail_eval_else_recurse}
+ },
+ serial_second =
+ {
+ {if_empty_stop_else_forward_all}
+ {if_rest_is_tail_stop_else_forward_rest}
+ {if_rest_is_tail_eval_else_stop}
+ },
+ serial_last =
+ {
+ {if_empty_stop_else_forward_all}
+ {if_rest_is_tail_stop_else_forward_rest}
+ {if_rest_is_tail_stop_else_forward_rest}
+ {if_rest_is_tail_eval_else_recurse}
+ }
+ }
+}
+% \end{macrocode}
+% \subsection{\textsf{cs}}
+% \begin{macrocode}
+\msg_new:nnnn{@@}{text}{text~is~not~loaded}{amsmath}
+\cs_new:Nn\@@_unbrace_aux:n{#1}
+\erw_keys_set:n
+{
+ clist_map_inline =
+ {%
+ {Nn}{apply}{#1{#2}},
+ {Nn}{math}{\ensuremath{#1{#2}}},
+ {Nn}{comma_map}{,\clist_map_function:nN#2#1},
+ {Nn}{comma}{,#1{#2}},
+ {Nn}{serial_math}{\text{,~}\ensuremath{#1{#2}}},
+ {Nn}{serial_math_and}{\text{,~and~}\ensuremath{#1{#2}}},
+ {Nn}{map}{\clist_map_function:nN#2#1},
+ {Nn}{noindent}{\noindent},
+ {n}{apply}{#1},
+ {n}{math}{\ensuremath{#1}},
+ {n}{comma_math}{,\ensuremath{#1}},
+ {n}{newline}{\\#1},
+ {n}{comma_unbrace}{,\@@_unbrace_aux:n#1},
+ {n}{comma}{,#1},
+ {n}{noindent}{\noindent},
+ {n}{serial_and}{,~and~#1},
+ {n}{serial_math_and}{\text{,~and~}\ensuremath{#1}},
+ {n}{serial_math}{\text{,~}\ensuremath{#1}},
+ {n}{serial}{,~#1},
+ {n}{unbrace}{\@@_unbrace_aux:n#1}
+ }
+ {nnn}
+ {
+ \clist_gput_right:Nn\@@_helper_clist{#2:#1}
+ \cs_new:cn{@@_#2:#1}{#3}
+ }
+}
+% \end{macrocode}
+% \subsection{\textsf{instance}}
+% \begin{macrocode}
+\clistmap_keys_set:n
+{
+ instance =
+ {
+ {N}{first_apply}{first}{@@_apply},
+ {N}{first_map}{first}{@@_map},
+ {N}{first_math}{first}{@@_math},
+ {N}{first_noindent}{first}{@@_noindent},
+ {N}{last_apply}{last}{@@_apply},
+ {N}{last_comma_map}{last}{@@_comma_map},
+ {N}{last_comma_math}{last}{@@_comma_math},
+ {N}{last_comma}{last}{@@_comma},
+ {N}{serial_last}{serial_last}{@@_comma},
+ {N}{serial_second}{serial_second}{@@_comma},
+ {N}{middle_apply}{middle}{@@_apply},
+ {N}{middle_comma_map}{middle}{@@_comma_map},
+ {N}{middle_comma_math}{middle}{@@_comma_math},
+ {N}{middle_comma}{middle}{@@_comma},
+ {N}{serial_last_math_and}{serial_last}{@@_serial_math_and},
+ {N}{serial_middle_math}{middle}{@@_serial_math},
+ {N}{serial_second_math_and}{serial_second}{@@_serial_math_and},
+ {}{first_apply}{first}{@@_apply},
+ {}{first_math}{first}{@@_math},
+ {}{first_noindent}{first}{@@_noindent},
+ {}{first_unbrace}{first}{@@_unbrace},
+ {}{last_apply}{last}{@@_apply},
+ {}{last_comma_math}{last}{@@_comma_math},
+ {}{last_comma_unbrace}{last}{@@_comma_unbrace},
+ {}{last_comma}{last}{@@_comma},
+ {}{last_newline}{last}{@@_newline},
+ {}{last_unbrace}{last}{@@_unbrace},
+ {}{middle_apply}{middle}{@@_apply},
+ {}{middle_comma_math}{middle}{@@_comma_math},
+ {}{middle_comma_unbrace}{middle}{@@_comma_unbrace},
+ {}{middle_comma}{middle}{@@_comma},
+ {}{middle_newline}{middle}{@@_newline},
+ {}{middle_unbrace}{middle}{@@_unbrace},
+ {}{serial_last_and}{serial_last}{@@_serial_and},
+ {}{serial_last_math_and}{serial_last}{@@_serial_math_and},
+ {}{serial_middle_math}{middle}{@@_serial_math},
+ {}{serial_middle}{middle}{@@_serial},
+ {}{serial_second_and}{serial_second}{@@_serial_and},
+ {}{serial_second_math_and}{serial_second}{@@_serial_math_and},
+ }
+}
+% \end{macrocode}
+% \subsection{\textsf{instance_sequence}}
+% \begin{macrocode}
+\clistmap_keys_set:n
+{%
+ instance_sequence =
+ {
+ {N}{apply}{first_apply, rest_apply},
+ {N}{comma_map}{first_map, rest_comma_map},
+ {N}{comma_math}{first_math, rest_comma_math},
+ {N}{comma}{first_apply, rest_comma},
+ {N}{rest_apply}{middle_apply, last_apply},
+ {N}{rest_comma_map}{middle_comma_map, last_comma_map},
+ {N}{rest_comma_math}{middle_comma_math, last_comma_math},
+ {N}{rest_comma}{middle_comma, last_comma},
+ {N}{serial_and}{first_apply, serial_rest_and},
+ {N}{serial_math_and}{first_math, serial_rest_math_and},
+ {N}{serial_rest_and}{serial_middle, serial_second_and, serial_last_and},
+ %^^A <one long entry>
+ {N}
+ {serial_rest_math_and}
+ {serial_middle_math, serial_second_math_and, serial_last_math_and}
+ %^^A </one long entry>
+ ,
+ {}{apply}{first_apply, rest_apply},
+ {}{comma_math}{first_math, rest_comma_math},
+ {}{newline}{first_apply, rest_newline},
+ {}{comma_unbrace}{first_unbrace, rest_comma_unbrace},
+ {}{comma}{first_apply, rest_comma},
+ {}{rest_apply}{middle_apply, last_apply},
+ {}{rest_comma_math}{middle_comma_math, last_comma_math},
+ {}{rest_newline}{middle_newline, last_newline},
+ {}{rest_comma_unbrace}{middle_comma_unbrace, last_comma_unbrace},
+ {}{rest_comma}{middle_comma, last_comma},
+ {}{rest_unbrace}{middle_unbrace, last_unbrace},
+ {}{serial_and}{first_apply, serial_rest_and},
+ {}{serial_math_and}{first_apply, serial_rest_math_and},
+ {}{unbrace}{first_unbrace, rest_unbrace},
+ % ^^A <one long entry>
+ {}{serial_rest_and}
+ {serial_middle, serial_second_and, serial_last_and}
+ % ^^A </one long entry>
+ ,
+ % ^^A <one long entry>
+ {}{serial_rest_math_and}
+ {serial_middle_math, serial_second_math_and, serial_last_math_and}
+ % ^^A </one long entry>
+ }
+}
+% \end{macrocode}
+% \section{\textsf{other}}
+% \begin{macrocode}
+\ProcessKeysOptions{@@}
+\ExplSyntaxOff
+%</package>
+% \end{macrocode}
+% \end{implementation}
+% \Finale
+\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/clistmap/clistmap.ins b/macros/latex/contrib/clistmap/clistmap.ins
new file mode 100644
index 0000000000..f8aa2b8096
--- /dev/null
+++ b/macros/latex/contrib/clistmap/clistmap.ins
@@ -0,0 +1,66 @@
+%%
+%% This is file `clistmap.ins',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% clistmap.dtx (with options: `install')
+%% ----------------------------------------------------------------------------
+%% clistmap --- Partition a comma separated list, map differentiatedly across
+%% components
+%% Released under the LaTeX Project Public License v1.3c or later
+%% See http://www.latex-project.org/lppl.txt
+%% ----------------------------------------------------------------------------
+%%
+\input l3docstrip.tex
+\keepsilent
+\askforoverwritefalse
+\preamble
+----------------------------------------------------------------------------
+clistmap --- Partition a comma separated list, map differentiatedly across
+components
+Released under the LaTeX Project Public License v1.3c or later
+See http://www.latex-project.org/lppl.txt
+----------------------------------------------------------------------------
+
+\endpreamble
+\postamble
+
+Copyright (C) 2022 by Erwann Rogard
+
+This work may be distributed and/or modified under the
+conditions of the LaTeX Project Public License (LPPL), either
+version 1.3c of this license or (at your option) any later
+version. The latest version of this license is in the file:
+
+http://www.latex-project.org/lppl.txt
+
+This work is "maintained" (as per LPPL maintenance status) by
+Erwann Rogard.
+
+This work consists of the file clistmap.dtx and the derived files:
+clistmap.sty, and clistmap.pdf.
+
+\endpostamble
+\generate{
+ \file{\jobname.sty}{\from{\jobname.dtx}{package}}
+}
+ \endbatchfile
+%%
+%% Copyright (C) 2022 by Erwann Rogard
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License (LPPL), either
+%% version 1.3c of this license or (at your option) any later
+%% version. The latest version of this license is in the file:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% This work is "maintained" (as per LPPL maintenance status) by
+%% Erwann Rogard.
+%%
+%% This work consists of the file clistmap.dtx and the derived files:
+%% clistmap.sty, and clistmap.pdf.
+%%
+%%
+%% End of file `clistmap.ins'.
diff --git a/macros/latex/contrib/clistmap/clistmap.pdf b/macros/latex/contrib/clistmap/clistmap.pdf
new file mode 100644
index 0000000000..f293ae82ef
--- /dev/null
+++ b/macros/latex/contrib/clistmap/clistmap.pdf
Binary files differ
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index 96361bc5d9..66e8b05c30 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -15,7 +15,7 @@
%<*class>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2022/01/28}{1.55}
+\ProvidesExplClass{easybook}{2022/01/30}{1.56}
{Typeset Chinese theses or books}
\bool_set_false:N \l__eb_compile_draft_bool
@@ -305,7 +305,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplPackage{easybase}{2022/01/28}{1.55}
+\ProvidesExplPackage{easybase}{2022/01/30}{1.56}
{Typeset Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -1298,7 +1298,7 @@
dotalign .initial:n = true,
hang .bool_set:N = \l__eb_titletoc_hang_fix_bool,
hang .default:n = true,
- hang .initial:n = false,
+ hang .initial:n = true,
pagenumwd .code:n = \contentsmargin{#1},
pagenumwd .initial:n = 1.55em,
unknown .code:n = \eb_msg_deprecated_option:n { tocset }
@@ -2343,7 +2343,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2022/01/28}{1.55}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2022/01/30}{1.56}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2
diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf
index 17a61f687d..03cc97c9cc 100644
--- a/macros/latex/contrib/easybook/easybook.pdf
+++ b/macros/latex/contrib/easybook/easybook.pdf
Binary files differ
diff --git a/macros/latex/contrib/easybook/easybook.tex b/macros/latex/contrib/easybook/easybook.tex
index 2660944146..2f36d84435 100644
--- a/macros/latex/contrib/easybook/easybook.tex
+++ b/macros/latex/contrib/easybook/easybook.tex
@@ -21,8 +21,8 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK 使用手册,
- version = v1.55,
- date = 2022/01/28,
+ version = v1.56,
+ date = 2022/01/30,
authors = 瞿毅,
info = 排版简体中文学位论文和书籍,
email = q1jx@foxmail.com,
@@ -877,18 +877,18 @@
\label{subsec:catalog style}
模块 \module*{tocset} 将使用 \pkg*{titletoc} 宏包处理目录样式。模块或扩展包括了 \module*{part}、\module*{chapter}、\module*{section}、\module*{subsection}、\module*{figure}、\module*{table} 和 \module*{lstlisting} 二级路径,而使用 \module*{list} 路径可以统一设置图片、表格和代码目录的样式。选项前带有 \ding{73} 符号表示支持所有相应\textbf{标题级别}的路径,其它选项则处于 \module*{tocset} 路径下。目前支持标准的论文目录样式,更复杂的样式可以查看 \pkg*{titletoc} 的相关用法。
\begin{options}
- \keyval-{tocformat}{条目格式}\dtag\smodule{tocset}
+ \keyval-{tocformat}{条目格式}\dtag\smodule{tocset}%
目录中各级别条目的格式,可以设置条目字体和加入垂直间距等,垂直间距最好使用防止垂直间距重合的 \cs*{addvspace} 命令。
\keyval-{tocformat+}{条目格式}\dtag
与 \option{tocformat} 用法一样,只是在已有的格式命令后附加代码。
\keyval-{tocindent}{刚性长度}\dtag
各级别目录中的标题左边缩进距离,通常标题级别越低缩进越大。
- \keyval-{tocrule}{目录引导线命令}\dtag
+ \keyval-{tocrule}{引导线命令}\dtag
引导线选项 \option{tocrule} 中一般可以使用基于 \cs*{xleaders} 命令的 \cs{tocrule} 绘制引导线。
\keyval-{tocafter}{距离命令}\dtag\Default{\cs*{hspace}\Marg{1em}}
在各级别目录中标签与标题间的代码,默认为插入 \code{1em} 横向距离。
- \keyval-{tocline}{目录中的标题}\dtag
- 这个选项扩展了图片、表格或代码加入目录的题注。选项中参数 \code{\#1} 代表相应题注编号 \cs*{the}\meta{计数器} 的值,参数 \code{\#2} 代表相应题注内容。
+ \keyval-{tocline}{条目定义}\dtag
+ 这个选项扩展了图片、表格或代码题注在目录文件中的定义。选项中参数 \code{\#1} 代表相应题注编号 \cs*{the}\meta{计数器} 的值,参数 \code{\#2} 代表相应题注内容。
\begin{ctexexam}[labelref = exam:list command usage]
\ctexset
{
@@ -920,11 +920,11 @@
\end{commands}
\begin{options}
- \keybool{hang}\Default{false}
+ \keybool{hang}\Default{true}
悬挂缩进选项 \option{hang} 使目录标题为悬挂缩进形式,缩进距离为标签及其与标题间距的长度,但此时标题编号会失去超链接。这个选项对所有标题级别有效。
\keyval-{lolskip}{弹性长度}\Default{10pt}
代码目录中每章代码标题的额外距离,与 C\TeX 的表格和图片目录中每章间的标题距离选项 \option*{lotskip} 和 \option*{lofskip} 类似,在 \cls*{article} 模式中此选项失效。
- \keyval-{between}{目录代码钩子}
+ \keyval-{between}{代码钩子}
目录标题与内容间的钩子,一般插入负的垂直距离代码,用于抵消目录首行额外的垂直间距。一级路径此选项对应文档主目录的钩子,二级路径为 \module*{figure}、\module*{table} 和 \module*{lstlisting},或者用位于 \module*{list} 路径的此选项统一设置相应类型目录的钩子。
\keybool{dotalign}\Default{true}
引导线选项 \option{dotalign} 可以使目录引导线右端对齐并与页码保持一定间距,否则会与页码相连。
@@ -934,7 +934,7 @@
统一设置所有级别在目录中标签与标题间的代码。
\keyval-{tocindent-every}{刚性长度}
统一设置所有级别的目录标题左边缩进。
- \keyval-{tocrule-every}{目录引导线样式}
+ \keyval-{tocrule-every}{引导线命令}
统一设置所有级别的目录引导线样式。
\end{options}
@@ -1122,7 +1122,7 @@
在一定的场合下可能用到 \cs{counteruse} 命令,比如通过新建快捷命令在一些位置使用定理环境的计数器,使用 \cs{labelformat} 设置计数器的标签引用需添加 \code{eb@}:
\begin{ctexexam}
\labelformat{eb@theorem}{定理 #1}
- \newcommand{\theoremhead}[1]{定理\counteruse[chapter]{theorem}\hspace{1em}#1}
+ \newcommand{\theoremhead}[1]{定理 \counteruse[chapter]{theorem}\hspace{1em}#1}
\theoremhead{定理内容}\label{thm:theorem}
\end{ctexexam}
@@ -1144,7 +1144,7 @@
导言区末尾的钩子命令。为了保证兼容性 \pkg*{hyperref} 宏包被设计在导言区末尾载入,一些情况下需要合适的钩子在 \pkg*{hyperref} 后方执行 \meta{钩子代码},例如载入 \pkg*{cleveref} 宏包。
\begin{ctexexam}
\labelformat{chapter}{第 #1 章}
- \labelformat{chapter}{第\thechapter 章}
+ \labelformat{chapter}{第 \thechapter 章}
\AtEndPreamble{\usepackage{cleveref}}
\end{ctexexam}
\end{commands}
diff --git a/macros/latex/contrib/secnum/README.md b/macros/latex/contrib/secnum/README.md
index 48a2b3117d..6ed0aee990 100644
--- a/macros/latex/contrib/secnum/README.md
+++ b/macros/latex/contrib/secnum/README.md
@@ -5,7 +5,7 @@ This package provides a macro `\setsecnum` to format section numbering intuitive
## Usage
-One can simply use `\setsecnum{A,1.i}` to set the section numbering
+One can simply use `\setsecnum{A,:1.i}` to set the section numbering
format as `Alph` for the sections, `arabic` for the subsections and
`arabic.roman` for the subsubsections and
the `secnumdepth` and `tocdepth` will be 3.
@@ -14,7 +14,8 @@ If one want to set the tocdepth manually,
there is an option `tocdep` for it.
One may notice that the comma `,` plays a special role in the numbering format:
-for deep levels, the numbering before the comma are hided.
+the shallower section levels will not be shown in titles of deeper levels,
+but it will appear in reference labels.
## Installation
diff --git a/macros/latex/contrib/secnum/secnum.dtx b/macros/latex/contrib/secnum/secnum.dtx
index b8309f8c4d..d662c84398 100644
--- a/macros/latex/contrib/secnum/secnum.dtx
+++ b/macros/latex/contrib/secnum/secnum.dtx
@@ -33,7 +33,7 @@ This package provides a macro `\setsecnum` to format section numbering intuitive
## Usage
-One can simply use `\setsecnum{A,1.i}` to set the section numbering
+One can simply use `\setsecnum{A,:1.i}` to set the section numbering
format as `Alph` for the sections, `arabic` for the subsections and
`arabic.roman` for the subsubsections and
the `secnumdepth` and `tocdepth` will be 3.
@@ -42,7 +42,8 @@ If one want to set the tocdepth manually,
there is an option `tocdep` for it.
One may notice that the comma `,` plays a special role in the numbering format:
-for deep levels, the numbering before the comma are hided.
+the shallower section levels will not be shown in titles of deeper levels,
+but it will appear in reference labels.
## Installation
@@ -144,7 +145,7 @@ The Current Maintainer of this work is
\usepackage{booktabs}
\usepackage{xcolor}
\usepackage[tocdep=2]{secnum}
-\setsecnum{A,1.i}
+\setsecnum{A,:1.i}
\ExplSyntaxOn
\cs_set_eq:NN \__codedoc_macro_end_style:n \use_none:n
\ExplSyntaxOff
@@ -181,7 +182,7 @@ The Current Maintainer of this work is
% This document uses the following setting of section numbering format.
% \begin{verbatim}
% \usepackage[tocdep=2]{secnum}
-% \setsecnum{A,1.i}
+% \setsecnum{A,:1.i}
% \end{verbatim}
%
% \section{Usage}
@@ -200,7 +201,7 @@ The Current Maintainer of this work is
%
% A typical \meta{num format} is like this:
% \begin{center}
-% \verb|A,1.i|
+% \verb|A,:1.i|
% \end{center}
% It consists of some syntax abbrs of numbering formats,
% reffering the follows,
@@ -215,7 +216,7 @@ The Current Maintainer of this work is
% \end{center}
% and some separators delimiting them.
%
-% The separators can be any character except above abbrs,
+% A separator can contain any character except above abbrs,
% the tokens ``\verb|{|'', ``\verb|}|'' and ``\verb|#|''
% (more precisely, explicit character tokens with category code
% 1 (begin-group) or 2 (end-group), and tokens with category code 6) and the space ``\verb*| |''.
@@ -229,13 +230,16 @@ The Current Maintainer of this work is
% \end{function}
%
% \subsection{Breaking the numbering}
-% The comma ``\verb|,|'' in above example is used as the breaking mark:
-% for deep levels (in our case, deeper than sections),
-% the numbering before ``\verb|,|'' will be hided.
-%
-% Note that the breaking mark must immediately follows an abbr.
-%
-% \subsection{Package options}
+% The comma ``\verb|,|'' in above example is used as the breaking mark.
+% When a separator contains a comma
+% (in our example, \verb|,:| between \verb|A| and \verb|1|),
+% the shallower section levels (in our example, \cs{thesection})
+% will not be shown in titles of deeper levels
+% (in our example, \cs{thesubsection} and \cs{thesubsubsection}).
+% However, the numbering will appear in the reference labels with the given separator removing the comma.
+% For instance, the next subsection is refered as \ref{Options}.
+%
+% \subsection{Package options}\label{Options}
% \subsubsection{tocdep}
% There is an option setting \opt{tocdepth}, the table-of-contents depth manually.
% \begin{function}{ tocdep }
@@ -270,14 +274,15 @@ The Current Maintainer of this work is
% The process of the macro \cs{setsecnum} can be
% explained as follows.
% \begin{enumerate}[label=Step \arabic*.]
-% \item The main function eats the input, saying \opt{A,1.i},
+% \item The main function eats the input, saying \opt{A,:1.i},
% and stores it in a token list.
% \item Replace abbrs by macros.
% In our example, it results
-% ``\cs{Alph}\opt{,}\cs{arabic}\opt{.}\cs{roman}''
+% ``\cs{Alph}\opt{,:}\cs{arabic}\opt{.}\cs{roman}''
% \item Split this token list into a sequence by macros.
% In our example, it results ``\cs{Alph}'',
-% ``\opt{,}\cs{arabic}'' and ``\opt{.}\cs{roman}''.
+% ``\opt{,:}'', ``\cs{arabic}'', ``\opt{.}'',
+% and ``\cs{roman}''.
% \item Store those codes in indivial containers.
% \item Detect if there is \cs{thechapter}.
% Skip the chapter level if not.
@@ -293,6 +298,10 @@ The Current Maintainer of this work is
% \renewcommand*{\thesection}{\Alph{section}}
% \renewcommand*{\thesubsection}{\arabic{subsection}}
% \renewcommand*{\thesubsubsection}{thesubsection.\roman{subsubsection}}
+% \makeatletter
+% \renewcommand*{\p@subsection}{\Alph{section}:}
+% \renewcommand*{\p@subsubsection}{\Alph{section}:}
+% \makeatother
% \end{verbatim}
%
% \end{documentation}
@@ -313,102 +322,105 @@ The Current Maintainer of this work is
%<*package>
%<@@=syu>
\NeedsTeXFormat{LaTeX2e}
-\RequirePackage{expl3}
-\ProvidesExplPackage{secnum}{2021/08/28}{}
+\RequirePackage{expl3,xparse,l3keys2e}
+\ProvidesExplPackage{secnum}{2022/01/30}{}
{ An intuitive way to format section numbering }
-\RequirePackage{xparse,l3keys2e}
% \end{macrocode}
%
-% \begin{variable}{ \l__syu_secnum_tl, \l__syu_secnum_seq }
-% The variables are used to store the formatting information.
-% \begin{macrocode}
-\tl_new:N \l__syu_secnum_tl
-\seq_new:N \l__syu_secnum_seq
-\int_new:N \l__syu_secnum_depth
-% \end{macrocode}
-% \end{variable}
-%
-% \begin{variable}{
-% \g__syu_chapter_tl,
-% \g__syu_section_tl,
-% \g__syu_subsection_tl,
-% \g__syu_subsubsection_tl,
-% \g__syu_paragraph_tl,
-% \g__syu_subparagraph_tl
-% }
-% The following variables are used to store
-% the individal formatting codes.
+% \begin{variable}{ \g__syu_secnum_depth }
+% This \meta{integer} counts the depth of section levels.
% \begin{macrocode}
-\tl_new:N \g__syu_chapter_tl
-\tl_new:N \g__syu_section_tl
-\tl_new:N \g__syu_subsection_tl
-\tl_new:N \g__syu_subsubsection_tl
-\tl_new:N \g__syu_paragraph_tl
-\tl_new:N \g__syu_subparagraph_tl
+\int_new:N \g__syu_secnum_depth
% \end{macrocode}
% \end{variable}
%
-% \begin{variable}{ \g__syu_if_thechapter_int }
+% \begin{variable}{ \g__syu_ifchapter_int }
% This \meta{integer} encodes if \cs{thechapter} is defined.
% \begin{macrocode}
-\int_new:N \g__syu_if_thechapter_int
+\int_new:N \g__syu_ifchapter_int
% \end{macrocode}
% If \cs{thechapter} is defined, it is $1$.
% \begin{macrocode}
\if_cs_exist:N \thechapter
- \int_gset:Nn \g__syu_if_thechapter_int 1
+ \int_gset:Nn \g__syu_ifchapter_int 1
% \end{macrocode}
% Otherwise, it is $0$.
% \begin{macrocode}
\else:
- \int_gset:Nn \g__syu_if_thechapter_int 0
+ \int_gset:Nn \g__syu_ifchapter_int 0
\fi:
% \end{macrocode}
% \end{variable}
%
-% \begin{variable}{ \l__syu_secnum_bkm }
+% \begin{variable}{ \g__syu_secnum_bkm }
% This variable is used to store the breaking mark.
% \begin{macrocode}
-\tl_new:N \g__syu_secnum_bkmr
\tl_gset:Nx \g__syu_secnum_bkmr {,}
% \end{macrocode}
-% Note that one needs the following variants
+% We need the following variants
% \begin{macrocode}
\cs_generate_variant:Nn \tl_if_in:NnTF { NV }
\cs_generate_variant:Nn \tl_remove_all:Nn { NV }
% \end{macrocode}
% \end{variable}
%
+% \begin{variable}{
+% \g__syu_chapter_tl,
+% \g__syu_chapter_section_tl,
+% \g__syu_section_tl,
+% \g__syu_section_subsection_tl,
+% \g__syu_subsection_tl,
+% \g__syu_subsection_subsubsection_tl,
+% \g__syu_subsubsection_tl,
+% \g__syu_subsubsection_paragraph_tl,
+% \g__syu_paragraph_tl,
+% \g__syu_paragraph_subparagraph_tl,
+% \g__syu_subparagraph_tl
+% }
+% The following variables are used to store
+% the individal formatting codes.
+% \begin{macrocode}
+\tl_new:N \g__syu_chapter_tl
+\tl_new:N \g__syu_chapter_section_tl
+\tl_new:N \g__syu_section_tl
+\tl_new:N \g__syu_section_subsection_tl
+\tl_new:N \g__syu_subsection_tl
+\tl_new:N \g__syu_subsection_subsubsection_tl
+\tl_new:N \g__syu_subsubsection_tl
+\tl_new:N \g__syu_subsubsection_paragraph_tl
+\tl_new:N \g__syu_paragraph_tl
+\tl_new:N \g__syu_paragraph_subparagraph_tl
+\tl_new:N \g__syu_subparagraph_tl
+% \end{macrocode}
+% \end{variable}
+%
% \changes{2020/01/12}{2020/01/12}{Add package option to set \opt{tocdepth}.}
% \subsection{Package option}
% \begin{macrocode}
-\keys_define:nn { syu / options }
- {
+\keys_define:nn { syu / options }{
% \end{macrocode}
%
% \begin{macro}{ tocdep }
% Set the table-of-contents depth.
% \begin{macrocode}
- tocdep .code:n =
- {
- \int_const:Nn \g__syu_tocdep {#1}
- \setcounter{tocdepth}{ \g__syu_tocdep }
- },
+ tocdep .code:n = {
+ \int_const:Nn \g__syu_tocdep {#1}
+ \setcounter{tocdepth}{ \g__syu_tocdep }
+ },
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{ breaking }
% Set the breaking mark used in \meta{num format}.
% \begin{macrocode}
- breaking .code:n =
- {
- \tl_gset:Nx \g__syu_secnum_bkmr {#1}
- },
+ breaking .code:n = {
+ \tl_gset:Nx \g__syu_secnum_bkmr {#1}
+ },
% \end{macrocode}
% \end{macro}
%
% \begin{macrocode}
- }
+}
% \end{macrocode}
%
% Passing keys to options.
@@ -420,57 +432,43 @@ The Current Maintainer of this work is
% \begin{macro}{\setsecnum}
% Here is the definition of the main function \cs{setsecnum}.
% \begin{macrocode}
-\DeclareDocumentCommand{\setsecnum}{m}
- {
+\DeclareDocumentCommand{\setsecnum}{m}{
% \end{macrocode}
% Store the input in.
% \begin{macrocode}
- \tl_set:Nn \l__syu_secnum_tl {#1}
+ \tl_set:Nn \l__syu_secnum_tl {#1}
% \end{macrocode}
% Replace syntax abbrs by corresponding macros.
% \begin{macrocode}
- \__syu_secnum_unabbr:N \l__syu_secnum_tl
+ \__syu_secnum_unabbr:N \l__syu_secnum_tl
% \end{macrocode}
% Split into a sequence by macros.
% \begin{macrocode}
- \__syu_split_by_macros:NN \l__syu_secnum_tl \l__syu_secnum_seq
+ \__syu_split_by_macros:NNN
+ \l__syu_secnum_tl \l__syu_secnum_seq \g__syu_secnum_depth
% \end{macrocode}
% Read formatting information.
% \begin{macrocode}
- \__syu_secnum_from_seq:N \l__syu_secnum_seq
+ \__syu_secnum_from_seq:N \l__syu_secnum_seq
% \end{macrocode}
% Set the \opt{secnumdepth} and \opt{tocdepth}.
% \changes{2020/01/12}{2020/01/12}{Add codes to set \opt{tocdepth}.}
% \begin{macrocode}
- \int_set:Nn \l__syu_secnum_depth
- {
- \seq_count:N \l__syu_secnum_seq
- }
- \setcounter{secnumdepth}
- {
- \int_eval:n
- {
- \l__syu_secnum_depth - \g__syu_if_thechapter_int
- }
- }
- \int_if_exist:NTF \g__syu_tocdep
- {
- \setcounter{tocdepth}{ \g__syu_tocdep }
- }
- {
- \setcounter{tocdepth}
- {
- \int_eval:n
- {
- \l__syu_secnum_depth - \g__syu_if_thechapter_int
- }
- }
- }
+ \setcounter{secnumdepth}{
+ \int_eval:n { \g__syu_secnum_depth - \g__syu_ifchapter_int }
+ }
+ \int_if_exist:NTF \g__syu_tocdep {
+ \setcounter{tocdepth}{ \g__syu_tocdep }
+ }{
+ \setcounter{tocdepth}{
+ \int_eval:n { \g__syu_secnum_depth - \g__syu_ifchapter_int }
+ }
+ }
% \end{macrocode}
% Format numberings.
% \begin{macrocode}
- \__syu_secnum:
- }
+ \__syu_secnum:
+}
% \end{macrocode}
% \end{macro}
%
@@ -479,36 +477,39 @@ The Current Maintainer of this work is
% This function replace the abbrs in a \meta{tl var}
% by expansions.
% \begin{macrocode}
-\cs_new_protected:Npn \__syu_secnum_unabbr:N #1
- {
- \regex_replace_all:nnN {A} {\c{Alph}} #1
- \regex_replace_all:nnN {a} {\c{alph}} #1
- \regex_replace_all:nnN {I} {\c{Roman}} #1
- \regex_replace_all:nnN {i} {\c{roman}} #1
- \regex_replace_all:nnN {1} {\c{arabic}} #1
- }
+\cs_new_protected:Npn \__syu_secnum_unabbr:N #1 {
+ \regex_replace_all:nnN {A} {\c{Alph}} #1
+ \regex_replace_all:nnN {a} {\c{alph}} #1
+ \regex_replace_all:nnN {I} {\c{Roman}} #1
+ \regex_replace_all:nnN {i} {\c{roman}} #1
+ \regex_replace_all:nnN {1} {\c{arabic}} #1
+}
% \end{macrocode}
% \end{variable}
%
% \subsection{Split to sequence}
-% \begin{variable}{ \__syu_split_by_macros:NN }
-% This function split a \meta{tl var} into a \meta{sequence}
-% by macros.
-% \begin{macrocode}
-\cs_new_protected:Npn \__syu_split_by_macros:NN #1 #2
- {
- \tl_clear:N \l_tmpa_tl
- \seq_clear:N #2
- \tl_map_inline:Nn #1
- {
- \tl_put_right:Nn \l_tmpa_tl ##1
- \__syu_if_macro:nT ##1
- {
- \seq_put_right:NV #2 \l_tmpa_tl
- \tl_clear:N \l_tmpa_tl
- }
- }
+% \changes{2022/01/29}{2022/01/29}{Rewrite the split functions.}
+% \begin{variable}{ \__syu_split_by_macros:NNN }
+% This function splits a \meta{tl var} into a \meta{sequence}
+% by macros and provides the number of macros it contains.
+% \begin{macrocode}
+\cs_new_protected:Npn \__syu_split_by_macros:NNN #1 #2 #3 {
+ \tl_set:Nn \l_tmpa_tl {S}
+ \seq_clear:N #2
+ \int_set:Nn #3 {0}
+ \tl_map_inline:Nn #1 {
+ \__syu_if_macro:nTF ##1 {
+ \seq_put_right:NV #2 \l_tmpa_tl
+ \tl_clear:N \l_tmpa_tl
+ \tl_put_right:Nn \l_tmpa_tl ##1
+ \seq_put_right:NV #2 \l_tmpa_tl
+ \tl_clear:N \l_tmpa_tl
+ \int_incr:N #3
+ }{
+ \tl_put_right:Nn \l_tmpa_tl ##1
+ }
}
+}
% \end{macrocode}
% \end{variable}
% But how to see if an \meta{item} in the token list is a macro?
@@ -529,192 +530,297 @@ The Current Maintainer of this work is
% Then, define a conditional testing if the input is a macro.
% Note that I use \cs{if_meaning} rather than \cs{tl_if_eq:NNTF}.
% \begin{macrocode}
-\prg_new_protected_conditional:Npnn \__syu_if_macro:n #1 { T , F , TF }
- {
- \group_begin:
- \tl_set:Nx \l_tmpa_tl {\meaning #1}
- \tl_set:Nx \l_tmpa_tl {\tl_range:Nnn \l_tmpa_tl {1} {5}}
+\prg_new_protected_conditional:Npnn \__syu_if_macro:n #1 { T , F , TF }{
+ \group_begin:
+ \tl_set:Nx \l_tmpa_tl {\meaning #1}
+ \tl_set:Nx \l_tmpa_tl {\tl_range:Nnn \l_tmpa_tl {1} {5}}
% \end{macrocode}
% This is a trick to keep \cs{l_tmpa_tl} in the current local group
% \begin{macrocode}
- \exp_after:wN
- \group_end:
+ \exp_after:wN
+ \group_end:
% \end{macrocode}
% while throwing the comparison result out.
% \begin{macrocode}
- \if_meaning:w \l_tmpa_tl \g__syu_macro_tl
- \prg_return_true:
- \else:
- \prg_return_false:
- \fi:
- }
+ \if_meaning:w \l_tmpa_tl \g__syu_macro_tl
+ \prg_return_true:
+ \else:
+ \prg_return_false:
+ \fi:
+}
% \end{macrocode}
% \end{variable}
%
% \subsection{Read formatting info}
+% \changes{2022/01/29}{2022/01/29}{Write them separately.}
% \begin{variable}{ \__syu_secnum_from_seq:N }
% Read the formatting info from given \meta{sequence}.
% \begin{macrocode}
-\cs_new_protected:Npn \__syu_secnum_from_seq:N #1
- {
+\cs_new_protected:Npn \__syu_secnum_from_seq:N #1 {
% \end{macrocode}
% Use \cs{tl_gset:Nx} since: 1, these data are global and
% 2: I need them eating the fully expanded results.
% \begin{macrocode}
- \tl_gset:Nx \g__syu_chapter_tl
- { \seq_item:Nn #1 { \g__syu_if_thechapter_int } }
- \tl_gset:Nx \g__syu_section_tl
- { \seq_item:Nn #1 { 1 + \g__syu_if_thechapter_int } }
+ \int_if_odd:nTF \g__syu_ifchapter_int {
+ \tl_gset:Nx \g__syu_chapter_tl
+ { \seq_item:Nn #1 { 2 } }
+ \tl_gset:Nx \g__syu_chapter_section_tl
+ { \seq_item:Nn #1 { 3 } }
+ \tl_gset:Nx \g__syu_section_tl
+ { \seq_item:Nn #1 { 4 } }
+ \tl_gset:Nx \g__syu_section_subsection_tl
+ { \seq_item:Nn #1 { 5 } }
+ \tl_gset:Nx \g__syu_subsection_tl
+ { \seq_item:Nn #1 { 6 } }
+ \tl_gset:Nx \g__syu_subsection_subsubsection_tl
+ { \seq_item:Nn #1 { 7 } }
+ \tl_gset:Nx \g__syu_subsubsection_tl
+ { \seq_item:Nn #1 { 8 } }
+ \tl_gset:Nx \g__syu_subsubsection_paragraph_tl
+ { \seq_item:Nn #1 { 9 } }
+ \tl_gset:Nx \g__syu_paragraph_tl
+ { \seq_item:Nn #1 { 10 } }
+ \tl_gset:Nx \g__syu_paragraph_subparagrah_tl
+ { \seq_item:Nn #1 { 11 } }
+ \tl_gset:Nx \g__syu_subparagraph_tl
+ { \seq_item:Nn #1 { 12 } }
+ }{
+ \tl_gset:Nx \g__syu_section_tl
+ { \seq_item:Nn #1 { 2 } }
+ \tl_gset:Nx \g__syu_section_subsection_tl
+ { \seq_item:Nn #1 { 3 } }
\tl_gset:Nx \g__syu_subsection_tl
- { \seq_item:Nn #1 { 2 + \g__syu_if_thechapter_int } }
+ { \seq_item:Nn #1 { 4 } }
+ \tl_gset:Nx \g__syu_subsection_subsubsection_tl
+ { \seq_item:Nn #1 { 5 } }
\tl_gset:Nx \g__syu_subsubsection_tl
- { \seq_item:Nn #1 { 3 + \g__syu_if_thechapter_int } }
+ { \seq_item:Nn #1 { 6 } }
+ \tl_gset:Nx \g__syu_subsubsection_paragraph_tl
+ { \seq_item:Nn #1 { 7 } }
\tl_gset:Nx \g__syu_paragraph_tl
- { \seq_item:Nn #1 { 4 + \g__syu_if_thechapter_int } }
+ { \seq_item:Nn #1 { 8 } }
+ \tl_gset:Nx \g__syu_paragraph_subparagrah_tl
+ { \seq_item:Nn #1 { 9 } }
\tl_gset:Nx \g__syu_subparagraph_tl
- { \seq_item:Nn #1 { 5 + \g__syu_if_thechapter_int } }
+ { \seq_item:Nn #1 { 10 } }
}
+}
% \end{macrocode}
% \end{variable}
%
% \subsection{Formatting}
+% \changes{2022/01/29}{2022/01/29}{The whole function \cs{__syu_secnum:} is rewritten.}
% \begin{variable}{ \__syu_secnum: }
% Formatting section numbering.
% \begin{macrocode}
-\cs_new:Nn \__syu_secnum:
- {
+\cs_new:Nn \__syu_secnum: {
% \end{macrocode}
% \subsubsection{Detect if there is \cs{thechapter}}\noindent
% When \cs{thechapter} is defined, start from it.
% \begin{macrocode}
- \if_cs_exist:N \thechapter
- \renewcommand*{\thechapter}
- { \g__syu_chapter_tl {chapter} }
+ \if_cs_exist:N \thechapter
+ \renewcommand*{\thechapter}{ \g__syu_chapter_tl {chapter} }
% \end{macrocode}
% Test if the numbering breaks before section.
% \begin{macrocode}
- \tl_if_in:NVTF \g__syu_section_tl \g__syu_secnum_bkmr
- {
- \tl_remove_all:NV \g__syu_section_tl \g__syu_secnum_bkmr
- \renewcommand*{\thesection}
- { \g__syu_section_tl {section} }
- }
- {
- \renewcommand*{\thesection}
- {
- \thechapter
- \g__syu_section_tl {section}
- }
+ \tl_if_in:NVTF \g__syu_chapter_section_tl \g__syu_secnum_bkmr {
+% \end{macrocode}
+% Remove the breaking marker.
+% \begin{macrocode}
+ \tl_remove_all:NV
+ \g__syu_chapter_section_tl \g__syu_secnum_bkmr
+% \end{macrocode}
+% Format \cs{thesection}.
+% \begin{macrocode}
+ \renewcommand*{\thesection}{ \g__syu_section_tl {section} }
+% \end{macrocode}
+% Restore the \cs{p@}s.
+% \begin{macrocode}
+ \makeatletter
+ \renewcommand*{\p@section}{
+ \thechapter\g__syu_chapter_section_tl
+ }
+ \renewcommand*{\p@subsection}{ \p@section}
+ \renewcommand*{\p@subsubsection}{ \p@section }
+ \renewcommand*{\p@paragraph}{ \p@section}
+ \renewcommand*{\p@subparagraph}{ \p@section }
+ \makeatother
+ }{
+% \end{macrocode}
+% Format \cs{thesection}.
+% \begin{macrocode}
+ \renewcommand*{\thesection}{
+ \thechapter\g__syu_chapter_section_tl
+ \g__syu_section_tl {section}
}
+ }
% \end{macrocode}
% Otherwise start from \cs{thesection}.
% \begin{macrocode}
- \else:
- \renewcommand*{\thesection}
- { \g__syu_section_tl {section} }
- \fi:
+ \else:
+ \renewcommand*{\thesection}{ \g__syu_section_tl {section} }
+ \fi:
% \end{macrocode}
%
-% \changes{2021/08/28}{2021/08/28}{The usage of breaking commas}
+% \changes{2021/08/28}{2021/08/28}{The usage of breaking commas.}
% \subsubsection{Subsections}\noindent
% Test if the subsections are needed to be numbered.
% \begin{macrocode}
- \tl_if_empty:NTF \g__syu_subsection_tl
- {}
- {
+ \tl_if_empty:NF \g__syu_subsection_tl {
% \end{macrocode}
% Test if the numbering breaks before subsection.
% \begin{macrocode}
- \tl_if_in:NVTF \g__syu_subsection_tl \g__syu_secnum_bkmr
- {
- \tl_remove_all:NV \g__syu_subsection_tl \g__syu_secnum_bkmr
- \renewcommand*{\thesubsection}
- { \g__syu_subsection_tl {subsection} }
- }
- {
- \renewcommand*{\thesubsection}
- {
- \thesection
- \g__syu_subsection_tl {subsection}
- }
- }
+ \tl_if_in:NVTF \g__syu_section_subsection_tl \g__syu_secnum_bkmr {
+% \end{macrocode}
+% Remove the breaking marker.
+% \begin{macrocode}
+ \tl_remove_all:NV
+ \g__syu_section_subsection_tl \g__syu_secnum_bkmr
+% \end{macrocode}
+% Format \cs{thesubsection}.
+% \begin{macrocode}
+ \renewcommand*{\thesubsection}{ \g__syu_subsection_tl {subsection} }
+% \end{macrocode}
+% Restore the \cs{p@}s.
+% \begin{macrocode}
+ \makeatletter
+ \renewcommand*{\p@subsection}{
+ \p@section\g__syu_section_tl{section}
+ \g__syu_section_subsection_tl
+ }
+ \renewcommand*{\p@subsubsection}{ \p@subsection }
+ \renewcommand*{\p@paragraph}{ \p@subsection}
+ \renewcommand*{\p@subparagraph}{ \p@subsection }
+ \makeatother
+ }{
+% \end{macrocode}
+% Format \cs{thesubsection}.
+% \begin{macrocode}
+ \renewcommand*{\thesubsection}{
+ \thesection\g__syu_section_subsection_tl
+ \g__syu_subsection_tl {subsection}
}
+ }
+ }
% \end{macrocode}
%
% \subsubsection{Subsubsections}\noindent
% Test if the subsubsections are needed to be numbered.
% \begin{macrocode}
- \tl_if_empty:NTF \g__syu_subsubsection_tl
- {}
- {
+ \tl_if_empty:NF \g__syu_subsubsection_tl {
% \end{macrocode}
% Test if the numbering breaks before subsubsection.
% \begin{macrocode}
- \tl_if_in:NVTF \g__syu_subsubsection_tl \g__syu_secnum_bkmr
- {
- \tl_remove_all:NV \g__syu_subsubsection_tl \g__syu_secnum_bkmr
- \renewcommand*{\thesubsubsection}
- { \g__syu_subsubsection_tl {subsubsection} }
- }
- {
- \renewcommand*{\thesubsubsection}
- {
- \thesubsection
- \g__syu_subsubsection_tl {subsubsection}
- }
- }
+ \tl_if_in:NVTF \g__syu_subsection_subsubsection_tl \g__syu_secnum_bkmr {
+% \end{macrocode}
+% Remove the breaking marker.
+% \begin{macrocode}
+ \tl_remove_all:NV
+ \g__syu_subsection_subsubsection_tl \g__syu_secnum_bkmr
+% \end{macrocode}
+% Format \cs{thesubsubsection}.
+% \begin{macrocode}
+ \renewcommand*{\thesubsubsection}
+ { \g__syu_subsubsection_tl {subsubsection} }
+% \end{macrocode}
+% Restore the \cs{p@}s.
+% \begin{macrocode}
+ \makeatletter
+ \renewcommand*{\p@subsubsection}{
+ \p@subsection\g__syu_subsection_tl {subsection}
+ \g__syu_subsection_subsubsection_tl
+ }
+ \renewcommand*{\p@paragraph}{ \p@subsubsection}
+ \renewcommand*{\p@subparagraph}{ \p@subsubsection }
+ \makeatother
+ }{
+% \end{macrocode}
+% Format \cs{thesubsubsection}.
+% \begin{macrocode}
+ \renewcommand*{\thesubsubsection}{
+ \thesubsection\g__syu_subsection_subsubsection_tl
+ \g__syu_subsubsection_tl {subsubsection}
}
+ }
+ }
% \end{macrocode}
%
% \subsubsection{Paragraphs}\noindent
% Test if the paragraphs are needed to be numbered.
% \begin{macrocode}
- \tl_if_empty:NTF \g__syu_paragraph_tl
- {}
- {
+ \tl_if_empty:NF \g__syu_paragraph_tl {
% \end{macrocode}
% Test if the numbering breaks before paragraph.
% \begin{macrocode}
- \tl_if_in:NVTF \g__syu_paragraph_tl \g__syu_secnum_bkmr
- {
- \tl_remove_all:NV \g__syu_paragraph_tl \g__syu_secnum_bkmr
- \renewcommand*{\theparagraph}
- { \g__syu_paragraph_tl {paragraph} }
- }
- {
- \renewcommand*{\theparagraph}
- {
- \thesubsubsection
- \g__syu_paragraph_tl {paragraph}
- }
- }
+ \tl_if_in:NVTF \g__syu_subsubsection_paragraph_tl \g__syu_secnum_bkmr {
+% \end{macrocode}
+% Remove the breaking marker.
+% \begin{macrocode}
+ \tl_remove_all:NV
+ \g__syu_subsubsection_paragraph_tl \g__syu_secnum_bkmr
+% \end{macrocode}
+% Format \cs{theparagraph}.
+% \begin{macrocode}
+ \renewcommand*{\theparagraph}{ \g__syu_paragraph_tl {paragraph} }
+% \end{macrocode}
+% Restore the \cs{p@}s.
+% \begin{macrocode}
+ \makeatletter
+ \renewcommand*{\p@paragraph}{
+ \p@subsubsection\g__syu_subsubsection_tl {subsubsection}
+ \g__syu_subsubsection_paragraph_tl
+ }
+ \renewcommand*{\p@subparagraph}{ \p@paragraph }
+ \makeatother
+ }{
+% \end{macrocode}
+% Format \cs{theparagraph}.
+% \begin{macrocode}
+ \renewcommand*{\theparagraph}{
+ \thesubsubsection\g__syu_subsubsection_paragraph_tl
+ \g__syu_paragraph_tl {paragraph}
}
+ }
+ }
% \end{macrocode}
%
% \subsubsection{Subparagraphs}\noindent
% Test if the subparagraphs are needed to be numbered.
% \begin{macrocode}
- \tl_if_empty:NTF \g__syu_subparagraph_tl
- {}
- {
+ \tl_if_empty:NF \g__syu_subparagraph_tl {
% \end{macrocode}
% Test if the numbering breaks before paragraph.
% \begin{macrocode}
- \tl_if_in:NVTF \g__syu_subparagraph_tl \g__syu_secnum_bkmr
- {
- \tl_remove_all:NV \g__syu_subparagraph_tl \g__syu_secnum_bkmr
- \renewcommand*{\thesubparagraph}
- { \g__syu_subparagraph_tl {subparagraph} }
- }
- {
- \renewcommand*{\thesubparagraph}
- {
- \theparagraph
- \g__syu_subparagraph_tl {subparagraph}
- }
- }
+ \tl_if_in:NVTF \g__syu_paragraph_subparagrah_tl \g__syu_secnum_bkmr {
+% \end{macrocode}
+% Remove the breaking marker.
+% \begin{macrocode}
+ \tl_remove_all:NV
+ \g__syu_paragraph_subparagrah_tl \g__syu_secnum_bkmr
+% \end{macrocode}
+% Format \cs{thesubparagraph}.
+% \begin{macrocode}
+ \renewcommand*{\thesubparagraph}{ \g__syu_subparagraph_tl {subparagraph} }
+% \end{macrocode}
+% Restore the \cs{p@}s.
+% \begin{macrocode}
+ \makeatletter
+ \renewcommand*{\p@subparagraph}{
+ \p@paragraph\g__syu_paragraph_tl {paragraph}
+ \g__syu_paragraph_subparagrah_tl
+ }
+ \makeatother
+ }{
+% \end{macrocode}
+% Format \cs{thesubparagraph}.
+% \begin{macrocode}
+ \renewcommand*{\thesubparagraph}{
+ \theparagraph\g__syu_paragraph_subparagrah_tl
+ \g__syu_subparagraph_tl {subparagraph}
}
- }
+ }
+ }
+}
% \end{macrocode}
% \end{variable}
%
@@ -727,4 +833,4 @@ The Current Maintainer of this work is
% \changes{2020/01/01}{2020/01/01}{Correct the package name.}
%
% \Finale
-\endinput
+\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/secnum/secnum.pdf b/macros/latex/contrib/secnum/secnum.pdf
index de3f9929b9..10f05426e0 100644
--- a/macros/latex/contrib/secnum/secnum.pdf
+++ b/macros/latex/contrib/secnum/secnum.pdf
Binary files differ
diff --git a/macros/xetex/latex/bidi/README b/macros/xetex/latex/bidi/README
index 6275535b66..31aee83dcb 100644
--- a/macros/xetex/latex/bidi/README
+++ b/macros/xetex/latex/bidi/README
@@ -1,6 +1,6 @@
___________________
The bidi package
-v36.3
+v36.4
This package provides a convenient interface for typesetting
bidirectional texts in Plain TeX and LaTeX, using XeTeX engine.
@@ -16,10 +16,13 @@ In doing so, please always explain your issue well enough,
and always include a minimal working example showing the
issue.
-Current version release date: 2020/05/17
+Current version release date: 2022/02/01
___________________________________________
-Copyright (c) Vafa Khalighi 2007--2020
+Vafa Khalighi
+tex-persian@vafa.ac
+
+Copyright (c) Vafa Khalighi 2007--2022
Copyright (c) bidi-tex GitHub Organization 2018--2020
It may be distributed and/or modified under the LaTeX Project Public License,
diff --git a/macros/xetex/latex/bidi/bidi-doc-intro.ltx b/macros/xetex/latex/bidi/bidi-doc-intro.ltx
index f1d43e05bf..56325099e7 100644
--- a/macros/xetex/latex/bidi/bidi-doc-intro.ltx
+++ b/macros/xetex/latex/bidi/bidi-doc-intro.ltx
@@ -17,17 +17,19 @@ If you use \textsf{bidi} package to write any input \TeX\ document, and then run
* and LaTeX. The package includes adaptations
* for use with many other commonly-used packages.
*
-* Copyright (c) 2007--2020 Vafa Khalighi
+* Copyright (c) 2007--2022 Vafa Khalighi
* Copyright (c) 2018--2020 bidi-tex GitHub Organization
*
-* v36.3, 2020/05/17
+* v36.4, 2022/02/01
*
* License: LaTeX Project Public License, version
* 1.3c or higher (your choice)
*
* Location on CTAN: /macros/xetex/latex/bidi
*
-* Issue tracker: https://github.com/persiantex/bidi/issues
+* Issue tracker: https://github.com/tex-persian/bidi/issues
+*
+* Support Email: tex-persian@vafa.ac
*
* Primary author of bidi package: Vafa Khalighi.
*
diff --git a/macros/xetex/latex/bidi/bidi-doc-title.ltx b/macros/xetex/latex/bidi/bidi-doc-title.ltx
index 235828e7d0..006da7b9e5 100644
--- a/macros/xetex/latex/bidi/bidi-doc-title.ltx
+++ b/macros/xetex/latex/bidi/bidi-doc-title.ltx
@@ -3,8 +3,9 @@
\begin{document}
\title{\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}\\
\LARGE Bidirectional typesetting in plain \TeX{} and \LaTeX, using \XeTeX{} engine\\[5pt]
-\large User documentation for \textcolor{blue!65!black}{version 36.3}}
-\author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}}
+\large User documentation for \textcolor{blue!65!black}{version 36.4}}
+\author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}\\
+ \url{tex-persian@vafa.ac}}
\setcounter{page}{0}
\thispagestyle{empty}
\includegraphics[width=.3\textwidth]{bidi-logo}\qquad
@@ -13,7 +14,7 @@
\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}
\Large
-User documentation for \textcolor{blue!65!black}{version 36.3}}
+User documentation for \textcolor{blue!65!black}{version 36.4}}
\vskip 0pt plus 3fill
\textit{\large to my Master, \textbf{Ferdowsi The Great}}
@@ -24,7 +25,7 @@ If you want to report any bugs or typos and corrections in the documentation,
or ask for any new features, or suggest any improvements, or ask any questions about the package, then please use the issue tracker:
\medskip
- \centerline{\url{https://github.com/persiantex/bidi/issues}}
+ \centerline{\url{https://github.com/tex-persian/bidi/issues}}
\medskip
In doing so, please always explain your issue well enough, and always include
@@ -35,7 +36,7 @@ a minimal working example showing the issue.
\vskip 0pt plus 3fill
-Copyright (c) 2007--2020 Vafa Khalighi
+Copyright (c) 2007--2022 Vafa Khalighi
Copyright (c) 2018--2020 bidi-tex GitHub Organization
diff --git a/macros/xetex/latex/bidi/bidi-doc.ltx b/macros/xetex/latex/bidi/bidi-doc.ltx
index faef7c906f..a2e1bc59f9 100644
--- a/macros/xetex/latex/bidi/bidi-doc.ltx
+++ b/macros/xetex/latex/bidi/bidi-doc.ltx
@@ -1,7 +1,7 @@
\documentclass{ltxdoc}
\input{bidi-doc-preamble.ltx}
\hypersetup{%
- pdftitle={User documentation for version 36.3 of the bidi
+ pdftitle={User documentation for version 36.4 of the bidi
package}%
}
\begin{document}
diff --git a/macros/xetex/latex/bidi/bidi-doc.pdf b/macros/xetex/latex/bidi/bidi-doc.pdf
index 29795992a4..4ff70450d0 100644
--- a/macros/xetex/latex/bidi/bidi-doc.pdf
+++ b/macros/xetex/latex/bidi/bidi-doc.pdf
Binary files differ
diff --git a/macros/xetex/latex/bidi/bidi.dtx b/macros/xetex/latex/bidi/bidi.dtx
index f0192ef0d7..e5a41ef92c 100644
--- a/macros/xetex/latex/bidi/bidi.dtx
+++ b/macros/xetex/latex/bidi/bidi.dtx
@@ -5,7 +5,7 @@
%<*readme>
___________________
The bidi package
-v36.3
+v36.4
This package provides a convenient interface for typesetting
bidirectional texts in Plain TeX and LaTeX, using XeTeX engine.
@@ -21,10 +21,13 @@ In doing so, please always explain your issue well enough,
and always include a minimal working example showing the
issue.
-Current version release date: 2020/05/17
+Current version release date: 2022/02/01
___________________________________________
-Copyright (c) Vafa Khalighi 2007--2020
+Vafa Khalighi
+tex-persian@vafa.ac
+
+Copyright (c) Vafa Khalighi 2007--2022
Copyright (c) bidi-tex GitHub Organization 2018--2020
It may be distributed and/or modified under the LaTeX Project Public License,
@@ -44,7 +47,10 @@ by Vafa Khalighi.
\preamble
__________________________________________________
- Copyright (c) 2007--2020 Vafa Khalighi
+ Vafa Khalighi
+ tex-persian@vafa.ac
+
+ Copyright (c) 2007--2022 Vafa Khalighi
Copyright (c) 2018--2020 bidi-tex GitHub Organization
It may be distributed and/or modified under the LaTeX Project Public License,
@@ -219,7 +225,7 @@ by Vafa Khalighi.
\documentclass{ltxdoc}
\input{bidi-doc-preamble.ltx}
\hypersetup{%
- pdftitle={Source documentation for version 36.3 of the bidi
+ pdftitle={Source documentation for version 36.4 of the bidi
package}%
}
\EnableCrossrefs
@@ -238,8 +244,9 @@ by Vafa Khalighi.
% \GetFileInfo{\jobname.dtx}
% \title{\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}\\
%\LARGE Bidirectional typesetting in plain \TeX{} and \LaTeX, using \XeTeX{} engine\\[5pt]
-%\large Source documentation for \textcolor{blue!65!black}{version 36.3}}
-% \author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}}
+%\large Source documentation for \textcolor{blue!65!black}{version 36.4}}
+% \author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}\\
+% \url{tex-persian@vafa.ac}}
%\setcounter{page}{0}
%\thispagestyle{empty}
%\includegraphics[width=.3\textwidth]{bidi-logo}\qquad
@@ -248,7 +255,7 @@ by Vafa Khalighi.
%\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}
%
%\Large
-%Source documentation for \textcolor{blue!65!black}{version 36.3}}
+%Source documentation for \textcolor{blue!65!black}{version 36.4}}
%
%\vskip 0pt plus 3fill
%\textit{\large to my Master, \textbf{Ferdowsi The Great}}
@@ -259,7 +266,7 @@ by Vafa Khalighi.
%or ask for any new features, or suggest any improvements, or ask any questions about the package, then please use the issue tracker:
%
%\medskip
-% \centerline{\url{https://github.com/persiantex/bidi/issues}}
+% \centerline{\url{https://github.com/tex-persian/bidi/issues}}
%
%\medskip
%In doing so, please always explain your issue well enough, and always include
@@ -269,7 +276,7 @@ by Vafa Khalighi.
%
%\vskip 0pt plus 3fill
%
-%Copyright (c) 2007--2020 Vafa Khalighi
+%Copyright (c) 2007--2022 Vafa Khalighi
%
%Copyright (c) 2018--2020 bidi-tex GitHub Organization
%
@@ -285,7 +292,7 @@ by Vafa Khalighi.
%\iffalse
%<*table>
%\fi
-%% \CheckSum{50426}
+%% \CheckSum{50477}
%% \CharacterTable
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
@@ -1905,8 +1912,8 @@ by Vafa Khalighi.
% \section{File \texttt{bidi.sty}}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\def\bididate{2020/05/17}
-\def\bidi@version{36.3}
+\def\bididate{2022/02/01}
+\def\bidi@version{36.4}
\ProvidesPackage{bidi}[\bididate\space v\bidi@version\space
Bidirectional typesetting in plain TeX and LaTeX]
\edef\@bidi@info{****************************************************^^J%
@@ -1919,7 +1926,7 @@ Bidirectional typesetting in plain TeX and LaTeX]
* and LaTeX. The package includes adaptations^^J%
* for use with many other commonly-used packages.^^J%
* ^^J%
-* Copyright (c) 2007--2020 Vafa Khalighi^^J%
+* Copyright (c) 2007--2022 Vafa Khalighi^^J%
* Copyright (c) 2018--2020 bidi-tex GitHub organization^^J%
* ^^J%
* v\bidi@version, \bididate^^J%
@@ -1929,7 +1936,9 @@ Bidirectional typesetting in plain TeX and LaTeX]
* ^^J%
* Location on CTAN: /macros/xetex/latex/bidi^^J%
* ^^J%
-* Issue tracker: https://github.com/persiantex/bidi/issues^^J%
+* Issue tracker: https://github.com/tex-persian/bidi/issues^^J%
+* ^^J%
+* Support Email: tex-persian@vafa.ac^^J%
* ^^J%
* Primary author of bidi package: Vafa Khalighi.^^J%
* ^^J%
@@ -1992,7 +2001,7 @@ Bidirectional typesetting in plain TeX and LaTeX]
}
\newcommand*{\@bidi@pdfcustomproperties}{%
This is the bidi package, Version \bidi@version,
- Released May 17, 2020.
+ Released February 1, 2022.
}
\@RTLmainfalse
\AtBeginDocument{%
@@ -2235,9 +2244,9 @@ Bidirectional typesetting in plain TeX and LaTeX]
%\fi
% \section{File \texttt{bidi.tex}}
% \begin{macrocode}
-\def\bididate{2020/05/17}
+\def\bididate{2022/02/01}
\catcode`@=11
-\def\bidi@version{36.3}
+\def\bidi@version{36.4}
\let \protect \relax
\newlinechar`\^^J
\edef\@bidi@info{****************************************************^^J%
@@ -2250,7 +2259,7 @@ Bidirectional typesetting in plain TeX and LaTeX]
* and LaTeX. The package includes adaptations^^J%
* for use with many other commonly-used packages.^^J%
* ^^J%
-* Copyright (c) 2007--2020 Vafa Khalighi^^J%
+* Copyright (c) 2007--2022 Vafa Khalighi^^J%
* Copyright (c) 2018--2020 bidi-tex GitHub organization^^J%
* ^^J%
* v\bidi@version, \bididate^^J%
@@ -2260,7 +2269,9 @@ Bidirectional typesetting in plain TeX and LaTeX]
* ^^J%
* Location on CTAN: /macros/xetex/latex/bidi^^J%
* ^^J%
-* Issue tracker: https://github.com/persiantex/bidi/issues^^J%
+* Issue tracker: https://github.com/tex-persian/bidi/issues^^J%
+* ^^J%
+* Support Email: tex-persian@vafa.ac^^J%
* ^^J%
* Primary author of bidi package: Vafa Khalighi.^^J%
* ^^J%
@@ -2337,7 +2348,7 @@ Bidirectional typesetting in plain TeX and LaTeX]
}
\def\@bidi@pdfcustomproperties{%
This is the bidi package, Version \bidi@version,
- Released May 17, 2020.
+ Released February 1, 2022.
}
\def\bidi@pdfm@mark{%
\special{pdf:%
@@ -3098,7 +3109,7 @@ Bidirectional typesetting in plain TeX and LaTeX]
% \section{File \texttt{biditools.sty}}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{biditools}[2020/05/13 v2 Programming tools for bidi package]
+\ProvidesPackage{biditools}[2022/02/01 v2.1 Programming tools for bidi package]
\providecommand{\@bidi@saveprimitive}[2]{\begingroup\escapechar`\\\relax
\edef\@tempa{\string#1}\edef\@tempb{\meaning#1}%
\ifx\@tempa\@tempb \global\let#2#1%
@@ -3940,8 +3951,10 @@ ill-advised in the old versions of bidi package.%
\long\def\bidi@append#1#2{#1#2}
\long\def\bidi@prepend#1#2{#2#1}
-\bidi@newrobustcmd*{\bidi@AtEndPreamble}{\bidi@gappto\bidi@endpreamblehook}
-\newcommand*{\bidi@endpreamblehook}{}
+%\bidi@newrobustcmd*{\bidi@AtEndPreamble}{\bidi@gappto\bidi@endpreamblehook}
+%\newcommand*{\bidi@endpreamblehook}{}
+
+\bidi@newrobustcmd*{\bidi@AtEndPreamble}{\AddToHook{begindocument/before}}%
\bidi@newrobustcmd*{\bidi@BeforeOutputPageShipOut}{\bidi@gappto\bidi@beforeoutputpageshipouthook}
\newcommand*{\bidi@beforeoutputpageshipouthook}{}
@@ -3968,35 +3981,37 @@ ill-advised in the old versions of bidi package.%
\bidi@newrobustcmd*{\bidi@AtEndOutputPage}{\bidi@gappto\bidi@atendoutputpagehook}
\newcommand*{\bidi@atendoutputpagehook}{}
-\bidi@preto\document{%
- \endgroup
- \let\bidi@AtEndPreamble\@firstofone
- \bidi@endpreamblehook
- \protected\def\bidi@AtEndPreamble{\@notprerr\@gobble}%
- \bidi@undef\bidi@endpreamblehook
- \begingroup}
+%\bidi@preto\document{%
+% \endgroup
+% \let\bidi@AtEndPreamble\@firstofone
+% \bidi@endpreamblehook
+% \protected\def\bidi@AtEndPreamble{\@notprerr\@gobble}%
+% \bidi@undef\bidi@endpreamblehook
+% \begingroup}
\bidi@newrobustcmd*{\bidi@AfterPreamble}{\AtBeginDocument}
\bidi@AtEndPreamble{\let\bidi@AfterPreamble\@firstofone}
-\bidi@newrobustcmd*{\bidi@AfterEndPreamble}{\bidi@gappto\bidi@afterendpreamblehook}
-\newcommand*{\bidi@afterendpreamblehook}{}
+%\bidi@newrobustcmd*{\bidi@AfterEndPreamble}{\bidi@gappto\bidi@afterendpreamblehook}
+%\newcommand*{\bidi@afterendpreamblehook}{}
-\bidi@appto\document{%
- \let\bidi@AfterEndPreamble\@firstofone
- \bidi@afterendpreamblehook
- \protected\def\bidi@AfterEndPreamble{\@notprerr\@gobble}%
- \bidi@undef\bidi@afterendpreamblehook
- \ignorespaces}
+\bidi@newrobustcmd*{\bidi@AfterEndPreamble}{\AddToHook{begindocument/end}}%
+
+%\bidi@appto\document{%
+% \let\bidi@AfterEndPreamble\@firstofone
+% \bidi@afterendpreamblehook
+% \protected\def\bidi@AfterEndPreamble{\@notprerr\@gobble}%
+% \bidi@undef\bidi@afterendpreamblehook
+% \ignorespaces}
\bidi@newrobustcmd*{\bidi@AfterEndDocumentCheckLabelsRerun}{\bidi@gappto\bidi@afterenddocumentchecklabelsrerunhook}
\newcommand*{\bidi@afterenddocumentchecklabelsrerunhook}{}
\bidi@patchcmd\enddocument
- {\fi\endgroup}
+ {\fi}
{\let\bidi@AfterEndDocumentCheckLabelsRerun\@firstofone
\bidi@afterenddocumentchecklabelsrerunhook
- \fi\endgroup}
+ \fi}
{}
{\PackageWarning{biditools}{Patching `\string\enddocument' failed}}
@@ -4017,20 +4032,22 @@ ill-advised in the old versions of bidi package.%
\let\bidi@AfterLastShipout\@firstofone
\bidi@afterlastshipouthook}}
-\bidi@newrobustcmd*{\bidi@AfterEndDocument}{\bidi@gappto\bidi@afterenddocumenthook}
-\newcommand*{\bidi@afterenddocumenthook}{}
+%\bidi@newrobustcmd*{\bidi@AfterEndDocument}{\bidi@gappto\bidi@afterenddocumenthook}
+%\newcommand*{\bidi@afterenddocumenthook}{}
-\bidi@patchcmd\enddocument
- {\deadcycles}
- {\let\bidi@AfterEndDocument\@firstofone
- \bidi@afterenddocumenthook
- \deadcycles}
- {}
- {\let\bidi@@end\@@end
- \def\@@end{%
- \let\bidi@AfterEndDocument\@firstofone
- \bidi@afterenddocumenthook
- \bidi@@end}}
+\bidi@newrobustcmd*{\bidi@AfterEndDocument}{\AddToHook{enddocument/end}}%
+
+%\bidi@patchcmd\enddocument
+% {\deadcycles}
+% {\let\bidi@AfterEndDocument\@firstofone
+% \bidi@afterenddocumenthook
+% \deadcycles}
+% {}
+% {\let\bidi@@end\@@end
+% \def\@@end{%
+% \let\bidi@AfterEndDocument\@firstofone
+% \bidi@afterenddocumenthook
+% \bidi@@end}}
\bidi@newrobustcmd{\bidi@AtBeginEnvironment}[1]{%
\bidi@csgappto{@bidi@begin@#1@hook}}
@@ -9115,41 +9132,53 @@ bidi implementation of tufte title]
%\fi
% \section{File \texttt{eso-pic-xetex-bidi.def}}
% \begin{macrocode}
-\ProvidesFile{eso-pic-xetex-bidi.def}[2013/04/10 v0.2 bidi adaptations for eso-pic package for XeTeX engine]
+\ProvidesFile{eso-pic-xetex-bidi.def}[2022/02/01 v0.3 bidi adaptations for eso-pic package for XeTeX engine]
\renewcommand\AtPageLowerLeft[1]{\AtPageUpperLeft{%
- \put(\LenToUnit{\if@RTLmain\paperwidth\else0pt\fi},\LenToUnit{-\paperheight}){#1}}}
+ \put(\if@RTLmain\paperwidth\else 0\fi,-\paperheight){#1}}}
\ESO@isMEMOIR{%
\renewcommand\AtTextUpperLeft[1]{%
\begingroup
\ifodd\c@page
- \@tempdima=\spinemargin
+ \ESO@tempdima=\spinemargin
\else
- \@tempdima=\paperwidth
- \advance\@tempdima-\textwidth
- \advance\@tempdima-\spinemargin
+ \ESO@tempdima=\paperwidth
+ \advance\ESO@tempdima-\textwidth
+ \advance\ESO@tempdima-\spinemargin
\fi
- \@tempdimb=-\uppermargin
+ \ESO@tempdimb=-\uppermargin
\AtPageUpperLeft{%
- \put(\LenToUnit{\if@RTLmain-\fi\@tempdima},\LenToUnit{\@tempdimb}){#1}%
+ \put(\if@RTLmain-\fi\ESO@tempdima,\ESO@tempdimb){#1}%
}%
\endgroup
}
}{%
\renewcommand\AtTextUpperLeft[1]{%
\begingroup
- \@tempdima=1in\relax
- \ifodd\c@page
- \advance\@tempdima\oddsidemargin
+ \ESO@tempdima=1in\relax
+ \if@twoside
+ \ifodd\c@page
+ \if@RTLmain
+ \advance\ESO@tempdima\evensidemargin
+ \else
+ \advance\ESO@tempdima\oddsidemargin
+ \fi
+ \else
+ \if@RTLmain
+ \advance\ESO@tempdima\oddsidemargin
+ \else
+ \advance\ESO@tempdima\evensidemargin
+ \fi
+ \fi
\else
- \advance\@tempdima\evensidemargin
+ \advance\ESO@tempdima\oddsidemargin
\fi
- \@tempdimb=-1in\relax
- \advance\@tempdimb-\topmargin
- \advance\@tempdimb-\headheight
- \advance\@tempdimb-\headsep
+ \ESO@tempdimb=-1in\relax
+ \advance\ESO@tempdimb-\topmargin
+ \advance\ESO@tempdimb-\headheight
+ \advance\ESO@tempdimb-\headsep
\AtPageUpperLeft{%
- \put(\LenToUnit{\if@RTLmain-\fi\@tempdima},\LenToUnit{\@tempdimb}){#1}%
+ \put(\if@RTLmain-\fi\ESO@tempdima,\ESO@tempdimb){#1}%
}%
\endgroup
}
@@ -15945,7 +15974,7 @@ bidi implementation of tufte title]
%\fi
% \section{File \texttt{multicol-xetex-bidi.def}}
% \begin{macrocode}
-\ProvidesFile{multicol-xetex-bidi.def}[2019/06/14 v1.2 bidi adaptations for multicol package for XeTeX engine]
+\ProvidesFile{multicol-xetex-bidi.def}[2022/02/01 v1.3 bidi adaptations for multicol package for XeTeX engine]
\def\page@sofar{%
\process@cols\mult@rightbox
{\ifvoid\count@
@@ -15980,7 +16009,7 @@ bidi implementation of tufte title]
\fi
}
\def\LTR@column@boxes{%
- \process@cols\mult@gfirstbox{%
+ \process@cols\mult@firstbox{%
\ifdim\dp\count@>\dimen\tw@
\global\dimen\tw@\dp\count@ \fi
\mc@col@status@write
@@ -15994,16 +16023,13 @@ bidi implementation of tufte title]
}
\def\RTL@column@boxes{%
- \ifnum\col@number<\tw@
- \LTR@column@boxes
- \else
- \process@cols\mult@gfirstbox{%
+ \process@cols\mult@firstbox{%
\hskip\hsize
\hss{\columnseprulecolor\vrule
\@width\columnseprule}\hss
}%
\hskip\hsize
- \process@cols\mult@gfirstbox{%
+ \process@cols\mult@firstbox{%
\ifdim\dp\count@>\dimen\tw@
\global\dimen\tw@\dp\count@ \fi
\hskip-\hsize
@@ -16019,8 +16045,8 @@ bidi implementation of tufte title]
\box\mult@rightbox
\hskip-\hsize
\hskip\full@width
- \fi
}
+
\newcommand\RTLmulticolcolumns
{\let\bidi@multicol@align@columns
\RTL@column@boxes}
@@ -16042,23 +16068,26 @@ bidi implementation of tufte title]
columns doesn't seem a good idea.^^J
I therefore use two columns instead}%
\col@number\tw@ \fi
- \ifnum\col@number>10
+ \ifnum\col@number>20
\PackageError{multicol}%
{Too many columns}%
{Current implementation doesn't
- support more than 10 columns.%
+ support more than 20 columns.%
\MessageBreak
- I therefore use 10 columns instead}%
- \col@number10 \fi
- \ifx\@footnotetext\mult@footnotetext\else
+ I therefore use 20 columns instead}%
+ \col@number20 \fi
+ \ifx\@footnotetext\mult@footnotetext
+ \else
\let\orig@footnotetext\@footnotetext
\let\@footnotetext\mult@footnotetext
\fi
- \ifx\@LTRfootnotetext\mult@LTRfootnotetext\else
+ \ifx\@LTRfootnotetext\mult@LTRfootnotetext
+ \else
\let\orig@LTRfootnotetext\@LTRfootnotetext
\let\@LTRfootnotetext\mult@LTRfootnotetext
\fi
- \ifx\@RTLfootnotetext\mult@RTLfootnotetext\else
+ \ifx\@RTLfootnotetext\mult@RTLfootnotetext
+ \else
\let\orig@RTLfootnotetext\@RTLfootnotetext
\let\@RTLfootnotetext\mult@RTLfootnotetext
\fi
@@ -22025,7 +22054,7 @@ to\rtside{\box\bslice\hfil}}
%\fi
% \section{File \texttt{latex-xetex-bidi.def}}
% \begin{macrocode}
-\ProvidesFile{latex-xetex-bidi.def}[2019/03/03 v1.3.7 bidi adaptations for `latex.ltx' for XeTeX engine]
+\ProvidesFile{latex-xetex-bidi.def}[2022/02/01 v1.3.8 bidi adaptations for `latex.ltx' for XeTeX engine]
\newcommand{\TeXXeTOn}{\TeXXeTstate\@ne}
\newcommand{\TeXXeTOff}{\TeXXeTstate\z@}
\TeXXeTOn
@@ -22718,6 +22747,28 @@ $\@@underline{\hbox{#1}}\m@th$\relax\fi\fi}
\hskip\dimen\@curtabmar\box\@curline\hfil\if@RTL\endR\fi}%
\fi}
+\ExplSyntaxOn
+\cs_undefine:N \__shipout_picture_overlay:n
+\cs_new:Npn \__shipout_picture_overlay:n #1 {
+ \__shipout_init_page_origins:
+ \if@RTL
+ \kern \__dim_eval:w \textwidth-\c__shipout_horigin_tl \scan_stop:
+ \else
+ \kern -\c__shipout_horigin_tl \scan_stop:
+ \fi
+ \vbox_to_zero:n {
+ \kern -\c__shipout_vorigin_tl \scan_stop:
+ \unitlength 1pt \scan_stop:
+ \hbox_set_to_wd:Nnn \l__shipout_tmp_box \c_zero_dim
+ { \ignorespaces #1 \hss }
+ \box_set_ht:Nn \l__shipout_tmp_box \c_zero_dim
+ \box_set_dp:Nn \l__shipout_tmp_box \c_zero_dim
+ \box_use:N \l__shipout_tmp_box
+ \tex_vss:D
+ }
+}
+\ExplSyntaxOff
+
\newcommand*{\bidi@font@@outputpage}{}
\def\@outputpage{%
@@ -25395,7 +25446,7 @@ dynamic frame when using one of the \cmdname{Ncolumntop} type of commands.
\mobile{۰۹۱۸۹۶۹۴۹۶}
\phone{۹۸۹۰۸۳۴۱}
\fax{۹۸۹۰۸۳۴۲}
-\email{me@somedomain.com}
+\email{tex-persian@vafa.ac}
\extrainfo{اطلاعات اضافی}
\photo[64pt]{picture}
\quote{نقل قول}
diff --git a/macros/xetex/latex/bidi/bidi.pdf b/macros/xetex/latex/bidi/bidi.pdf
index 5e887f5129..e7468b4cb3 100644
--- a/macros/xetex/latex/bidi/bidi.pdf
+++ b/macros/xetex/latex/bidi/bidi.pdf
Binary files differ
diff --git a/macros/xetex/latex/xepersian/README b/macros/xetex/latex/xepersian/README
index 8ccf399e8d..07503c065c 100644
--- a/macros/xetex/latex/xepersian/README
+++ b/macros/xetex/latex/xepersian/README
@@ -1,6 +1,6 @@
____________________
The XePersian package
-v23.1
+v23.2
The xepersian package provides a convenient interface for
typesetting Persian and English texts in LaTeX, using XeTeX
@@ -11,14 +11,17 @@ documentation, or ask for any new features, or suggest any
improvements, or ask any questions about the package, then
please use the issue tracker:
- <https://github.com/persiantex/xepersian/issues>
+ <https://github.com/tex-persian/xepersian/issues>
In doing so, please always explain your issue well enough, and always
include a minimal working example showing the issue.
-Current version release date: 2020/05/17
+Current version release date: 2022/02/01
___________________________________________
-Copyright (c) Vafa Khalighi 2008--2020
+Vafa Khalighi
+tex-persian@vafa.ac
+
+Copyright (c) Vafa Khalighi 2008--2022
Copyright (c) bidi-tex GitHub Organization 2018--2020
Distributed under the LaTeX Project Public License
diff --git a/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx b/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
index 9c623195e9..0f4f219472 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
+++ b/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
@@ -22,17 +22,19 @@ If you use \textsf{\XePersian} package to write any input \TeX\ document, and th
* typesetting, using fonts provided in the
* distribution.
*
-* Copyright (c) 2008--2020 Vafa Khalighi
+* Copyright (c) 2008--2022 Vafa Khalighi
* Copyright (c) 2018--2020 bidi-tex GitHub Organization
*
-* v23.1, 2020/05/17
+* v23.2, 2022/02/01
*
* License: LaTeX Project Public License, version
* 1.3c or higher (your choice)
*
* Location on CTAN: /macros/xetex/latex/xepersian
*
-* Issue tracker: https://github.com/persiantex/xepersian/issues
+* Issue tracker: https://github.com/tex-persian/xepersian/issues
+*
+* Support Email: tex-persian@vafa.ac
*
* Primary author of xepersian package: Vafa Khalighi.
*
diff --git a/macros/xetex/latex/xepersian/xepersian-doc-title.ltx b/macros/xetex/latex/xepersian/xepersian-doc-title.ltx
index 4d0898f33d..51011e39b9 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc-title.ltx
+++ b/macros/xetex/latex/xepersian/xepersian-doc-title.ltx
@@ -3,8 +3,9 @@
\begin{document}
\title{\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}\\
\LARGE Persian for \LaTeXe, using {\XeTeX} engine\\[5pt]
-\large User documentation for \textcolor{blue!65!black}{version 23.1}}
-\author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}}
+\large User documentation for \textcolor{blue!65!black}{version 23.2}}
+\author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}\\
+ \url{tex-persian@vafa.ac}}
\setcounter{page}{0}
\thispagestyle{empty}
\includegraphics[width=.3\textwidth]{xepersian-logo}\qquad
@@ -13,7 +14,7 @@
\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}
\Large
-User documentation for \textcolor{blue!65!black}{version 23.1}}
+User documentation for \textcolor{blue!65!black}{version 23.2}}
\vskip 0pt plus 3fill
\textit{\large to my Master, \textbf{Ferdowsi The Great}}
@@ -24,7 +25,7 @@ If you want to report any bugs or typos and corrections in the documentation,
or ask for any new features, or suggest any improvements, or ask any questions about the package, then please use the issue tracker:
\medskip
- \centerline{\url{https://github.com/persiantex/xepersian/issues}}
+ \centerline{\url{https://github.com/tex-persian/xepersian/issues}}
\medskip
In doing so, please always explain your issue well enough, and always include
@@ -35,7 +36,7 @@ a minimal working example showing the issue.
\vskip 0pt plus 3fill
-Copyright (c) 2008--2020 Vafa Khalighi
+Copyright (c) 2008--2022 Vafa Khalighi
Copyright (c) 2018--2020 bidi-tex GitHub Organization
diff --git a/macros/xetex/latex/xepersian/xepersian-doc.ltx b/macros/xetex/latex/xepersian/xepersian-doc.ltx
index 2ea07b68ea..5cd43a84e7 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc.ltx
+++ b/macros/xetex/latex/xepersian/xepersian-doc.ltx
@@ -1,7 +1,7 @@
\documentclass{ltxdoc}
\input{xepersian-doc-preamble.ltx}
\hypersetup{%
- pdftitle={User documentation for version 23.1 of the XePersian
+ pdftitle={User documentation for version 23.2 of the XePersian
package}%
}
\begin{document}
diff --git a/macros/xetex/latex/xepersian/xepersian-doc.pdf b/macros/xetex/latex/xepersian/xepersian-doc.pdf
index 693315fd4d..1f79bb2306 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc.pdf
+++ b/macros/xetex/latex/xepersian/xepersian-doc.pdf
Binary files differ
diff --git a/macros/xetex/latex/xepersian/xepersian.dtx b/macros/xetex/latex/xepersian/xepersian.dtx
index 9591f5c37e..fb740c00a5 100644
--- a/macros/xetex/latex/xepersian/xepersian.dtx
+++ b/macros/xetex/latex/xepersian/xepersian.dtx
@@ -5,7 +5,7 @@
%<*readme>
____________________
The XePersian package
-v23.1
+v23.2
The xepersian package provides a convenient interface for
typesetting Persian and English texts in LaTeX, using XeTeX
@@ -16,15 +16,18 @@ documentation, or ask for any new features, or suggest any
improvements, or ask any questions about the package, then
please use the issue tracker:
- <https://github.com/persiantex/xepersian/issues>
+ <https://github.com/tex-persian/xepersian/issues>
In doing so, please always explain your issue well enough, and always
include a minimal working example showing the issue.
-Current version release date: 2020/05/17
+Current version release date: 2022/02/01
___________________________________________
-Copyright (c) Vafa Khalighi 2008--2020
+Vafa Khalighi
+tex-persian@vafa.ac
+
+Copyright (c) Vafa Khalighi 2008--2022
Copyright (c) bidi-tex GitHub Organization 2018--2020
Distributed under the LaTeX Project Public License
@@ -46,7 +49,10 @@ by Vafa Khalighi.
\preamble
__________________________________________________
- Copyright (c) 2008--2020 Vafa Khalighi
+ Vafa Khalighi
+ tex-persian@vafa.ac
+
+ Copyright (c) 2008--2022 Vafa Khalighi
Copyright (c) 2018--2020 bidi-tex GitHub Organization
It may be distributed and/or modified under the LaTeX Project Public License,
@@ -152,7 +158,7 @@ by Vafa Khalighi.
\documentclass{ltxdoc}
\input{xepersian-doc-preamble.ltx}
\hypersetup{%
- pdftitle={Source documentation for version 23.1 of the XePersian
+ pdftitle={Source documentation for version 23.2 of the XePersian
package}%
}
\EnableCrossrefs
@@ -171,8 +177,9 @@ by Vafa Khalighi.
% \GetFileInfo{\jobname.dtx}
% \title{\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}\\
%\LARGE Persian for \LaTeXe, using {\XeTeX} engine\\[5pt]
-%\large Source documentation for \textcolor{blue!65!black}{version 23.1}}
-% \author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}}
+%\large Source documentation for \textcolor{blue!65!black}{version 23.2}}
+% \author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}\\
+% \url{tex-persian@vafa.ac}}
%\setcounter{page}{0}
%\thispagestyle{empty}
%\includegraphics[width=.3\textwidth]{xepersian-logo}\qquad
@@ -181,7 +188,7 @@ by Vafa Khalighi.
%\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}
%
%\Large
-%Source documentation for \textcolor{blue!65!black}{version 23.1}}
+%Source documentation for \textcolor{blue!65!black}{version 23.2}}
%
%\vskip 0pt plus 3fill
%\textit{\large to my Master, \textbf{Ferdowsi The Great}}
@@ -192,7 +199,7 @@ by Vafa Khalighi.
%or ask for any new features, or suggest any improvements, or ask any questions about the package, then please use the issue tracker:
%
%\medskip
-% \centerline{\url{https://github.com/persiantex/xepersian/issues}}
+% \centerline{\url{https://github.com/tex-persian/xepersian/issues}}
%
%\medskip
%In doing so, please always explain your issue well enough, and always include
@@ -202,7 +209,7 @@ by Vafa Khalighi.
%
%\vskip 0pt plus 3fill
%
-%Copyright (c) 2008--2020 Vafa Khalighi
+%Copyright (c) 2008--2022 Vafa Khalighi
%
%Copyright (c) 2018--2020 bidi-tex GitHub Organization
%
@@ -217,7 +224,7 @@ by Vafa Khalighi.
%\iffalse
%<*table>
%\fi
-%% \CheckSum{10882}
+%% \CheckSum{10887}
%% \CharacterTable
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
@@ -3416,8 +3423,8 @@ U+003E U+003E <> U+00BB ; >> -> RIGHT POINTING GUILLEMET
% \section{File \texttt{xepersian.sty}}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\def\xepersian@version{23.1}
-\def\xepersiandate{2020/05/17}
+\def\xepersian@version{23.2}
+\def\xepersiandate{2022/02/01}
\ProvidesPackage{xepersian}[\xepersiandate\space v\xepersian@version\space
Persian typesetting in XeLaTeX]
\RequirePackage{fontspec}
@@ -3432,7 +3439,7 @@ Persian typesetting in XeLaTeX]
* typesetting, using fonts provided in the^^J%
* distribution.^^J%
* ^^J%
-* Copyright (c) 2008--2020 Vafa Khalighi^^J%
+* Copyright (c) 2008--2022 Vafa Khalighi^^J%
* Copyright (c) 2018--2020 bidi-tex GitHub Organization^^J%
* ^^J%
* v\xepersian@version, \xepersiandate^^J%
@@ -3442,7 +3449,9 @@ Persian typesetting in XeLaTeX]
* ^^J%
* Location on CTAN: /macros/xetex/latex/xepersian^^J%
* ^^J%
-* Issue tracker: https://github.com/persiantex/xepersian/issues^^J%
+* Issue tracker: https://github.com/tex-persian/xepersian/issues^^J%
+* ^^J%
+* Support Email: tex-persian@vafa.ac^^J%
* ^^J%
* Primary author of xepersian package: Vafa Khalighi.^^J%
* ^^J%
@@ -4249,7 +4258,7 @@ Persian typesetting in XeLaTeX]
\newcommand*{\@xepersian@pdfcustomproperties}{%
This is the xepersian package, Version \xepersian@version,
- Released May 17, 2020.
+ Released February 1, 2022.
}
\newcommand\twocolumnstableofcontents{%
@@ -5812,7 +5821,7 @@ indexblock environment may only appear inside frontpage environment.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{xepersian-mathsdigitspec}
- [2018/12/16 v1.1.7 Unicode Persian maths digits in XeLaTeX]
+ [2022/02/01 v1.1.8 Unicode Persian maths digits in XeLaTeX]
\def\new@mathgroup{\alloc@8\mathgroup\chardef\@cclvi}
\let\newfam\new@mathgroup
\def\select@group#1#2#3#4{%
@@ -5898,9 +5907,10 @@ indexblock environment may only appear inside frontpage environment.
\cs_new_eq:NN \orig_mathrm:n \mathrm
\cs_new_eq:NN \orig_mathsf:n \mathsf
\cs_new_eq:NN \orig_mathtt:n \mathtt
+%\int_const:Nn \c_one_int { 1 }
\NewDocumentCommand \new@mathbf { m } {
\orig_mathbf:n {
- \int_step_inline:nnnn { `0 } { \c_one } { `9 } {
+ \int_step_inline:nnnn { `0 } { \c_one_int } { `9 } {
\mathcode ##1 = \numexpr "100 * \symnew@mathbf@font@digits + ##1 \relax
}
#1
@@ -5908,7 +5918,7 @@ indexblock environment may only appear inside frontpage environment.
}
\NewDocumentCommand \new@mathit { m } {
\orig_mathit:n {
- \int_step_inline:nnnn { `0 } { \c_one } { `9 } {
+ \int_step_inline:nnnn { `0 } { \c_one_int } { `9 } {
\mathcode ##1 = \numexpr "100 * \symnew@mathit@font@digits + ##1 \relax
}
#1
@@ -5916,7 +5926,7 @@ indexblock environment may only appear inside frontpage environment.
}
\NewDocumentCommand \new@mathrm { m } {
\orig_mathrm:n {
- \int_step_inline:nnnn { `0 } { \c_one } { `9 } {
+ \int_step_inline:nnnn { `0 } { \c_one_int } { `9 } {
\mathcode ##1 = \numexpr "100 * \symnew@mathrm@font@digits + ##1 \relax
}
#1
@@ -5924,7 +5934,7 @@ indexblock environment may only appear inside frontpage environment.
}
\NewDocumentCommand \new@mathsf{ m } {
\orig_mathsf:n {
- \int_step_inline:nnnn { `0 } { \c_one } { `9 } {
+ \int_step_inline:nnnn { `0 } { \c_one_int } { `9 } {
\mathcode ##1 = \numexpr "100 * \symnew@mathsf@font@digits + ##1 \relax
}
#1
@@ -5932,7 +5942,7 @@ indexblock environment may only appear inside frontpage environment.
}
\NewDocumentCommand \new@mathtt{ m } {
\orig_mathtt:n {
- \int_step_inline:nnnn { `0 } { \c_one } { `9 } {
+ \int_step_inline:nnnn { `0 } { \c_one_int } { `9 } {
\mathcode ##1 = \numexpr "100 * \symnew@mathtt@font@digits + ##1 \relax
}
#1
@@ -5952,9 +5962,10 @@ indexblock environment may only appear inside frontpage environment.
}
\char_set_catcode_ignore:n {32}
+%\__kernel_primitive:NN \iffontchar \tex_iffontchar:D
\prg_new_conditional:Nnn \__xepersian_mathsdigitspec_primitive_font_char_if_exist:n {p,TF,T,F}
{
- \etex_iffontchar:D \l_fontspec_font "#1 \scan_stop:
+ \tex_iffontchar:D \l_fontspec_font "#1 \scan_stop:
\prg_return_true:
\else:
\prg_return_false:
diff --git a/macros/xetex/latex/xepersian/xepersian.pdf b/macros/xetex/latex/xepersian/xepersian.pdf
index 135dc52377..3f50a1e4f2 100644
--- a/macros/xetex/latex/xepersian/xepersian.pdf
+++ b/macros/xetex/latex/xepersian/xepersian.pdf
Binary files differ