texlive[60667] Master/texmf-dist: markdown (2oct21)

commits+karl at tug.org commits+karl at tug.org
Sat Oct 2 00:00:34 CEST 2021


Revision: 60667
          http://tug.org/svn/texlive?view=revision&revision=60667
Author:   karl
Date:     2021-10-02 00:00:34 +0200 (Sat, 02 Oct 2021)
Log Message:
-----------
markdown (2oct21)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/context/third/markdown/examples/context.tex
    trunk/Master/texmf-dist/doc/context/third/markdown/examples/example.md
    trunk/Master/texmf-dist/doc/generic/markdown/README.md
    trunk/Master/texmf-dist/doc/generic/markdown/markdown.html
    trunk/Master/texmf-dist/doc/generic/markdown/markdown.md
    trunk/Master/texmf-dist/doc/generic/markdown/markdown.pdf
    trunk/Master/texmf-dist/doc/latex/markdown/examples/example.md
    trunk/Master/texmf-dist/doc/latex/markdown/examples/latex.tex
    trunk/Master/texmf-dist/scripts/markdown/markdown-cli.lua
    trunk/Master/texmf-dist/source/generic/markdown/markdown.dtx
    trunk/Master/texmf-dist/source/generic/markdown/markdown.ins
    trunk/Master/texmf-dist/tex/context/third/markdown/t-markdown.tex
    trunk/Master/texmf-dist/tex/generic/markdown/markdown.tex
    trunk/Master/texmf-dist/tex/latex/markdown/markdown.sty
    trunk/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_dot.sty
    trunk/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty
    trunk/Master/texmf-dist/tex/luatex/markdown/markdown.lua

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/generic/markdown/markdown.png
    trunk/Master/texmf-dist/tex/luatex/markdown/markdown-tinyyaml.lua

Removed Paths:
-------------
    trunk/Master/texmf-dist/doc/generic/markdown/banner.png

Modified: trunk/Master/texmf-dist/doc/context/third/markdown/examples/context.tex
===================================================================
--- trunk/Master/texmf-dist/doc/context/third/markdown/examples/context.tex	2021-10-01 16:30:06 UTC (rev 60666)
+++ trunk/Master/texmf-dist/doc/context/third/markdown/examples/context.tex	2021-10-01 22:00:34 UTC (rev 60667)
@@ -12,6 +12,7 @@
 \def\markdownOptionContentBlocks{true}
 \def\markdownOptionPipeTables{true}
 \def\markdownOptionTableCaptions{true}
+\def\markdownOptionTaskLists{true}
 \definetyping [latex]
 \setuptyping  [latex] [option=TEX]
 \starttext

Modified: trunk/Master/texmf-dist/doc/context/third/markdown/examples/example.md
===================================================================
--- trunk/Master/texmf-dist/doc/context/third/markdown/examples/example.md	2021-10-01 16:30:06 UTC (rev 60666)
+++ trunk/Master/texmf-dist/doc/context/third/markdown/examples/example.md	2021-10-01 22:00:34 UTC (rev 60667)
@@ -1,12 +1,13 @@
-This is an H1
-=============
+# This is an H1
 
-This is an H2
--------------
+## This is an H2
 
 ### This is an H3
+
 #### This is an H4
+
 ##### This is an H5
+
 ###### This is an H6
 
 This is a text paragraph containing an ellipsis ... and followed by a horizontal rule.
@@ -40,46 +41,57 @@
 
 This is a bullet list:
 
-  * The first item of a bullet list
+* The first item of a bullet list
 
-    that spans several paragraphs,
-  * the second item of a bullet list,
-  * the third item of a bullet list.
+  that spans several paragraphs,
+* the second item of a bullet list,
+* the third item of a bullet list.
 
 This is a compact bullet list:
 
-  * The first item of a bullet list,
-  * the second item of a bullet list,
-  * the third item of a bullet list.
+* The first item of a bullet list,
+* the second item of a bullet list,
+* the third item of a bullet list.
 
 This is an ordered list:
 
-  5. The first item of an ordered list
+5. The first item of an ordered list
 
-     that spans several paragraphs,
-  6. the second item of an ordered list,
-  7. the third item of an ordered list.
+   that spans several paragraphs,
+6. the second item of an ordered list,
+7. the third item of an ordered list.
 
 This is an ordered list using hash enumerators:
 
-  #. The first item of an ordered list
+#. The first item of an ordered list
 
-     that spans several paragraphs,
-  #. the second item of an ordered list,
-  #. the third item of an ordered list.
+   that spans several paragraphs,
+#. the second item of an ordered list,
+#. the third item of an ordered list.
 
 This is a compact ordered list:
 
-  5. The first item of an ordered list,
-  6. the second item of an ordered list,
-  7. the third item of an ordered list.
+5. The first item of an ordered list,
+6. the second item of an ordered list,
+7. the third item of an ordered list.
 
 This is a compact ordered list using hash enumerators:
 
-  #. The first item of an ordered list,
-  #. the second item of an ordered list,
-  #. the third item of an ordered list.
+#. The first item of an ordered list,
+#. the second item of an ordered list,
+#. the third item of an ordered list.
 
+This is a task list:
+
+* [ ] Some unfinished task
+* [/] Some half-finished task
+* [X] Some finished task
+* An item of an unordered list
+    #. [ ] Some unfinished subtask
+    #. [.] Some half-finished subtask
+    #. [x] Some finished subtask
+    #. An item of an ordered list
+
 This is a definition list:
 
 Term 1
@@ -86,12 +98,12 @@
 
 :   Definition 1
 
-*Term 2*
+Term 2
 
 :   Definition 2
-    
+
         Some code, part of Definition 2
-    
+
     Third paragraph of Definition 2.
 
 :   Definition 3
@@ -100,7 +112,7 @@
 
 Term 1
 :   Definition 1
-*Term 2*
+Term 2
 :   Definition 2
 :   Definition 3
 

Modified: trunk/Master/texmf-dist/doc/generic/markdown/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/generic/markdown/README.md	2021-10-01 16:30:06 UTC (rev 60666)
+++ trunk/Master/texmf-dist/doc/generic/markdown/README.md	2021-10-01 22:00:34 UTC (rev 60667)
@@ -1,11 +1,14 @@
 Markdown
 ========
 
+[![license](https://img.shields.io/github/license/witiko/markdown)](LICENSE)
 [![release](https://img.shields.io/github/release/witiko/markdown.svg)][release]
-[![ci](https://github.com/Witiko/markdown/workflows/Test/badge.svg)][ci]
+[![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]
+[![ci](https://github.com/witiko/markdown/actions/workflows/main.yml/badge.svg)][ci]
 
- [release]:  https://github.com/Witiko/markdown/releases/latest  "Releases · Witiko/markdown"
- [ci]:       https://github.com/Witiko/markdown/actions          "GitHub Actions"
+ [release]:  https://github.com/Witiko/markdown/releases/latest "Releases · Witiko/markdown"
+ [ci]:       https://github.com/Witiko/markdown/actions         "GitHub Actions"
 
 The Markdown package converts [markdown][] markup to TeX commands. The
 functionality is provided both as a Lua module, and as plain TeX, LaTeX, and
@@ -15,24 +18,155 @@
 and every markdown element is rendered. Creative abuse of the markdown syntax
 is encouraged. 😉
 
- [markdown]: https://daringfireball.net/projects/markdown/basics  "Daring Fireball: Markdown Basics"
+ [markdown]: https://daringfireball.net/projects/markdown/basics "Daring Fireball: Markdown Basics"
 
- ![banner](banner.png "An example LaTeX document using the Markdown package")
+Your first Markdown document
+----------------------------
 
+Using a text editor, create an empty directory named `workdir/`. In it, create
+a text document named `workdir/document.tex` with the following content:
+
+``` latex
+\documentclass{book}
+\usepackage{markdown}
+\markdownSetup{pipeTables,tableCaptions}
+\begin{document}
+\begin{markdown}
+Introduction
+============
+## Section
+### Subsection
+Hello *Markdown*!
+
+| Right | Left | Default | Center |
+|------:|:-----|---------|:------:|
+|   12  |  12  |    12   |    12  |
+|  123  |  123 |   123   |   123  |
+|    1  |    1 |     1   |     1  |
+
+: Table
+\end{markdown}
+\end{document}
+```
+
+Next, run the [LaTeXMK][] tool from
+[our official Docker image][docker-witiko/markdown] on `document.tex`:
+
+    docker run --rm -v "$PWD"/workdir:/workdir -w /workdir witiko/markdown \
+      latexmk -lualatex -silent document.tex
+
+Alternatively, you can install [TeX Live][tex-live] (can take up to several
+hours) and use its [LaTeXMK][] tool:
+
+    latexmk -cd -lualatex -silent workdir/document.tex
+
+A PDF document named `workdir/document.pdf` should be produced and contain the
+following output:
+
+ ![banner](markdown.png "An example LaTeX document using the Markdown package")
+
+Congratulations, you have just typeset your first Markdown document! 🥳
+
+ [tex-live]: https://www.tug.org/texlive/ "TeX Live - TeX Users Group"
+
+Use Markdown for continuous integration
+---------------------------------------
+
+Can't live without the latest features of the Markdown package in your
+continuous integration pipelines? It's ok, you can use
+[our official Docker image][docker-witiko/markdown] as a drop-in replacement
+for [the `texlive/texlive:latest` Docker image][docker-texlive/texlive]!
+The following example shows a [GitHub Actions][github-actions] pipeline, which
+will automatically typeset and prerelease a PDF document:
+
+``` yaml
+name: Typeset and prerelease the book
+on:
+  push:
+jobs:
+  typeset:
+    runs-on: ubuntu-latest
+    container:
+      image: witiko/markdown:latest
+    steps:
+      - uses: actions/checkout at v2
+      - run: latexmk -lualatex document.tex
+      - uses: marvinpinto/action-automatic-releases at latest
+        with:
+          title: The latest typeset book
+          automatic_release_tag: latest
+          prerelease: true
+          repo_token: ${{ secrets.GITHUB_TOKEN }}
+          files: document.pdf
+```
+
+In fact, this is how we automatically produce
+[the latest documentation][techdoc-latest] for the Markdown package.
+
+ [docker-witiko/markdown]: https://hub.docker.com/r/witiko/markdown/tags "witiko/markdown - Docker Image"
+ [docker-texlive/texlive]: https://hub.docker.com/r/texlive/texlive/tags "texlive/texlive - Docker Image"
+
+ [github-actions]: https://docs.github.com/actions "GitHub Actions Documentation"
+
+Peek under the hood
+-------------------
+
+Remember how we said that the Markdown package converts [markdown][] markup to
+TeX commands? Let's see what that means and what we can do with this knowledge.
+
+Using a text editor, create an empty text document named `document.md` with
+the following markdown content:
+
+``` markdown
+Hello *Markdown*! $a_x + b_x = c_x$
+```
+
+Next, run [the Lua command-line interface (CLI)][lua-cli] from
+[our official Docker image][docker-witiko/markdown] on `document.md`:
+
+    docker run --rm -i witiko/markdown markdown-cli hybrid=true < document.md
+
+We will receive the following output, where the markdown markup has been
+replaced by TeX commands:
+
+``` tex
+Hello \markdownRendererEmphasis{Markdown}!
+$a\markdownRendererEmphasis{x + b}x = c_x$\relax
+```
+
+We can see right away that the Markdown package has incorrectly interpreted
+`_x + b_` as an emphasized text. We can fix this by passing in the
+`underscores=false` option:
+
+    docker run --rm -i witiko/markdown markdown-cli hybrid=true underscores=false < document.md
+
+``` tex
+Hello \markdownRendererEmphasis{Markdown}!
+$a_x + b_x = c_x$\relax
+```
+
+Much better! If the Markdown package ever surprises you, use the Lua CLI to
+peek under the hood and inspect the results of the conversion.
+
+ [lua-cli]: https://mirrors.ctan.org/macros/generic/markdown/markdown.html#lua-command-line-interface "Markdown Package User Manual"
+
 Further information
 -------------------
 
 For further information, consult one of the following:
 
-1. The [user manual][manual], which can be produced by interpreting the
-   `markdown.ins` file using a Unicode-aware TeX engine, such as XeTeX
-   (`xetex markdown.ins`) or LuaTeX (`luatex markdown.ins`). The manual will
-   reside in the file `markdown.md` and the CSS stylesheet `markdown.css`.
-2. The [technical documentation][techdoc], which can be typeset by running the
-   [LaTeXMK][] tool on the `markdown.dtx` file
-   (`latexmk markdown.dtx`) after [installing the Markdown package][install].
-   [LaTeXMK][] should be included in your TeX distribution. The typeset
-   documentation will reside in the file `markdown.pdf`.
+1. The user manual for either [the released version][manual-tex-live] or
+   [the latest development version][manual-latest], which can be produced by
+   interpreting the `markdown.ins` file using a Unicode-aware TeX engine, such
+   as XeTeX (`xetex markdown.ins`) or LuaTeX (`luatex markdown.ins`). The
+   manual will reside in the file `markdown.md` and the CSS stylesheet
+   `markdown.css`.
+2. The technical documentation for either [the released version][techdoc-tex-live]
+   or [the latest development version][techdoc-latest], which can be typeset by
+   running the [LaTeXMK][] tool on the `markdown.dtx` file (`latexmk
+   markdown.dtx`) after [installing the Markdown package][install].
+   [LaTeXMK][] should be included in your TeX distribution.
+   The typeset documentation will reside in the file `markdown.pdf`.
 3. Tutorials and example documents by [Lian Tze Lim][liantze] at [Overleaf][]:
     - [How to write in Markdown on Overleaf][overleaf-1],
     - [Markdown into LaTeX with Style][overleaf-2],
@@ -42,13 +176,15 @@
     - [Using Markdown in LaTeX documents][overleaf-6].
 4. My journal articles published by [TUGboat][]:
     - [Using Markdown inside TeX documents][tb119],
-    - [Markdown 2.7.0: Towards lightweight markup in TeX][tb124], and
-    - [Making Markdown into a Microwave Meal][tb129].
+    - [Markdown 2.7.0: Towards lightweight markup in TeX][tb124],
+    - [Making Markdown into a Microwave Meal][tb129], and
+    - [Markdown 2.10.0: LaTeX Themes & Snippets, Two Flavors of Comments, and LuaMetaTeX][tb131-preprint].
 5. My journal articles published by [CSTUG][] (in Czech):
     - [Rendering Markdown inside TeX Documents][10.5300/2016-1-4/78], and
     - [Markdown 2.8.1: Boldly Unto the Throne of Lightweight Markup in TeX][10.5300/2020-1-2/48].
 6. My talks:
-    - [Five Years of Markdown in LaTeX: What, Why, How, and Whereto][pv212-fall2020] (in Czech).
+    - [Five Years of Markdown in LaTeX: What, Why, How, and Whereto][pv212-fall2020] (in Czech), and
+    - [Markdown 2.10.0: LaTeX Themes & Snippets, Two Flavors of Comments, and LuaMetaTeX][tb131-video] ([slides][tb131-slides]).
 
  [overleaf-1]: https://www.overleaf.com/learn/latex/Articles/How_to_write_in_Markdown_on_Overleaf       "How to write in Markdown on Overleaf"
  [overleaf-2]: https://www.overleaf.com/learn/latex/Articles/Markdown_into_LaTeX_with_Style             "Markdown into LaTeX with Style"
@@ -57,28 +193,36 @@
  [overleaf-5]: https://www.overleaf.com/latex/examples/writing-posters-with-markdown/jtbgmmgqrqmh       "Writing Posters with Markdown"
  [overleaf-6]: https://www.overleaf.com/latex/examples/using-markdown-in-latex-documents/whdrnpcpnwrm   "Using Markdown in LaTeX documents"
 
- [tb119]: https://www.tug.org/TUGboat/tb38-2/tb119novotny.pdf           "Using Markdown inside TeX documents"
- [tb124]: https://www.tug.org/TUGboat/tb40-1/tb124novotny-markdown.pdf  "Markdown 2.7.0: Towards lightweight markup in TeX"
- [tb129]: https://www.tug.org/TUGboat/tb41-3/tb129novotny-frozen.pdf    "Making Markdown into a Microwave Meal"
+ [tb119]: https://www.tug.org/TUGboat/tb38-2/tb119novotny.pdf          "Using Markdown inside TeX documents"
+ [tb124]: https://www.tug.org/TUGboat/tb40-1/tb124novotny-markdown.pdf "Markdown 2.7.0: Towards lightweight markup in TeX"
+ [tb129]: https://www.tug.org/TUGboat/tb41-3/tb129novotny-frozen.pdf   "Making Markdown into a Microwave Meal"
 
+ [tb131-preprint]: https://tug.org/TUGboat/production/42-2/tb131novotny-markdown.pdf "Markdown 2.10.0: LaTeX Themes & Snippets, Two Flavors of Comments, and LuaMetaTeX"
+ [tb131-slides]:   https://tug.org/tug2021/assets/pdf/tug2021-novotny-slides.pdf     "Markdown 2.10.0: LaTeX Themes & Snippets, Two Flavors of Comments, and LuaMetaTeX"
+ [tb131-video]:    https://youtu.be/i2GJMnLCZls                                      "Markdown 2.10.0: LaTeX Themes & Snippets, Two Flavors of Comments, and LuaMetaTeX"
+
  [10.5300/2016-1-4/78]: https://bulletin.cstug.cz/pdf/2016-1-4.pdf#page=80 "Rendering Markdown inside TeX Documents"
  [10.5300/2020-1-2/48]: https://bulletin.cstug.cz/pdf/2020-1-2.pdf#page=50 "Markdown 2.8.1: Boldly Unto the Throne of Lightweight Markup in TeX"
 
  [pv212-fall2020]: https://is.muni.cz/el/fi/podzim2020/PV212/index.qwarp?prejit=5595952
 
- [install]:  http://mirrors.ctan.org/macros/generic/markdown/markdown.html#installation "Markdown Package User Manual"
- [liantze]:  http://liantze.penguinattack.org/                                          "Rants from the Lab"
- [manual]:   http://mirrors.ctan.org/macros/generic/markdown/markdown.html              "Markdown Package User Manual"
- [overleaf]: https://www.overleaf.com/                                                  "Overleaf: Real-time Collaborative Writing and Publishing Tools with Integrated PDF Preview"
- [techdoc]:  http://mirrors.ctan.org/macros/generic/markdown/markdown.pdf               "A Markdown Interpreter for TeX"
- [tugboat]:  https://www.tug.org/tugboat/                                               "TUGboat - Communications of the TeX Users Group"
- [cstug]:    https://www.cstug.cz/                                                      "Československé sdružení uživatelů TeXu"
+ [install]:  https://mirrors.ctan.org/macros/generic/markdown/markdown.html#installation "Markdown Package User Manual"
+ [liantze]:  https://liantze.penguinattack.org/                                          "Rants from the Lab"
+ [overleaf]: https://www.overleaf.com/                                                   "Overleaf: Real-time Collaborative Writing and Publishing Tools with Integrated PDF Preview"
+ [tugboat]:  https://www.tug.org/tugboat/                                                "TUGboat - Communications of the TeX Users Group"
+ [cstug]:    https://www.cstug.cz/                                                       "Československé sdružení uživatelů TeXu"
 
+ [manual-latest]:     https://witiko.github.io/markdown                                  "Markdown Package User Manual"
+ [manual-tex-live]:   https://mirrors.ctan.org/macros/generic/markdown/markdown.html     "Markdown Package User Manual"
+
+ [techdoc-latest]:    https://github.com/Witiko/markdown/releases/download/latest/markdown.pdf  "A Markdown Interpreter for TeX"
+ [techdoc-tex-live]:  https://mirrors.ctan.org/macros/generic/markdown/markdown.pdf             "A Markdown Interpreter for TeX"
+
 Acknowledgements
 ----------------
 
-| Logo | Acknowledgement |
-| ------------- | ------------- |
+| Logo          | Acknowledgement |
+| ------------- | --------------- |
 | [<img width="150" src="https://www.fi.muni.cz/images/fi-logo.png">][fimu] | I gratefully acknowledge the funding from the [Faculty of Informatics][fimu] at the [Masaryk University][mu] in Brno, Czech Republic, for the development of the Markdown package. |
 | [<img width="150" src="https://cdn.overleaf.com/img/ol-brand/overleaf_og_logo.png">][overleaf] | Extensive user documentation for the Markdown package was kindly written by [Lian Tze Lim][liantze] and published by [Overleaf][]. |
 | [<img width="150" src="https://pbs.twimg.com/profile_images/1004769879319334912/6Bh1UthD.jpg">][omedym] | Support for content slicing (Lua options [`shiftHeadings`][option-shift-headings] and [`slice`][option-slice]) and pipe tables (Lua options [`pipeTables`][option-pipe-tables] and [`tableCaptions`][option-table-captions]) was graciously sponsored by [David Vins][dvins] and [Omedym][]. |
@@ -88,16 +232,16 @@
  [mu]:     https://www.muni.cz/en               "Masaryk University"
  [Omedym]: https://www.omedym.com/              "Omedym"
 
- [option-pipe-tables]:    http://mirrors.ctan.org/macros/generic/markdown/markdown.html#pipe-tables          "Markdown Package User Manual"
- [option-shift-headings]: http://mirrors.ctan.org/macros/generic/markdown/markdown.html#option-shiftheadings "Markdown Package User Manual"
- [option-slice]:          http://mirrors.ctan.org/macros/generic/markdown/markdown.html#slice                "Markdown Package User Manual"
- [option-table-captions]: http://mirrors.ctan.org/macros/generic/markdown/markdown.html#option-tablecaptions "Markdown Package User Manual"
+ [option-pipe-tables]:    https://mirrors.ctan.org/macros/generic/markdown/markdown.html#pipe-tables          "Markdown Package User Manual"
+ [option-shift-headings]: https://mirrors.ctan.org/macros/generic/markdown/markdown.html#option-shiftheadings "Markdown Package User Manual"
+ [option-slice]:          https://mirrors.ctan.org/macros/generic/markdown/markdown.html#slice                "Markdown Package User Manual"
+ [option-table-captions]: https://mirrors.ctan.org/macros/generic/markdown/markdown.html#option-tablecaptions "Markdown Package User Manual"
 
 Contributing
 ------------
 
 Apart from the example markdown documents, tests, and continuous integration,
-which are placed in the `examples/`, `tests/`, and `.circleci/` directories,
+which are placed in the `examples/`, `tests/`, and `.github/` directories,
 the complete source code and documentation of the package are placed in the
 `markdown.dtx` document following the [literate programming][] paradigm.
 Some useful commands, such as building the release archives and typesetting
@@ -118,6 +262,12 @@
 [ltxdockit][] LaTeX document class. Support for typesetting the documentation
 is provided by the [doc][] LaTeX package.
 
+To facilitate continuous integration and sharing of the Markdown package,
+there exists an [official Docker image][docker-witiko/markdown], which can be
+reproduced by running the `docker build` command on `Dockerfile` (`docker build
+-t witiko/markdown .`). The `make docker-image` command is provided by
+`Makefile` for convenience.
+
  [doc]:                  https://ctan.org/pkg/doc                           "doc – Format LaTeX documentation"
  [DocStrip]:             https://ctan.org/pkg/docstrip                      "docstrip – Remove comments from file"
  [LaTeXMK]:              https://ctan.org/pkg/latexmk                       "latexmk – Fully automated LaTeX document generation"
@@ -130,7 +280,7 @@
 When citing Markdown in academic papers and theses, please use the following
 BibTeX entry:
 
-```bib
+``` bib
 @article{novotny17markdown,
   author  = {V\'{i}t Novotn\'{y}},
   year    = {2017},
@@ -144,3 +294,13 @@
   urldate = {2020-07-31},
 }
 ```
+
+Alternatively, you can use the `Novotny:2017:UMI` key from the [`tugboat.bib`][tugboat.bib]
+BibTeX file that is included in your TeX distribution like this:
+
+``` tex
+\cite{Novotny:2017:UMI}
+\bibliography{tugboat}
+```
+
+ [tugboat.bib]: http://mirrors.ctan.org/info/digests/tugboat/biblio/tugboat.bib

Deleted: trunk/Master/texmf-dist/doc/generic/markdown/banner.png
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/generic/markdown/markdown.html
===================================================================
--- trunk/Master/texmf-dist/doc/generic/markdown/markdown.html	2021-10-01 16:30:06 UTC (rev 60666)
+++ trunk/Master/texmf-dist/doc/generic/markdown/markdown.html	2021-10-01 22:00:34 UTC (rev 60667)
@@ -6,97 +6,96 @@
   <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
   <meta name="author" content="Vít Novotný" />
   <title>Markdown Package User Manual</title>
-  <style type="text/css">
-      code{white-space: pre-wrap;}
-      span.smallcaps{font-variant: small-caps;}
-      span.underline{text-decoration: underline;}
-      div.column{display: inline-block; vertical-align: top; width: 50%;}
+  <style>
+    code{white-space: pre-wrap;}
+    span.smallcaps{font-variant: small-caps;}
+    span.underline{text-decoration: underline;}
+    div.column{display: inline-block; vertical-align: top; width: 50%;}
+    div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
+    ul.task-list{list-style: none;}
+    pre > code.sourceCode { white-space: pre; position: relative; }
+    pre > code.sourceCode > span { display: inline-block; line-height: 1.25; }
+    pre > code.sourceCode > span:empty { height: 1.2em; }
+    code.sourceCode > span { color: inherit; text-decoration: inherit; }
+    div.sourceCode { margin: 1em 0; }
+    pre.sourceCode { margin: 0; }
+    @media screen {
+    div.sourceCode { overflow: auto; }
+    }
+    @media print {
+    pre > code.sourceCode { white-space: pre-wrap; }
+    pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
+    }
+    pre.numberSource code
+      { counter-reset: source-line 0; }
+    pre.numberSource code > span
+      { position: relative; left: -4em; counter-increment: source-line; }
+    pre.numberSource code > span > a:first-child::before
+      { content: counter(source-line);
+        position: relative; left: -1em; text-align: right; vertical-align: baseline;
+        border: none; display: inline-block;
+        -webkit-touch-callout: none; -webkit-user-select: none;
+        -khtml-user-select: none; -moz-user-select: none;
+        -ms-user-select: none; user-select: none;
+        padding: 0 4px; width: 4em;
+        color: #aaaaaa;
+      }
+    pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa;  padding-left: 4px; }
+    div.sourceCode
+      {   }
+    @media screen {
+    pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
+    }
+    code span.al { color: #ff0000; font-weight: bold; } /* Alert */
+    code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
+    code span.at { color: #7d9029; } /* Attribute */
+    code span.bn { color: #40a070; } /* BaseN */
+    code span.bu { } /* BuiltIn */
+    code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
+    code span.ch { color: #4070a0; } /* Char */
+    code span.cn { color: #880000; } /* Constant */
+    code span.co { color: #60a0b0; font-style: italic; } /* Comment */
+    code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
+    code span.do { color: #ba2121; font-style: italic; } /* Documentation */
+    code span.dt { color: #902000; } /* DataType */
+    code span.dv { color: #40a070; } /* DecVal */
+    code span.er { color: #ff0000; font-weight: bold; } /* Error */
+    code span.ex { } /* Extension */
+    code span.fl { color: #40a070; } /* Float */
+    code span.fu { color: #06287e; } /* Function */
+    code span.im { } /* Import */
+    code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
+    code span.kw { color: #007020; font-weight: bold; } /* Keyword */
+    code span.op { color: #666666; } /* Operator */
+    code span.ot { color: #007020; } /* Other */
+    code span.pp { color: #bc7a00; } /* Preprocessor */
+    code span.sc { color: #4070a0; } /* SpecialChar */
+    code span.ss { color: #bb6688; } /* SpecialString */
+    code span.st { color: #4070a0; } /* String */
+    code span.va { color: #19177c; } /* Variable */
+    code span.vs { color: #4070a0; } /* VerbatimString */
+    code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
   </style>
-  <style type="text/css">
-a.sourceLine { display: inline-block; line-height: 1.25; }
-a.sourceLine { pointer-events: none; color: inherit; text-decoration: inherit; }
-a.sourceLine:empty { height: 1.2em; position: absolute; }
-.sourceCode { overflow: visible; }
-code.sourceCode { white-space: pre; position: relative; }
-div.sourceCode { margin: 1em 0; }
-pre.sourceCode { margin: 0; }
- at media screen {
-div.sourceCode { overflow: auto; }
-}
- at media print {
-code.sourceCode { white-space: pre-wrap; }
-a.sourceLine { text-indent: -1em; padding-left: 1em; }
-}
-pre.numberSource a.sourceLine
-  { position: relative; }
-pre.numberSource a.sourceLine:empty
-  { position: absolute; }
-pre.numberSource a.sourceLine::before
-  { content: attr(data-line-number);
-    position: absolute; left: -5em; text-align: right; vertical-align: baseline;
-    border: none; pointer-events: all;
-    -webkit-touch-callout: none; -webkit-user-select: none;
-    -khtml-user-select: none; -moz-user-select: none;
-    -ms-user-select: none; user-select: none;
-    padding: 0 4px; width: 4em;
-    color: #aaaaaa;
-  }
-pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa;  padding-left: 4px; }
-div.sourceCode
-  {  }
- at media screen {
-a.sourceLine::before { text-decoration: underline; }
-}
-code span.al { color: #ff0000; font-weight: bold; } /* Alert */
-code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
-code span.at { color: #7d9029; } /* Attribute */
-code span.bn { color: #40a070; } /* BaseN */
-code span.bu { } /* BuiltIn */
-code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
-code span.ch { color: #4070a0; } /* Char */
-code span.cn { color: #880000; } /* Constant */
-code span.co { color: #60a0b0; font-style: italic; } /* Comment */
-code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
-code span.do { color: #ba2121; font-style: italic; } /* Documentation */
-code span.dt { color: #902000; } /* DataType */
-code span.dv { color: #40a070; } /* DecVal */
-code span.er { color: #ff0000; font-weight: bold; } /* Error */
-code span.ex { } /* Extension */
-code span.fl { color: #40a070; } /* Float */
-code span.fu { color: #06287e; } /* Function */
-code span.im { } /* Import */
-code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
-code span.kw { color: #007020; font-weight: bold; } /* Keyword */
-code span.op { color: #666666; } /* Operator */
-code span.ot { color: #007020; } /* Other */
-code span.pp { color: #bc7a00; } /* Preprocessor */
-code span.sc { color: #4070a0; } /* SpecialChar */
-code span.ss { color: #bb6688; } /* SpecialString */
-code span.st { color: #4070a0; } /* String */
-code span.va { color: #19177c; } /* Variable */
-code span.vs { color: #4070a0; } /* VerbatimString */
-code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
-  </style>
   <link rel="stylesheet" href="markdown.css" />
-  <!--[if lt IE 9]>
-    <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
-  <![endif]-->
 </head>
 <body>
-<header>
+<header id="title-block-header">
 <h1 class="title">Markdown Package User Manual</h1>
 <p class="author">Vít Novotný</p>
-<p class="date">v2.10.1 (2021/08/31)</p>
+<p class="date">2.11.0-0-g4505824 (2021/09/26)</p>
 </header>
-<nav id="TOC">
+<nav id="TOC" role="doc-toc">
 <ul>
-<li><a href="#introduction"><span class="toc-section-number">1</span> Introduction</a><ul>
+<li><a href="#introduction"><span class="toc-section-number">1</span> Introduction</a>
+<ul>
 <li><a href="#requirements"><span class="toc-section-number">1.1</span> Requirements</a></li>
-<li><a href="#installation"><span class="toc-section-number">1.2</span> Installation</a><ul>
+<li><a href="#installation"><span class="toc-section-number">1.2</span> Installation</a>
+<ul>
 <li><a href="#local-installation"><span class="toc-section-number">1.2.1</span> Local Installation</a></li>
 <li><a href="#portable-installation"><span class="toc-section-number">1.2.2</span> Portable Installation</a></li>
 </ul></li>
-<li><a href="#first-document"><span class="toc-section-number">1.3</span> First Document</a><ul>
+<li><a href="#first-document"><span class="toc-section-number">1.3</span> First Document</a>
+<ul>
 <li><a href="#using-lua"><span class="toc-section-number">1.3.1</span> Using Lua</a></li>
 <li><a href="#using-plain-tex"><span class="toc-section-number">1.3.2</span> Using Plain <span class="tex">T<sub>e</sub>X</span></a></li>
 <li><a href="#using-latex"><span class="toc-section-number">1.3.3</span> Using <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span></a></li>
@@ -103,19 +102,23 @@
 <li><a href="#using-context"><span class="toc-section-number">1.3.4</span> Using Con<span class="tex">T<sub>e</sub>X</span>t</a></li>
 </ul></li>
 </ul></li>
-<li><a href="#examples"><span class="toc-section-number">2</span> Examples</a><ul>
-<li><a href="#interfaces"><span class="toc-section-number">2.1</span> Interfaces</a><ul>
+<li><a href="#examples"><span class="toc-section-number">2</span> Examples</a>
+<ul>
+<li><a href="#interfaces"><span class="toc-section-number">2.1</span> Interfaces</a>
+<ul>
 <li><a href="#lua"><span class="toc-section-number">2.1.1</span> Lua</a></li>
 <li><a href="#plain-tex"><span class="toc-section-number">2.1.2</span> Plain <span class="tex">T<sub>e</sub>X</span></a></li>
 <li><a href="#latex"><span class="toc-section-number">2.1.3</span> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span></a></li>
 <li><a href="#context"><span class="toc-section-number">2.1.4</span> Con<span class="tex">T<sub>e</sub>X</span>t</a></li>
 </ul></li>
-<li><a href="#options"><span class="toc-section-number">2.2</span> Options</a><ul>
+<li><a href="#options"><span class="toc-section-number">2.2</span> Options</a>
+<ul>
 <li><a href="#lua-1"><span class="toc-section-number">2.2.1</span> Lua</a></li>
 <li><a href="#plain-tex-1"><span class="toc-section-number">2.2.2</span> Plain <span class="tex">T<sub>e</sub>X</span></a></li>
 <li><a href="#latex-1"><span class="toc-section-number">2.2.3</span> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span></a></li>
 </ul></li>
-<li><a href="#markdown-tokens"><span class="toc-section-number">2.3</span> Markdown Tokens</a><ul>
+<li><a href="#markdown-tokens"><span class="toc-section-number">2.3</span> Markdown Tokens</a>
+<ul>
 <li><a href="#token-renderers"><span class="toc-section-number">2.3.1</span> Token Renderers</a></li>
 <li><a href="#token-renderer-prototypes"><span class="toc-section-number">2.3.2</span> Token Renderer Prototypes</a></li>
 </ul></li>
@@ -123,21 +126,22 @@
 </ul>
 </nav>
 <p><link href="https://afeld.github.io/emoji-css/emoji.css" rel="stylesheet" /></p>
-<h1 id="introduction"><span class="header-section-number">1</span> Introduction</h1>
+<h1 data-number="1" id="introduction"><span class="header-section-number">1</span> Introduction</h1>
 <p>The <a href="https://ctan.org/pkg/markdown" title="CTAN: Package markdown">Markdown package</a> converts <a href="https://daringfireball.net/projects/markdown/basics" title="Daring Fireball: Markdown Basics">markdown</a> markup to <span class="tex">T<sub>e</sub>X</span> commands. The functionality is provided both as a Lua module and as plain <span class="tex">T<sub>e</sub>X</span>, <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span>, and Con<span class="tex">T<sub>e</sub>X</span>t macro packages that can be used to directly typeset documents containing markdown markup. Unlike other convertors, the Markdown package does not require any external programs, and makes it easy to redefine how each and every markdown element is rendered. Creative abuse of the markdown syntax is encouraged. <i class="em em-wink"></i></p>
-<p>This document is a user manual for the <a href="https://ctan.org/pkg/markdown" title="CTAN: Package markdown">Markdown package</a>. It provides tutorials and code examples. For an in-depth description of the package requirements, interfaces, and implementation, please refer to the <a href="http://mirrors.ctan.org/macros/generic/markdown/markdown.pdf" title="A Markdown Interpreter for <span class="tex">T<sub>e</sub>X</span>">technical documentation</a>.</p>
-<h2 id="requirements"><span class="header-section-number">1.1</span> Requirements</h2>
-<p>The package requires a working <span class="tex">T<sub>e</sub>X</span> distribution. <a href="https://www.tug.org/texlive/" title="TeX Live - TeX Users Group"><span class="tex">T<sub>e</sub>X</span> Live</a> ≥ 2013 is known to work and so are recent installation of <a href="https://miktex.org/" title="Home - MiKTeXorg">Mik<span class="tex">T<sub>e</sub>X</span></a>. If you are using a minimal installation of a <span class="tex">T<sub>e</sub>X</span> distribution, please consult the <a href="http://mirrors.ctan.org/macros/generic/markdown/markdown.pdf" title="A Markdown Interpreter for <span class="tex">T<sub>e</sub>X</span>">technical documentation</a> for a detailed list of required packages.</p>
-<h2 id="installation"><span class="header-section-number">1.2</span> Installation</h2>
-<p>The package comes pre-installed with <a href="https://www.tug.org/texlive/" title="TeX Live - TeX Users Group"><span class="tex">T<sub>e</sub>X</span> Live</a> ≥ 2016 and with recent installations of <a href="https://miktex.org/" title="Home - MiKTeXorg">MikTeX</a>. Unless you explicitly wish to use the latest version of the package, you are encouraged to skip this step.</p>
-<p>To install the package, first download the package from the repository using Git:</p>
-<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb1-1" data-line-number="1"><span class="fu">git</span> clone https://github.com/witiko/markdown</a></code></pre></div>
-<p>Next, enter the directory named <code>markdown</code> and interpret the file named <code>markdown.ins</code> file using a Unicode-aware <span class="tex">T<sub>e</sub>X</span> engine, such as XeTeX or LuaTeX:</p>
-<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb2-1" data-line-number="1"><span class="bu">cd</span> markdown</a>
-<a class="sourceLine" id="cb2-2" data-line-number="2"><span class="ex">luatex</span> markdown.ins</a></code></pre></div>
+<p>This document is a user manual for the <a href="https://ctan.org/pkg/markdown" title="CTAN: Package markdown">Markdown package</a>. It provides tutorials and code examples. For an in-depth description of the package requirements, interfaces, and implementation, please refer to the <a href="https://mirrors.ctan.org/macros/generic/markdown/markdown.pdf" title="A Markdown Interpreter for <span class="tex">T<sub>e</sub>X</span>">technical documentation</a>.</p>
+<h2 data-number="1.1" id="requirements"><span class="header-section-number">1.1</span> Requirements</h2>
+<p>The package requires either <a href="https://hub.docker.com/r/witiko/markdown/tags" title="witiko/markdown - Docker Image">our official Docker image</a>, which contains the latest development version of the Markdown package, or a <span class="tex">T<sub>e</sub>X</span> distribution: <a href="https://www.tug.org/texlive/" title="TeX Live - TeX Users Group"><span class="tex">T<sub>e</sub>X</span> Live</a> ≥ 2018 is known to work with the current version of the Markdown package and so are recent versions of <a href="https://miktex.org/" title="Home - MiKTeXorg">Mik<span class="tex">T<sub>e</sub>X</span></a>. If you are using an older, incomplete, or atypical <span class="tex">T<sub>e</sub>X</span> distribution, please consult the <a href="https://mirrors.ctan.org/macros/generic/markdown/markdown.pdf" title="A Markdown Interpreter for <span class="tex">T<sub>e</sub>X</span>">technical documentation</a> for a detailed list of requirements.</p>
+<h2 data-number="1.2" id="installation"><span class="header-section-number">1.2</span> Installation</h2>
+<p>If Markdown is not included in your <span class="tex">T<sub>e</sub>X</span> distribution, you will need to install it.</p>
+<p>First, download the package from the repository using Git:</p>
+<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true"></a><span class="fu">git</span> clone https://github.com/witiko/markdown</span></code></pre></div>
+<p>Next, enter the directory named <code>markdown</code> and run the <code>make base</code> command using GNU Make:</p>
+<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true"></a><span class="bu">cd</span> markdown</span>
+<span id="cb2-2"><a href="#cb2-2" aria-hidden="true"></a><span class="fu">make</span> base</span></code></pre></div>
 <p>This should produce the following files:</p>
 <ul>
 <li><code>markdown.lua</code>, the Lua module,</li>
+<li><code>libraries/markdown-tinyyaml.lua</code>, an external library for reading <abbr>yaml</abbr>,</li>
 <li><code>markdown-cli.lua</code>, the Lua command-line interface,</li>
 <li><code>markdown.tex</code>, the plain <span class="tex">T<sub>e</sub>X</span> macro package,</li>
 <li><code>markdown.sty</code>, the <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> package,</li>
@@ -146,138 +150,142 @@
 <li><code>markdownthemewitiko_tilde.sty</code>, the <code>witiko/tilde</code> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> theme, and</li>
 <li><code>t-markdown.tex</code>, the Con<span class="tex">T<sub>e</sub>X</span>t module.</li>
 </ul>
-<h3 id="local-installation"><span class="header-section-number">1.2.1</span> Local Installation</h3>
+<h3 data-number="1.2.1" id="local-installation"><span class="header-section-number">1.2.1</span> Local Installation</h3>
 <p>To perform a local installation, place the above files into your <span class="tex">T<sub>e</sub>X</span> directory structure. This is generally where the individual files should be placed:</p>
 <ul>
-<li><code><TEXMF>/tex/luatex/markdown/markdown.lua</code></li>
-<li><code><TEXMF>/scripts/markdown/markdown-cli.lua</code></li>
-<li><code><TEXMF>/tex/generic/markdown/markdown.tex</code></li>
-<li><code><TEXMF>/tex/latex/markdown/markdown.sty</code></li>
-<li><code><TEXMF>/tex/latex/markdown/markdownthemewitiko_dot.sty</code></li>
-<li><code><TEXMF>/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty</code></li>
-<li><code><TEXMF>/tex/latex/markdown/markdownthemewitiko_tilde.sty</code></li>
-<li><code><TEXMF>/tex/context/third/markdown/t-markdown.tex</code></li>
+<li><code>⟨TEXMF⟩/tex/luatex/markdown/markdown.lua</code></li>
+<li><code>⟨TEXMF⟩/tex/luatex/markdown/markdown-tinyyaml.lua</code></li>
+<li><code>⟨TEXMF⟩/scripts/markdown/markdown-cli.lua</code></li>
+<li><code>⟨TEXMF⟩/tex/generic/markdown/markdown.tex</code></li>
+<li><code>⟨TEXMF⟩/tex/latex/markdown/markdown.sty</code></li>
+<li><code>⟨TEXMF⟩/tex/latex/markdown/markdownthemewitiko_dot.sty</code></li>
+<li><code>⟨TEXMF⟩/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty</code></li>
+<li><code>⟨TEXMF⟩/tex/latex/markdown/markdownthemewitiko_tilde.sty</code></li>
+<li><code>⟨TEXMF⟩/tex/context/third/markdown/t-markdown.tex</code></li>
 </ul>
-<p>where <code><TEXMF></code> corresponds to a root of your <span class="tex">T<sub>e</sub>X</span> distribution, such as <code>/usr/share/texmf</code> and <code>~/texmf</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf</code> on Windows systems. When in doubt, consult the manual of your <span class="tex">T<sub>e</sub>X</span> distribution.</p>
-<h3 id="portable-installation"><span class="header-section-number">1.2.2</span> Portable Installation</h3>
+<p>where <code>⟨TEXMF⟩</code> corresponds to a root of your <span class="tex">T<sub>e</sub>X</span> distribution, such as <code>/usr/share/texmf</code> and <code>~/texmf</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf</code> on Windows systems. When in doubt, consult the manual of your <span class="tex">T<sub>e</sub>X</span> distribution.</p>
+<h3 data-number="1.2.2" id="portable-installation"><span class="header-section-number">1.2.2</span> Portable Installation</h3>
 <p>Alternatively, you can also store the above files in the same folder as your <span class="tex">T<sub>e</sub>X</span> document and distribute them together. This way your document can be portably typeset on legacy <span class="tex">T<sub>e</sub>X</span> distributions.</p>
 <p>Since Markdown version 2.10.0, the file <code>markdown.tex</code> must be placed in a directory named <code>markdown</code> due to <a href="https://github.com/witiko/markdown/issues/74" title="Does not compile if user names own document markdown.tex">issue #74</a>.</p>
-<h2 id="first-document"><span class="header-section-number">1.3</span> First Document</h2>
+<h2 data-number="1.3" id="first-document"><span class="header-section-number">1.3</span> First Document</h2>
 <p>In this section, we will take the necessary steps to typeset our first markdown document in <span class="tex">T<sub>e</sub>X</span>. This will serve as our first hands-on experience with the package and also as a reassurance that the package has been correctly installed.</p>
-<h3 id="using-lua"><span class="header-section-number">1.3.1</span> Using Lua</h3>
+<p>If you are using <a href="https://hub.docker.com/r/witiko/markdown/tags" title="witiko/markdown - Docker Image">our official Docker image</a>, you need to prefix all commands in this section with <code>docker run --rm -v "$PWD"/workdir:/workdir -w /workdir witiko/markdown</code>. For example, instead of <code>luatex document.tex</code>, you would execute the following command:</p>
+<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true"></a><span class="ex">docker</span> run --rm -v <span class="st">"</span><span class="va">$PWD</span><span class="st">"</span>/workdir:/workdir -w /workdir witiko/markdown <span class="kw">\</span></span>
+<span id="cb3-2"><a href="#cb3-2" aria-hidden="true"></a>  <span class="ex">luatex</span> document.tex</span></code></pre></div>
+<h3 data-number="1.3.1" id="using-lua"><span class="header-section-number">1.3.1</span> Using Lua</h3>
 <p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb3"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb3-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb3-2" data-line-number="2"><span class="fu">\input</span> hello</a>
-<a class="sourceLine" id="cb3-3" data-line-number="3"><span class="fu">\bye</span></a></code></pre></div>
-<h4 id="using-the-lua-module"><span class="header-section-number">1.3.1.1</span> Using the Lua Module</h4>
+<div class="sourceCode" id="cb4"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb4-2"><a href="#cb4-2" aria-hidden="true"></a><span class="fu">\input</span> hello</span>
+<span id="cb4-3"><a href="#cb4-3" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
+<h4 data-number="1.3.1.1" id="using-the-lua-module"><span class="header-section-number">1.3.1.1</span> Using the Lua Module</h4>
 <p>Using a text editor, create a text document named <code>hello.lua</code> with the following content:</p>
-<div class="sourceCode" id="cb4"><pre class="sourceCode lua"><code class="sourceCode lua"><a class="sourceLine" id="cb4-1" data-line-number="1"><span class="ot">#</span>!<span class="ot">/</span>usr<span class="ot">/</span>bin<span class="ot">/</span>env texlua</a>
-<a class="sourceLine" id="cb4-2" data-line-number="2"><span class="kw">local</span> ran_ok<span class="ot">,</span> kpse <span class="ot">=</span> <span class="fu">pcall</span><span class="ot">(</span><span class="fu">require</span><span class="ot">,</span> <span class="st">"kpse"</span><span class="ot">)</span></a>
-<a class="sourceLine" id="cb4-3" data-line-number="3"><span class="kw">if</span> ran_ok <span class="kw">then</span> kpse<span class="ot">.</span>set_program_name<span class="ot">(</span><span class="st">"luatex"</span><span class="ot">)</span> <span class="kw">end</span></a>
-<a class="sourceLine" id="cb4-4" data-line-number="4"><span class="kw">local</span> markdown <span class="ot">=</span> <span class="fu">require</span><span class="ot">(</span><span class="st">"markdown"</span><span class="ot">)</span></a>
-<a class="sourceLine" id="cb4-5" data-line-number="5"><span class="kw">local</span> convert <span class="ot">=</span> markdown<span class="ot">.</span>new<span class="ot">()</span></a>
-<a class="sourceLine" id="cb4-6" data-line-number="6"><span class="fu">print</span><span class="ot">(</span>convert<span class="ot">(</span><span class="st">"Hello *world*!"</span><span class="ot">))</span></a></code></pre></div>
+<div class="sourceCode" id="cb5"><pre class="sourceCode lua"><code class="sourceCode lua"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true"></a><span class="co">#!/usr/bin/env texlua</span></span>
+<span id="cb5-2"><a href="#cb5-2" aria-hidden="true"></a><span class="kw">local</span> ran_ok<span class="op">,</span> kpse <span class="op">=</span> <span class="fu">pcall</span><span class="op">(</span><span class="fu">require</span><span class="op">,</span> <span class="st">"kpse"</span><span class="op">)</span></span>
+<span id="cb5-3"><a href="#cb5-3" aria-hidden="true"></a><span class="cf">if</span> ran_ok <span class="cf">then</span> kpse<span class="op">.</span>set_program_name<span class="op">(</span><span class="st">"luatex"</span><span class="op">)</span> <span class="cf">end</span></span>
+<span id="cb5-4"><a href="#cb5-4" aria-hidden="true"></a><span class="kw">local</span> markdown <span class="op">=</span> <span class="fu">require</span><span class="op">(</span><span class="st">"markdown"</span><span class="op">)</span></span>
+<span id="cb5-5"><a href="#cb5-5" aria-hidden="true"></a><span class="kw">local</span> convert <span class="op">=</span> markdown<span class="op">.</span>new<span class="op">()</span></span>
+<span id="cb5-6"><a href="#cb5-6" aria-hidden="true"></a><span class="fu">print</span><span class="op">(</span>convert<span class="op">(</span><span class="st">"Hello *world*!"</span><span class="op">))</span></span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb5-1" data-line-number="1"><span class="ex">texlua</span> hello.lua <span class="op">></span> hello.tex</a>
-<a class="sourceLine" id="cb5-2" data-line-number="2"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true"></a><span class="ex">texlua</span> hello.lua <span class="op">></span> hello.tex</span>
+<span id="cb6-2"><a href="#cb6-2" 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 text “Hello <em>world</em>!” Invoking pdfTeX should have the same effect:</p>
-<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb6-1" data-line-number="1"><span class="ex">texlua</span> hello.lua <span class="op">></span> hello.tex</a>
-<a class="sourceLine" id="cb6-2" data-line-number="2"><span class="ex">pdftex</span> document.tex</a></code></pre></div>
-<h4 id="using-the-lua-command-line-interface"><span class="header-section-number">1.3.1.2</span> Using the Lua Command-Line Interface</h4>
+<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true"></a><span class="ex">texlua</span> hello.lua <span class="op">></span> hello.tex</span>
+<span id="cb7-2"><a href="#cb7-2" aria-hidden="true"></a><span class="ex">pdftex</span> document.tex</span></code></pre></div>
+<h4 data-number="1.3.1.2" id="using-the-lua-command-line-interface"><span class="header-section-number">1.3.1.2</span> Using the Lua Command-Line Interface</h4>
 <p>Using a text editor, create a text document named <code>hello.md</code> with the following content:</p>
-<div class="sourceCode" id="cb7"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb7-1" data-line-number="1">Hello *world*!</a></code></pre></div>
+<div class="sourceCode" id="cb8"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true"></a>Hello *world*!</span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb8-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ -- hello.md hello.tex</a>
-<a class="sourceLine" id="cb8-2" data-line-number="2"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb9"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb9-1"><a href="#cb9-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ -- hello.md hello.tex</span>
+<span id="cb9-2"><a href="#cb9-2" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the text “Hello <em>world</em>!” Invoking pdfTeX should have the same effect:</p>
-<div class="sourceCode" id="cb9"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb9-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ -- hello.md hello.tex</a>
-<a class="sourceLine" id="cb9-2" data-line-number="2"><span class="ex">pdftex</span> document.tex</a></code></pre></div>
-<h3 id="using-plain-tex"><span class="header-section-number">1.3.2</span> Using Plain <span class="tex">T<sub>e</sub>X</span></h3>
+<div class="sourceCode" id="cb10"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb10-1"><a href="#cb10-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ -- hello.md hello.tex</span>
+<span id="cb10-2"><a href="#cb10-2" aria-hidden="true"></a><span class="ex">pdftex</span> document.tex</span></code></pre></div>
+<h3 data-number="1.3.2" id="using-plain-tex"><span class="header-section-number">1.3.2</span> Using Plain <span class="tex">T<sub>e</sub>X</span></h3>
 <p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb10"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb10-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb10-2" data-line-number="2"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb10-3" data-line-number="3">Hello *world*!</a>
-<a class="sourceLine" id="cb10-4" data-line-number="4"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb10-5" data-line-number="5"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb11"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb11-1"><a href="#cb11-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb11-2"><a href="#cb11-2" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb11-3"><a href="#cb11-3" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb11-4"><a href="#cb11-4" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb11-5"><a href="#cb11-5" 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="cb11"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb11-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb12"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb12-1"><a href="#cb12-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 text “Hello <em>world</em>!” Invoking pdfTeX should have the same effect:</p>
-<div class="sourceCode" id="cb12"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb12-1" data-line-number="1"><span class="ex">pdftex</span> --shell-escape document.tex</a></code></pre></div>
-<h3 id="using-latex"><span class="header-section-number">1.3.3</span> Using <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span></h3>
+<div class="sourceCode" id="cb13"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb13-1"><a href="#cb13-1" aria-hidden="true"></a><span class="ex">pdftex</span> --shell-escape document.tex</span></code></pre></div>
+<h3 data-number="1.3.3" id="using-latex"><span class="header-section-number">1.3.3</span> Using <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span></h3>
 <p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb13"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb13-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb13-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb13-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb13-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb13-5" data-line-number="5">Hello *world*!</a>
-<a class="sourceLine" id="cb13-6" data-line-number="6"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb13-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb14"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb14-1"><a href="#cb14-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb14-2"><a href="#cb14-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb14-3"><a href="#cb14-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb14-4"><a href="#cb14-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb14-5"><a href="#cb14-5" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb14-6"><a href="#cb14-6" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb14-7"><a href="#cb14-7" 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="cb14"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb14-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb15"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb15-1"><a href="#cb15-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 text “Hello <em>world</em>!” Invoking pdfTeX should have the same effect:</p>
-<div class="sourceCode" id="cb15"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb15-1" data-line-number="1"><span class="ex">pdflatex</span> --shell-escape document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb16"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb16-1"><a href="#cb16-1" aria-hidden="true"></a><span class="ex">pdflatex</span> --shell-escape document.tex</span></code></pre></div>
 <hr />
 <p>As the next step, try typesetting the example documents distributed along with the Markdown package:</p>
-<div class="sourceCode" id="cb16"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb16-1" data-line-number="1"><span class="fu">git</span> clone https://github.com/witiko/markdown</a>
-<a class="sourceLine" id="cb16-2" data-line-number="2"><span class="bu">cd</span> markdown/examples</a>
-<a class="sourceLine" id="cb16-3" data-line-number="3"><span class="ex">lualatex</span> latex.tex</a></code></pre></div>
+<div class="sourceCode" id="cb17"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb17-1"><a href="#cb17-1" aria-hidden="true"></a><span class="fu">git</span> clone https://github.com/witiko/markdown</span>
+<span id="cb17-2"><a href="#cb17-2" aria-hidden="true"></a><span class="bu">cd</span> markdown/examples</span>
+<span id="cb17-3"><a href="#cb17-3" aria-hidden="true"></a><span class="ex">lualatex</span> latex.tex</span></code></pre></div>
 <p>A PDF document named <code>latex.pdf</code> should be produced. Open the text documents <code>latex.tex</code> and <code>example.md</code> in a text editor to see how the example documents are structured. Try changing the documents and typesetting them as follows:</p>
-<div class="sourceCode" id="cb17"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb17-1" data-line-number="1"><span class="ex">lualatex</span> latex.tex</a></code></pre></div>
+<div class="sourceCode" id="cb18"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb18-1"><a href="#cb18-1" aria-hidden="true"></a><span class="ex">lualatex</span> latex.tex</span></code></pre></div>
 <p>to see the effect of your changes.</p>
-<h3 id="using-context"><span class="header-section-number">1.3.4</span> Using Con<span class="tex">T<sub>e</sub>X</span>t</h3>
+<h3 data-number="1.3.4" id="using-context"><span class="header-section-number">1.3.4</span> Using Con<span class="tex">T<sub>e</sub>X</span>t</h3>
 <p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb18"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb18-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb18-2" data-line-number="2"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb18-3" data-line-number="3"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb18-4" data-line-number="4">Hello *world*!</a>
-<a class="sourceLine" id="cb18-5" data-line-number="5"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb18-6" data-line-number="6"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb19"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb19-1"><a href="#cb19-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb19-2"><a href="#cb19-2" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb19-3"><a href="#cb19-3" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb19-4"><a href="#cb19-4" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb19-5"><a href="#cb19-5" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb19-6"><a href="#cb19-6" 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="cb19"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb19-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb20"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb20-1"><a href="#cb20-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 text “Hello <em>world</em>!” Invoking pdfTeX should have the same effect:</p>
-<div class="sourceCode" id="cb20"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb20-1" data-line-number="1"><span class="ex">texexec</span> --passon=--shell-escape document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb21"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb21-1"><a href="#cb21-1" aria-hidden="true"></a><span class="ex">texexec</span> --passon=--shell-escape document.tex</span></code></pre></div>
 <hr />
 <p>As the next step, try typesetting the example documents distributed along with the Markdown package:</p>
-<div class="sourceCode" id="cb21"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb21-1" data-line-number="1"><span class="fu">git</span> clone https://github.com/witiko/markdown</a>
-<a class="sourceLine" id="cb21-2" data-line-number="2"><span class="bu">cd</span> markdown/examples</a>
-<a class="sourceLine" id="cb21-3" data-line-number="3"><span class="ex">context</span> context.tex</a></code></pre></div>
+<div class="sourceCode" id="cb22"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb22-1"><a href="#cb22-1" aria-hidden="true"></a><span class="fu">git</span> clone https://github.com/witiko/markdown</span>
+<span id="cb22-2"><a href="#cb22-2" aria-hidden="true"></a><span class="bu">cd</span> markdown/examples</span>
+<span id="cb22-3"><a href="#cb22-3" aria-hidden="true"></a><span class="ex">context</span> context.tex</span></code></pre></div>
 <p>A PDF document named <code>context.pdf</code> should be produced. Open the text documents <code>context.tex</code> and <code>example.md</code> in a text editor to see how the example documents are structured. Try changing the documents and typesetting them as follows:</p>
-<div class="sourceCode" id="cb22"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb22-1" data-line-number="1"><span class="ex">context</span> context.tex</a></code></pre></div>
+<div class="sourceCode" id="cb23"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb23-1"><a href="#cb23-1" aria-hidden="true"></a><span class="ex">context</span> context.tex</span></code></pre></div>
 <p>to see the effect of your changes.</p>
-<h1 id="examples"><span class="header-section-number">2</span> Examples</h1>
-<p>In this section, I will describe the individual parts of the Markdown package. Each part will be shown by example, leaving the implementation details to the <a href="http://mirrors.ctan.org/macros/generic/markdown/markdown.pdf" title="A Markdown Interpreter for <span class="tex">T<sub>e</sub>X</span>">technical documentation</a>.</p>
-<h2 id="interfaces"><span class="header-section-number">2.1</span> Interfaces</h2>
+<h1 data-number="2" id="examples"><span class="header-section-number">2</span> Examples</h1>
+<p>In this section, I will describe the individual parts of the Markdown package. Each part will be shown by example, leaving the implementation details to the <a href="https://mirrors.ctan.org/macros/generic/markdown/markdown.pdf" title="A Markdown Interpreter for <span class="tex">T<sub>e</sub>X</span>">technical documentation</a>.</p>
+<h2 data-number="2.1" id="interfaces"><span class="header-section-number">2.1</span> Interfaces</h2>
 <p>In this section, I will describe the individual interfaces exposed by the Markdown package starting with the low-level Lua interfaces and all the way up to the <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> and Con<span class="tex">T<sub>e</sub>X</span>t interfaces intended for the ordinary user.</p>
-<h3 id="lua"><span class="header-section-number">2.1.1</span> Lua</h3>
+<h3 data-number="2.1.1" id="lua"><span class="header-section-number">2.1.1</span> Lua</h3>
 <p>The Lua programming language is what drives the conversion from markdown to <span class="tex">T<sub>e</sub>X</span> in the Markdown package. Based on the <a href="https://github.com/jgm/lunamark" title="Lua library for conversion between markup formats">Lunamark</a> Lua library by John MacFarlane, the Lua implementation is largely independent on <span class="tex">T<sub>e</sub>X</span>, and can be used separately from typesetting a document. Lua provides two interfaces: a Lua module and a command-line interface (CLI).</p>
-<h4 id="lua-module"><span class="header-section-number">2.1.1.1</span> Lua Module</h4>
+<h4 data-number="2.1.1.1" id="lua-module"><span class="header-section-number">2.1.1.1</span> Lua Module</h4>
 <p>A Lua module is a software library that can be used from in other programs. The <code>markdown</code> Lua module makes it possible to convert markdown to <span class="tex">T<sub>e</sub>X</span> from within Lua<span class="tex">T<sub>e</sub>X</span> documents and Lua scripts.</p>
 <p>The <code>markdown</code> Lua module exposes the <code>new(</code>⟨<em>options</em>⟩<code>)</code> method, which creates a converter function from markdown to <span class="tex">T<sub>e</sub>X</span>. The properties of the converter function are specified by the Lua table <code>options</code>. The parameter is optional; when unspecified, the behaviour will be the same as if ⟨<em>options</em>⟩ were an empty table.</p>
 <p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb23"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb23-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb23-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb23-3" data-line-number="3"><span class="fu">\input</span> example</a>
-<a class="sourceLine" id="cb23-4" data-line-number="4"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb24"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb24-1"><a href="#cb24-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb24-2"><a href="#cb24-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb24-3"><a href="#cb24-3" aria-hidden="true"></a><span class="fu">\input</span> example</span>
+<span id="cb24-4"><a href="#cb24-4" 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.lua</code> with the following content:</p>
-<div class="sourceCode" id="cb24"><pre class="sourceCode lua"><code class="sourceCode lua"><a class="sourceLine" id="cb24-1" data-line-number="1"><span class="ot">#</span>!<span class="ot">/</span>usr<span class="ot">/</span>bin<span class="ot">/</span>env texlua</a>
-<a class="sourceLine" id="cb24-2" data-line-number="2"><span class="kw">local</span> ran_ok<span class="ot">,</span> kpse <span class="ot">=</span> <span class="fu">pcall</span><span class="ot">(</span><span class="fu">require</span><span class="ot">,</span> <span class="st">"kpse"</span><span class="ot">)</span></a>
-<a class="sourceLine" id="cb24-3" data-line-number="3"><span class="kw">if</span> ran_ok <span class="kw">then</span> kpse<span class="ot">.</span>set_program_name<span class="ot">(</span><span class="st">"luatex"</span><span class="ot">)</span> <span class="kw">end</span></a>
-<a class="sourceLine" id="cb24-4" data-line-number="4"><span class="kw">local</span> markdown <span class="ot">=</span> <span class="fu">require</span><span class="ot">(</span><span class="st">"markdown"</span><span class="ot">)</span></a>
-<a class="sourceLine" id="cb24-5" data-line-number="5"><span class="kw">local</span> input<span class="ot">,</span> convert_safe<span class="ot">,</span> convert_unsafe<span class="ot">,</span> paragraph</a>
-<a class="sourceLine" id="cb24-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb24-7" data-line-number="7">input <span class="ot">=</span> <span class="st">[[$\sqrt{-1}$ *equals* $i$.]]</span></a>
-<a class="sourceLine" id="cb24-8" data-line-number="8">convert_safe <span class="ot">=</span> markdown<span class="ot">.</span>new<span class="ot">()</span></a>
-<a class="sourceLine" id="cb24-9" data-line-number="9">convert_unsafe <span class="ot">=</span> markdown<span class="ot">.</span>new<span class="ot">({</span>hybrid <span class="ot">=</span> <span class="kw">true</span><span class="ot">})</span></a>
-<a class="sourceLine" id="cb24-10" data-line-number="10">paragraph <span class="ot">=</span> <span class="st">[[\par]]</span></a>
-<a class="sourceLine" id="cb24-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb24-12" data-line-number="12"><span class="fu">print</span><span class="ot">(</span></a>
-<a class="sourceLine" id="cb24-13" data-line-number="13">  convert_safe<span class="ot">(</span>input<span class="ot">)</span> <span class="ot">..</span> paragraph <span class="ot">..</span></a>
-<a class="sourceLine" id="cb24-14" data-line-number="14">  convert_unsafe<span class="ot">(</span>input<span class="ot">)</span></a>
-<a class="sourceLine" id="cb24-15" data-line-number="15"><span class="ot">)</span></a></code></pre></div>
+<div class="sourceCode" id="cb25"><pre class="sourceCode lua"><code class="sourceCode lua"><span id="cb25-1"><a href="#cb25-1" aria-hidden="true"></a><span class="co">#!/usr/bin/env texlua</span></span>
+<span id="cb25-2"><a href="#cb25-2" aria-hidden="true"></a><span class="kw">local</span> ran_ok<span class="op">,</span> kpse <span class="op">=</span> <span class="fu">pcall</span><span class="op">(</span><span class="fu">require</span><span class="op">,</span> <span class="st">"kpse"</span><span class="op">)</span></span>
+<span id="cb25-3"><a href="#cb25-3" aria-hidden="true"></a><span class="cf">if</span> ran_ok <span class="cf">then</span> kpse<span class="op">.</span>set_program_name<span class="op">(</span><span class="st">"luatex"</span><span class="op">)</span> <span class="cf">end</span></span>
+<span id="cb25-4"><a href="#cb25-4" aria-hidden="true"></a><span class="kw">local</span> markdown <span class="op">=</span> <span class="fu">require</span><span class="op">(</span><span class="st">"markdown"</span><span class="op">)</span></span>
+<span id="cb25-5"><a href="#cb25-5" aria-hidden="true"></a><span class="kw">local</span> input<span class="op">,</span> convert_safe<span class="op">,</span> convert_unsafe<span class="op">,</span> paragraph</span>
+<span id="cb25-6"><a href="#cb25-6" aria-hidden="true"></a></span>
+<span id="cb25-7"><a href="#cb25-7" aria-hidden="true"></a>input <span class="op">=</span> <span class="vs">[[$\sqrt{-1}$ *equals* $i$.]]</span></span>
+<span id="cb25-8"><a href="#cb25-8" aria-hidden="true"></a>convert_safe <span class="op">=</span> markdown<span class="op">.</span>new<span class="op">()</span></span>
+<span id="cb25-9"><a href="#cb25-9" aria-hidden="true"></a>convert_unsafe <span class="op">=</span> markdown<span class="op">.</span>new<span class="op">({</span>hybrid <span class="op">=</span> <span class="kw">true</span><span class="op">})</span></span>
+<span id="cb25-10"><a href="#cb25-10" aria-hidden="true"></a>paragraph <span class="op">=</span> <span class="vs">[[\par]]</span></span>
+<span id="cb25-11"><a href="#cb25-11" aria-hidden="true"></a></span>
+<span id="cb25-12"><a href="#cb25-12" aria-hidden="true"></a><span class="fu">print</span><span class="op">(</span></span>
+<span id="cb25-13"><a href="#cb25-13" aria-hidden="true"></a>  convert_safe<span class="op">(</span>input<span class="op">)</span> <span class="op">..</span> paragraph <span class="op">..</span></span>
+<span id="cb25-14"><a href="#cb25-14" aria-hidden="true"></a>  convert_unsafe<span class="op">(</span>input<span class="op">)</span></span>
+<span id="cb25-15"><a href="#cb25-15" aria-hidden="true"></a><span class="op">)</span></span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb25"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb25-1" data-line-number="1"><span class="ex">texlua</span> example.lua <span class="op">></span> example.tex</a>
-<a class="sourceLine" id="cb25-2" data-line-number="2"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb26"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb26-1"><a href="#cb26-1" aria-hidden="true"></a><span class="ex">texlua</span> example.lua <span class="op">></span> example.tex</span>
+<span id="cb26-2"><a href="#cb26-2" 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}$ <em>equals</em> $i$.</p>
@@ -284,29 +292,29 @@
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
 <p>Invoking pdfTeX should have the same effect:</p>
-<div class="sourceCode" id="cb26"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb26-1" data-line-number="1"><span class="ex">texlua</span> example.lua <span class="op">></span> example.tex</a>
-<a class="sourceLine" id="cb26-2" data-line-number="2"><span class="ex">pdftex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb27"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb27-1"><a href="#cb27-1" aria-hidden="true"></a><span class="ex">texlua</span> example.lua <span class="op">></span> example.tex</span>
+<span id="cb27-2"><a href="#cb27-2" aria-hidden="true"></a><span class="ex">pdftex</span> document.tex</span></code></pre></div>
 <hr />
 <p>Rather than use the <code>texlua</code> interpreter, we can also access the <code>markdown</code> Lua module directly from our document. Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb27"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb27-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb27-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb27-3" data-line-number="3"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb27-4" data-line-number="4">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb27-5" data-line-number="5">  local input, convert_safe, convert_unsafe, paragraph</a>
-<a class="sourceLine" id="cb27-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb27-7" data-line-number="7">  input = [[<span class="ss">$</span><span class="sc">\string\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.]]</a>
-<a class="sourceLine" id="cb27-8" data-line-number="8">  convert_safe = markdown.new()</a>
-<a class="sourceLine" id="cb27-9" data-line-number="9">  convert_unsafe = markdown.new({hybrid = true})</a>
-<a class="sourceLine" id="cb27-10" data-line-number="10">  paragraph = [[<span class="fu">\par</span>]]</a>
-<a class="sourceLine" id="cb27-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb27-12" data-line-number="12">  tex.sprint(</a>
-<a class="sourceLine" id="cb27-13" data-line-number="13">    convert_safe(input) .. paragraph ..</a>
-<a class="sourceLine" id="cb27-14" data-line-number="14">    convert_unsafe(input)</a>
-<a class="sourceLine" id="cb27-15" data-line-number="15">  )</a>
-<a class="sourceLine" id="cb27-16" data-line-number="16">}</a>
-<a class="sourceLine" id="cb27-17" data-line-number="17"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb28"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb28-1"><a href="#cb28-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb28-2"><a href="#cb28-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb28-3"><a href="#cb28-3" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb28-4"><a href="#cb28-4" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb28-5"><a href="#cb28-5" aria-hidden="true"></a>  local input, convert_safe, convert_unsafe, paragraph</span>
+<span id="cb28-6"><a href="#cb28-6" aria-hidden="true"></a></span>
+<span id="cb28-7"><a href="#cb28-7" aria-hidden="true"></a>  input = [[<span class="ss">$</span><span class="sc">\string\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.]]</span>
+<span id="cb28-8"><a href="#cb28-8" aria-hidden="true"></a>  convert_safe = markdown.new()</span>
+<span id="cb28-9"><a href="#cb28-9" aria-hidden="true"></a>  convert_unsafe = markdown.new({hybrid = true})</span>
+<span id="cb28-10"><a href="#cb28-10" aria-hidden="true"></a>  paragraph = [[<span class="fu">\par</span>]]</span>
+<span id="cb28-11"><a href="#cb28-11" aria-hidden="true"></a></span>
+<span id="cb28-12"><a href="#cb28-12" aria-hidden="true"></a>  tex.sprint(</span>
+<span id="cb28-13"><a href="#cb28-13" aria-hidden="true"></a>    convert_safe(input) .. paragraph ..</span>
+<span id="cb28-14"><a href="#cb28-14" aria-hidden="true"></a>    convert_unsafe(input)</span>
+<span id="cb28-15"><a href="#cb28-15" aria-hidden="true"></a>  )</span>
+<span id="cb28-16"><a href="#cb28-16" aria-hidden="true"></a>}</span>
+<span id="cb28-17"><a href="#cb28-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="cb28"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb28-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb29"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb29-1"><a href="#cb29-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}$ <em>equals</em> $i$.</p>
@@ -313,25 +321,25 @@
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
 <p>In this case, we cannot use pdfTeX, because pdfTeX does not define the <code>\directlua</code> <span class="tex">T<sub>e</sub>X</span> command.</p>
-<h4 id="lua-command-line-interface"><span class="header-section-number">2.1.1.2</span> Lua Command-Line Interface</h4>
+<h4 data-number="2.1.1.2" id="lua-command-line-interface"><span class="header-section-number">2.1.1.2</span> Lua Command-Line Interface</h4>
 <p>The Lua command-line interface (CLI) of the Markdown package makes the functionality of the Lua module accessible from the command line. This makes it possible to convert documents from markdown to <span class="tex">T<sub>e</sub>X</span> manually without any knowledge of the Lua programming language.</p>
 <p>The Lua command-line interface accepts the same options as the <code>markdown</code> Lua module, but now the options are specified as command-line parameters.</p>
 <p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb29"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb29-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb29-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb29-3" data-line-number="3"><span class="fu">\input</span> safe</a>
-<a class="sourceLine" id="cb29-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb29-5" data-line-number="5"><span class="fu">\begingroup</span></a>
-<a class="sourceLine" id="cb29-6" data-line-number="6"><span class="fu">\catcode</span>`<span class="fu">\%</span>=12</a>
-<a class="sourceLine" id="cb29-7" data-line-number="7"><span class="fu">\input</span> unsafe</a>
-<a class="sourceLine" id="cb29-8" data-line-number="8"><span class="fu">\endgroup</span></a>
-<a class="sourceLine" id="cb29-9" data-line-number="9"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb30"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb30-1"><a href="#cb30-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb30-2"><a href="#cb30-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb30-3"><a href="#cb30-3" aria-hidden="true"></a><span class="fu">\input</span> safe</span>
+<span id="cb30-4"><a href="#cb30-4" aria-hidden="true"></a></span>
+<span id="cb30-5"><a href="#cb30-5" aria-hidden="true"></a><span class="fu">\begingroup</span></span>
+<span id="cb30-6"><a href="#cb30-6" aria-hidden="true"></a><span class="fu">\catcode</span>`<span class="fu">\%</span>=12</span>
+<span id="cb30-7"><a href="#cb30-7" aria-hidden="true"></a><span class="fu">\input</span> unsafe</span>
+<span id="cb30-8"><a href="#cb30-8" aria-hidden="true"></a><span class="fu">\endgroup</span></span>
+<span id="cb30-9"><a href="#cb30-9" 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:</p>
-<div class="sourceCode" id="cb30"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb30-1" data-line-number="1">$\sqrt{-1}$ *equals* $i$.</a></code></pre></div>
+<div class="sourceCode" id="cb31"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb31-1"><a href="#cb31-1" aria-hidden="true"></a>$\sqrt{-1}$ *equals* $i$.</span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb31"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb31-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ -- example.md safe.tex</a>
-<a class="sourceLine" id="cb31-2" data-line-number="2"><span class="ex">texlua</span> ⟨CLI pathname⟩ hybrid=true -- example.md unsafe.tex</a>
-<a class="sourceLine" id="cb31-3" data-line-number="3"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb32"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb32-1"><a href="#cb32-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ -- example.md safe.tex</span>
+<span id="cb32-2"><a href="#cb32-2" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ hybrid=true -- example.md unsafe.tex</span>
+<span id="cb32-3"><a href="#cb32-3" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
 <blockquote>
@@ -339,28 +347,28 @@
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
 <p>Invoking pdfTeX should have the same effect:</p>
-<div class="sourceCode" id="cb32"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb32-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ -- example.md safe.tex</a>
-<a class="sourceLine" id="cb32-2" data-line-number="2"><span class="ex">texlua</span> ⟨CLI pathname⟩ hybrid=true -- example.md unsafe.tex</a>
-<a class="sourceLine" id="cb32-3" data-line-number="3"><span class="ex">pdftex</span> document.tex</a></code></pre></div>
-<h3 id="plain-tex"><span class="header-section-number">2.1.2</span> Plain <span class="tex">T<sub>e</sub>X</span></h3>
+<div class="sourceCode" id="cb33"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb33-1"><a href="#cb33-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ -- example.md safe.tex</span>
+<span id="cb33-2"><a href="#cb33-2" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ hybrid=true -- example.md unsafe.tex</span>
+<span id="cb33-3"><a href="#cb33-3" aria-hidden="true"></a><span class="ex">pdftex</span> document.tex</span></code></pre></div>
+<h3 data-number="2.1.2" id="plain-tex"><span class="header-section-number">2.1.2</span> Plain <span class="tex">T<sub>e</sub>X</span></h3>
 <p>The plain <span class="tex">T<sub>e</sub>X</span> interface provides <span class="tex">T<sub>e</sub>X</span> commands that typeset markdown documents by using the Lua interface behind the scenes. Unlike the Lua interface, the plain TeX interface does not provide low-level tools for converting markdown to <span class="tex">T<sub>e</sub>X</span>. Instead, its goal is to provide high-level typesetting capabilities.</p>
 <p>The plain <span class="tex">T<sub>e</sub>X</span> interface accepts the same options as the <code>markdown</code> Lua module, in addition to its own options, but now the options are specified as <span class="tex">T<sub>e</sub>X</span> commands.</p>
 <p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb33"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb33-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb33-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb33-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb33-4" data-line-number="4"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb33-5" data-line-number="5"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.</a>
-<a class="sourceLine" id="cb33-6" data-line-number="6"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb33-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb33-8" data-line-number="8"><span class="fu">\def</span>\markdownOptionHybrid{true}</a>
-<a class="sourceLine" id="cb33-9" data-line-number="9"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb33-10" data-line-number="10"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.</a>
-<a class="sourceLine" id="cb33-11" data-line-number="11"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb33-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb33-13" data-line-number="13"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb34"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb34-1"><a href="#cb34-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb34-2"><a href="#cb34-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb34-3"><a href="#cb34-3" aria-hidden="true"></a></span>
+<span id="cb34-4"><a href="#cb34-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb34-5"><a href="#cb34-5" 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="cb34-6"><a href="#cb34-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb34-7"><a href="#cb34-7" aria-hidden="true"></a></span>
+<span id="cb34-8"><a href="#cb34-8" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
+<span id="cb34-9"><a href="#cb34-9" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb34-10"><a href="#cb34-10" 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="cb34-11"><a href="#cb34-11" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb34-12"><a href="#cb34-12" aria-hidden="true"></a></span>
+<span id="cb34-13"><a href="#cb34-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="cb34"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb34-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb35"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb35-1"><a href="#cb35-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}$ <em>equals</em> $i$.</p>
@@ -367,26 +375,26 @@
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
 <p>Invoking pdfTeX should have the same effect:</p>
-<div class="sourceCode" id="cb35"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb35-1" data-line-number="1"><span class="ex">pdftex</span> --shell-escape document.tex</a></code></pre></div>
-<h3 id="latex"><span class="header-section-number">2.1.3</span> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span></h3>
+<div class="sourceCode" id="cb36"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb36-1"><a href="#cb36-1" aria-hidden="true"></a><span class="ex">pdftex</span> --shell-escape document.tex</span></code></pre></div>
+<h3 data-number="2.1.3" id="latex"><span class="header-section-number">2.1.3</span> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span></h3>
 <p>The <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> interface provides the same level of functionality as the plain <span class="tex">T<sub>e</sub>X</span> interface by using the plain <span class="tex">T<sub>e</sub>X</span> interface behind the scenes. Unlike the plain <span class="tex">T<sub>e</sub>X</span> interface, the <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> interface uses familiar <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> idioms, such as package options and environments.</p>
-<p>The <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> interface accepts the same options as the plain <span class="tex">T<sub>e</sub>X</span> interface, but now the options are specified as ⟨<em>key</em>⟩<span class="math inline"> = </span>⟨<em>value</em>⟩ pairs and they are passed either as package options, in the <code>\markdownSetup</code> command, or as parameters for the <code>markdown*</code> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> environment.</p>
+<p>The <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> interface accepts the same options as the plain <span class="tex">T<sub>e</sub>X</span> interface, but now the options are specified as ⟨<em>key</em>⟩<span class="math inline"> = </span>⟨<em>value</em>⟩ pairs and they are passed either as package options, in the  command, or as parameters for the  <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> environment.</p>
 <p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb36"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb36-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb36-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb36-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb36-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb36-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb36-6" data-line-number="6"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></a>
-<a class="sourceLine" id="cb36-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb36-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb36-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{hybrid}</a>
-<a class="sourceLine" id="cb36-10" data-line-number="10"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></a>
-<a class="sourceLine" id="cb36-11" data-line-number="11"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb36-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb36-13" data-line-number="13"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb37"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb37-1"><a href="#cb37-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb37-2"><a href="#cb37-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb37-3"><a href="#cb37-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb37-4"><a href="#cb37-4" aria-hidden="true"></a></span>
+<span id="cb37-5"><a href="#cb37-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb37-6"><a href="#cb37-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="cb37-7"><a href="#cb37-7" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb37-8"><a href="#cb37-8" aria-hidden="true"></a></span>
+<span id="cb37-9"><a href="#cb37-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{hybrid}</span>
+<span id="cb37-10"><a href="#cb37-10" 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="cb37-11"><a href="#cb37-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb37-12"><a href="#cb37-12" aria-hidden="true"></a></span>
+<span id="cb37-13"><a href="#cb37-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="cb37"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb37-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb38"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb38-1"><a href="#cb38-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}$ <em>equals</em> $i$.</p>
@@ -393,26 +401,26 @@
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
 <p>Invoking pdfTeX should have the same effect:</p>
-<div class="sourceCode" id="cb38"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb38-1" data-line-number="1"><span class="ex">pdflatex</span> --shell-escape document.tex</a></code></pre></div>
-<h3 id="context"><span class="header-section-number">2.1.4</span> Con<span class="tex">T<sub>e</sub>X</span>t</h3>
+<div class="sourceCode" id="cb39"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb39-1"><a href="#cb39-1" aria-hidden="true"></a><span class="ex">pdflatex</span> --shell-escape document.tex</span></code></pre></div>
+<h3 data-number="2.1.4" id="context"><span class="header-section-number">2.1.4</span> Con<span class="tex">T<sub>e</sub>X</span>t</h3>
 <p>The Con<span class="tex">T<sub>e</sub>X</span>t interface provides the same level of functionality as the plain <span class="tex">T<sub>e</sub>X</span> interface by using the plain <span class="tex">T<sub>e</sub>X</span> interface behind the scenes. Unlike the plain <span class="tex">T<sub>e</sub>X</span> interface, the Con<span class="tex">T<sub>e</sub>X</span>t interface uses familiar Con<span class="tex">T<sub>e</sub>X</span>t idioms, such as environments.</p>
 <p>The Con<span class="tex">T<sub>e</sub>X</span>t interface accepts the same options as the plain <span class="tex">T<sub>e</sub>X</span> interface.</p>
 <p>Using a text editor, create a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb39"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb39-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb39-2" data-line-number="2"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb39-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb39-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb39-5" data-line-number="5"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.</a>
-<a class="sourceLine" id="cb39-6" data-line-number="6"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb39-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb39-8" data-line-number="8"><span class="fu">\def</span>\markdownOptionHybrid{true}</a>
-<a class="sourceLine" id="cb39-9" data-line-number="9"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb39-10" data-line-number="10"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.</a>
-<a class="sourceLine" id="cb39-11" data-line-number="11"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb39-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb39-13" data-line-number="13"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb40"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb40-1"><a href="#cb40-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb40-2"><a href="#cb40-2" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb40-3"><a href="#cb40-3" aria-hidden="true"></a></span>
+<span id="cb40-4"><a href="#cb40-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb40-5"><a href="#cb40-5" 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="cb40-6"><a href="#cb40-6" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb40-7"><a href="#cb40-7" aria-hidden="true"></a></span>
+<span id="cb40-8"><a href="#cb40-8" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
+<span id="cb40-9"><a href="#cb40-9" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb40-10"><a href="#cb40-10" 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="cb40-11"><a href="#cb40-11" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb40-12"><a href="#cb40-12" aria-hidden="true"></a></span>
+<span id="cb40-13"><a href="#cb40-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="cb40"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb40-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb41"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb41-1"><a href="#cb41-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}$ <em>equals</em> $i$.</p>
@@ -419,180 +427,180 @@
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
 <p>Invoking pdfTeX should have the same effect:</p>
-<div class="sourceCode" id="cb41"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb41-1" data-line-number="1"><span class="ex">texexec</span> --passon=--shell-escape document.tex</a></code></pre></div>
-<h2 id="options"><span class="header-section-number">2.2</span> Options</h2>
+<div class="sourceCode" id="cb42"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb42-1"><a href="#cb42-1" aria-hidden="true"></a><span class="ex">texexec</span> --passon=--shell-escape document.tex</span></code></pre></div>
+<h2 data-number="2.2" id="options"><span class="header-section-number">2.2</span> Options</h2>
 <p>In this section, I will describe all the options recognized by the Markdown package.</p>
-<h3 id="lua-1"><span class="header-section-number">2.2.1</span> Lua</h3>
+<h3 data-number="2.2.1" id="lua-1"><span class="header-section-number">2.2.1</span> Lua</h3>
 <p>Lua options control the conversion from markdown to <span class="tex">T<sub>e</sub>X</span>. They are supported by all interfaces of the Markdown package starting with the low-level Lua interfaces and all the way up to the <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> and Con<span class="tex">T<sub>e</sub>X</span>t interfaces.</p>
-<h4 id="option-cachedir"><span class="header-section-number">2.2.1.1</span> Option <code>cacheDir</code></h4>
+<h4 data-number="2.2.1.1" id="option-cachedir"><span class="header-section-number">2.2.1.1</span> Option <code>cacheDir</code></h4>
 <dl>
-<dt><code>cacheDir</code> (default value: <code>"."</code>)</dt>
+<dt><code>cacheDir</code> (default value: <code>"."</code>)</dt>
 <dd><p>A path to the directory containing auxiliary cache files. If the last segment of the path does not exist, it will be created by the Lua command-line and plain <span class="tex">T<sub>e</sub>X</span> implementations. The Lua implementation expects that the entire path already exists.</p>
 <p>When iteratively writing and typesetting a markdown document, the cache files are going to accumulate over time. You are advised to clean the cache directory every now and then, or to set it to a temporary filesystem (such as <code>/tmp</code> on UN*X systems), which gets periodically emptied.</p>
 </dd>
 </dl>
-<h5 id="lua-module-example" class="unnumbered">Lua Module Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-module-example">Lua Module 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="cb42"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb42-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb42-2" data-line-number="2"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb42-3" data-line-number="3">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb42-4" data-line-number="4">  local convert = markdown.new({cacheDir = "cache"})</a>
-<a class="sourceLine" id="cb42-5" data-line-number="5">  local input = "Hello *world*!"</a>
-<a class="sourceLine" id="cb42-6" data-line-number="6">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb42-7" data-line-number="7"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb43"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb43-1"><a href="#cb43-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb43-2"><a href="#cb43-2" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb43-3"><a href="#cb43-3" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb43-4"><a href="#cb43-4" aria-hidden="true"></a>  local convert = markdown.new({cacheDir = "cache"})</span>
+<span id="cb43-5"><a href="#cb43-5" aria-hidden="true"></a>  local input = "Hello *world*!"</span>
+<span id="cb43-6"><a href="#cb43-6" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb43-7"><a href="#cb43-7" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Create an empty directory named <code>cache</code> next to our text document. Then, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb43"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb43-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb44"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb44-1"><a href="#cb44-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 text “Hello <em>world</em>!” Several cache files of the Markdown package will also be produced in the <code>cache</code> directory as we requested using the <code>cacheDir</code> option.</p>
-<h5 id="lua-cli-example" class="unnumbered">Lua CLI Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-cli-example">Lua CLI 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="cb44"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb44-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb44-2" data-line-number="2"><span class="fu">\input</span> hello</a>
-<a class="sourceLine" id="cb44-3" data-line-number="3"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb45"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb45-1"><a href="#cb45-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb45-2"><a href="#cb45-2" aria-hidden="true"></a><span class="fu">\input</span> hello</span>
+<span id="cb45-3"><a href="#cb45-3" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Using a text editor, create a text document named <code>hello.md</code> with the following content:</p>
-<div class="sourceCode" id="cb45"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb45-1" data-line-number="1">Hello *world*!</a></code></pre></div>
+<div class="sourceCode" id="cb46"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb46-1"><a href="#cb46-1" aria-hidden="true"></a>Hello *world*!</span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb46"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb46-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ cacheDir=cache -- hello.md hello.tex</a>
-<a class="sourceLine" id="cb46-2" data-line-number="2"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb47"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb47-1"><a href="#cb47-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ cacheDir=cache -- hello.md hello.tex</span>
+<span id="cb47-2"><a href="#cb47-2" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the text “Hello <em>world</em>!” A directory named <code>cache</code> containing several cache files of the Markdown package will also be produced as we requested using the <code>cacheDir</code> option.</p>
-<h5 id="plain-tex-example" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example">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="cb47"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb47-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb47-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionCacheDir{cache}</a>
-<a class="sourceLine" id="cb47-3" data-line-number="3"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb47-4" data-line-number="4">Hello *world*!</a>
-<a class="sourceLine" id="cb47-5" data-line-number="5"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb47-6" data-line-number="6"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb48"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb48-1"><a href="#cb48-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb48-2"><a href="#cb48-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionCacheDir</span>{cache}</span>
+<span id="cb48-3"><a href="#cb48-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb48-4"><a href="#cb48-4" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb48-5"><a href="#cb48-5" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb48-6"><a href="#cb48-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="cb48"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb48-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb49"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb49-1"><a href="#cb49-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 text “Hello <em>world</em>!” A directory named <code>cache</code> containing several cache files of the Markdown package will also be produced as we requested using the <code>cacheDir</code> option.</p>
-<h5 id="latex-example" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example"><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="cb49"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb49-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb49-2" data-line-number="2"><span class="bu">\usepackage</span>[cacheDir=cache]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb49-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb49-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb49-5" data-line-number="5">Hello *world*!</a>
-<a class="sourceLine" id="cb49-6" data-line-number="6"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb49-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb50"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb50-1"><a href="#cb50-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb50-2"><a href="#cb50-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[cacheDir=cache]{<span class="ex">markdown</span>}</span>
+<span id="cb50-3"><a href="#cb50-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb50-4"><a href="#cb50-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb50-5"><a href="#cb50-5" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb50-6"><a href="#cb50-6" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb50-7"><a href="#cb50-7" 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="cb50"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb50-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb51"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb51-1"><a href="#cb51-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 text “Hello <em>world</em>!” A directory named <code>cache</code> containing several cache files of the Markdown package will also be produced as we requested using the <code>cacheDir</code> option.</p>
-<h5 id="context-example" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example">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="cb51"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb51-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb51-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionCacheDir{cache}</a>
-<a class="sourceLine" id="cb51-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb51-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb51-5" data-line-number="5">Hello *world*!</a>
-<a class="sourceLine" id="cb51-6" data-line-number="6"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb51-7" data-line-number="7"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb52"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb52-1"><a href="#cb52-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb52-2"><a href="#cb52-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionCacheDir</span>{cache}</span>
+<span id="cb52-3"><a href="#cb52-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb52-4"><a href="#cb52-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb52-5"><a href="#cb52-5" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb52-6"><a href="#cb52-6" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb52-7"><a href="#cb52-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="cb52"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb52-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb53"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb53-1"><a href="#cb53-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 text “Hello <em>world</em>!” A directory named <code>cache</code> containing several cache files of the Markdown package will also be produced as we requested using the <code>cacheDir</code> option.</p>
-<h4 id="option-frozencachefilename"><span class="header-section-number">2.2.1.2</span> Option <code>frozenCacheFileName</code></h4>
+<h4 data-number="2.2.1.2" id="option-frozencachefilename"><span class="header-section-number">2.2.1.2</span> Option <code>frozenCacheFileName</code></h4>
 <dl>
-<dt><code>frozenCacheFileName</code> (default value: <code>"frozenCache.tex"</code>)</dt>
+<dt><code>frozenCacheFileName</code> (default value: <code>"frozenCache.tex"</code>)</dt>
 <dd><p>A path to an output file (frozen cache) that will be created when the <strong><code>finalizeCache</code></strong> option is enabled and will contain a mapping between an enumeration of markdown documents and their auxiliary cache files.</p>
-<p>The frozen cache makes it possible to later typeset a plain <span class="tex">T<sub>e</sub>X</span> document that contains markdown documents without invoking Lua using the <code>\markdownOptionFrozenCache</code> plain <span class="tex">T<sub>e</sub>X</span> option. As a result, the plain <span class="tex">T<sub>e</sub>X</span> document becomes more portable, but further changes in the order and the content of markdown documents will not be reflected.</p>
+<p>The frozen cache makes it possible to later typeset a plain <span class="tex">T<sub>e</sub>X</span> document that contains markdown documents without invoking Lua using the  plain <span class="tex">T<sub>e</sub>X</span> option. As a result, the plain <span class="tex">T<sub>e</sub>X</span> document becomes more portable, but further changes in the order and the content of markdown documents will not be reflected.</p>
 </dd>
 </dl>
-<h5 id="lua-module-example-1" class="unnumbered">Lua Module Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-module-example-1">Lua Module 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="cb53"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb53-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb53-2" data-line-number="2"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb53-3" data-line-number="3">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb53-4" data-line-number="4">  local convert = markdown.new({finalizeCache = true, frozenCacheFileName = "cache.tex"})</a>
-<a class="sourceLine" id="cb53-5" data-line-number="5">  local input = "Hello *world*!"</a>
-<a class="sourceLine" id="cb53-6" data-line-number="6">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb53-7" data-line-number="7"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb54"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb54-1"><a href="#cb54-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb54-2"><a href="#cb54-2" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb54-3"><a href="#cb54-3" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb54-4"><a href="#cb54-4" aria-hidden="true"></a>  local convert = markdown.new({finalizeCache = true, frozenCacheFileName = "cache.tex"})</span>
+<span id="cb54-5"><a href="#cb54-5" aria-hidden="true"></a>  local input = "Hello *world*!"</span>
+<span id="cb54-6"><a href="#cb54-6" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb54-7"><a href="#cb54-7" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Then, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb54"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb54-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb55"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb55-1"><a href="#cb55-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 text “Hello <em>world</em>!” A frozen cache will also be produced in the <code>cache.tex</code> output file as we requested using the <code>finalizeCache</code> and <code>frozenCacheFileName</code> options.</p>
-<h5 id="lua-cli-example-1" class="unnumbered">Lua CLI Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-cli-example-1">Lua CLI 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="cb55"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb55-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb55-2" data-line-number="2"><span class="fu">\input</span> hello</a>
-<a class="sourceLine" id="cb55-3" data-line-number="3"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb56"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb56-1"><a href="#cb56-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb56-2"><a href="#cb56-2" aria-hidden="true"></a><span class="fu">\input</span> hello</span>
+<span id="cb56-3"><a href="#cb56-3" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Using a text editor, create a text document named <code>hello.md</code> with the following content:</p>
-<div class="sourceCode" id="cb56"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb56-1" data-line-number="1">Hello *world*!</a></code></pre></div>
+<div class="sourceCode" id="cb57"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb57-1"><a href="#cb57-1" aria-hidden="true"></a>Hello *world*!</span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb57"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb57-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ finalizeCache=true frozenCacheFileName=cache.tex -- hello.md hello.tex</a>
-<a class="sourceLine" id="cb57-2" data-line-number="2"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb58"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb58-1"><a href="#cb58-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ finalizeCache=true frozenCacheFileName=cache.tex -- hello.md hello.tex</span>
+<span id="cb58-2"><a href="#cb58-2" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the text “Hello <em>world</em>!” A frozen cache will also be produced in the <code>cache.tex</code> output file as we requested using the <code>finalizeCache</code> and <code>frozenCacheFileName</code> options.</p>
-<h5 id="plain-tex-example-1" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-1">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="cb58"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb58-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb58-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFinalizeCache{true}</a>
-<a class="sourceLine" id="cb58-3" data-line-number="3"><span class="fu">\def</span>\markdownOptionFrozenCacheFileName{cache.tex}</a>
-<a class="sourceLine" id="cb58-4" data-line-number="4"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb58-5" data-line-number="5">Hello *world*!</a>
-<a class="sourceLine" id="cb58-6" data-line-number="6"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb58-7" data-line-number="7"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb59"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb59-1"><a href="#cb59-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb59-2"><a href="#cb59-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFinalizeCache</span>{true}</span>
+<span id="cb59-3"><a href="#cb59-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionFrozenCacheFileName</span>{cache.tex}</span>
+<span id="cb59-4"><a href="#cb59-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb59-5"><a href="#cb59-5" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb59-6"><a href="#cb59-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb59-7"><a href="#cb59-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="cb59"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb59-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb60"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb60-1"><a href="#cb60-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 text “Hello <em>world</em>!” A frozen cache will also be produced in the <code>cache.tex</code> output file as we requested using the <code>finalizeCache</code> and <code>frozenCacheFileName</code> options.</p>
 <p>Next, create a new text document <code>frozen-document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb60"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb60-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb60-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFrozenCache{true}</a>
-<a class="sourceLine" id="cb60-3" data-line-number="3"><span class="fu">\def</span>\markdownOptionFrozenCacheFileName{cache.tex}</a>
-<a class="sourceLine" id="cb60-4" data-line-number="4"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb60-5" data-line-number="5">Hi *world*!</a>
-<a class="sourceLine" id="cb60-6" data-line-number="6"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb60-7" data-line-number="7"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb61"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb61-1"><a href="#cb61-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb61-2"><a href="#cb61-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFrozenCache</span>{true}</span>
+<span id="cb61-3"><a href="#cb61-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionFrozenCacheFileName</span>{cache.tex}</span>
+<span id="cb61-4"><a href="#cb61-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb61-5"><a href="#cb61-5" aria-hidden="true"></a>Hi *world*!</span>
+<span id="cb61-6"><a href="#cb61-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb61-7"><a href="#cb61-7" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Last, invoke pdfTeX without shell access from the terminal:</p>
-<div class="sourceCode" id="cb61"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb61-1" data-line-number="1"><span class="ex">pdftex</span> -no-shell-escape frozen-document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb62"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb62-1"><a href="#cb62-1" aria-hidden="true"></a><span class="ex">pdftex</span> -no-shell-escape frozen-document.tex</span></code></pre></div>
 <p>A PDF document named <code>frozen-document.pdf</code> should be produced and contain the text “Hello <em>world</em>!” Since we used the contents of the frozen cache using the <code>\markdownOptionFrozenCache</code> option, we were able to typeset the document without accessing the shell or invoking Lua, but the change in the content of the markdown document from “Hello <em>world</em>!” to “Hi <em>world</em>!” was not reflected.</p>
-<h5 id="latex-example-1" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-1"><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="cb62"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb62-1" data-line-number="1"><span class="bu">\documentclass</span>[finalizecache]{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb62-2" data-line-number="2"><span class="bu">\usepackage</span>[frozenCacheFileName=cache.tex]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb62-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb62-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb62-5" data-line-number="5">Hello *world*!</a>
-<a class="sourceLine" id="cb62-6" data-line-number="6"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb62-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb63"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb63-1"><a href="#cb63-1" aria-hidden="true"></a><span class="bu">\documentclass</span>[finalizecache]{<span class="ex">article</span>}</span>
+<span id="cb63-2"><a href="#cb63-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[frozenCacheFileName=cache.tex]{<span class="ex">markdown</span>}</span>
+<span id="cb63-3"><a href="#cb63-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb63-4"><a href="#cb63-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb63-5"><a href="#cb63-5" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb63-6"><a href="#cb63-6" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb63-7"><a href="#cb63-7" 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="cb63"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb63-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb64"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb64-1"><a href="#cb64-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 text “Hello <em>world</em>!” A frozen cache will also be produced in the <code>cache.tex</code> output file as we requested using the <code>finalizecache</code> and <code>frozenCacheFileName</code> options.</p>
 <p>Next, create a new text document <code>frozen-document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb64"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb64-1" data-line-number="1"><span class="bu">\documentclass</span>[frozencache]{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb64-2" data-line-number="2"><span class="bu">\usepackage</span>[frozenCacheFileName=cache.tex]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb64-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb64-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb64-5" data-line-number="5">Hi *world*!</a>
-<a class="sourceLine" id="cb64-6" data-line-number="6"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb64-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb65"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb65-1"><a href="#cb65-1" aria-hidden="true"></a><span class="bu">\documentclass</span>[frozencache]{<span class="ex">article</span>}</span>
+<span id="cb65-2"><a href="#cb65-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[frozenCacheFileName=cache.tex]{<span class="ex">markdown</span>}</span>
+<span id="cb65-3"><a href="#cb65-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb65-4"><a href="#cb65-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb65-5"><a href="#cb65-5" aria-hidden="true"></a>Hi *world*!</span>
+<span id="cb65-6"><a href="#cb65-6" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb65-7"><a href="#cb65-7" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
 <p>Last, invoke pdfTeX without shell access from the terminal:</p>
-<div class="sourceCode" id="cb65"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb65-1" data-line-number="1"><span class="ex">pdflatex</span> -no-shell-escape frozen-document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb66"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb66-1"><a href="#cb66-1" aria-hidden="true"></a><span class="ex">pdflatex</span> -no-shell-escape frozen-document.tex</span></code></pre></div>
 <p>A PDF document named <code>frozen-document.pdf</code> should be produced and contain the text “Hello <em>world</em>!” Since we used the contents of the frozen cache using the <code>frozencache</code> option, we were able to typeset the document without accessing the shell or invoking Lua, but the change in the content of the markdown document from “Hello <em>world</em>!” to “Hi <em>world</em>!” was not reflected.</p>
-<h5 id="context-example-1" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-1">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="cb66"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb66-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb66-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFinalizeCache{true}</a>
-<a class="sourceLine" id="cb66-3" data-line-number="3"><span class="fu">\def</span>\markdownOptionFrozenCacheFileName{cache.tex}</a>
-<a class="sourceLine" id="cb66-4" data-line-number="4"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb66-5" data-line-number="5"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb66-6" data-line-number="6">Hello *world*!</a>
-<a class="sourceLine" id="cb66-7" data-line-number="7"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb66-8" data-line-number="8"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb67"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb67-1"><a href="#cb67-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb67-2"><a href="#cb67-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFinalizeCache</span>{true}</span>
+<span id="cb67-3"><a href="#cb67-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionFrozenCacheFileName</span>{cache.tex}</span>
+<span id="cb67-4"><a href="#cb67-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb67-5"><a href="#cb67-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb67-6"><a href="#cb67-6" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb67-7"><a href="#cb67-7" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb67-8"><a href="#cb67-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="cb67"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb67-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb68"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb68-1"><a href="#cb68-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 text “Hello <em>world</em>!” A frozen cache will also be produced in the <code>cache.tex</code> output file as we requested using the <code>finalizeCache</code> and <code>frozenCacheFileName</code> options.</p>
 <p>Next, create a new text document <code>frozen-document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb68"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb68-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb68-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFrozenCache{true}</a>
-<a class="sourceLine" id="cb68-3" data-line-number="3"><span class="fu">\def</span>\markdownOptionFrozenCacheFileName{cache.tex}</a>
-<a class="sourceLine" id="cb68-4" data-line-number="4"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb68-5" data-line-number="5"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb68-6" data-line-number="6">Hi *world*!</a>
-<a class="sourceLine" id="cb68-7" data-line-number="7"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb68-8" data-line-number="8"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb69"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb69-1"><a href="#cb69-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb69-2"><a href="#cb69-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFrozenCache</span>{true}</span>
+<span id="cb69-3"><a href="#cb69-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionFrozenCacheFileName</span>{cache.tex}</span>
+<span id="cb69-4"><a href="#cb69-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb69-5"><a href="#cb69-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb69-6"><a href="#cb69-6" aria-hidden="true"></a>Hi *world*!</span>
+<span id="cb69-7"><a href="#cb69-7" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb69-8"><a href="#cb69-8" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
 <p>Last, invoke pdfTeX without shell access from the terminal:</p>
-<div class="sourceCode" id="cb69"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb69-1" data-line-number="1"><span class="ex">texexec</span> --passon=--no-shell-escape frozen-document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb70"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb70-1"><a href="#cb70-1" aria-hidden="true"></a><span class="ex">texexec</span> --passon=--no-shell-escape frozen-document.tex</span></code></pre></div>
 <p>A PDF document named <code>frozen-document.pdf</code> should be produced and contain the text “Hello <em>world</em>!” Since we used the contents of the frozen cache using the <code>\markdownOptionFrozenCache</code> option, we were able to typeset the document without accessing the shell or invoking Lua, but the change in the content of the markdown document from “Hello <em>world</em>!” to “Hi <em>world</em>!” was not reflected.</p>
-<h4 id="option-blankbeforeblockquote"><span class="header-section-number">2.2.1.3</span> Option <code>blankBeforeBlockquote</code></h4>
+<h4 data-number="2.2.1.3" id="option-blankbeforeblockquote"><span class="header-section-number">2.2.1.3</span> Option <code>blankBeforeBlockquote</code></h4>
 <dl>
 <dt><code>blankBeforeBlockquote</code> (default value: <code>false</code>)</dt>
 <dd><dl>
@@ -605,27 +613,27 @@
 </dl>
 </dd>
 </dl>
-<h5 id="lua-module-example-2" class="unnumbered">Lua Module Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-module-example-2">Lua Module 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="cb70"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb70-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb70-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb70-3" data-line-number="3"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb70-4" data-line-number="4">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb70-5" data-line-number="5">  local newline = [[^^J^^J]]</a>
-<a class="sourceLine" id="cb70-6" data-line-number="6">  local convert, input</a>
-<a class="sourceLine" id="cb70-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb70-8" data-line-number="8">  convert = markdown.new()</a>
-<a class="sourceLine" id="cb70-9" data-line-number="9">  input = "A paragraph." .. newline ..</a>
-<a class="sourceLine" id="cb70-10" data-line-number="10">          "> A quote."   .. newline</a>
-<a class="sourceLine" id="cb70-11" data-line-number="11">  tex.sprint(convert(input))</a>
-<a class="sourceLine" id="cb70-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb70-13" data-line-number="13">  convert = markdown.new({blankBeforeBlockquote = true})</a>
-<a class="sourceLine" id="cb70-14" data-line-number="14">  input = "A paragraph."   .. newline ..</a>
-<a class="sourceLine" id="cb70-15" data-line-number="15">          "> Not a quote." .. newline</a>
-<a class="sourceLine" id="cb70-16" data-line-number="16">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb70-17" data-line-number="17"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb71"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb71-1"><a href="#cb71-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb71-2"><a href="#cb71-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb71-3"><a href="#cb71-3" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb71-4"><a href="#cb71-4" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb71-5"><a href="#cb71-5" aria-hidden="true"></a>  local newline = [[^^J^^J]]</span>
+<span id="cb71-6"><a href="#cb71-6" aria-hidden="true"></a>  local convert, input</span>
+<span id="cb71-7"><a href="#cb71-7" aria-hidden="true"></a></span>
+<span id="cb71-8"><a href="#cb71-8" aria-hidden="true"></a>  convert = markdown.new()</span>
+<span id="cb71-9"><a href="#cb71-9" aria-hidden="true"></a>  input = "A paragraph." .. newline ..</span>
+<span id="cb71-10"><a href="#cb71-10" aria-hidden="true"></a>          "> A quote."   .. newline</span>
+<span id="cb71-11"><a href="#cb71-11" aria-hidden="true"></a>  tex.sprint(convert(input))</span>
+<span id="cb71-12"><a href="#cb71-12" aria-hidden="true"></a></span>
+<span id="cb71-13"><a href="#cb71-13" aria-hidden="true"></a>  convert = markdown.new({blankBeforeBlockquote = true})</span>
+<span id="cb71-14"><a href="#cb71-14" aria-hidden="true"></a>  input = "A paragraph."   .. newline ..</span>
+<span id="cb71-15"><a href="#cb71-15" aria-hidden="true"></a>          "> Not a quote." .. newline</span>
+<span id="cb71-16"><a href="#cb71-16" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb71-17"><a href="#cb71-17" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Then, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb71"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb71-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb72"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb72-1"><a href="#cb72-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 paragraph.</p>
@@ -634,20 +642,20 @@
 </blockquote>
 <p>A paragraph > Not a quote.</p>
 </blockquote>
-<h5 id="lua-cli-example-2" class="unnumbered">Lua CLI Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-cli-example-2">Lua CLI 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="cb72"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb72-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb72-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb72-3" data-line-number="3"><span class="fu">\input</span> optionfalse</a>
-<a class="sourceLine" id="cb72-4" data-line-number="4"><span class="fu">\input</span> optiontrue</a>
-<a class="sourceLine" id="cb72-5" data-line-number="5"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb73"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb73-1"><a href="#cb73-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb73-2"><a href="#cb73-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb73-3"><a href="#cb73-3" aria-hidden="true"></a><span class="fu">\input</span> optionfalse</span>
+<span id="cb73-4"><a href="#cb73-4" aria-hidden="true"></a><span class="fu">\input</span> optiontrue</span>
+<span id="cb73-5"><a href="#cb73-5" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Using a text editor, create a text document named <code>content.md</code> with the following content:</p>
-<div class="sourceCode" id="cb73"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb73-1" data-line-number="1">A paragraph.</a>
-<a class="sourceLine" id="cb73-2" data-line-number="2">><span class="dt"> A quote?</span></a></code></pre></div>
+<div class="sourceCode" id="cb74"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb74-1"><a href="#cb74-1" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb74-2"><a href="#cb74-2" aria-hidden="true"></a><span class="at">> A quote?</span></span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb74"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb74-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</a>
-<a class="sourceLine" id="cb74-2" data-line-number="2"><span class="ex">texlua</span> ⟨CLI pathname⟩ blankBeforeBlockquote=true -- content.md optiontrue.tex</a>
-<a class="sourceLine" id="cb74-3" data-line-number="3"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb75"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb75-1"><a href="#cb75-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</span>
+<span id="cb75-2"><a href="#cb75-2" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ blankBeforeBlockquote=true -- content.md optiontrue.tex</span>
+<span id="cb75-3"><a href="#cb75-3" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
 <blockquote>
@@ -657,24 +665,24 @@
 </blockquote>
 <p>A paragraph. > A quote?</p>
 </blockquote>
-<h5 id="plain-tex-example-2" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-2">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="cb75"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb75-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb75-2" data-line-number="2"></a>
-<a class="sourceLine" id="cb75-3" data-line-number="3"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb75-4" data-line-number="4">A paragraph.</a>
-<a class="sourceLine" id="cb75-5" data-line-number="5">> A quote.</a>
-<a class="sourceLine" id="cb75-6" data-line-number="6"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb75-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb75-8" data-line-number="8"><span class="fu">\def</span>\markdownOptionBlankBeforeBlockquote{true}</a>
-<a class="sourceLine" id="cb75-9" data-line-number="9"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb75-10" data-line-number="10">A paragraph.</a>
-<a class="sourceLine" id="cb75-11" data-line-number="11">> Not a quote.</a>
-<a class="sourceLine" id="cb75-12" data-line-number="12"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb75-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb75-14" data-line-number="14"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb76"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb76-1"><a href="#cb76-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb76-2"><a href="#cb76-2" aria-hidden="true"></a></span>
+<span id="cb76-3"><a href="#cb76-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb76-4"><a href="#cb76-4" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb76-5"><a href="#cb76-5" aria-hidden="true"></a>> A quote.</span>
+<span id="cb76-6"><a href="#cb76-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb76-7"><a href="#cb76-7" aria-hidden="true"></a></span>
+<span id="cb76-8"><a href="#cb76-8" aria-hidden="true"></a><span class="fu">\def\markdownOptionBlankBeforeBlockquote</span>{true}</span>
+<span id="cb76-9"><a href="#cb76-9" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb76-10"><a href="#cb76-10" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb76-11"><a href="#cb76-11" aria-hidden="true"></a>> Not a quote.</span>
+<span id="cb76-12"><a href="#cb76-12" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb76-13"><a href="#cb76-13" aria-hidden="true"></a></span>
+<span id="cb76-14"><a href="#cb76-14" 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="cb76"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb76-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb77"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb77-1"><a href="#cb77-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 paragraph.</p>
@@ -683,25 +691,25 @@
 </blockquote>
 <p>A paragraph > Not a quote.</p>
 </blockquote>
-<h5 id="latex-example-2" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-2"><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="cb77"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb77-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb77-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb77-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb77-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb77-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb77-6" data-line-number="6">A paragraph.</a>
-<a class="sourceLine" id="cb77-7" data-line-number="7">> A quote.</a>
-<a class="sourceLine" id="cb77-8" data-line-number="8"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb77-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb77-10" data-line-number="10"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{blankBeforeBlockquote}</a>
-<a class="sourceLine" id="cb77-11" data-line-number="11">A paragraph.</a>
-<a class="sourceLine" id="cb77-12" data-line-number="12">> Not a quote.</a>
-<a class="sourceLine" id="cb77-13" data-line-number="13"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb77-14" data-line-number="14"></a>
-<a class="sourceLine" id="cb77-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb78"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb78-1"><a href="#cb78-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb78-2"><a href="#cb78-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb78-3"><a href="#cb78-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb78-4"><a href="#cb78-4" aria-hidden="true"></a></span>
+<span id="cb78-5"><a href="#cb78-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb78-6"><a href="#cb78-6" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb78-7"><a href="#cb78-7" aria-hidden="true"></a>> A quote.</span>
+<span id="cb78-8"><a href="#cb78-8" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb78-9"><a href="#cb78-9" aria-hidden="true"></a></span>
+<span id="cb78-10"><a href="#cb78-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{blankBeforeBlockquote}</span>
+<span id="cb78-11"><a href="#cb78-11" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb78-12"><a href="#cb78-12" aria-hidden="true"></a>> Not a quote.</span>
+<span id="cb78-13"><a href="#cb78-13" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb78-14"><a href="#cb78-14" aria-hidden="true"></a></span>
+<span id="cb78-15"><a href="#cb78-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="cb78"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb78-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb79"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb79-1"><a href="#cb79-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 paragraph.</p>
@@ -710,25 +718,25 @@
 </blockquote>
 <p>A paragraph > Not a quote.</p>
 </blockquote>
-<h5 id="context-example-2" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-2">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="cb79"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb79-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb79-2" data-line-number="2"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb79-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb79-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb79-5" data-line-number="5">A paragraph.</a>
-<a class="sourceLine" id="cb79-6" data-line-number="6">> A quote.</a>
-<a class="sourceLine" id="cb79-7" data-line-number="7"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb79-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb79-9" data-line-number="9"><span class="fu">\def</span>\markdownOptionBlankBeforeBlockquote{true}</a>
-<a class="sourceLine" id="cb79-10" data-line-number="10"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb79-11" data-line-number="11">A paragraph.</a>
-<a class="sourceLine" id="cb79-12" data-line-number="12">> Not a quote.</a>
-<a class="sourceLine" id="cb79-13" data-line-number="13"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb79-14" data-line-number="14"></a>
-<a class="sourceLine" id="cb79-15" data-line-number="15"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb80"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb80-1"><a href="#cb80-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb80-2"><a href="#cb80-2" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb80-3"><a href="#cb80-3" aria-hidden="true"></a></span>
+<span id="cb80-4"><a href="#cb80-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb80-5"><a href="#cb80-5" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb80-6"><a href="#cb80-6" aria-hidden="true"></a>> A quote.</span>
+<span id="cb80-7"><a href="#cb80-7" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb80-8"><a href="#cb80-8" aria-hidden="true"></a></span>
+<span id="cb80-9"><a href="#cb80-9" aria-hidden="true"></a><span class="fu">\def\markdownOptionBlankBeforeBlockquote</span>{true}</span>
+<span id="cb80-10"><a href="#cb80-10" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb80-11"><a href="#cb80-11" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb80-12"><a href="#cb80-12" aria-hidden="true"></a>> Not a quote.</span>
+<span id="cb80-13"><a href="#cb80-13" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb80-14"><a href="#cb80-14" aria-hidden="true"></a></span>
+<span id="cb80-15"><a href="#cb80-15" 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="cb80"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb80-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb81"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb81-1"><a href="#cb81-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 paragraph.</p>
@@ -737,7 +745,7 @@
 </blockquote>
 <p>A paragraph > Not a quote.</p>
 </blockquote>
-<h4 id="option-blankbeforecodefence"><span class="header-section-number">2.2.1.4</span> Option <code>blankBeforeCodeFence</code></h4>
+<h4 data-number="2.2.1.4" id="option-blankbeforecodefence"><span class="header-section-number">2.2.1.4</span> Option <code>blankBeforeCodeFence</code></h4>
 <dl>
 <dt><code>blankBeforeCodeFence</code> (default value: <code>false</code>)</dt>
 <dd><dl>
@@ -750,32 +758,32 @@
 </dl>
 </dd>
 </dl>
-<h5 id="lua-module-example-3" class="unnumbered">Lua Module Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-module-example-3">Lua Module 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="cb81"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb81-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb81-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb81-3" data-line-number="3"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb81-4" data-line-number="4">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb81-5" data-line-number="5">  local newline = [[^^J^^J]]</a>
-<a class="sourceLine" id="cb81-6" data-line-number="6">  local convert, input</a>
-<a class="sourceLine" id="cb81-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb81-8" data-line-number="8">  convert = markdown.new({fencedCode = true})</a>
-<a class="sourceLine" id="cb81-9" data-line-number="9">  input = "A paragraph."   .. newline ..</a>
-<a class="sourceLine" id="cb81-10" data-line-number="10">          "```"            .. newline ..</a>
-<a class="sourceLine" id="cb81-11" data-line-number="11">          "A code fence."  .. newline ..</a>
-<a class="sourceLine" id="cb81-12" data-line-number="12">          "```"            .. newline</a>
-<a class="sourceLine" id="cb81-13" data-line-number="13">  tex.sprint(convert(input))</a>
-<a class="sourceLine" id="cb81-14" data-line-number="14"></a>
-<a class="sourceLine" id="cb81-15" data-line-number="15">  convert = markdown.new({</a>
-<a class="sourceLine" id="cb81-16" data-line-number="16">    fencedCode = true, blankBeforeCodeFence = true})</a>
-<a class="sourceLine" id="cb81-17" data-line-number="17">  input = "A paragraph."       .. newline ..</a>
-<a class="sourceLine" id="cb81-18" data-line-number="18">          "```"                .. newline ..</a>
-<a class="sourceLine" id="cb81-19" data-line-number="19">          "Not a code fence."  .. newline ..</a>
-<a class="sourceLine" id="cb81-20" data-line-number="20">          "```"                .. newline</a>
-<a class="sourceLine" id="cb81-21" data-line-number="21">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb81-22" data-line-number="22"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb82"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb82-1"><a href="#cb82-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb82-2"><a href="#cb82-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb82-3"><a href="#cb82-3" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb82-4"><a href="#cb82-4" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb82-5"><a href="#cb82-5" aria-hidden="true"></a>  local newline = [[^^J^^J]]</span>
+<span id="cb82-6"><a href="#cb82-6" aria-hidden="true"></a>  local convert, input</span>
+<span id="cb82-7"><a href="#cb82-7" aria-hidden="true"></a></span>
+<span id="cb82-8"><a href="#cb82-8" aria-hidden="true"></a>  convert = markdown.new({fencedCode = true})</span>
+<span id="cb82-9"><a href="#cb82-9" aria-hidden="true"></a>  input = "A paragraph."   .. newline ..</span>
+<span id="cb82-10"><a href="#cb82-10" aria-hidden="true"></a>          "```"            .. newline ..</span>
+<span id="cb82-11"><a href="#cb82-11" aria-hidden="true"></a>          "A code fence."  .. newline ..</span>
+<span id="cb82-12"><a href="#cb82-12" aria-hidden="true"></a>          "```"            .. newline</span>
+<span id="cb82-13"><a href="#cb82-13" aria-hidden="true"></a>  tex.sprint(convert(input))</span>
+<span id="cb82-14"><a href="#cb82-14" aria-hidden="true"></a></span>
+<span id="cb82-15"><a href="#cb82-15" aria-hidden="true"></a>  convert = markdown.new({</span>
+<span id="cb82-16"><a href="#cb82-16" aria-hidden="true"></a>    fencedCode = true, blankBeforeCodeFence = true})</span>
+<span id="cb82-17"><a href="#cb82-17" aria-hidden="true"></a>  input = "A paragraph."       .. newline ..</span>
+<span id="cb82-18"><a href="#cb82-18" aria-hidden="true"></a>          "```"                .. newline ..</span>
+<span id="cb82-19"><a href="#cb82-19" aria-hidden="true"></a>          "Not a code fence."  .. newline ..</span>
+<span id="cb82-20"><a href="#cb82-20" aria-hidden="true"></a>          "```"                .. newline</span>
+<span id="cb82-21"><a href="#cb82-21" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb82-22"><a href="#cb82-22" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Then, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb82"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb82-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb83"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb83-1"><a href="#cb83-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 paragraph.</p>
@@ -782,22 +790,22 @@
 <pre><code>A code fence.</code></pre>
 <p>A paragraph. <code>Not a code fence.</code></p>
 </blockquote>
-<h5 id="lua-cli-example-3" class="unnumbered">Lua CLI Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-cli-example-3">Lua CLI 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="cb84"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb84-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb84-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb84-3" data-line-number="3"><span class="fu">\input</span> optionfalse</a>
-<a class="sourceLine" id="cb84-4" data-line-number="4"><span class="fu">\input</span> optiontrue</a>
-<a class="sourceLine" id="cb84-5" data-line-number="5"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb85"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb85-1"><a href="#cb85-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb85-2"><a href="#cb85-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb85-3"><a href="#cb85-3" aria-hidden="true"></a><span class="fu">\input</span> optionfalse</span>
+<span id="cb85-4"><a href="#cb85-4" aria-hidden="true"></a><span class="fu">\input</span> optiontrue</span>
+<span id="cb85-5"><a href="#cb85-5" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Using a text editor, create a text document named <code>content.md</code> with the following content:</p>
-<div class="sourceCode" id="cb85"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb85-1" data-line-number="1">A paragraph.</a>
-<a class="sourceLine" id="cb85-2" data-line-number="2">```</a>
-<a class="sourceLine" id="cb85-3" data-line-number="3">A code fence?</a>
-<a class="sourceLine" id="cb85-4" data-line-number="4">```</a></code></pre></div>
+<div class="sourceCode" id="cb86"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb86-1"><a href="#cb86-1" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb86-2"><a href="#cb86-2" aria-hidden="true"></a><span class="in">```</span></span>
+<span id="cb86-3"><a href="#cb86-3" aria-hidden="true"></a><span class="in">A code fence?</span></span>
+<span id="cb86-4"><a href="#cb86-4" aria-hidden="true"></a><span class="in">```</span></span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb86"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb86-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ fencedCode=true -- content.md optionfalse.tex</a>
-<a class="sourceLine" id="cb86-2" data-line-number="2"><span class="ex">texlua</span> ⟨CLI pathname⟩ fencedCode=true blankBeforeCodeFence=true  -- content.md optiontrue.tex</a>
-<a class="sourceLine" id="cb86-3" data-line-number="3"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb87"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb87-1"><a href="#cb87-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ fencedCode=true -- content.md optionfalse.tex</span>
+<span id="cb87-2"><a href="#cb87-2" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ fencedCode=true blankBeforeCodeFence=true  -- content.md optiontrue.tex</span>
+<span id="cb87-3"><a href="#cb87-3" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
 <blockquote>
@@ -805,29 +813,29 @@
 <pre><code>A code fence?</code></pre>
 <p>A paragraph. <code>A code fence?</code></p>
 </blockquote>
-<h5 id="plain-tex-example-3" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-3">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="cb88"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb88-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb88-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFencedCode{true}</a>
-<a class="sourceLine" id="cb88-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb88-4" data-line-number="4"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb88-5" data-line-number="5">A paragraph.</a>
-<a class="sourceLine" id="cb88-6" data-line-number="6">```</a>
-<a class="sourceLine" id="cb88-7" data-line-number="7">A code fence.</a>
-<a class="sourceLine" id="cb88-8" data-line-number="8">```</a>
-<a class="sourceLine" id="cb88-9" data-line-number="9"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb88-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb88-11" data-line-number="11"><span class="fu">\def</span>\markdownOptionBlankBeforeCodeFence{true}</a>
-<a class="sourceLine" id="cb88-12" data-line-number="12"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb88-13" data-line-number="13">A paragraph.</a>
-<a class="sourceLine" id="cb88-14" data-line-number="14">```</a>
-<a class="sourceLine" id="cb88-15" data-line-number="15">Not a code fence.</a>
-<a class="sourceLine" id="cb88-16" data-line-number="16">```</a>
-<a class="sourceLine" id="cb88-17" data-line-number="17"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb88-18" data-line-number="18"></a>
-<a class="sourceLine" id="cb88-19" data-line-number="19"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb89"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb89-1"><a href="#cb89-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb89-2"><a href="#cb89-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFencedCode</span>{true}</span>
+<span id="cb89-3"><a href="#cb89-3" aria-hidden="true"></a></span>
+<span id="cb89-4"><a href="#cb89-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb89-5"><a href="#cb89-5" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb89-6"><a href="#cb89-6" aria-hidden="true"></a>```</span>
+<span id="cb89-7"><a href="#cb89-7" aria-hidden="true"></a>A code fence.</span>
+<span id="cb89-8"><a href="#cb89-8" aria-hidden="true"></a>```</span>
+<span id="cb89-9"><a href="#cb89-9" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb89-10"><a href="#cb89-10" aria-hidden="true"></a></span>
+<span id="cb89-11"><a href="#cb89-11" aria-hidden="true"></a><span class="fu">\def\markdownOptionBlankBeforeCodeFence</span>{true}</span>
+<span id="cb89-12"><a href="#cb89-12" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb89-13"><a href="#cb89-13" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb89-14"><a href="#cb89-14" aria-hidden="true"></a>```</span>
+<span id="cb89-15"><a href="#cb89-15" aria-hidden="true"></a>Not a code fence.</span>
+<span id="cb89-16"><a href="#cb89-16" aria-hidden="true"></a>```</span>
+<span id="cb89-17"><a href="#cb89-17" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb89-18"><a href="#cb89-18" aria-hidden="true"></a></span>
+<span id="cb89-19"><a href="#cb89-19" 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="cb89"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb89-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb90"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb90-1"><a href="#cb90-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 paragraph.</p>
@@ -834,29 +842,29 @@
 <pre><code>A code fence.</code></pre>
 <p>A paragraph. <code>Not a code fence.</code></p>
 </blockquote>
-<h5 id="latex-example-3" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-3"><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="cb91"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb91-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb91-2" data-line-number="2"><span class="bu">\usepackage</span>[fencedCode]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb91-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb91-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb91-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb91-6" data-line-number="6">A paragraph.</a>
-<a class="sourceLine" id="cb91-7" data-line-number="7">```</a>
-<a class="sourceLine" id="cb91-8" data-line-number="8">A code fence.</a>
-<a class="sourceLine" id="cb91-9" data-line-number="9">```</a>
-<a class="sourceLine" id="cb91-10" data-line-number="10"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb91-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb91-12" data-line-number="12"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{blankBeforeCodeFence}</a>
-<a class="sourceLine" id="cb91-13" data-line-number="13">A paragraph.</a>
-<a class="sourceLine" id="cb91-14" data-line-number="14">```</a>
-<a class="sourceLine" id="cb91-15" data-line-number="15">Not a code fence.</a>
-<a class="sourceLine" id="cb91-16" data-line-number="16">```</a>
-<a class="sourceLine" id="cb91-17" data-line-number="17"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb91-18" data-line-number="18"></a>
-<a class="sourceLine" id="cb91-19" data-line-number="19"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb92"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb92-1"><a href="#cb92-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb92-2"><a href="#cb92-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[fencedCode]{<span class="ex">markdown</span>}</span>
+<span id="cb92-3"><a href="#cb92-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb92-4"><a href="#cb92-4" aria-hidden="true"></a></span>
+<span id="cb92-5"><a href="#cb92-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb92-6"><a href="#cb92-6" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb92-7"><a href="#cb92-7" aria-hidden="true"></a>```</span>
+<span id="cb92-8"><a href="#cb92-8" aria-hidden="true"></a>A code fence.</span>
+<span id="cb92-9"><a href="#cb92-9" aria-hidden="true"></a>```</span>
+<span id="cb92-10"><a href="#cb92-10" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb92-11"><a href="#cb92-11" aria-hidden="true"></a></span>
+<span id="cb92-12"><a href="#cb92-12" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{blankBeforeCodeFence}</span>
+<span id="cb92-13"><a href="#cb92-13" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb92-14"><a href="#cb92-14" aria-hidden="true"></a>```</span>
+<span id="cb92-15"><a href="#cb92-15" aria-hidden="true"></a>Not a code fence.</span>
+<span id="cb92-16"><a href="#cb92-16" aria-hidden="true"></a>```</span>
+<span id="cb92-17"><a href="#cb92-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb92-18"><a href="#cb92-18" aria-hidden="true"></a></span>
+<span id="cb92-19"><a href="#cb92-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="cb92"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb92-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb93"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb93-1"><a href="#cb93-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 paragraph.</p>
@@ -863,30 +871,30 @@
 <pre><code>A code fence.</code></pre>
 <p>A paragraph. <code>Not a code fence.</code></p>
 </blockquote>
-<h5 id="context-example-3" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-3">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="cb94"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb94-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb94-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFencedCode{true}</a>
-<a class="sourceLine" id="cb94-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb94-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb94-5" data-line-number="5"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb94-6" data-line-number="6">A paragraph.</a>
-<a class="sourceLine" id="cb94-7" data-line-number="7">```</a>
-<a class="sourceLine" id="cb94-8" data-line-number="8">A code fence.</a>
-<a class="sourceLine" id="cb94-9" data-line-number="9">```</a>
-<a class="sourceLine" id="cb94-10" data-line-number="10"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb94-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb94-12" data-line-number="12"><span class="fu">\def</span>\markdownOptionBlankBeforeCodeFence{true}</a>
-<a class="sourceLine" id="cb94-13" data-line-number="13"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb94-14" data-line-number="14">A paragraph.</a>
-<a class="sourceLine" id="cb94-15" data-line-number="15">```</a>
-<a class="sourceLine" id="cb94-16" data-line-number="16">Not a code fence.</a>
-<a class="sourceLine" id="cb94-17" data-line-number="17">```</a>
-<a class="sourceLine" id="cb94-18" data-line-number="18"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb94-19" data-line-number="19"></a>
-<a class="sourceLine" id="cb94-20" data-line-number="20"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb95"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb95-1"><a href="#cb95-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb95-2"><a href="#cb95-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFencedCode</span>{true}</span>
+<span id="cb95-3"><a href="#cb95-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb95-4"><a href="#cb95-4" aria-hidden="true"></a></span>
+<span id="cb95-5"><a href="#cb95-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb95-6"><a href="#cb95-6" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb95-7"><a href="#cb95-7" aria-hidden="true"></a>```</span>
+<span id="cb95-8"><a href="#cb95-8" aria-hidden="true"></a>A code fence.</span>
+<span id="cb95-9"><a href="#cb95-9" aria-hidden="true"></a>```</span>
+<span id="cb95-10"><a href="#cb95-10" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb95-11"><a href="#cb95-11" aria-hidden="true"></a></span>
+<span id="cb95-12"><a href="#cb95-12" aria-hidden="true"></a><span class="fu">\def\markdownOptionBlankBeforeCodeFence</span>{true}</span>
+<span id="cb95-13"><a href="#cb95-13" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb95-14"><a href="#cb95-14" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb95-15"><a href="#cb95-15" aria-hidden="true"></a>```</span>
+<span id="cb95-16"><a href="#cb95-16" aria-hidden="true"></a>Not a code fence.</span>
+<span id="cb95-17"><a href="#cb95-17" aria-hidden="true"></a>```</span>
+<span id="cb95-18"><a href="#cb95-18" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb95-19"><a href="#cb95-19" aria-hidden="true"></a></span>
+<span id="cb95-20"><a href="#cb95-20" 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="cb95"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb95-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb96"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb96-1"><a href="#cb96-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 paragraph.</p>
@@ -893,7 +901,7 @@
 <pre><code>A code fence.</code></pre>
 <p>A paragraph. <code>Not a code fence.</code></p>
 </blockquote>
-<h4 id="option-blankbeforeheading"><span class="header-section-number">2.2.1.5</span> Option <code>blankBeforeHeading</code></h4>
+<h4 data-number="2.2.1.5" id="option-blankbeforeheading"><span class="header-section-number">2.2.1.5</span> Option <code>blankBeforeHeading</code></h4>
 <dl>
 <dt><code>blankBeforeHeading</code> (default value: <code>false</code>)</dt>
 <dd><dl>
@@ -906,30 +914,30 @@
 </dl>
 </dd>
 </dl>
-<h5 id="lua-module-example-4" class="unnumbered">Lua Module Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-module-example-4">Lua Module 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="cb97"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb97-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb97-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb97-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererHeadingOne#1{{\bf #1}\par}</a>
-<a class="sourceLine" id="cb97-4" data-line-number="4"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb97-5" data-line-number="5">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb97-6" data-line-number="6">  local newline = [[^^J^^J]]</a>
-<a class="sourceLine" id="cb97-7" data-line-number="7">  local convert, input</a>
-<a class="sourceLine" id="cb97-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb97-9" data-line-number="9">  convert = markdown.new()</a>
-<a class="sourceLine" id="cb97-10" data-line-number="10">  input = "A paragraph." .. newline ..</a>
-<a class="sourceLine" id="cb97-11" data-line-number="11">          "A heading."   .. newline ..</a>
-<a class="sourceLine" id="cb97-12" data-line-number="12">          "=========="   .. newline</a>
-<a class="sourceLine" id="cb97-13" data-line-number="13">  tex.sprint(convert(input))</a>
-<a class="sourceLine" id="cb97-14" data-line-number="14"></a>
-<a class="sourceLine" id="cb97-15" data-line-number="15">  convert = markdown.new({blankBeforeHeading = true})</a>
-<a class="sourceLine" id="cb97-16" data-line-number="16">  input = "A paragraph."    .. newline ..</a>
-<a class="sourceLine" id="cb97-17" data-line-number="17">          "Not a heading."  .. newline ..</a>
-<a class="sourceLine" id="cb97-18" data-line-number="18">          "=============="  .. newline</a>
-<a class="sourceLine" id="cb97-19" data-line-number="19">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb97-20" data-line-number="20"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb98"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb98-1"><a href="#cb98-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb98-2"><a href="#cb98-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb98-3"><a href="#cb98-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingOne</span>#1{{<span class="fu">\bf</span> #1}<span class="fu">\par</span>}</span>
+<span id="cb98-4"><a href="#cb98-4" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb98-5"><a href="#cb98-5" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb98-6"><a href="#cb98-6" aria-hidden="true"></a>  local newline = [[^^J^^J]]</span>
+<span id="cb98-7"><a href="#cb98-7" aria-hidden="true"></a>  local convert, input</span>
+<span id="cb98-8"><a href="#cb98-8" aria-hidden="true"></a></span>
+<span id="cb98-9"><a href="#cb98-9" aria-hidden="true"></a>  convert = markdown.new()</span>
+<span id="cb98-10"><a href="#cb98-10" aria-hidden="true"></a>  input = "A paragraph." .. newline ..</span>
+<span id="cb98-11"><a href="#cb98-11" aria-hidden="true"></a>          "A heading."   .. newline ..</span>
+<span id="cb98-12"><a href="#cb98-12" aria-hidden="true"></a>          "=========="   .. newline</span>
+<span id="cb98-13"><a href="#cb98-13" aria-hidden="true"></a>  tex.sprint(convert(input))</span>
+<span id="cb98-14"><a href="#cb98-14" aria-hidden="true"></a></span>
+<span id="cb98-15"><a href="#cb98-15" aria-hidden="true"></a>  convert = markdown.new({blankBeforeHeading = true})</span>
+<span id="cb98-16"><a href="#cb98-16" aria-hidden="true"></a>  input = "A paragraph."    .. newline ..</span>
+<span id="cb98-17"><a href="#cb98-17" aria-hidden="true"></a>          "Not a heading."  .. newline ..</span>
+<span id="cb98-18"><a href="#cb98-18" aria-hidden="true"></a>          "=============="  .. newline</span>
+<span id="cb98-19"><a href="#cb98-19" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb98-20"><a href="#cb98-20" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Then, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb98"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb98-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb99"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb99-1"><a href="#cb99-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 paragraph.</p>
@@ -936,21 +944,21 @@
 <h1 id="a-heading.">A heading.</h1>
 <p>A paragraph. Not a heading. ==============</p>
 </blockquote>
-<h5 id="lua-cli-example-4" class="unnumbered">Lua CLI Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-cli-example-4">Lua CLI 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="cb99"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb99-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb99-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb99-3" data-line-number="3"><span class="fu">\input</span> optionfalse</a>
-<a class="sourceLine" id="cb99-4" data-line-number="4"><span class="fu">\input</span> optiontrue</a>
-<a class="sourceLine" id="cb99-5" data-line-number="5"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb100"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb100-1"><a href="#cb100-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb100-2"><a href="#cb100-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb100-3"><a href="#cb100-3" aria-hidden="true"></a><span class="fu">\input</span> optionfalse</span>
+<span id="cb100-4"><a href="#cb100-4" aria-hidden="true"></a><span class="fu">\input</span> optiontrue</span>
+<span id="cb100-5"><a href="#cb100-5" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Using a text editor, create a text document named <code>content.md</code> with the following content:</p>
-<div class="sourceCode" id="cb100"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb100-1" data-line-number="1">A paragraph.</a>
-<a class="sourceLine" id="cb100-2" data-line-number="2">A heading?</a>
-<a class="sourceLine" id="cb100-3" data-line-number="3">==========</a></code></pre></div>
+<div class="sourceCode" id="cb101"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb101-1"><a href="#cb101-1" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb101-2"><a href="#cb101-2" aria-hidden="true"></a>A heading?</span>
+<span id="cb101-3"><a href="#cb101-3" aria-hidden="true"></a><span class="fu">==========</span></span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb101"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb101-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</a>
-<a class="sourceLine" id="cb101-2" data-line-number="2"><span class="ex">texlua</span> ⟨CLI pathname⟩ blankBeforeHeading=true  -- content.md optiontrue.tex</a>
-<a class="sourceLine" id="cb101-3" data-line-number="3"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb102"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb102-1"><a href="#cb102-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</span>
+<span id="cb102-2"><a href="#cb102-2" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ blankBeforeHeading=true  -- content.md optiontrue.tex</span>
+<span id="cb102-3"><a href="#cb102-3" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
 <blockquote>
@@ -958,26 +966,26 @@
 <h1 id="a-heading">A heading?</h1>
 <p>A paragraph. A heading? ==========</p>
 </blockquote>
-<h5 id="plain-tex-example-4" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-4">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="cb102"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb102-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb102-2" data-line-number="2"></a>
-<a class="sourceLine" id="cb102-3" data-line-number="3"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb102-4" data-line-number="4">A paragraph.</a>
-<a class="sourceLine" id="cb102-5" data-line-number="5">A heading.</a>
-<a class="sourceLine" id="cb102-6" data-line-number="6">==========</a>
-<a class="sourceLine" id="cb102-7" data-line-number="7"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb102-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb102-9" data-line-number="9"><span class="fu">\def</span>\markdownOptionBlankBeforeHeading{true}</a>
-<a class="sourceLine" id="cb102-10" data-line-number="10"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb102-11" data-line-number="11">A paragraph.</a>
-<a class="sourceLine" id="cb102-12" data-line-number="12">Not a heading.</a>
-<a class="sourceLine" id="cb102-13" data-line-number="13">==============</a>
-<a class="sourceLine" id="cb102-14" data-line-number="14"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb102-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb102-16" data-line-number="16"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb103"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb103-1"><a href="#cb103-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb103-2"><a href="#cb103-2" aria-hidden="true"></a></span>
+<span id="cb103-3"><a href="#cb103-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb103-4"><a href="#cb103-4" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb103-5"><a href="#cb103-5" aria-hidden="true"></a>A heading.</span>
+<span id="cb103-6"><a href="#cb103-6" aria-hidden="true"></a>==========</span>
+<span id="cb103-7"><a href="#cb103-7" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb103-8"><a href="#cb103-8" aria-hidden="true"></a></span>
+<span id="cb103-9"><a href="#cb103-9" aria-hidden="true"></a><span class="fu">\def\markdownOptionBlankBeforeHeading</span>{true}</span>
+<span id="cb103-10"><a href="#cb103-10" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb103-11"><a href="#cb103-11" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb103-12"><a href="#cb103-12" aria-hidden="true"></a>Not a heading.</span>
+<span id="cb103-13"><a href="#cb103-13" aria-hidden="true"></a>==============</span>
+<span id="cb103-14"><a href="#cb103-14" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb103-15"><a href="#cb103-15" aria-hidden="true"></a></span>
+<span id="cb103-16"><a href="#cb103-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="cb103"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb103-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb104"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb104-1"><a href="#cb104-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 paragraph.</p>
@@ -984,27 +992,27 @@
 <h1 id="a-heading.-1">A heading.</h1>
 <p>A paragraph. Not a heading. ==============</p>
 </blockquote>
-<h5 id="latex-example-4" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-4"><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="cb104"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb104-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb104-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb104-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb104-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb104-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb104-6" data-line-number="6">A paragraph.</a>
-<a class="sourceLine" id="cb104-7" data-line-number="7">A heading.</a>
-<a class="sourceLine" id="cb104-8" data-line-number="8">==========</a>
-<a class="sourceLine" id="cb104-9" data-line-number="9"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb104-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb104-11" data-line-number="11"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{blankBeforeHeading}</a>
-<a class="sourceLine" id="cb104-12" data-line-number="12">A paragraph.</a>
-<a class="sourceLine" id="cb104-13" data-line-number="13">Not a heading.</a>
-<a class="sourceLine" id="cb104-14" data-line-number="14">==============</a>
-<a class="sourceLine" id="cb104-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb104-16" data-line-number="16"></a>
-<a class="sourceLine" id="cb104-17" data-line-number="17"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb105"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb105-1"><a href="#cb105-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb105-2"><a href="#cb105-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb105-3"><a href="#cb105-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb105-4"><a href="#cb105-4" aria-hidden="true"></a></span>
+<span id="cb105-5"><a href="#cb105-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb105-6"><a href="#cb105-6" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb105-7"><a href="#cb105-7" aria-hidden="true"></a>A heading.</span>
+<span id="cb105-8"><a href="#cb105-8" aria-hidden="true"></a>==========</span>
+<span id="cb105-9"><a href="#cb105-9" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb105-10"><a href="#cb105-10" aria-hidden="true"></a></span>
+<span id="cb105-11"><a href="#cb105-11" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{blankBeforeHeading}</span>
+<span id="cb105-12"><a href="#cb105-12" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb105-13"><a href="#cb105-13" aria-hidden="true"></a>Not a heading.</span>
+<span id="cb105-14"><a href="#cb105-14" aria-hidden="true"></a>==============</span>
+<span id="cb105-15"><a href="#cb105-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb105-16"><a href="#cb105-16" aria-hidden="true"></a></span>
+<span id="cb105-17"><a href="#cb105-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="cb105"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb105-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb106"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb106-1"><a href="#cb106-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 paragraph.</p>
@@ -1011,27 +1019,27 @@
 <h1 id="a-heading.-2">A heading.</h1>
 <p>A paragraph. Not a heading. ==============</p>
 </blockquote>
-<h5 id="context-example-4" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-4">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="cb106"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb106-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb106-2" data-line-number="2"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb106-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb106-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb106-5" data-line-number="5">A paragraph.</a>
-<a class="sourceLine" id="cb106-6" data-line-number="6">A heading.</a>
-<a class="sourceLine" id="cb106-7" data-line-number="7">==========</a>
-<a class="sourceLine" id="cb106-8" data-line-number="8"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb106-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb106-10" data-line-number="10"><span class="fu">\def</span>\markdownOptionBlankBeforeHeading{true}</a>
-<a class="sourceLine" id="cb106-11" data-line-number="11"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb106-12" data-line-number="12">A paragraph.</a>
-<a class="sourceLine" id="cb106-13" data-line-number="13">Not a heading.</a>
-<a class="sourceLine" id="cb106-14" data-line-number="14">==============</a>
-<a class="sourceLine" id="cb106-15" data-line-number="15"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb106-16" data-line-number="16"></a>
-<a class="sourceLine" id="cb106-17" data-line-number="17"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb107"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb107-1"><a href="#cb107-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb107-2"><a href="#cb107-2" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb107-3"><a href="#cb107-3" aria-hidden="true"></a></span>
+<span id="cb107-4"><a href="#cb107-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb107-5"><a href="#cb107-5" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb107-6"><a href="#cb107-6" aria-hidden="true"></a>A heading.</span>
+<span id="cb107-7"><a href="#cb107-7" aria-hidden="true"></a>==========</span>
+<span id="cb107-8"><a href="#cb107-8" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb107-9"><a href="#cb107-9" aria-hidden="true"></a></span>
+<span id="cb107-10"><a href="#cb107-10" aria-hidden="true"></a><span class="fu">\def\markdownOptionBlankBeforeHeading</span>{true}</span>
+<span id="cb107-11"><a href="#cb107-11" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb107-12"><a href="#cb107-12" aria-hidden="true"></a>A paragraph.</span>
+<span id="cb107-13"><a href="#cb107-13" aria-hidden="true"></a>Not a heading.</span>
+<span id="cb107-14"><a href="#cb107-14" aria-hidden="true"></a>==============</span>
+<span id="cb107-15"><a href="#cb107-15" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb107-16"><a href="#cb107-16" aria-hidden="true"></a></span>
+<span id="cb107-17"><a href="#cb107-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="cb107"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb107-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb108"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb108-1"><a href="#cb108-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 paragraph.</p>
@@ -1038,7 +1046,7 @@
 <h1 id="a-heading.-3">A heading.</h1>
 <p>A paragraph. Not a heading. ==============</p>
 </blockquote>
-<h4 id="option-breakableblockquotes"><span class="header-section-number">2.2.1.6</span> Option <code>breakableBlockquotes</code></h4>
+<h4 data-number="2.2.1.6" id="option-breakableblockquotes"><span class="header-section-number">2.2.1.6</span> Option <code>breakableBlockquotes</code></h4>
 <dl>
 <dt><code>breakableBlockquotes</code> (default value: <code>false</code>)</dt>
 <dd><dl>
@@ -1051,28 +1059,28 @@
 </dl>
 </dd>
 </dl>
-<h5 id="lua-module-example-5" class="unnumbered">Lua Module Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-module-example-5">Lua Module 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="cb108"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb108-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb108-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb108-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererHeadingOne#1{{\bf #1}\par}</a>
-<a class="sourceLine" id="cb108-4" data-line-number="4"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb108-5" data-line-number="5">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb108-6" data-line-number="6">  local newline = [[^^J^^J]]</a>
-<a class="sourceLine" id="cb108-7" data-line-number="7">  local convert, input</a>
-<a class="sourceLine" id="cb108-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb108-9" data-line-number="9">  convert = markdown.new()</a>
-<a class="sourceLine" id="cb108-10" data-line-number="10">  input = "> A single"     .. newline .. newline ..</a>
-<a class="sourceLine" id="cb108-11" data-line-number="11">          "> block quote." .. newline</a>
-<a class="sourceLine" id="cb108-12" data-line-number="12">  tex.sprint(convert(input))</a>
-<a class="sourceLine" id="cb108-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb108-14" data-line-number="14">  convert = markdown.new({breakableBlockquotes = true})</a>
-<a class="sourceLine" id="cb108-15" data-line-number="15">  input = "> A block quote."       .. newline .. newline ..</a>
-<a class="sourceLine" id="cb108-16" data-line-number="16">          "> Another block quote." .. newline</a>
-<a class="sourceLine" id="cb108-17" data-line-number="17">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb108-18" data-line-number="18"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb109"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb109-1"><a href="#cb109-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb109-2"><a href="#cb109-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb109-3"><a href="#cb109-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingOne</span>#1{{<span class="fu">\bf</span> #1}<span class="fu">\par</span>}</span>
+<span id="cb109-4"><a href="#cb109-4" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb109-5"><a href="#cb109-5" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb109-6"><a href="#cb109-6" aria-hidden="true"></a>  local newline = [[^^J^^J]]</span>
+<span id="cb109-7"><a href="#cb109-7" aria-hidden="true"></a>  local convert, input</span>
+<span id="cb109-8"><a href="#cb109-8" aria-hidden="true"></a></span>
+<span id="cb109-9"><a href="#cb109-9" aria-hidden="true"></a>  convert = markdown.new()</span>
+<span id="cb109-10"><a href="#cb109-10" aria-hidden="true"></a>  input = "> A single"     .. newline .. newline ..</span>
+<span id="cb109-11"><a href="#cb109-11" aria-hidden="true"></a>          "> block quote." .. newline</span>
+<span id="cb109-12"><a href="#cb109-12" aria-hidden="true"></a>  tex.sprint(convert(input))</span>
+<span id="cb109-13"><a href="#cb109-13" aria-hidden="true"></a></span>
+<span id="cb109-14"><a href="#cb109-14" aria-hidden="true"></a>  convert = markdown.new({breakableBlockquotes = true})</span>
+<span id="cb109-15"><a href="#cb109-15" aria-hidden="true"></a>  input = "> A block quote."       .. newline .. newline ..</span>
+<span id="cb109-16"><a href="#cb109-16" aria-hidden="true"></a>          "> Another block quote." .. newline</span>
+<span id="cb109-17"><a href="#cb109-17" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb109-18"><a href="#cb109-18" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Then, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb109"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb109-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb110"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb110-1"><a href="#cb110-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>
 <blockquote>
@@ -1085,21 +1093,21 @@
 <p>Another block quote.</p>
 </blockquote>
 </blockquote>
-<h5 id="lua-cli-example-5" class="unnumbered">Lua CLI Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-cli-example-5">Lua CLI 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="cb110"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb110-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb110-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb110-3" data-line-number="3"><span class="fu">\input</span> optionfalse</a>
-<a class="sourceLine" id="cb110-4" data-line-number="4"><span class="fu">\input</span> optiontrue</a>
-<a class="sourceLine" id="cb110-5" data-line-number="5"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb111"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb111-1"><a href="#cb111-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb111-2"><a href="#cb111-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb111-3"><a href="#cb111-3" aria-hidden="true"></a><span class="fu">\input</span> optionfalse</span>
+<span id="cb111-4"><a href="#cb111-4" aria-hidden="true"></a><span class="fu">\input</span> optiontrue</span>
+<span id="cb111-5"><a href="#cb111-5" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Using a text editor, create a text document named <code>content.md</code> with the following content:</p>
-<div class="sourceCode" id="cb111"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb111-1" data-line-number="1">><span class="dt"> A single block quote</span></a>
-<a class="sourceLine" id="cb111-2" data-line-number="2"></a>
-<a class="sourceLine" id="cb111-3" data-line-number="3">><span class="dt"> or two block quotes?</span></a></code></pre></div>
+<div class="sourceCode" id="cb112"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb112-1"><a href="#cb112-1" aria-hidden="true"></a><span class="at">> A single block quote</span></span>
+<span id="cb112-2"><a href="#cb112-2" aria-hidden="true"></a></span>
+<span id="cb112-3"><a href="#cb112-3" aria-hidden="true"></a><span class="at">> or two block quotes?</span></span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb112"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb112-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</a>
-<a class="sourceLine" id="cb112-2" data-line-number="2"><span class="ex">texlua</span> ⟨CLI pathname⟩ breakableBlockquotes=true  -- content.md optiontrue.tex</a>
-<a class="sourceLine" id="cb112-3" data-line-number="3"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb113"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb113-1"><a href="#cb113-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</span>
+<span id="cb113-2"><a href="#cb113-2" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ breakableBlockquotes=true  -- content.md optiontrue.tex</span>
+<span id="cb113-3"><a href="#cb113-3" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
 <blockquote>
@@ -1113,26 +1121,26 @@
 <p>or two block quotes?</p>
 </blockquote>
 </blockquote>
-<h5 id="plain-tex-example-5" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-5">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="cb113"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb113-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb113-2" data-line-number="2"></a>
-<a class="sourceLine" id="cb113-3" data-line-number="3"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb113-4" data-line-number="4">> A single</a>
-<a class="sourceLine" id="cb113-5" data-line-number="5"></a>
-<a class="sourceLine" id="cb113-6" data-line-number="6">> block quote.</a>
-<a class="sourceLine" id="cb113-7" data-line-number="7"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb113-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb113-9" data-line-number="9"><span class="fu">\def</span>\markdownOptionBreakableBlockquotes{true}</a>
-<a class="sourceLine" id="cb113-10" data-line-number="10"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb113-11" data-line-number="11">> A block quote.</a>
-<a class="sourceLine" id="cb113-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb113-13" data-line-number="13">> Another block quote.</a>
-<a class="sourceLine" id="cb113-14" data-line-number="14"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb113-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb113-16" data-line-number="16"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb114"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb114-1"><a href="#cb114-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb114-2"><a href="#cb114-2" aria-hidden="true"></a></span>
+<span id="cb114-3"><a href="#cb114-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb114-4"><a href="#cb114-4" aria-hidden="true"></a>> A single</span>
+<span id="cb114-5"><a href="#cb114-5" aria-hidden="true"></a></span>
+<span id="cb114-6"><a href="#cb114-6" aria-hidden="true"></a>> block quote.</span>
+<span id="cb114-7"><a href="#cb114-7" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb114-8"><a href="#cb114-8" aria-hidden="true"></a></span>
+<span id="cb114-9"><a href="#cb114-9" aria-hidden="true"></a><span class="fu">\def\markdownOptionBreakableBlockquotes</span>{true}</span>
+<span id="cb114-10"><a href="#cb114-10" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb114-11"><a href="#cb114-11" aria-hidden="true"></a>> A block quote.</span>
+<span id="cb114-12"><a href="#cb114-12" aria-hidden="true"></a></span>
+<span id="cb114-13"><a href="#cb114-13" aria-hidden="true"></a>> Another block quote.</span>
+<span id="cb114-14"><a href="#cb114-14" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb114-15"><a href="#cb114-15" aria-hidden="true"></a></span>
+<span id="cb114-16"><a href="#cb114-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="cb114"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb114-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb115"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb115-1"><a href="#cb115-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>
 <blockquote>
@@ -1145,27 +1153,27 @@
 <p>Another block quote.</p>
 </blockquote>
 </blockquote>
-<h5 id="latex-example-5" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-5"><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="cb115"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb115-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb115-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb115-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb115-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb115-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb115-6" data-line-number="6">> A single</a>
-<a class="sourceLine" id="cb115-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb115-8" data-line-number="8">> block quote.</a>
-<a class="sourceLine" id="cb115-9" data-line-number="9"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb115-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb115-11" data-line-number="11"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{breakableBlockquotes}</a>
-<a class="sourceLine" id="cb115-12" data-line-number="12">> A block quote.</a>
-<a class="sourceLine" id="cb115-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb115-14" data-line-number="14">> Another block quote.</a>
-<a class="sourceLine" id="cb115-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb115-16" data-line-number="16"></a>
-<a class="sourceLine" id="cb115-17" data-line-number="17"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb116"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb116-1"><a href="#cb116-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb116-2"><a href="#cb116-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb116-3"><a href="#cb116-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb116-4"><a href="#cb116-4" aria-hidden="true"></a></span>
+<span id="cb116-5"><a href="#cb116-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb116-6"><a href="#cb116-6" aria-hidden="true"></a>> A single</span>
+<span id="cb116-7"><a href="#cb116-7" aria-hidden="true"></a></span>
+<span id="cb116-8"><a href="#cb116-8" aria-hidden="true"></a>> block quote.</span>
+<span id="cb116-9"><a href="#cb116-9" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb116-10"><a href="#cb116-10" aria-hidden="true"></a></span>
+<span id="cb116-11"><a href="#cb116-11" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{breakableBlockquotes}</span>
+<span id="cb116-12"><a href="#cb116-12" aria-hidden="true"></a>> A block quote.</span>
+<span id="cb116-13"><a href="#cb116-13" aria-hidden="true"></a></span>
+<span id="cb116-14"><a href="#cb116-14" aria-hidden="true"></a>> Another block quote.</span>
+<span id="cb116-15"><a href="#cb116-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb116-16"><a href="#cb116-16" aria-hidden="true"></a></span>
+<span id="cb116-17"><a href="#cb116-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="cb116"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb116-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb117"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb117-1"><a href="#cb117-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>
 <blockquote>
@@ -1178,27 +1186,27 @@
 <p>Another block quote.</p>
 </blockquote>
 </blockquote>
-<h5 id="context-example-5" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-5">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="cb117"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb117-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb117-2" data-line-number="2"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb117-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb117-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb117-5" data-line-number="5">> A single</a>
-<a class="sourceLine" id="cb117-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb117-7" data-line-number="7">> block quote.</a>
-<a class="sourceLine" id="cb117-8" data-line-number="8"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb117-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb117-10" data-line-number="10"><span class="fu">\def</span>\markdownOptionBreakableBlockquotes{true}</a>
-<a class="sourceLine" id="cb117-11" data-line-number="11"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb117-12" data-line-number="12">> A block quote.</a>
-<a class="sourceLine" id="cb117-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb117-14" data-line-number="14">> Another block quote.</a>
-<a class="sourceLine" id="cb117-15" data-line-number="15"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb117-16" data-line-number="16"></a>
-<a class="sourceLine" id="cb117-17" data-line-number="17"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb118"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb118-1"><a href="#cb118-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb118-2"><a href="#cb118-2" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb118-3"><a href="#cb118-3" aria-hidden="true"></a></span>
+<span id="cb118-4"><a href="#cb118-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb118-5"><a href="#cb118-5" aria-hidden="true"></a>> A single</span>
+<span id="cb118-6"><a href="#cb118-6" aria-hidden="true"></a></span>
+<span id="cb118-7"><a href="#cb118-7" aria-hidden="true"></a>> block quote.</span>
+<span id="cb118-8"><a href="#cb118-8" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb118-9"><a href="#cb118-9" aria-hidden="true"></a></span>
+<span id="cb118-10"><a href="#cb118-10" aria-hidden="true"></a><span class="fu">\def\markdownOptionBreakableBlockquotes</span>{true}</span>
+<span id="cb118-11"><a href="#cb118-11" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb118-12"><a href="#cb118-12" aria-hidden="true"></a>> A block quote.</span>
+<span id="cb118-13"><a href="#cb118-13" aria-hidden="true"></a></span>
+<span id="cb118-14"><a href="#cb118-14" aria-hidden="true"></a>> Another block quote.</span>
+<span id="cb118-15"><a href="#cb118-15" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb118-16"><a href="#cb118-16" aria-hidden="true"></a></span>
+<span id="cb118-17"><a href="#cb118-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="cb118"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb118-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb119"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb119-1"><a href="#cb119-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>
 <blockquote>
@@ -1211,7 +1219,7 @@
 <p>Another block quote.</p>
 </blockquote>
 </blockquote>
-<h4 id="option-citationnbsps"><span class="header-section-number">2.2.1.7</span> Option <code>citationNbsps</code></h4>
+<h4 data-number="2.2.1.7" id="option-citationnbsps"><span class="header-section-number">2.2.1.7</span> Option <code>citationNbsps</code></h4>
 <dl>
 <dt><code>citationNbsps</code> (default value: <code>true</code>)</dt>
 <dd><dl>
@@ -1224,35 +1232,35 @@
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-6" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-6"><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="cb119"><pre class="sourceCode bib"><code class="sourceCode bibtex"><a class="sourceLine" id="cb119-1" data-line-number="1"><span class="va">@book</span>{<span class="ot">knuth:tex</span>,</a>
-<a class="sourceLine" id="cb119-2" data-line-number="2">  <span class="dt">author</span>    = "<span class="st">Knuth, Donald Ervin</span>",</a>
-<a class="sourceLine" id="cb119-3" data-line-number="3">  <span class="dt">title</span>     = "<span class="st">The </span><span class="ch">\TeX</span><span class="st"> book, volume A of Computers and typesetting</span>",</a>
-<a class="sourceLine" id="cb119-4" data-line-number="4">  <span class="dt">publisher</span> = "<span class="st">Addison-Wesley</span>",</a>
-<a class="sourceLine" id="cb119-5" data-line-number="5">  <span class="dt">year</span>      = "<span class="st">1984</span>"</a>
-<a class="sourceLine" id="cb119-6" data-line-number="6">}</a></code></pre></div>
+<div class="sourceCode" id="cb120"><pre class="sourceCode bib"><code class="sourceCode bibtex"><span id="cb120-1"><a href="#cb120-1" aria-hidden="true"></a><span class="va">@book</span>{<span class="ot">knuth:tex</span>,</span>
+<span id="cb120-2"><a href="#cb120-2" aria-hidden="true"></a>  <span class="dt">author</span>    = "<span class="st">Knuth, Donald Ervin</span>",</span>
+<span id="cb120-3"><a href="#cb120-3" aria-hidden="true"></a>  <span class="dt">title</span>     = "<span class="st">The </span><span class="ch">\TeX</span><span class="st"> book, volume A of Computers and typesetting</span>",</span>
+<span id="cb120-4"><a href="#cb120-4" aria-hidden="true"></a>  <span class="dt">publisher</span> = "<span class="st">Addison-Wesley</span>",</span>
+<span id="cb120-5"><a href="#cb120-5" aria-hidden="true"></a>  <span class="dt">year</span>      = "<span class="st">1984</span>"</span>
+<span id="cb120-6"><a href="#cb120-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="cb120"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb120-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb120-2" data-line-number="2"><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb120-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb120-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb120-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb120-6" data-line-number="6">The TeXbook [@knuth:tex, p. 123 and 130] is good.</a>
-<a class="sourceLine" id="cb120-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb120-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb120-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{citationNbsps = false}</a>
-<a class="sourceLine" id="cb120-10" data-line-number="10">The TeXbook [@knuth:tex, p. 123 and 130] is good.</a>
-<a class="sourceLine" id="cb120-11" data-line-number="11"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb120-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb120-13" data-line-number="13"><span class="bu">\bibliographystyle</span>{<span class="ex">plain</span>}</a>
-<a class="sourceLine" id="cb120-14" data-line-number="14"><span class="bu">\bibliography</span>{<span class="ex">document.bib</span>}</a>
-<a class="sourceLine" id="cb120-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb121"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb121-1"><a href="#cb121-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb121-2"><a href="#cb121-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</span>
+<span id="cb121-3"><a href="#cb121-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb121-4"><a href="#cb121-4" aria-hidden="true"></a></span>
+<span id="cb121-5"><a href="#cb121-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb121-6"><a href="#cb121-6" aria-hidden="true"></a>The TeXbook [@knuth:tex, p. 123 and 130] is good.</span>
+<span id="cb121-7"><a href="#cb121-7" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb121-8"><a href="#cb121-8" aria-hidden="true"></a></span>
+<span id="cb121-9"><a href="#cb121-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{citationNbsps = false}</span>
+<span id="cb121-10"><a href="#cb121-10" aria-hidden="true"></a>The TeXbook [@knuth:tex, p. 123 and 130] is good.</span>
+<span id="cb121-11"><a href="#cb121-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb121-12"><a href="#cb121-12" aria-hidden="true"></a></span>
+<span id="cb121-13"><a href="#cb121-13" aria-hidden="true"></a><span class="bu">\bibliographystyle</span>{<span class="ex">plain</span>}</span>
+<span id="cb121-14"><a href="#cb121-14" aria-hidden="true"></a><span class="bu">\bibliography</span>{<span class="ex">document.bib</span>}</span>
+<span id="cb121-15"><a href="#cb121-15" 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="cb121"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb121-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a>
-<a class="sourceLine" id="cb121-2" data-line-number="2"><span class="ex">bibtex</span> document.aux</a>
-<a class="sourceLine" id="cb121-3" data-line-number="3"><span class="ex">lualatex</span> document.tex</a>
-<a class="sourceLine" id="cb121-4" data-line-number="4"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb122"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb122-1"><a href="#cb122-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span>
+<span id="cb122-2"><a href="#cb122-2" aria-hidden="true"></a><span class="ex">bibtex</span> document.aux</span>
+<span id="cb122-3"><a href="#cb122-3" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span>
+<span id="cb122-4"><a href="#cb122-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, where the middot (<code>·</code>) denotes a non-breaking space:</p>
 <blockquote>
 <p>The TeXbook [1, p.·123·and·130] is good.</p>
@@ -1260,25 +1268,25 @@
 <h3 id="references">References</h3>
 <p>[1] Donald·Ervin Knuth. <em>The TeXbook, volume A of Computers and typesetting.</em> Addison-Wesley, 1984.</p>
 </blockquote>
-<h4 id="option-citations"><span class="header-section-number">2.2.1.8</span> Option <code>citations</code></h4>
+<h4 data-number="2.2.1.8" id="option-citations"><span class="header-section-number">2.2.1.8</span> Option <code>citations</code></h4>
 <dl>
 <dt><code>citations</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Enable the pandoc citation syntax extension:</p>
-<div class="sourceCode" id="cb122"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb122-1" data-line-number="1">Here is a simple parenthetical citation [@doe99] and here</a>
-<a class="sourceLine" id="cb122-2" data-line-number="2">is a string of several [see @doe99, pp. 33-35; also</a>
-<a class="sourceLine" id="cb122-3" data-line-number="3">@smith04, chap. 1].</a>
-<a class="sourceLine" id="cb122-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb122-5" data-line-number="5">A parenthetical citation can have a [prenote @doe99] and</a>
-<a class="sourceLine" id="cb122-6" data-line-number="6">a [@smith04 postnote]. The name of the author can be</a>
-<a class="sourceLine" id="cb122-7" data-line-number="7">suppressed by inserting a dash before the name of an</a>
-<a class="sourceLine" id="cb122-8" data-line-number="8">author as follows [- at smith04].</a>
-<a class="sourceLine" id="cb122-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb122-10" data-line-number="10">Here is a simple text citation @doe99 and here is</a>
-<a class="sourceLine" id="cb122-11" data-line-number="11">a string of several @doe99 [pp. 33-35; also @smith04,</a>
-<a class="sourceLine" id="cb122-12" data-line-number="12">chap. 1]. Here is one with the name of the author</a>
-<a class="sourceLine" id="cb122-13" data-line-number="13">suppressed - at doe99.</a></code></pre></div>
+<div class="sourceCode" id="cb123"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb123-1"><a href="#cb123-1" aria-hidden="true"></a>Here is a simple parenthetical citation <span class="co">[</span><span class="ot">@doe99</span><span class="co">]</span> and here</span>
+<span id="cb123-2"><a href="#cb123-2" aria-hidden="true"></a>is a string of several [see @doe99, pp. 33-35; also</span>
+<span id="cb123-3"><a href="#cb123-3" aria-hidden="true"></a>@smith04, chap. 1].</span>
+<span id="cb123-4"><a href="#cb123-4" aria-hidden="true"></a></span>
+<span id="cb123-5"><a href="#cb123-5" aria-hidden="true"></a>A parenthetical citation can have a <span class="co">[</span><span class="ot">prenote @doe99</span><span class="co">]</span> and</span>
+<span id="cb123-6"><a href="#cb123-6" aria-hidden="true"></a>a <span class="co">[</span><span class="ot">@smith04 postnote</span><span class="co">]</span>. The name of the author can be</span>
+<span id="cb123-7"><a href="#cb123-7" aria-hidden="true"></a>suppressed by inserting a dash before the name of an</span>
+<span id="cb123-8"><a href="#cb123-8" aria-hidden="true"></a>author as follows <span class="co">[</span><span class="ot">- at smith04</span><span class="co">]</span>.</span>
+<span id="cb123-9"><a href="#cb123-9" aria-hidden="true"></a></span>
+<span id="cb123-10"><a href="#cb123-10" aria-hidden="true"></a>Here is a simple text citation @doe99 and here is</span>
+<span id="cb123-11"><a href="#cb123-11" aria-hidden="true"></a>a string of several @doe99 [pp. 33-35; also @smith04,</span>
+<span id="cb123-12"><a href="#cb123-12" aria-hidden="true"></a>chap. 1]. Here is one with the name of the author</span>
+<span id="cb123-13"><a href="#cb123-13" aria-hidden="true"></a>suppressed - at doe99.</span></code></pre></div>
 </dd>
 </dl>
 </dd>
@@ -1289,32 +1297,32 @@
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-7" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-7"><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="cb123"><pre class="sourceCode bib"><code class="sourceCode bibtex"><a class="sourceLine" id="cb123-1" data-line-number="1"><span class="va">@book</span>{<span class="ot">knuth:tex</span>,</a>
-<a class="sourceLine" id="cb123-2" data-line-number="2">  <span class="dt">author</span>    = "<span class="st">Knuth, Donald Ervin</span>",</a>
-<a class="sourceLine" id="cb123-3" data-line-number="3">  <span class="dt">title</span>     = "<span class="st">The </span><span class="ch">\TeX</span><span class="st"> book, volume A of Computers and typesetting</span>",</a>
-<a class="sourceLine" id="cb123-4" data-line-number="4">  <span class="dt">publisher</span> = "<span class="st">Addison-Wesley</span>",</a>
-<a class="sourceLine" id="cb123-5" data-line-number="5">  <span class="dt">year</span>      = "<span class="st">1984</span>"</a>
-<a class="sourceLine" id="cb123-6" data-line-number="6">}</a></code></pre></div>
+<div class="sourceCode" id="cb124"><pre class="sourceCode bib"><code class="sourceCode bibtex"><span id="cb124-1"><a href="#cb124-1" aria-hidden="true"></a><span class="va">@book</span>{<span class="ot">knuth:tex</span>,</span>
+<span id="cb124-2"><a href="#cb124-2" aria-hidden="true"></a>  <span class="dt">author</span>    = "<span class="st">Knuth, Donald Ervin</span>",</span>
+<span id="cb124-3"><a href="#cb124-3" aria-hidden="true"></a>  <span class="dt">title</span>     = "<span class="st">The </span><span class="ch">\TeX</span><span class="st"> book, volume A of Computers and typesetting</span>",</span>
+<span id="cb124-4"><a href="#cb124-4" aria-hidden="true"></a>  <span class="dt">publisher</span> = "<span class="st">Addison-Wesley</span>",</span>
+<span id="cb124-5"><a href="#cb124-5" aria-hidden="true"></a>  <span class="dt">year</span>      = "<span class="st">1984</span>"</span>
+<span id="cb124-6"><a href="#cb124-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="cb124"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb124-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb124-2" data-line-number="2"><span class="bu">\usepackage</span>[backend=biber]{<span class="ex">biblatex</span>}</a>
-<a class="sourceLine" id="cb124-3" data-line-number="3"><span class="fu">\addbibresource</span>{document.bib}</a>
-<a class="sourceLine" id="cb124-4" data-line-number="4"><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb124-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb124-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb124-7" data-line-number="7"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb124-8" data-line-number="8">The TeXbook [@knuth:tex, p. 123 and 130] was written by @knuth:tex.</a>
-<a class="sourceLine" id="cb124-9" data-line-number="9"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb124-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb124-11" data-line-number="11"><span class="fu">\printbibliography</span></a>
-<a class="sourceLine" id="cb124-12" data-line-number="12"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb125"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb125-1"><a href="#cb125-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb125-2"><a href="#cb125-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[backend=biber]{<span class="ex">biblatex</span>}</span>
+<span id="cb125-3"><a href="#cb125-3" aria-hidden="true"></a><span class="fu">\addbibresource</span>{document.bib}</span>
+<span id="cb125-4"><a href="#cb125-4" aria-hidden="true"></a><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</span>
+<span id="cb125-5"><a href="#cb125-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb125-6"><a href="#cb125-6" aria-hidden="true"></a></span>
+<span id="cb125-7"><a href="#cb125-7" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb125-8"><a href="#cb125-8" aria-hidden="true"></a>The TeXbook [@knuth:tex, p. 123 and 130] was written by @knuth:tex.</span>
+<span id="cb125-9"><a href="#cb125-9" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb125-10"><a href="#cb125-10" aria-hidden="true"></a></span>
+<span id="cb125-11"><a href="#cb125-11" aria-hidden="true"></a><span class="fu">\printbibliography</span></span>
+<span id="cb125-12"><a href="#cb125-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
 <p>Next, invoke LuaTeX and Biber from the terminal:</p>
-<div class="sourceCode" id="cb125"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb125-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a>
-<a class="sourceLine" id="cb125-2" data-line-number="2"><span class="ex">biber</span> document.bcf</a>
-<a class="sourceLine" id="cb125-3" data-line-number="3"><span class="ex">lualatex</span> document.tex</a>
-<a class="sourceLine" id="cb125-4" data-line-number="4"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb126"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb126-1"><a href="#cb126-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span>
+<span id="cb126-2"><a href="#cb126-2" aria-hidden="true"></a><span class="ex">biber</span> document.bcf</span>
+<span id="cb126-3"><a href="#cb126-3" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span>
+<span id="cb126-4"><a href="#cb126-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] was written by Knuth [1].</p>
@@ -1321,14 +1329,14 @@
 <h3 id="references-1">References</h3>
 <p>[1] Donald Ervin Knuth. <em>The <span class="tex">T<sub>e</sub>X</span>book, volume A of Computers and typesetting.</em> Addison-Wesley, 1984.</p>
 </blockquote>
-<h4 id="option-codespans"><span class="header-section-number">2.2.1.9</span> Option <code>codeSpans</code></h4>
+<h4 data-number="2.2.1.9" id="option-codespans"><span class="header-section-number">2.2.1.9</span> Option <code>codeSpans</code></h4>
 <dl>
 <dt><code>codeSpans</code> (default value: <code>true</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Enable the code span syntax:</p>
-<div class="sourceCode" id="cb126"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb126-1" data-line-number="1">Use the <span class="bn">`printf()`</span> function.</a>
-<a class="sourceLine" id="cb126-2" data-line-number="2">`<span class="bn">`There is a literal backtick (`</span>) here.``</a></code></pre></div>
+<div class="sourceCode" id="cb127"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb127-1"><a href="#cb127-1" aria-hidden="true"></a>Use the <span class="in">`printf()`</span> function.</span>
+<span id="cb127-2"><a href="#cb127-2" aria-hidden="true"></a><span class="in">``There is a literal backtick (`) here.``</span></span></code></pre></div>
 </dd>
 </dl>
 </dd>
@@ -1340,47 +1348,47 @@
 </dl>
 </dd>
 </dl>
-<h5 id="lua-module-example-6" class="unnumbered">Lua Module Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-module-example-6">Lua Module 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="cb128"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb128-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb128-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb128-3" data-line-number="3"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb128-4" data-line-number="4">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb128-5" data-line-number="5">  local convert = markdown.new()</a>
-<a class="sourceLine" id="cb128-6" data-line-number="6">  local input =</a>
-<a class="sourceLine" id="cb128-7" data-line-number="7">    "``This is a code span.'' " ..</a>
-<a class="sourceLine" id="cb128-8" data-line-number="8">    "``This is no longer a code span.''"</a>
-<a class="sourceLine" id="cb128-9" data-line-number="9">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb128-10" data-line-number="10"><span class="fu">\par</span></a>
-<a class="sourceLine" id="cb128-11" data-line-number="11"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb128-12" data-line-number="12">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb128-13" data-line-number="13">  local convert = markdown.new({codeSpans = false})</a>
-<a class="sourceLine" id="cb128-14" data-line-number="14">  local input =</a>
-<a class="sourceLine" id="cb128-15" data-line-number="15">    "``This is a quote.'' " ..</a>
-<a class="sourceLine" id="cb128-16" data-line-number="16">    "``This is another quote.''"</a>
-<a class="sourceLine" id="cb128-17" data-line-number="17">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb128-18" data-line-number="18"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb129"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb129-1"><a href="#cb129-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb129-2"><a href="#cb129-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb129-3"><a href="#cb129-3" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb129-4"><a href="#cb129-4" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb129-5"><a href="#cb129-5" aria-hidden="true"></a>  local convert = markdown.new()</span>
+<span id="cb129-6"><a href="#cb129-6" aria-hidden="true"></a>  local input =</span>
+<span id="cb129-7"><a href="#cb129-7" aria-hidden="true"></a>    "``This is a code span.'' " ..</span>
+<span id="cb129-8"><a href="#cb129-8" aria-hidden="true"></a>    "``This is no longer a code span.''"</span>
+<span id="cb129-9"><a href="#cb129-9" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb129-10"><a href="#cb129-10" aria-hidden="true"></a><span class="fu">\par</span></span>
+<span id="cb129-11"><a href="#cb129-11" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb129-12"><a href="#cb129-12" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb129-13"><a href="#cb129-13" aria-hidden="true"></a>  local convert = markdown.new({codeSpans = false})</span>
+<span id="cb129-14"><a href="#cb129-14" aria-hidden="true"></a>  local input =</span>
+<span id="cb129-15"><a href="#cb129-15" aria-hidden="true"></a>    "``This is a quote.'' " ..</span>
+<span id="cb129-16"><a href="#cb129-16" aria-hidden="true"></a>    "``This is another quote.''"</span>
+<span id="cb129-17"><a href="#cb129-17" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb129-18"><a href="#cb129-18" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Then, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb129"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb129-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb130"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb130-1"><a href="#cb130-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><code>This is a code span.''</code>This is no longer a code span.’’</p>
 <p>“This is a quote.” “This is another quote.”</p>
 </blockquote>
-<h5 id="lua-cli-example-6" class="unnumbered">Lua CLI Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-cli-example-6">Lua CLI 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="cb130"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb130-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb130-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb130-3" data-line-number="3"><span class="fu">\input</span> optionfalse</a>
-<a class="sourceLine" id="cb130-4" data-line-number="4"><span class="fu">\par</span></a>
-<a class="sourceLine" id="cb130-5" data-line-number="5"><span class="fu">\input</span> optiontrue</a>
-<a class="sourceLine" id="cb130-6" data-line-number="6"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb131"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb131-1"><a href="#cb131-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb131-2"><a href="#cb131-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb131-3"><a href="#cb131-3" aria-hidden="true"></a><span class="fu">\input</span> optionfalse</span>
+<span id="cb131-4"><a href="#cb131-4" aria-hidden="true"></a><span class="fu">\par</span></span>
+<span id="cb131-5"><a href="#cb131-5" aria-hidden="true"></a><span class="fu">\input</span> optiontrue</span>
+<span id="cb131-6"><a href="#cb131-6" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Using a text editor, create a text document named <code>content.md</code> with the following content:</p>
-<div class="sourceCode" id="cb131"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb131-1" data-line-number="1">`<span class="bn">`Is this a code span?'' `</span>`Or a quote?''</a></code></pre></div>
+<div class="sourceCode" id="cb132"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb132-1"><a href="#cb132-1" aria-hidden="true"></a><span class="in">``Is this a code span?'' ``</span>Or a quote?''</span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb132"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb132-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ codeSpans=false -- content.md optionfalse.tex</a>
-<a class="sourceLine" id="cb132-2" data-line-number="2"><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optiontrue.tex</a>
-<a class="sourceLine" id="cb132-3" data-line-number="3"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb133"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb133-1"><a href="#cb133-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ codeSpans=false -- content.md optionfalse.tex</span>
+<span id="cb133-2"><a href="#cb133-2" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optiontrue.tex</span>
+<span id="cb133-3"><a href="#cb133-3" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
 <blockquote>
@@ -1387,89 +1395,89 @@
 <p>“Is this a code span?” “Or a quote?”</p>
 <p><code>Is this a code span?''</code>Or a quote?’’</p>
 </blockquote>
-<h5 id="plain-tex-example-6" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-6">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="cb133"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb133-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb133-2" data-line-number="2"></a>
-<a class="sourceLine" id="cb133-3" data-line-number="3"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb133-4" data-line-number="4">``This is a code span.''</a>
-<a class="sourceLine" id="cb133-5" data-line-number="5">``This is no longer a code span.''</a>
-<a class="sourceLine" id="cb133-6" data-line-number="6"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb133-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb133-8" data-line-number="8"><span class="fu">\def</span>\markdownOptionCodeSpans{false}</a>
-<a class="sourceLine" id="cb133-9" data-line-number="9"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb133-10" data-line-number="10">``This is a quote.''</a>
-<a class="sourceLine" id="cb133-11" data-line-number="11">``This is another quote.''</a>
-<a class="sourceLine" id="cb133-12" data-line-number="12"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb133-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb133-14" data-line-number="14"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb134"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb134-1"><a href="#cb134-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb134-2"><a href="#cb134-2" aria-hidden="true"></a></span>
+<span id="cb134-3"><a href="#cb134-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb134-4"><a href="#cb134-4" aria-hidden="true"></a>``This is a code span.''</span>
+<span id="cb134-5"><a href="#cb134-5" aria-hidden="true"></a>``This is no longer a code span.''</span>
+<span id="cb134-6"><a href="#cb134-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb134-7"><a href="#cb134-7" aria-hidden="true"></a></span>
+<span id="cb134-8"><a href="#cb134-8" aria-hidden="true"></a><span class="fu">\def\markdownOptionCodeSpans</span>{false}</span>
+<span id="cb134-9"><a href="#cb134-9" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb134-10"><a href="#cb134-10" aria-hidden="true"></a>``This is a quote.''</span>
+<span id="cb134-11"><a href="#cb134-11" aria-hidden="true"></a>``This is another quote.''</span>
+<span id="cb134-12"><a href="#cb134-12" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb134-13"><a href="#cb134-13" aria-hidden="true"></a></span>
+<span id="cb134-14"><a href="#cb134-14" 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="cb134"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb134-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb135"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb135-1"><a href="#cb135-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><code>This is a code span.''</code>This is no longer a code span.’’</p>
 <p>“This is a quote.” “This is another quote.”</p>
 </blockquote>
-<h5 id="latex-example-8" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-8"><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="cb135"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb135-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb135-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb135-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb135-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb135-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb135-6" data-line-number="6">``This is a code span.''</a>
-<a class="sourceLine" id="cb135-7" data-line-number="7">``This is no longer a code span.''</a>
-<a class="sourceLine" id="cb135-8" data-line-number="8"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb135-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb135-10" data-line-number="10"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{codeSpans=false}</a>
-<a class="sourceLine" id="cb135-11" data-line-number="11">``This is a quote.''</a>
-<a class="sourceLine" id="cb135-12" data-line-number="12">``This is another quote.''</a>
-<a class="sourceLine" id="cb135-13" data-line-number="13"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb135-14" data-line-number="14"></a>
-<a class="sourceLine" id="cb135-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb136"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb136-1"><a href="#cb136-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb136-2"><a href="#cb136-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb136-3"><a href="#cb136-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb136-4"><a href="#cb136-4" aria-hidden="true"></a></span>
+<span id="cb136-5"><a href="#cb136-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb136-6"><a href="#cb136-6" aria-hidden="true"></a>``This is a code span.''</span>
+<span id="cb136-7"><a href="#cb136-7" aria-hidden="true"></a>``This is no longer a code span.''</span>
+<span id="cb136-8"><a href="#cb136-8" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb136-9"><a href="#cb136-9" aria-hidden="true"></a></span>
+<span id="cb136-10"><a href="#cb136-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{codeSpans=false}</span>
+<span id="cb136-11"><a href="#cb136-11" aria-hidden="true"></a>``This is a quote.''</span>
+<span id="cb136-12"><a href="#cb136-12" aria-hidden="true"></a>``This is another quote.''</span>
+<span id="cb136-13"><a href="#cb136-13" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb136-14"><a href="#cb136-14" aria-hidden="true"></a></span>
+<span id="cb136-15"><a href="#cb136-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="cb136"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb136-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb137"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb137-1"><a href="#cb137-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><code>This is a code span.''</code>This is no longer a code span.’’</p>
 <p>“This is a quote.” “This is another quote.”</p>
 </blockquote>
-<h5 id="context-example-6" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-6">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="cb137"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb137-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb137-2" data-line-number="2"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb137-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb137-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb137-5" data-line-number="5">``This is a code span.''</a>
-<a class="sourceLine" id="cb137-6" data-line-number="6">``This is no longer a code span.''</a>
-<a class="sourceLine" id="cb137-7" data-line-number="7"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb137-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb137-9" data-line-number="9"><span class="fu">\def</span>\markdownOptionCodeSpans{false}</a>
-<a class="sourceLine" id="cb137-10" data-line-number="10"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb137-11" data-line-number="11">``This is a quote.''</a>
-<a class="sourceLine" id="cb137-12" data-line-number="12">``This is another quote.''</a>
-<a class="sourceLine" id="cb137-13" data-line-number="13"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb137-14" data-line-number="14"></a>
-<a class="sourceLine" id="cb137-15" data-line-number="15"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb138"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb138-1"><a href="#cb138-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb138-2"><a href="#cb138-2" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb138-3"><a href="#cb138-3" aria-hidden="true"></a></span>
+<span id="cb138-4"><a href="#cb138-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb138-5"><a href="#cb138-5" aria-hidden="true"></a>``This is a code span.''</span>
+<span id="cb138-6"><a href="#cb138-6" aria-hidden="true"></a>``This is no longer a code span.''</span>
+<span id="cb138-7"><a href="#cb138-7" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb138-8"><a href="#cb138-8" aria-hidden="true"></a></span>
+<span id="cb138-9"><a href="#cb138-9" aria-hidden="true"></a><span class="fu">\def\markdownOptionCodeSpans</span>{false}</span>
+<span id="cb138-10"><a href="#cb138-10" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb138-11"><a href="#cb138-11" aria-hidden="true"></a>``This is a quote.''</span>
+<span id="cb138-12"><a href="#cb138-12" aria-hidden="true"></a>``This is another quote.''</span>
+<span id="cb138-13"><a href="#cb138-13" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb138-14"><a href="#cb138-14" aria-hidden="true"></a></span>
+<span id="cb138-15"><a href="#cb138-15" 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="cb138"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb138-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb139"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb139-1"><a href="#cb139-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><code>This is a code span.''</code>This is no longer a code span.’’</p>
 <p>“This is a quote.” “This is another quote.”</p>
 </blockquote>
-<h4 id="option-contentblocks"><span class="header-section-number">2.2.1.10</span> Option <code>contentBlocks</code></h4>
+<h4 data-number="2.2.1.10" id="option-contentblocks"><span class="header-section-number">2.2.1.10</span> Option <code>contentBlocks</code></h4>
 <dl>
 <dt><code>contentBlocks</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Enable the iA Writer content blocks syntax extension:</p>
-<div class="sourceCode" id="cb139"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb139-1" data-line-number="1">http://example.com/minard.jpg (Napoleon's</a>
-<a class="sourceLine" id="cb139-2" data-line-number="2">  disastrous Russian campaign of 1812)</a>
-<a class="sourceLine" id="cb139-3" data-line-number="3">/Flowchart.png "Engineering Flowchart"</a>
-<a class="sourceLine" id="cb139-4" data-line-number="4">/Savings Account.csv 'Recent Transactions'</a>
-<a class="sourceLine" id="cb139-5" data-line-number="5">/Example.swift</a>
-<a class="sourceLine" id="cb139-6" data-line-number="6">/Lorem Ipsum.txt</a></code></pre></div>
+<div class="sourceCode" id="cb140"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb140-1"><a href="#cb140-1" aria-hidden="true"></a>http://example.com/minard.jpg (Napoleon's</span>
+<span id="cb140-2"><a href="#cb140-2" aria-hidden="true"></a>  disastrous Russian campaign of 1812)</span>
+<span id="cb140-3"><a href="#cb140-3" aria-hidden="true"></a>/Flowchart.png "Engineering Flowchart"</span>
+<span id="cb140-4"><a href="#cb140-4" aria-hidden="true"></a>/Savings Account.csv 'Recent Transactions'</span>
+<span id="cb140-5"><a href="#cb140-5" aria-hidden="true"></a>/Example.swift</span>
+<span id="cb140-6"><a href="#cb140-6" aria-hidden="true"></a>/Lorem Ipsum.txt</span></code></pre></div>
 </dd>
 </dl>
 </dd>
@@ -1480,7 +1488,7 @@
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-9" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-9"><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>table.csv</code> with the following content:</p>
 <pre class="csv"><code>Name,Surname,Born
 Albert,Einstein,1879
@@ -1487,26 +1495,26 @@
 Marie,Curie,1867
 Thomas,Edison,1847</code></pre>
 <p>Create also a text document named <code>markdown-languages.json</code> with the following content:</p>
-<div class="sourceCode" id="cb141"><pre class="sourceCode js"><code class="sourceCode javascript"><a class="sourceLine" id="cb141-1" data-line-number="1"><span class="op">{</span></a>
-<a class="sourceLine" id="cb141-2" data-line-number="2">  <span class="st">"tex"</span><span class="op">:</span> <span class="st">"LaTeX"</span></a>
-<a class="sourceLine" id="cb141-3" data-line-number="3"><span class="op">}</span></a></code></pre></div>
+<div class="sourceCode" id="cb142"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb142-1"><a href="#cb142-1" aria-hidden="true"></a>{</span>
+<span id="cb142-2"><a href="#cb142-2" aria-hidden="true"></a>  <span class="st">"tex"</span><span class="op">:</span> <span class="st">"LaTeX"</span></span>
+<span id="cb142-3"><a href="#cb142-3" aria-hidden="true"></a>}</span></code></pre></div>
 <p>Create also a text document named <code>code.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb142"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb142-1" data-line-number="1">This is an example code listing in <span class="fu">\LaTeX</span>.</a></code></pre></div>
+<div class="sourceCode" id="cb143"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb143-1"><a href="#cb143-1" aria-hidden="true"></a>This is an example code listing in <span class="fu">\LaTeX</span>.</span></code></pre></div>
 <p>Create also a text document named <code>part.md</code> with the following content:</p>
-<div class="sourceCode" id="cb143"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb143-1" data-line-number="1">This is a *transcluded markdown document*.</a></code></pre></div>
+<div class="sourceCode" id="cb144"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb144-1"><a href="#cb144-1" aria-hidden="true"></a>This is a *transcluded markdown document*.</span></code></pre></div>
 <p>Create also a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb144"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb144-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb144-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">minted</span>}</a>
-<a class="sourceLine" id="cb144-3" data-line-number="3"><span class="bu">\usepackage</span>[contentBlocks]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb144-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb144-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb144-6" data-line-number="6">/table.csv  (An example table)</a>
-<a class="sourceLine" id="cb144-7" data-line-number="7">/code.tex   (An example code listing)</a>
-<a class="sourceLine" id="cb144-8" data-line-number="8">/part.md    (A file transclusion example)</a>
-<a class="sourceLine" id="cb144-9" data-line-number="9"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb144-10" data-line-number="10"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb145"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb145-1"><a href="#cb145-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb145-2"><a href="#cb145-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">minted</span>}</span>
+<span id="cb145-3"><a href="#cb145-3" aria-hidden="true"></a><span class="bu">\usepackage</span>[contentBlocks]{<span class="ex">markdown</span>}</span>
+<span id="cb145-4"><a href="#cb145-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb145-5"><a href="#cb145-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb145-6"><a href="#cb145-6" aria-hidden="true"></a>/table.csv  (An example table)</span>
+<span id="cb145-7"><a href="#cb145-7" aria-hidden="true"></a>/code.tex   (An example code listing)</span>
+<span id="cb145-8"><a href="#cb145-8" aria-hidden="true"></a>/part.md    (A file transclusion example)</span>
+<span id="cb145-9"><a href="#cb145-9" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb145-10"><a href="#cb145-10" 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="cb145"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb145-1" data-line-number="1"><span class="ex">lualatex</span> --shell-escape document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb146"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb146-1"><a href="#cb146-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 text:</p>
 <blockquote>
 <table>
@@ -1536,10 +1544,10 @@
 </tbody>
 </table>
 <p>Table 1: An example table</p>
-<div class="sourceCode" id="cb146"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb146-1" data-line-number="1">This is an example code listing in <span class="fu">\LaTeX</span>.</a></code></pre></div>
+<div class="sourceCode" id="cb147"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb147-1"><a href="#cb147-1" aria-hidden="true"></a>This is an example code listing in <span class="fu">\LaTeX</span>.</span></code></pre></div>
 <p>This is a <em>transcluded markdown document</em>.</p>
 </blockquote>
-<h5 id="context-example-7" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-7">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
 <p>Using a text editor, create a text document named <code>table.csv</code> with the following content:</p>
 <pre class="csv"><code>Name,Surname,Born
 Albert,Einstein,1879
@@ -1546,27 +1554,27 @@
 Marie,Curie,1867
 Thomas,Edison,1847</code></pre>
 <p>Create also a text document named <code>markdown-languages.json</code> with the following content:</p>
-<div class="sourceCode" id="cb148"><pre class="sourceCode js"><code class="sourceCode javascript"><a class="sourceLine" id="cb148-1" data-line-number="1"><span class="op">{</span></a>
-<a class="sourceLine" id="cb148-2" data-line-number="2">  <span class="st">"tex"</span><span class="op">:</span> <span class="st">"ConTeXt"</span></a>
-<a class="sourceLine" id="cb148-3" data-line-number="3"><span class="op">}</span></a></code></pre></div>
+<div class="sourceCode" id="cb149"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb149-1"><a href="#cb149-1" aria-hidden="true"></a>{</span>
+<span id="cb149-2"><a href="#cb149-2" aria-hidden="true"></a>  <span class="st">"tex"</span><span class="op">:</span> <span class="st">"ConTeXt"</span></span>
+<span id="cb149-3"><a href="#cb149-3" aria-hidden="true"></a>}</span></code></pre></div>
 <p>Create also a text document named <code>code.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb149"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb149-1" data-line-number="1">This is an example code listing in <span class="fu">\ConTeXt</span>.</a></code></pre></div>
+<div class="sourceCode" id="cb150"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb150-1"><a href="#cb150-1" aria-hidden="true"></a>This is an example code listing in <span class="fu">\ConTeXt</span>.</span></code></pre></div>
 <p>Create also a text document named <code>part.md</code> with the following content:</p>
-<div class="sourceCode" id="cb150"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb150-1" data-line-number="1">This is a *transcluded markdown document*.</a></code></pre></div>
+<div class="sourceCode" id="cb151"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb151-1"><a href="#cb151-1" aria-hidden="true"></a>This is a *transcluded markdown document*.</span></code></pre></div>
 <p>Create also a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb151"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb151-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb151-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionContentBlocks{true}</a>
-<a class="sourceLine" id="cb151-3" data-line-number="3"><span class="fu">\definetyping</span> [ConTeXt]</a>
-<a class="sourceLine" id="cb151-4" data-line-number="4"><span class="fu">\setuptyping</span>  [ConTeXt] [option=TEX]</a>
-<a class="sourceLine" id="cb151-5" data-line-number="5"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb151-6" data-line-number="6"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb151-7" data-line-number="7">/table.csv  (An example table)</a>
-<a class="sourceLine" id="cb151-8" data-line-number="8">/code.tex   (An example code listing)</a>
-<a class="sourceLine" id="cb151-9" data-line-number="9">/part.md    (A file transclusion example)</a>
-<a class="sourceLine" id="cb151-10" data-line-number="10"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb151-11" data-line-number="11"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb152"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb152-1"><a href="#cb152-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb152-2"><a href="#cb152-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionContentBlocks</span>{true}</span>
+<span id="cb152-3"><a href="#cb152-3" aria-hidden="true"></a><span class="fu">\definetyping</span> [ConTeXt]</span>
+<span id="cb152-4"><a href="#cb152-4" aria-hidden="true"></a><span class="fu">\setuptyping</span>  [ConTeXt] [option=TEX]</span>
+<span id="cb152-5"><a href="#cb152-5" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb152-6"><a href="#cb152-6" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb152-7"><a href="#cb152-7" aria-hidden="true"></a>/table.csv  (An example table)</span>
+<span id="cb152-8"><a href="#cb152-8" aria-hidden="true"></a>/code.tex   (An example code listing)</span>
+<span id="cb152-9"><a href="#cb152-9" aria-hidden="true"></a>/part.md    (A file transclusion example)</span>
+<span id="cb152-10"><a href="#cb152-10" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb152-11"><a href="#cb152-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="cb152"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb152-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb153"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb153-1"><a href="#cb153-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>
 <table>
@@ -1596,16 +1604,16 @@
 </tbody>
 </table>
 <p>Table 1: An example table</p>
-<div class="sourceCode" id="cb153"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb153-1" data-line-number="1">This is an example code listing in <span class="fu">\ConTeXt</span>.</a></code></pre></div>
+<div class="sourceCode" id="cb154"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb154-1"><a href="#cb154-1" aria-hidden="true"></a>This is an example code listing in <span class="fu">\ConTeXt</span>.</span></code></pre></div>
 <p>This is a <em>transcluded markdown document</em>.</p>
 </blockquote>
-<h4 id="option-contentblockslanguagemap"><span class="header-section-number">2.2.1.11</span> Option <code>contentBlocksLanguageMap</code></h4>
+<h4 data-number="2.2.1.11" id="option-contentblockslanguagemap"><span class="header-section-number">2.2.1.11</span> Option <code>contentBlocksLanguageMap</code></h4>
 <dl>
-<dt><code>contentBlocksLanguageMap</code> (default value: <code>"markdown-languages.json"</code>)</dt>
+<dt><code>contentBlocksLanguageMap</code> (default value: <code>"markdown-languages.json"</code>)</dt>
 <dd><p>The filename of the JSON file that maps filename extensions to programming language names in the iA Writer content blocks.</p>
 </dd>
 </dl>
-<h5 id="latex-example-10" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-10"><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>table.csv</code> with the following content:</p>
 <pre class="csv"><code>Name,Surname,Born
 Albert,Einstein,1879
@@ -1612,29 +1620,29 @@
 Marie,Curie,1867
 Thomas,Edison,1847</code></pre>
 <p>Create also a text document named <code>language-map.json</code> with the following content:</p>
-<div class="sourceCode" id="cb155"><pre class="sourceCode js"><code class="sourceCode javascript"><a class="sourceLine" id="cb155-1" data-line-number="1"><span class="op">{</span></a>
-<a class="sourceLine" id="cb155-2" data-line-number="2">  <span class="st">"tex"</span><span class="op">:</span> <span class="st">"LaTeX"</span></a>
-<a class="sourceLine" id="cb155-3" data-line-number="3"><span class="op">}</span></a></code></pre></div>
+<div class="sourceCode" id="cb156"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb156-1"><a href="#cb156-1" aria-hidden="true"></a>{</span>
+<span id="cb156-2"><a href="#cb156-2" aria-hidden="true"></a>  <span class="st">"tex"</span><span class="op">:</span> <span class="st">"LaTeX"</span></span>
+<span id="cb156-3"><a href="#cb156-3" aria-hidden="true"></a>}</span></code></pre></div>
 <p>Create also a text document named <code>code.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb156"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb156-1" data-line-number="1">This is an example code listing in <span class="fu">\LaTeX</span>.</a></code></pre></div>
+<div class="sourceCode" id="cb157"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb157-1"><a href="#cb157-1" aria-hidden="true"></a>This is an example code listing in <span class="fu">\LaTeX</span>.</span></code></pre></div>
 <p>Create also a text document named <code>part.md</code> with the following content:</p>
-<div class="sourceCode" id="cb157"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb157-1" data-line-number="1">This is a *transcluded markdown document*.</a></code></pre></div>
+<div class="sourceCode" id="cb158"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb158-1"><a href="#cb158-1" aria-hidden="true"></a>This is a *transcluded markdown document*.</span></code></pre></div>
 <p>Create also a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb158"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb158-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb158-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">minted</span>}</a>
-<a class="sourceLine" id="cb158-3" data-line-number="3"><span class="bu">\usepackage</span>[contentBlocks]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb158-4" data-line-number="4"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb158-5" data-line-number="5">  contentBlocksLanguageMap = {language-map.json},</a>
-<a class="sourceLine" id="cb158-6" data-line-number="6">}</a>
-<a class="sourceLine" id="cb158-7" data-line-number="7"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb158-8" data-line-number="8"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb158-9" data-line-number="9">/table.csv  (An example table)</a>
-<a class="sourceLine" id="cb158-10" data-line-number="10">/code.tex   (An example code listing)</a>
-<a class="sourceLine" id="cb158-11" data-line-number="11">/part.md    (A file transclusion example)</a>
-<a class="sourceLine" id="cb158-12" data-line-number="12"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb158-13" data-line-number="13"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb159"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb159-1"><a href="#cb159-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb159-2"><a href="#cb159-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">minted</span>}</span>
+<span id="cb159-3"><a href="#cb159-3" aria-hidden="true"></a><span class="bu">\usepackage</span>[contentBlocks]{<span class="ex">markdown</span>}</span>
+<span id="cb159-4"><a href="#cb159-4" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb159-5"><a href="#cb159-5" aria-hidden="true"></a>  contentBlocksLanguageMap = {language-map.json},</span>
+<span id="cb159-6"><a href="#cb159-6" aria-hidden="true"></a>}</span>
+<span id="cb159-7"><a href="#cb159-7" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb159-8"><a href="#cb159-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb159-9"><a href="#cb159-9" aria-hidden="true"></a>/table.csv  (An example table)</span>
+<span id="cb159-10"><a href="#cb159-10" aria-hidden="true"></a>/code.tex   (An example code listing)</span>
+<span id="cb159-11"><a href="#cb159-11" aria-hidden="true"></a>/part.md    (A file transclusion example)</span>
+<span id="cb159-12"><a href="#cb159-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb159-13"><a href="#cb159-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="cb159"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb159-1" data-line-number="1"><span class="ex">lualatex</span> --shell-escape document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb160"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb160-1"><a href="#cb160-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 text:</p>
 <blockquote>
 <table>
@@ -1664,10 +1672,10 @@
 </tbody>
 </table>
 <p>Table 1: An example table</p>
-<div class="sourceCode" id="cb160"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb160-1" data-line-number="1">This is an example code listing in <span class="fu">\LaTeX</span>.</a></code></pre></div>
+<div class="sourceCode" id="cb161"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb161-1"><a href="#cb161-1" aria-hidden="true"></a>This is an example code listing in <span class="fu">\LaTeX</span>.</span></code></pre></div>
 <p>This is a <em>transcluded markdown document</em>.</p>
 </blockquote>
-<h5 id="context-example-8" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-8">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
 <p>Using a text editor, create a text document named <code>table.csv</code> with the following content:</p>
 <pre class="csv"><code>Name,Surname,Born
 Albert,Einstein,1879
@@ -1674,28 +1682,28 @@
 Marie,Curie,1867
 Thomas,Edison,1847</code></pre>
 <p>Create also a text document named <code>language-map.json</code> with the following content:</p>
-<div class="sourceCode" id="cb162"><pre class="sourceCode js"><code class="sourceCode javascript"><a class="sourceLine" id="cb162-1" data-line-number="1"><span class="op">{</span></a>
-<a class="sourceLine" id="cb162-2" data-line-number="2">  <span class="st">"tex"</span><span class="op">:</span> <span class="st">"ConTeXt"</span></a>
-<a class="sourceLine" id="cb162-3" data-line-number="3"><span class="op">}</span></a></code></pre></div>
+<div class="sourceCode" id="cb163"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb163-1"><a href="#cb163-1" aria-hidden="true"></a>{</span>
+<span id="cb163-2"><a href="#cb163-2" aria-hidden="true"></a>  <span class="st">"tex"</span><span class="op">:</span> <span class="st">"ConTeXt"</span></span>
+<span id="cb163-3"><a href="#cb163-3" aria-hidden="true"></a>}</span></code></pre></div>
 <p>Create also a text document named <code>code.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb163"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb163-1" data-line-number="1">This is an example code listing in <span class="fu">\ConTeXt</span>.</a></code></pre></div>
+<div class="sourceCode" id="cb164"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb164-1"><a href="#cb164-1" aria-hidden="true"></a>This is an example code listing in <span class="fu">\ConTeXt</span>.</span></code></pre></div>
 <p>Create also a text document named <code>part.md</code> with the following content:</p>
-<div class="sourceCode" id="cb164"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb164-1" data-line-number="1">This is a *transcluded markdown document*.</a></code></pre></div>
+<div class="sourceCode" id="cb165"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb165-1"><a href="#cb165-1" aria-hidden="true"></a>This is a *transcluded markdown document*.</span></code></pre></div>
 <p>Create also a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb165"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb165-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb165-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionContentBlocks{true}</a>
-<a class="sourceLine" id="cb165-3" data-line-number="3"><span class="fu">\def</span>\markdownOptionContentBlocksLanguageMap{language-map.json}</a>
-<a class="sourceLine" id="cb165-4" data-line-number="4"><span class="fu">\definetyping</span> [ConTeXt]</a>
-<a class="sourceLine" id="cb165-5" data-line-number="5"><span class="fu">\setuptyping</span>  [ConTeXt] [option=TEX]</a>
-<a class="sourceLine" id="cb165-6" data-line-number="6"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb165-7" data-line-number="7"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb165-8" data-line-number="8">/table.csv  (An example table)</a>
-<a class="sourceLine" id="cb165-9" data-line-number="9">/code.tex   (An example code listing)</a>
-<a class="sourceLine" id="cb165-10" data-line-number="10">/part.md    (A file transclusion example)</a>
-<a class="sourceLine" id="cb165-11" data-line-number="11"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb165-12" data-line-number="12"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb166"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb166-1"><a href="#cb166-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb166-2"><a href="#cb166-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionContentBlocks</span>{true}</span>
+<span id="cb166-3"><a href="#cb166-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionContentBlocksLanguageMap</span>{language-map.json}</span>
+<span id="cb166-4"><a href="#cb166-4" aria-hidden="true"></a><span class="fu">\definetyping</span> [ConTeXt]</span>
+<span id="cb166-5"><a href="#cb166-5" aria-hidden="true"></a><span class="fu">\setuptyping</span>  [ConTeXt] [option=TEX]</span>
+<span id="cb166-6"><a href="#cb166-6" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb166-7"><a href="#cb166-7" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb166-8"><a href="#cb166-8" aria-hidden="true"></a>/table.csv  (An example table)</span>
+<span id="cb166-9"><a href="#cb166-9" aria-hidden="true"></a>/code.tex   (An example code listing)</span>
+<span id="cb166-10"><a href="#cb166-10" aria-hidden="true"></a>/part.md    (A file transclusion example)</span>
+<span id="cb166-11"><a href="#cb166-11" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb166-12"><a href="#cb166-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="cb166"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb166-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb167"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb167-1"><a href="#cb167-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>
 <table>
@@ -1725,26 +1733,26 @@
 </tbody>
 </table>
 <p>Table 1: An example table</p>
-<div class="sourceCode" id="cb167"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb167-1" data-line-number="1">This is an example code listing in <span class="fu">\ConTeXt</span>.</a></code></pre></div>
+<div class="sourceCode" id="cb168"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb168-1"><a href="#cb168-1" aria-hidden="true"></a>This is an example code listing in <span class="fu">\ConTeXt</span>.</span></code></pre></div>
 <p>This is a <em>transcluded markdown document</em>.</p>
 </blockquote>
-<h4 id="option-definitionlists"><span class="header-section-number">2.2.1.12</span> Option <code>definitionLists</code></h4>
+<h4 data-number="2.2.1.12" id="option-definitionlists"><span class="header-section-number">2.2.1.12</span> Option <code>definitionLists</code></h4>
 <dl>
 <dt><code>definitionLists</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Enable the pandoc definition list syntax extension:</p>
-<div class="sourceCode" id="cb168"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb168-1" data-line-number="1">Term 1</a>
-<a class="sourceLine" id="cb168-2" data-line-number="2"></a>
-<a class="sourceLine" id="cb168-3" data-line-number="3">:   Definition 1</a>
-<a class="sourceLine" id="cb168-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb168-5" data-line-number="5">Term 2 with *inline markup*</a>
-<a class="sourceLine" id="cb168-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb168-7" data-line-number="7">:   Definition 2</a>
-<a class="sourceLine" id="cb168-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb168-9" data-line-number="9"><span class="bn">        { some code, part of Definition 2 }</span></a>
-<a class="sourceLine" id="cb168-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb168-11" data-line-number="11"><span class="bn">    Third paragraph of definition 2.</span></a></code></pre></div>
+<div class="sourceCode" id="cb169"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb169-1"><a href="#cb169-1" aria-hidden="true"></a>Term 1</span>
+<span id="cb169-2"><a href="#cb169-2" aria-hidden="true"></a></span>
+<span id="cb169-3"><a href="#cb169-3" aria-hidden="true"></a>:   Definition 1</span>
+<span id="cb169-4"><a href="#cb169-4" aria-hidden="true"></a></span>
+<span id="cb169-5"><a href="#cb169-5" aria-hidden="true"></a>Term 2 with *inline markup*</span>
+<span id="cb169-6"><a href="#cb169-6" aria-hidden="true"></a></span>
+<span id="cb169-7"><a href="#cb169-7" aria-hidden="true"></a>:   Definition 2</span>
+<span id="cb169-8"><a href="#cb169-8" aria-hidden="true"></a></span>
+<span id="cb169-9"><a href="#cb169-9" aria-hidden="true"></a><span class="in">        { some code, part of Definition 2 }</span></span>
+<span id="cb169-10"><a href="#cb169-10" aria-hidden="true"></a></span>
+<span id="cb169-11"><a href="#cb169-11" aria-hidden="true"></a><span class="in">    Third paragraph of definition 2.</span></span></code></pre></div>
 </dd>
 </dl>
 </dd>
@@ -1755,27 +1763,27 @@
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-11" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-11"><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="cb169"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb169-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb169-2" data-line-number="2"><span class="bu">\usepackage</span>[definitionLists]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb169-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb169-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb169-5" data-line-number="5">Term 1</a>
-<a class="sourceLine" id="cb169-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb169-7" data-line-number="7">:   Definition 1</a>
-<a class="sourceLine" id="cb169-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb169-9" data-line-number="9">Term 2 with *inline markup*</a>
-<a class="sourceLine" id="cb169-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb169-11" data-line-number="11">:   Definition 2</a>
-<a class="sourceLine" id="cb169-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb169-13" data-line-number="13">        { some code, part of Definition 2 }</a>
-<a class="sourceLine" id="cb169-14" data-line-number="14"></a>
-<a class="sourceLine" id="cb169-15" data-line-number="15">    Third paragraph of definition 2.</a>
-<a class="sourceLine" id="cb169-16" data-line-number="16"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb169-17" data-line-number="17"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb170"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb170-1"><a href="#cb170-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb170-2"><a href="#cb170-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[definitionLists]{<span class="ex">markdown</span>}</span>
+<span id="cb170-3"><a href="#cb170-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb170-4"><a href="#cb170-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb170-5"><a href="#cb170-5" aria-hidden="true"></a>Term 1</span>
+<span id="cb170-6"><a href="#cb170-6" aria-hidden="true"></a></span>
+<span id="cb170-7"><a href="#cb170-7" aria-hidden="true"></a>:   Definition 1</span>
+<span id="cb170-8"><a href="#cb170-8" aria-hidden="true"></a></span>
+<span id="cb170-9"><a href="#cb170-9" aria-hidden="true"></a>Term 2 with *inline markup*</span>
+<span id="cb170-10"><a href="#cb170-10" aria-hidden="true"></a></span>
+<span id="cb170-11"><a href="#cb170-11" aria-hidden="true"></a>:   Definition 2</span>
+<span id="cb170-12"><a href="#cb170-12" aria-hidden="true"></a></span>
+<span id="cb170-13"><a href="#cb170-13" aria-hidden="true"></a>        { some code, part of Definition 2 }</span>
+<span id="cb170-14"><a href="#cb170-14" aria-hidden="true"></a></span>
+<span id="cb170-15"><a href="#cb170-15" aria-hidden="true"></a>    Third paragraph of definition 2.</span>
+<span id="cb170-16"><a href="#cb170-16" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb170-17"><a href="#cb170-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="cb170"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb170-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb171"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb171-1"><a href="#cb171-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>
 <dl>
@@ -1789,27 +1797,27 @@
 </dd>
 </dl>
 </blockquote>
-<h5 id="context-example-9" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-9">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="cb172"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb172-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb172-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionDefinitionLists{true}</a>
-<a class="sourceLine" id="cb172-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb172-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb172-5" data-line-number="5">Term 1</a>
-<a class="sourceLine" id="cb172-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb172-7" data-line-number="7">:   Definition 1</a>
-<a class="sourceLine" id="cb172-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb172-9" data-line-number="9">Term 2 with *inline markup*</a>
-<a class="sourceLine" id="cb172-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb172-11" data-line-number="11">:   Definition 2</a>
-<a class="sourceLine" id="cb172-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb172-13" data-line-number="13">        { some code, part of Definition 2 }</a>
-<a class="sourceLine" id="cb172-14" data-line-number="14"></a>
-<a class="sourceLine" id="cb172-15" data-line-number="15">    Third paragraph of definition 2.</a>
-<a class="sourceLine" id="cb172-16" data-line-number="16"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb172-17" data-line-number="17"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb173"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb173-1"><a href="#cb173-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb173-2"><a href="#cb173-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionDefinitionLists</span>{true}</span>
+<span id="cb173-3"><a href="#cb173-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb173-4"><a href="#cb173-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb173-5"><a href="#cb173-5" aria-hidden="true"></a>Term 1</span>
+<span id="cb173-6"><a href="#cb173-6" aria-hidden="true"></a></span>
+<span id="cb173-7"><a href="#cb173-7" aria-hidden="true"></a>:   Definition 1</span>
+<span id="cb173-8"><a href="#cb173-8" aria-hidden="true"></a></span>
+<span id="cb173-9"><a href="#cb173-9" aria-hidden="true"></a>Term 2 with *inline markup*</span>
+<span id="cb173-10"><a href="#cb173-10" aria-hidden="true"></a></span>
+<span id="cb173-11"><a href="#cb173-11" aria-hidden="true"></a>:   Definition 2</span>
+<span id="cb173-12"><a href="#cb173-12" aria-hidden="true"></a></span>
+<span id="cb173-13"><a href="#cb173-13" aria-hidden="true"></a>        { some code, part of Definition 2 }</span>
+<span id="cb173-14"><a href="#cb173-14" aria-hidden="true"></a></span>
+<span id="cb173-15"><a href="#cb173-15" aria-hidden="true"></a>    Third paragraph of definition 2.</span>
+<span id="cb173-16"><a href="#cb173-16" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb173-17"><a href="#cb173-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="cb173"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb173-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb174"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb174-1"><a href="#cb174-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>
 <dl>
@@ -1823,28 +1831,28 @@
 </dd>
 </dl>
 </blockquote>
-<h4 id="option-fencedcode"><span class="header-section-number">2.2.1.13</span> Option <code>fencedCode</code></h4>
+<h4 data-number="2.2.1.13" id="option-fencedcode"><span class="header-section-number">2.2.1.13</span> Option <code>fencedCode</code></h4>
 <dl>
 <dt><code>fencedCode</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Enable the commonmark fenced code block extension:</p>
-<div class="sourceCode" id="cb175"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb175-1" data-line-number="1">~~~ js</a>
-<a class="sourceLine" id="cb175-2" data-line-number="2">if (a > 3) {</a>
-<a class="sourceLine" id="cb175-3" data-line-number="3"><span class="bn">    moveShip(5 * gravity, DOWN);</span></a>
-<a class="sourceLine" id="cb175-4" data-line-number="4">}</a>
-<a class="sourceLine" id="cb175-5" data-line-number="5">~~~~~~</a>
-<a class="sourceLine" id="cb175-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb175-7" data-line-number="7">  ``` html</a>
-<a class="sourceLine" id="cb175-8" data-line-number="8">  <pre></a>
-<a class="sourceLine" id="cb175-9" data-line-number="9"><span class="bn">    <code></span></a>
-<a class="sourceLine" id="cb175-10" data-line-number="10"><span class="bn">      // Some comments</span></a>
-<a class="sourceLine" id="cb175-11" data-line-number="11"><span class="bn">      line 1 of code</span></a>
-<a class="sourceLine" id="cb175-12" data-line-number="12"><span class="bn">      line 2 of code</span></a>
-<a class="sourceLine" id="cb175-13" data-line-number="13"><span class="bn">      line 3 of code</span></a>
-<a class="sourceLine" id="cb175-14" data-line-number="14"><span class="bn">    </code></span></a>
-<a class="sourceLine" id="cb175-15" data-line-number="15">  </pre></a>
-<a class="sourceLine" id="cb175-16" data-line-number="16">  ```</a></code></pre></div>
+<div class="sourceCode" id="cb176"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb176-1"><a href="#cb176-1" aria-hidden="true"></a><span class="in">~~~ js</span></span>
+<span id="cb176-2"><a href="#cb176-2" aria-hidden="true"></a><span class="cf">if</span> (a <span class="op">></span> <span class="dv">3</span>) {</span>
+<span id="cb176-3"><a href="#cb176-3" aria-hidden="true"></a>    <span class="fu">moveShip</span>(<span class="dv">5</span> <span class="op">*</span> gravity<span class="op">,</span> DOWN)<span class="op">;</span></span>
+<span id="cb176-4"><a href="#cb176-4" aria-hidden="true"></a>}</span>
+<span id="cb176-5"><a href="#cb176-5" aria-hidden="true"></a><span class="op">~~~~~~</span></span>
+<span id="cb176-6"><a href="#cb176-6" aria-hidden="true"></a></span>
+<span id="cb176-7"><a href="#cb176-7" aria-hidden="true"></a>  <span class="vs">``` html</span></span>
+<span id="cb176-8"><a href="#cb176-8" aria-hidden="true"></a><span class="vs">  <pre></span></span>
+<span id="cb176-9"><a href="#cb176-9" aria-hidden="true"></a><span class="vs">    <code></span></span>
+<span id="cb176-10"><a href="#cb176-10" aria-hidden="true"></a><span class="vs">      // Some comments</span></span>
+<span id="cb176-11"><a href="#cb176-11" aria-hidden="true"></a><span class="vs">      line 1 of code</span></span>
+<span id="cb176-12"><a href="#cb176-12" aria-hidden="true"></a><span class="vs">      line 2 of code</span></span>
+<span id="cb176-13"><a href="#cb176-13" aria-hidden="true"></a><span class="vs">      line 3 of code</span></span>
+<span id="cb176-14"><a href="#cb176-14" aria-hidden="true"></a><span class="vs">    </code></span></span>
+<span id="cb176-15"><a href="#cb176-15" aria-hidden="true"></a><span class="vs">  </pre></span></span>
+<span id="cb176-16"><a href="#cb176-16" aria-hidden="true"></a><span class="vs">  ```</span></span></code></pre></div>
 </dd>
 </dl>
 </dd>
@@ -1855,187 +1863,187 @@
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-12" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-12"><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="cb176"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb176-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb176-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">minted</span>}</a>
-<a class="sourceLine" id="cb176-3" data-line-number="3"><span class="bu">\usepackage</span>[fencedCode]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb176-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb176-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb176-6" data-line-number="6">~~~ js</a>
-<a class="sourceLine" id="cb176-7" data-line-number="7">if (a > 3) {</a>
-<a class="sourceLine" id="cb176-8" data-line-number="8">    moveShip(5 * gravity, DOWN);</a>
-<a class="sourceLine" id="cb176-9" data-line-number="9">}</a>
-<a class="sourceLine" id="cb176-10" data-line-number="10">~~~~~~</a>
-<a class="sourceLine" id="cb176-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb176-12" data-line-number="12">  ``` html</a>
-<a class="sourceLine" id="cb176-13" data-line-number="13">  <pre></a>
-<a class="sourceLine" id="cb176-14" data-line-number="14">    <code></a>
-<a class="sourceLine" id="cb176-15" data-line-number="15">      // Some comments</a>
-<a class="sourceLine" id="cb176-16" data-line-number="16">      line 1 of code</a>
-<a class="sourceLine" id="cb176-17" data-line-number="17">      line 2 of code</a>
-<a class="sourceLine" id="cb176-18" data-line-number="18">      line 3 of code</a>
-<a class="sourceLine" id="cb176-19" data-line-number="19">    </code></a>
-<a class="sourceLine" id="cb176-20" data-line-number="20">  </pre></a>
-<a class="sourceLine" id="cb176-21" data-line-number="21">  ```</a>
-<a class="sourceLine" id="cb176-22" data-line-number="22"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb176-23" data-line-number="23"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb177"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb177-1"><a href="#cb177-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb177-2"><a href="#cb177-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">minted</span>}</span>
+<span id="cb177-3"><a href="#cb177-3" aria-hidden="true"></a><span class="bu">\usepackage</span>[fencedCode]{<span class="ex">markdown</span>}</span>
+<span id="cb177-4"><a href="#cb177-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb177-5"><a href="#cb177-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb177-6"><a href="#cb177-6" aria-hidden="true"></a>~~~ js</span>
+<span id="cb177-7"><a href="#cb177-7" aria-hidden="true"></a>if (a > 3) {</span>
+<span id="cb177-8"><a href="#cb177-8" aria-hidden="true"></a>    moveShip(5 * gravity, DOWN);</span>
+<span id="cb177-9"><a href="#cb177-9" aria-hidden="true"></a>}</span>
+<span id="cb177-10"><a href="#cb177-10" aria-hidden="true"></a>~~~~~~</span>
+<span id="cb177-11"><a href="#cb177-11" aria-hidden="true"></a></span>
+<span id="cb177-12"><a href="#cb177-12" aria-hidden="true"></a>  ``` html</span>
+<span id="cb177-13"><a href="#cb177-13" aria-hidden="true"></a>  <pre></span>
+<span id="cb177-14"><a href="#cb177-14" aria-hidden="true"></a>    <code></span>
+<span id="cb177-15"><a href="#cb177-15" aria-hidden="true"></a>      // Some comments</span>
+<span id="cb177-16"><a href="#cb177-16" aria-hidden="true"></a>      line 1 of code</span>
+<span id="cb177-17"><a href="#cb177-17" aria-hidden="true"></a>      line 2 of code</span>
+<span id="cb177-18"><a href="#cb177-18" aria-hidden="true"></a>      line 3 of code</span>
+<span id="cb177-19"><a href="#cb177-19" aria-hidden="true"></a>    </code></span>
+<span id="cb177-20"><a href="#cb177-20" aria-hidden="true"></a>  </pre></span>
+<span id="cb177-21"><a href="#cb177-21" aria-hidden="true"></a>  ```</span>
+<span id="cb177-22"><a href="#cb177-22" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb177-23"><a href="#cb177-23" 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="cb177"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb177-1" data-line-number="1"><span class="ex">lualatex</span> --shell-escape document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb178"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb178-1"><a href="#cb178-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 text:</p>
 <blockquote>
-<div class="sourceCode" id="cb178"><pre class="sourceCode js"><code class="sourceCode javascript"><a class="sourceLine" id="cb178-1" data-line-number="1"><span class="cf">if</span> (a <span class="op">></span> <span class="dv">3</span>) <span class="op">{</span></a>
-<a class="sourceLine" id="cb178-2" data-line-number="2">    <span class="at">moveShip</span>(<span class="dv">5</span> <span class="op">*</span> gravity<span class="op">,</span> DOWN)<span class="op">;</span></a>
-<a class="sourceLine" id="cb178-3" data-line-number="3"><span class="op">}</span></a></code></pre></div>
-<div class="sourceCode" id="cb179"><pre class="sourceCode html"><code class="sourceCode html"><a class="sourceLine" id="cb179-1" data-line-number="1"><span class="kw"><pre></span></a>
-<a class="sourceLine" id="cb179-2" data-line-number="2">  <span class="kw"><code></span></a>
-<a class="sourceLine" id="cb179-3" data-line-number="3">    // Some comments</a>
-<a class="sourceLine" id="cb179-4" data-line-number="4">    line 1 of code</a>
-<a class="sourceLine" id="cb179-5" data-line-number="5">    line 2 of code</a>
-<a class="sourceLine" id="cb179-6" data-line-number="6">    line 3 of code</a>
-<a class="sourceLine" id="cb179-7" data-line-number="7">  <span class="kw"></code></span></a>
-<a class="sourceLine" id="cb179-8" data-line-number="8"><span class="kw"></pre></span></a></code></pre></div>
+<div class="sourceCode" id="cb179"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb179-1"><a href="#cb179-1" aria-hidden="true"></a><span class="cf">if</span> (a <span class="op">></span> <span class="dv">3</span>) {</span>
+<span id="cb179-2"><a href="#cb179-2" aria-hidden="true"></a>    <span class="fu">moveShip</span>(<span class="dv">5</span> <span class="op">*</span> gravity<span class="op">,</span> DOWN)<span class="op">;</span></span>
+<span id="cb179-3"><a href="#cb179-3" aria-hidden="true"></a>}</span></code></pre></div>
+<div class="sourceCode" id="cb180"><pre class="sourceCode html"><code class="sourceCode html"><span id="cb180-1"><a href="#cb180-1" aria-hidden="true"></a><span class="kw"><pre></span></span>
+<span id="cb180-2"><a href="#cb180-2" aria-hidden="true"></a>  <span class="kw"><code></span></span>
+<span id="cb180-3"><a href="#cb180-3" aria-hidden="true"></a>    // Some comments</span>
+<span id="cb180-4"><a href="#cb180-4" aria-hidden="true"></a>    line 1 of code</span>
+<span id="cb180-5"><a href="#cb180-5" aria-hidden="true"></a>    line 2 of code</span>
+<span id="cb180-6"><a href="#cb180-6" aria-hidden="true"></a>    line 3 of code</span>
+<span id="cb180-7"><a href="#cb180-7" aria-hidden="true"></a>  <span class="kw"></code></span></span>
+<span id="cb180-8"><a href="#cb180-8" aria-hidden="true"></a><span class="kw"></pre></span></span></code></pre></div>
 </blockquote>
-<h5 id="context-example-10" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-10">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="cb180"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb180-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb180-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFencedCode{true}</a>
-<a class="sourceLine" id="cb180-3" data-line-number="3"><span class="fu">\definetyping</span> [js]</a>
-<a class="sourceLine" id="cb180-4" data-line-number="4"><span class="fu">\definetyping</span> [html]</a>
-<a class="sourceLine" id="cb180-5" data-line-number="5"><span class="fu">\setuptyping</span>  [html] [option=XML]</a>
-<a class="sourceLine" id="cb180-6" data-line-number="6"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb180-7" data-line-number="7"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb180-8" data-line-number="8">~~~ js</a>
-<a class="sourceLine" id="cb180-9" data-line-number="9">if (a > 3) {</a>
-<a class="sourceLine" id="cb180-10" data-line-number="10">    moveShip(5 * gravity, DOWN);</a>
-<a class="sourceLine" id="cb180-11" data-line-number="11">}</a>
-<a class="sourceLine" id="cb180-12" data-line-number="12">~~~~~~</a>
-<a class="sourceLine" id="cb180-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb180-14" data-line-number="14">  ``` html</a>
-<a class="sourceLine" id="cb180-15" data-line-number="15">  <pre></a>
-<a class="sourceLine" id="cb180-16" data-line-number="16">    <code></a>
-<a class="sourceLine" id="cb180-17" data-line-number="17">      // Some comments</a>
-<a class="sourceLine" id="cb180-18" data-line-number="18">      line 1 of code</a>
-<a class="sourceLine" id="cb180-19" data-line-number="19">      line 2 of code</a>
-<a class="sourceLine" id="cb180-20" data-line-number="20">      line 3 of code</a>
-<a class="sourceLine" id="cb180-21" data-line-number="21">    </code></a>
-<a class="sourceLine" id="cb180-22" data-line-number="22">  </pre></a>
-<a class="sourceLine" id="cb180-23" data-line-number="23">  ```</a>
-<a class="sourceLine" id="cb180-24" data-line-number="24"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb180-25" data-line-number="25"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb181"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb181-1"><a href="#cb181-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb181-2"><a href="#cb181-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFencedCode</span>{true}</span>
+<span id="cb181-3"><a href="#cb181-3" aria-hidden="true"></a><span class="fu">\definetyping</span> [js]</span>
+<span id="cb181-4"><a href="#cb181-4" aria-hidden="true"></a><span class="fu">\definetyping</span> [html]</span>
+<span id="cb181-5"><a href="#cb181-5" aria-hidden="true"></a><span class="fu">\setuptyping</span>  [html] [option=XML]</span>
+<span id="cb181-6"><a href="#cb181-6" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb181-7"><a href="#cb181-7" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb181-8"><a href="#cb181-8" aria-hidden="true"></a>~~~ js</span>
+<span id="cb181-9"><a href="#cb181-9" aria-hidden="true"></a>if (a > 3) {</span>
+<span id="cb181-10"><a href="#cb181-10" aria-hidden="true"></a>    moveShip(5 * gravity, DOWN);</span>
+<span id="cb181-11"><a href="#cb181-11" aria-hidden="true"></a>}</span>
+<span id="cb181-12"><a href="#cb181-12" aria-hidden="true"></a>~~~~~~</span>
+<span id="cb181-13"><a href="#cb181-13" aria-hidden="true"></a></span>
+<span id="cb181-14"><a href="#cb181-14" aria-hidden="true"></a>  ``` html</span>
+<span id="cb181-15"><a href="#cb181-15" aria-hidden="true"></a>  <pre></span>
+<span id="cb181-16"><a href="#cb181-16" aria-hidden="true"></a>    <code></span>
+<span id="cb181-17"><a href="#cb181-17" aria-hidden="true"></a>      // Some comments</span>
+<span id="cb181-18"><a href="#cb181-18" aria-hidden="true"></a>      line 1 of code</span>
+<span id="cb181-19"><a href="#cb181-19" aria-hidden="true"></a>      line 2 of code</span>
+<span id="cb181-20"><a href="#cb181-20" aria-hidden="true"></a>      line 3 of code</span>
+<span id="cb181-21"><a href="#cb181-21" aria-hidden="true"></a>    </code></span>
+<span id="cb181-22"><a href="#cb181-22" aria-hidden="true"></a>  </pre></span>
+<span id="cb181-23"><a href="#cb181-23" aria-hidden="true"></a>  ```</span>
+<span id="cb181-24"><a href="#cb181-24" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb181-25"><a href="#cb181-25" 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="cb181"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb181-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb182"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb182-1"><a href="#cb182-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>
-<div class="sourceCode" id="cb182"><pre class="sourceCode js"><code class="sourceCode javascript"><a class="sourceLine" id="cb182-1" data-line-number="1"><span class="cf">if</span> (a <span class="op">></span> <span class="dv">3</span>) <span class="op">{</span></a>
-<a class="sourceLine" id="cb182-2" data-line-number="2">    <span class="at">moveShip</span>(<span class="dv">5</span> <span class="op">*</span> gravity<span class="op">,</span> DOWN)<span class="op">;</span></a>
-<a class="sourceLine" id="cb182-3" data-line-number="3"><span class="op">}</span></a></code></pre></div>
-<div class="sourceCode" id="cb183"><pre class="sourceCode html"><code class="sourceCode html"><a class="sourceLine" id="cb183-1" data-line-number="1"><span class="kw"><pre></span></a>
-<a class="sourceLine" id="cb183-2" data-line-number="2">  <span class="kw"><code></span></a>
-<a class="sourceLine" id="cb183-3" data-line-number="3">    // Some comments</a>
-<a class="sourceLine" id="cb183-4" data-line-number="4">    line 1 of code</a>
-<a class="sourceLine" id="cb183-5" data-line-number="5">    line 2 of code</a>
-<a class="sourceLine" id="cb183-6" data-line-number="6">    line 3 of code</a>
-<a class="sourceLine" id="cb183-7" data-line-number="7">  <span class="kw"></code></span></a>
-<a class="sourceLine" id="cb183-8" data-line-number="8"><span class="kw"></pre></span></a></code></pre></div>
+<div class="sourceCode" id="cb183"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb183-1"><a href="#cb183-1" aria-hidden="true"></a><span class="cf">if</span> (a <span class="op">></span> <span class="dv">3</span>) {</span>
+<span id="cb183-2"><a href="#cb183-2" aria-hidden="true"></a>    <span class="fu">moveShip</span>(<span class="dv">5</span> <span class="op">*</span> gravity<span class="op">,</span> DOWN)<span class="op">;</span></span>
+<span id="cb183-3"><a href="#cb183-3" aria-hidden="true"></a>}</span></code></pre></div>
+<div class="sourceCode" id="cb184"><pre class="sourceCode html"><code class="sourceCode html"><span id="cb184-1"><a href="#cb184-1" aria-hidden="true"></a><span class="kw"><pre></span></span>
+<span id="cb184-2"><a href="#cb184-2" aria-hidden="true"></a>  <span class="kw"><code></span></span>
+<span id="cb184-3"><a href="#cb184-3" aria-hidden="true"></a>    // Some comments</span>
+<span id="cb184-4"><a href="#cb184-4" aria-hidden="true"></a>    line 1 of code</span>
+<span id="cb184-5"><a href="#cb184-5" aria-hidden="true"></a>    line 2 of code</span>
+<span id="cb184-6"><a href="#cb184-6" aria-hidden="true"></a>    line 3 of code</span>
+<span id="cb184-7"><a href="#cb184-7" aria-hidden="true"></a>  <span class="kw"></code></span></span>
+<span id="cb184-8"><a href="#cb184-8" aria-hidden="true"></a><span class="kw"></pre></span></span></code></pre></div>
 </blockquote>
-<h4 id="option-finalizecache"><span class="header-section-number">2.2.1.14</span> Option <code>finalizeCache</code></h4>
+<h4 data-number="2.2.1.14" id="option-finalizecache"><span class="header-section-number">2.2.1.14</span> Option <code>finalizeCache</code></h4>
 <dl>
 <dt><code>finalizeCache</code> (default value: <code>false</code>)</dt>
 <dd><p>Whether an output file specified with the <strong><code>frozenCacheFileName</code></strong> option (frozen cache) that contains a mapping between an enumeration of markdown documents and their auxiliary cache files will be created.</p>
-<p>The frozen cache makes it possible to later typeset a plain <span class="tex">T<sub>e</sub>X</span> document that contains markdown documents without invoking Lua using the <code>\markdownOptionFrozenCache</code> plain <span class="tex">T<sub>e</sub>X</span> option. As a result, the plain <span class="tex">T<sub>e</sub>X</span> document becomes more portable, but further changes in the order and the content of markdown documents will not be reflected.</p>
+<p>The frozen cache makes it possible to later typeset a plain <span class="tex">T<sub>e</sub>X</span> document that contains markdown documents without invoking Lua using the  plain <span class="tex">T<sub>e</sub>X</span> option. As a result, the plain <span class="tex">T<sub>e</sub>X</span> document becomes more portable, but further changes in the order and the content of markdown documents will not be reflected.</p>
 </dd>
 </dl>
-<h5 id="plain-tex-example-7" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-7">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="cb184"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb184-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb184-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFinalizeCache{true}</a>
-<a class="sourceLine" id="cb184-3" data-line-number="3"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb184-4" data-line-number="4">Hello *world*!</a>
-<a class="sourceLine" id="cb184-5" data-line-number="5"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb184-6" data-line-number="6"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb185"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb185-1"><a href="#cb185-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb185-2"><a href="#cb185-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFinalizeCache</span>{true}</span>
+<span id="cb185-3"><a href="#cb185-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb185-4"><a href="#cb185-4" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb185-5"><a href="#cb185-5" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb185-6"><a href="#cb185-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="cb185"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb185-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb186"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb186-1"><a href="#cb186-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 text “Hello <em>world</em>!” A frozen cache will also be produced as we requested using the <code>finalizeCache</code> option.</p>
 <p>Next, change the content of <code>document.tex</code> as follows:</p>
-<div class="sourceCode" id="cb186"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb186-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb186-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFrozenCache{true}</a>
-<a class="sourceLine" id="cb186-3" data-line-number="3"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb186-4" data-line-number="4">Hi *world*!</a>
-<a class="sourceLine" id="cb186-5" data-line-number="5"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb186-6" data-line-number="6"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb187"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb187-1"><a href="#cb187-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb187-2"><a href="#cb187-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFrozenCache</span>{true}</span>
+<span id="cb187-3"><a href="#cb187-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb187-4"><a href="#cb187-4" aria-hidden="true"></a>Hi *world*!</span>
+<span id="cb187-5"><a href="#cb187-5" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb187-6"><a href="#cb187-6" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Last, invoke pdfTeX without shell access from the terminal:</p>
-<div class="sourceCode" id="cb187"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb187-1" data-line-number="1"><span class="ex">pdftex</span> -no-shell-escape document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb188"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb188-1"><a href="#cb188-1" aria-hidden="true"></a><span class="ex">pdftex</span> -no-shell-escape document.tex</span></code></pre></div>
 <p>A new PDF document named <code>document.pdf</code> should be produced and contain the same text “Hello <em>world</em>!” Since we used the contents of the frozen cache using the <code>\markdownOptionFrozenCache</code> option, we were able to typeset the document without accessing the shell or invoking Lua, but the change in the content of the markdown document from “Hello <em>world</em>!” to “Hi <em>world</em>!” was not reflected.</p>
-<h5 id="latex-example-13" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-13"><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="cb188"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb188-1" data-line-number="1"><span class="bu">\documentclass</span>[finalizecache]{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb188-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb188-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb188-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb188-5" data-line-number="5">Hello *world*!</a>
-<a class="sourceLine" id="cb188-6" data-line-number="6"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb188-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb189"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb189-1"><a href="#cb189-1" aria-hidden="true"></a><span class="bu">\documentclass</span>[finalizecache]{<span class="ex">article</span>}</span>
+<span id="cb189-2"><a href="#cb189-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb189-3"><a href="#cb189-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb189-4"><a href="#cb189-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb189-5"><a href="#cb189-5" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb189-6"><a href="#cb189-6" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb189-7"><a href="#cb189-7" 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="cb189"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb189-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb190"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb190-1"><a href="#cb190-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 text “Hello <em>world</em>!” A frozen cache will also be produced as we requested using the <code>finalizecache</code> option.</p>
 <p>Next, change the content of <code>document.tex</code> as follows:</p>
-<div class="sourceCode" id="cb190"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb190-1" data-line-number="1"><span class="bu">\documentclass</span>[frozencache]{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb190-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb190-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb190-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb190-5" data-line-number="5">Hi *world*!</a>
-<a class="sourceLine" id="cb190-6" data-line-number="6"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb190-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb191"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb191-1"><a href="#cb191-1" aria-hidden="true"></a><span class="bu">\documentclass</span>[frozencache]{<span class="ex">article</span>}</span>
+<span id="cb191-2"><a href="#cb191-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb191-3"><a href="#cb191-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb191-4"><a href="#cb191-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb191-5"><a href="#cb191-5" aria-hidden="true"></a>Hi *world*!</span>
+<span id="cb191-6"><a href="#cb191-6" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb191-7"><a href="#cb191-7" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
 <p>Last, invoke pdfTeX without shell access from the terminal:</p>
-<div class="sourceCode" id="cb191"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb191-1" data-line-number="1"><span class="ex">pdflatex</span> -no-shell-escape document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb192"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb192-1"><a href="#cb192-1" aria-hidden="true"></a><span class="ex">pdflatex</span> -no-shell-escape document.tex</span></code></pre></div>
 <p>A new PDF document named <code>document.pdf</code> should be produced and contain the same text “Hello <em>world</em>!” Since we used the contents of the frozen cache using the <code>\markdownOptionFrozenCache</code> option, we were able to typeset the document without accessing the shell or invoking Lua, but the change in the content of the markdown document from “Hello <em>world</em>!” to “Hi <em>world</em>!” was not reflected.</p>
-<h5 id="context-example-11" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-11">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="cb192"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb192-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb192-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFinalizeCache{true}</a>
-<a class="sourceLine" id="cb192-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb192-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb192-5" data-line-number="5">Hello *world*!</a>
-<a class="sourceLine" id="cb192-6" data-line-number="6"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb192-7" data-line-number="7"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb193"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb193-1"><a href="#cb193-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb193-2"><a href="#cb193-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFinalizeCache</span>{true}</span>
+<span id="cb193-3"><a href="#cb193-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb193-4"><a href="#cb193-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb193-5"><a href="#cb193-5" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb193-6"><a href="#cb193-6" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb193-7"><a href="#cb193-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="cb193"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb193-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb194"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb194-1"><a href="#cb194-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 text “Hello <em>world</em>!” A frozen cache will also be produced in the <code>cache.tex</code> output file as we requested using the <code>finalizeCache</code> option.</p>
 <p>Next, change the content of <code>document.tex</code> as follows:</p>
-<div class="sourceCode" id="cb194"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb194-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb194-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFrozenCache{true}</a>
-<a class="sourceLine" id="cb194-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb194-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb194-5" data-line-number="5">Hi *world*!</a>
-<a class="sourceLine" id="cb194-6" data-line-number="6"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb194-7" data-line-number="7"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb195"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb195-1"><a href="#cb195-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb195-2"><a href="#cb195-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFrozenCache</span>{true}</span>
+<span id="cb195-3"><a href="#cb195-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb195-4"><a href="#cb195-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb195-5"><a href="#cb195-5" aria-hidden="true"></a>Hi *world*!</span>
+<span id="cb195-6"><a href="#cb195-6" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb195-7"><a href="#cb195-7" aria-hidden="true"></a><span class="fu">\stoptext</span></span></code></pre></div>
 <p>Last, invoke pdfTeX without shell access from the terminal:</p>
-<div class="sourceCode" id="cb195"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb195-1" data-line-number="1"><span class="ex">texexec</span> --passon=--no-shell-escape document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb196"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb196-1"><a href="#cb196-1" aria-hidden="true"></a><span class="ex">texexec</span> --passon=--no-shell-escape document.tex</span></code></pre></div>
 <p>A new PDF document named <code>document.pdf</code> should be produced and contain the same text “Hello <em>world</em>!” Since we used the contents of the frozen cache using the <code>\markdownOptionFrozenCache</code> option, we were able to typeset the document without accessing the shell or invoking Lua, but the change in the content of the markdown document from “Hello <em>world</em>!” to “Hi <em>world</em>!” was not reflected.</p>
-<h4 id="option-footnotes"><span class="header-section-number">2.2.1.15</span> Option <code>footnotes</code></h4>
+<h4 data-number="2.2.1.15" id="option-footnotes"><span class="header-section-number">2.2.1.15</span> Option <code>footnotes</code></h4>
 <dl>
 <dt><code>footnotes</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Enable the pandoc footnote syntax extension:</p>
-<div class="sourceCode" id="cb196"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb196-1" data-line-number="1">Here is a footnote reference,<span class="ot">[^1]</span> and another.<span class="ot">[^longnote]</span></a>
-<a class="sourceLine" id="cb196-2" data-line-number="2"></a>
-<a class="sourceLine" id="cb196-3" data-line-number="3"><span class="ot">[^1]</span>: Here is the footnote.</a>
-<a class="sourceLine" id="cb196-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb196-5" data-line-number="5"><span class="ot">[^longnote]</span>: Here's one with multiple blocks.</a>
-<a class="sourceLine" id="cb196-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb196-7" data-line-number="7"><span class="bn">    Subsequent paragraphs are indented to show that they</span></a>
-<a class="sourceLine" id="cb196-8" data-line-number="8">belong to the previous footnote.</a>
-<a class="sourceLine" id="cb196-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb196-10" data-line-number="10"><span class="bn">        { some.code }</span></a>
-<a class="sourceLine" id="cb196-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb196-12" data-line-number="12"><span class="bn">    The whole paragraph can be indented, or just the</span></a>
-<a class="sourceLine" id="cb196-13" data-line-number="13"><span class="bn">    first line.  In this way, multi-paragraph footnotes</span></a>
-<a class="sourceLine" id="cb196-14" data-line-number="14"><span class="bn">    work like multi-paragraph list items.</span></a>
-<a class="sourceLine" id="cb196-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb196-16" data-line-number="16">This paragraph won't be part of the note, because it</a>
-<a class="sourceLine" id="cb196-17" data-line-number="17">isn't indented.</a></code></pre></div>
+<div class="sourceCode" id="cb197"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb197-1"><a href="#cb197-1" aria-hidden="true"></a>Here is a footnote reference,<span class="ot">[^1]</span> and another.<span class="ot">[^longnote]</span></span>
+<span id="cb197-2"><a href="#cb197-2" aria-hidden="true"></a></span>
+<span id="cb197-3"><a href="#cb197-3" aria-hidden="true"></a><span class="ot">[^1]: </span>Here is the footnote.</span>
+<span id="cb197-4"><a href="#cb197-4" aria-hidden="true"></a></span>
+<span id="cb197-5"><a href="#cb197-5" aria-hidden="true"></a><span class="ot">[^longnote]: </span>Here's one with multiple blocks.</span>
+<span id="cb197-6"><a href="#cb197-6" aria-hidden="true"></a></span>
+<span id="cb197-7"><a href="#cb197-7" aria-hidden="true"></a><span class="in">    Subsequent paragraphs are indented to show that they</span></span>
+<span id="cb197-8"><a href="#cb197-8" aria-hidden="true"></a>belong to the previous footnote.</span>
+<span id="cb197-9"><a href="#cb197-9" aria-hidden="true"></a></span>
+<span id="cb197-10"><a href="#cb197-10" aria-hidden="true"></a><span class="in">        { some.code }</span></span>
+<span id="cb197-11"><a href="#cb197-11" aria-hidden="true"></a></span>
+<span id="cb197-12"><a href="#cb197-12" aria-hidden="true"></a><span class="in">    The whole paragraph can be indented, or just the</span></span>
+<span id="cb197-13"><a href="#cb197-13" aria-hidden="true"></a><span class="in">    first line.  In this way, multi-paragraph footnotes</span></span>
+<span id="cb197-14"><a href="#cb197-14" aria-hidden="true"></a><span class="in">    work like multi-paragraph list items.</span></span>
+<span id="cb197-15"><a href="#cb197-15" aria-hidden="true"></a></span>
+<span id="cb197-16"><a href="#cb197-16" aria-hidden="true"></a>This paragraph won't be part of the note, because it</span>
+<span id="cb197-17"><a href="#cb197-17" aria-hidden="true"></a>isn't indented.</span></code></pre></div>
 </dd>
 </dl>
 </dd>
@@ -2046,71 +2054,71 @@
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-14" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-14"><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="cb197"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb197-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb197-2" data-line-number="2"><span class="bu">\usepackage</span>[footnotes]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb197-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb197-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb197-5" data-line-number="5">Here is a footnote reference,[^1] and another.[^longnote]</a>
-<a class="sourceLine" id="cb197-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb197-7" data-line-number="7">[^1]: Here is the footnote.</a>
-<a class="sourceLine" id="cb197-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb197-9" data-line-number="9">[^longnote]: Here's one with multiple blocks.</a>
-<a class="sourceLine" id="cb197-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb197-11" data-line-number="11">    Subsequent paragraphs are indented to show that they</a>
-<a class="sourceLine" id="cb197-12" data-line-number="12">belong to the previous footnote.</a>
-<a class="sourceLine" id="cb197-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb197-14" data-line-number="14">        { some.code }</a>
-<a class="sourceLine" id="cb197-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb197-16" data-line-number="16">    The whole paragraph can be indented, or just the</a>
-<a class="sourceLine" id="cb197-17" data-line-number="17">    first line.  In this way, multi-paragraph footnotes</a>
-<a class="sourceLine" id="cb197-18" data-line-number="18">    work like multi-paragraph list items.</a>
-<a class="sourceLine" id="cb197-19" data-line-number="19"></a>
-<a class="sourceLine" id="cb197-20" data-line-number="20">This paragraph won't be part of the note, because it</a>
-<a class="sourceLine" id="cb197-21" data-line-number="21">isn't indented.</a>
-<a class="sourceLine" id="cb197-22" data-line-number="22"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb197-23" data-line-number="23"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb198"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb198-1"><a href="#cb198-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb198-2"><a href="#cb198-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[footnotes]{<span class="ex">markdown</span>}</span>
+<span id="cb198-3"><a href="#cb198-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb198-4"><a href="#cb198-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb198-5"><a href="#cb198-5" aria-hidden="true"></a>Here is a footnote reference,[^1] and another.[^longnote]</span>
+<span id="cb198-6"><a href="#cb198-6" aria-hidden="true"></a></span>
+<span id="cb198-7"><a href="#cb198-7" aria-hidden="true"></a>[^1]: Here is the footnote.</span>
+<span id="cb198-8"><a href="#cb198-8" aria-hidden="true"></a></span>
+<span id="cb198-9"><a href="#cb198-9" aria-hidden="true"></a>[^longnote]: Here's one with multiple blocks.</span>
+<span id="cb198-10"><a href="#cb198-10" aria-hidden="true"></a></span>
+<span id="cb198-11"><a href="#cb198-11" aria-hidden="true"></a>    Subsequent paragraphs are indented to show that they</span>
+<span id="cb198-12"><a href="#cb198-12" aria-hidden="true"></a>belong to the previous footnote.</span>
+<span id="cb198-13"><a href="#cb198-13" aria-hidden="true"></a></span>
+<span id="cb198-14"><a href="#cb198-14" aria-hidden="true"></a>        { some.code }</span>
+<span id="cb198-15"><a href="#cb198-15" aria-hidden="true"></a></span>
+<span id="cb198-16"><a href="#cb198-16" aria-hidden="true"></a>    The whole paragraph can be indented, or just the</span>
+<span id="cb198-17"><a href="#cb198-17" aria-hidden="true"></a>    first line.  In this way, multi-paragraph footnotes</span>
+<span id="cb198-18"><a href="#cb198-18" aria-hidden="true"></a>    work like multi-paragraph list items.</span>
+<span id="cb198-19"><a href="#cb198-19" aria-hidden="true"></a></span>
+<span id="cb198-20"><a href="#cb198-20" aria-hidden="true"></a>This paragraph won't be part of the note, because it</span>
+<span id="cb198-21"><a href="#cb198-21" aria-hidden="true"></a>isn't indented.</span>
+<span id="cb198-22"><a href="#cb198-22" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb198-23"><a href="#cb198-23" 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="cb198"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb198-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb199"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb199-1"><a href="#cb199-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>Here is a footnote reference,<a href="#fn1" class="footnote-ref" id="fnref1"><sup>1</sup></a> and another.<a href="#fn2" class="footnote-ref" id="fnref2"><sup>2</sup></a></p>
+<p>Here is a footnote reference,<a href="#fn1" class="footnote-ref" id="fnref1" role="doc-noteref"><sup>1</sup></a> and another.<a href="#fn2" class="footnote-ref" id="fnref2" role="doc-noteref"><sup>2</sup></a></p>
 <p>This paragraph won’t be part of the note, because it isn’t indented.</p>
 </blockquote>
-<h5 id="context-example-12" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-12">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="cb200"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb200-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb200-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFootnotes{true}</a>
-<a class="sourceLine" id="cb200-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb200-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb200-5" data-line-number="5">Here is a footnote reference,[^1] and another.[^longnote]</a>
-<a class="sourceLine" id="cb200-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb200-7" data-line-number="7">[^1]: Here is the footnote.</a>
-<a class="sourceLine" id="cb200-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb200-9" data-line-number="9">[^longnote]: Here's one with multiple blocks.</a>
-<a class="sourceLine" id="cb200-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb200-11" data-line-number="11">    Subsequent paragraphs are indented to show that they</a>
-<a class="sourceLine" id="cb200-12" data-line-number="12">belong to the previous footnote.</a>
-<a class="sourceLine" id="cb200-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb200-14" data-line-number="14">        { some.code }</a>
-<a class="sourceLine" id="cb200-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb200-16" data-line-number="16">    The whole paragraph can be indented, or just the</a>
-<a class="sourceLine" id="cb200-17" data-line-number="17">    first line.  In this way, multi-paragraph footnotes</a>
-<a class="sourceLine" id="cb200-18" data-line-number="18">    work like multi-paragraph list items.</a>
-<a class="sourceLine" id="cb200-19" data-line-number="19"></a>
-<a class="sourceLine" id="cb200-20" data-line-number="20">This paragraph won't be part of the note, because it</a>
-<a class="sourceLine" id="cb200-21" data-line-number="21">isn't indented.</a>
-<a class="sourceLine" id="cb200-22" data-line-number="22"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb200-23" data-line-number="23"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb201"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb201-1"><a href="#cb201-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb201-2"><a href="#cb201-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFootnotes</span>{true}</span>
+<span id="cb201-3"><a href="#cb201-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb201-4"><a href="#cb201-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb201-5"><a href="#cb201-5" aria-hidden="true"></a>Here is a footnote reference,[^1] and another.[^longnote]</span>
+<span id="cb201-6"><a href="#cb201-6" aria-hidden="true"></a></span>
+<span id="cb201-7"><a href="#cb201-7" aria-hidden="true"></a>[^1]: Here is the footnote.</span>
+<span id="cb201-8"><a href="#cb201-8" aria-hidden="true"></a></span>
+<span id="cb201-9"><a href="#cb201-9" aria-hidden="true"></a>[^longnote]: Here's one with multiple blocks.</span>
+<span id="cb201-10"><a href="#cb201-10" aria-hidden="true"></a></span>
+<span id="cb201-11"><a href="#cb201-11" aria-hidden="true"></a>    Subsequent paragraphs are indented to show that they</span>
+<span id="cb201-12"><a href="#cb201-12" aria-hidden="true"></a>belong to the previous footnote.</span>
+<span id="cb201-13"><a href="#cb201-13" aria-hidden="true"></a></span>
+<span id="cb201-14"><a href="#cb201-14" aria-hidden="true"></a>        { some.code }</span>
+<span id="cb201-15"><a href="#cb201-15" aria-hidden="true"></a></span>
+<span id="cb201-16"><a href="#cb201-16" aria-hidden="true"></a>    The whole paragraph can be indented, or just the</span>
+<span id="cb201-17"><a href="#cb201-17" aria-hidden="true"></a>    first line.  In this way, multi-paragraph footnotes</span>
+<span id="cb201-18"><a href="#cb201-18" aria-hidden="true"></a>    work like multi-paragraph list items.</span>
+<span id="cb201-19"><a href="#cb201-19" aria-hidden="true"></a></span>
+<span id="cb201-20"><a href="#cb201-20" aria-hidden="true"></a>This paragraph won't be part of the note, because it</span>
+<span id="cb201-21"><a href="#cb201-21" aria-hidden="true"></a>isn't indented.</span>
+<span id="cb201-22"><a href="#cb201-22" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb201-23"><a href="#cb201-23" 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="cb201"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb201-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb202"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb202-1"><a href="#cb202-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>Here is a footnote reference,<a href="#fn3" class="footnote-ref" id="fnref3"><sup>3</sup></a> and another.<a href="#fn4" class="footnote-ref" id="fnref4"><sup>4</sup></a></p>
+<p>Here is a footnote reference,<a href="#fn3" class="footnote-ref" id="fnref3" role="doc-noteref"><sup>3</sup></a> and another.<a href="#fn4" class="footnote-ref" id="fnref4" role="doc-noteref"><sup>4</sup></a></p>
 <p>This paragraph won’t be part of the note, because it isn’t indented.</p>
 </blockquote>
-<h4 id="option-frozencachecounter"><span class="header-section-number">2.2.1.16</span> Option <code>frozenCacheCounter</code></h4>
+<h4 data-number="2.2.1.16" id="option-frozencachecounter"><span class="header-section-number">2.2.1.16</span> Option <code>frozenCacheCounter</code></h4>
 <dl>
 <dt><code>frozenCacheCounter</code> (default value: <code>0</code>)</dt>
 <dd><p>The number of the current markdown document that will be stored in an output file (frozen cache) when the <strong><code>finalizeCache</code></strong> is enabled. When the document number is 0, then a new frozen cache will be created. Otherwise, the frozen cache will be appended.</p>
@@ -2117,29 +2125,29 @@
 <p>Each frozen cache entry will define a <span class="tex">T<sub>e</sub>X</span> macro <code>\markdownFrozenCache</code>⟨<em>number</em>⟩ that will typeset markdown document number ⟨<em>number</em>⟩.</p>
 </dd>
 </dl>
-<h5 id="lua-module-example-7" class="unnumbered">Lua Module Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-module-example-7">Lua Module 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="cb203"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb203-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb203-2" data-line-number="2"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb203-3" data-line-number="3">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb203-4" data-line-number="4">  local firstConvert = markdown.new({finalizeCache = true, frozenCacheCounter = 0})</a>
-<a class="sourceLine" id="cb203-5" data-line-number="5">  local firstInput = "Hello"</a>
-<a class="sourceLine" id="cb203-6" data-line-number="6">  local secondConvert = markdown.new({finalizeCache = true, frozenCacheCounter = 1})</a>
-<a class="sourceLine" id="cb203-7" data-line-number="7">  local secondInput = "*world*!"</a>
-<a class="sourceLine" id="cb203-8" data-line-number="8">  tex.sprint(firstConvert(firstInput) .. [[ ]] .. secondConvert(secondInput)) }</a>
-<a class="sourceLine" id="cb203-9" data-line-number="9"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb204"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb204-1"><a href="#cb204-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb204-2"><a href="#cb204-2" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb204-3"><a href="#cb204-3" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb204-4"><a href="#cb204-4" aria-hidden="true"></a>  local firstConvert = markdown.new({finalizeCache = true, frozenCacheCounter = 0})</span>
+<span id="cb204-5"><a href="#cb204-5" aria-hidden="true"></a>  local firstInput = "Hello"</span>
+<span id="cb204-6"><a href="#cb204-6" aria-hidden="true"></a>  local secondConvert = markdown.new({finalizeCache = true, frozenCacheCounter = 1})</span>
+<span id="cb204-7"><a href="#cb204-7" aria-hidden="true"></a>  local secondInput = "*world*!"</span>
+<span id="cb204-8"><a href="#cb204-8" aria-hidden="true"></a>  tex.sprint(firstConvert(firstInput) .. [[ ]] .. secondConvert(secondInput)) }</span>
+<span id="cb204-9"><a href="#cb204-9" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Then, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb204"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb204-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb205"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb205-1"><a href="#cb205-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 text “Hello <em>world</em>!” A frozen cache with two entries will also be produced as we requested using the <code>frozenCacheCounter</code> option.</p>
-<h4 id="option-hashenumerators"><span class="header-section-number">2.2.1.17</span> Option <code>hashEnumerators</code></h4>
+<h4 data-number="2.2.1.17" id="option-hashenumerators"><span class="header-section-number">2.2.1.17</span> Option <code>hashEnumerators</code></h4>
 <dl>
 <dt><code>hashEnumerators</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Enable the use of hash symbols (<code>#</code>) as ordered item list markers:</p>
-<div class="sourceCode" id="cb205"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb205-1" data-line-number="1">#. Bird</a>
-<a class="sourceLine" id="cb205-2" data-line-number="2">#. McHale</a>
-<a class="sourceLine" id="cb205-3" data-line-number="3">#. Parish</a></code></pre></div>
+<div class="sourceCode" id="cb206"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb206-1"><a href="#cb206-1" aria-hidden="true"></a>#. Bird</span>
+<span id="cb206-2"><a href="#cb206-2" aria-hidden="true"></a>#. McHale</span>
+<span id="cb206-3"><a href="#cb206-3" aria-hidden="true"></a>#. Parish</span></code></pre></div>
 </dd>
 </dl>
 </dd>
@@ -2150,27 +2158,27 @@
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-15" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-15"><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="cb206"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb206-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb206-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb206-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb206-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb206-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb206-6" data-line-number="6">. Bird</a>
-<a class="sourceLine" id="cb206-7" data-line-number="7">. McHale</a>
-<a class="sourceLine" id="cb206-8" data-line-number="8">. Parish</a>
-<a class="sourceLine" id="cb206-9" data-line-number="9"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb206-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb206-11" data-line-number="11"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{hashEnumerators}</a>
-<a class="sourceLine" id="cb206-12" data-line-number="12">. Bird</a>
-<a class="sourceLine" id="cb206-13" data-line-number="13">. McHale</a>
-<a class="sourceLine" id="cb206-14" data-line-number="14">. Parish</a>
-<a class="sourceLine" id="cb206-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb206-16" data-line-number="16"></a>
-<a class="sourceLine" id="cb206-17" data-line-number="17"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb207"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb207-1"><a href="#cb207-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb207-2"><a href="#cb207-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb207-3"><a href="#cb207-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb207-4"><a href="#cb207-4" aria-hidden="true"></a></span>
+<span id="cb207-5"><a href="#cb207-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb207-6"><a href="#cb207-6" aria-hidden="true"></a>. Bird</span>
+<span id="cb207-7"><a href="#cb207-7" aria-hidden="true"></a>. McHale</span>
+<span id="cb207-8"><a href="#cb207-8" aria-hidden="true"></a>. Parish</span>
+<span id="cb207-9"><a href="#cb207-9" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb207-10"><a href="#cb207-10" aria-hidden="true"></a></span>
+<span id="cb207-11"><a href="#cb207-11" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{hashEnumerators}</span>
+<span id="cb207-12"><a href="#cb207-12" aria-hidden="true"></a>. Bird</span>
+<span id="cb207-13"><a href="#cb207-13" aria-hidden="true"></a>. McHale</span>
+<span id="cb207-14"><a href="#cb207-14" aria-hidden="true"></a>. Parish</span>
+<span id="cb207-15"><a href="#cb207-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb207-16"><a href="#cb207-16" aria-hidden="true"></a></span>
+<span id="cb207-17"><a href="#cb207-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="cb207"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb207-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb208"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb208-1"><a href="#cb208-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>
 <h1 id="bird">. Bird</h1>
@@ -2182,27 +2190,27 @@
 <li>Parish</li>
 </ol>
 </blockquote>
-<h5 id="context-example-13" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-13">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="cb208"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb208-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb208-2" data-line-number="2"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb208-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb208-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb208-5" data-line-number="5">. Bird</a>
-<a class="sourceLine" id="cb208-6" data-line-number="6">. McHale</a>
-<a class="sourceLine" id="cb208-7" data-line-number="7">. Parish</a>
-<a class="sourceLine" id="cb208-8" data-line-number="8"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb208-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb208-10" data-line-number="10"><span class="fu">\def</span>\markdownOptionHashEnumerators{true}</a>
-<a class="sourceLine" id="cb208-11" data-line-number="11"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb208-12" data-line-number="12">. Bird</a>
-<a class="sourceLine" id="cb208-13" data-line-number="13">. McHale</a>
-<a class="sourceLine" id="cb208-14" data-line-number="14">. Parish</a>
-<a class="sourceLine" id="cb208-15" data-line-number="15"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb208-16" data-line-number="16"></a>
-<a class="sourceLine" id="cb208-17" data-line-number="17"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb209"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb209-1"><a href="#cb209-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb209-2"><a href="#cb209-2" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb209-3"><a href="#cb209-3" aria-hidden="true"></a></span>
+<span id="cb209-4"><a href="#cb209-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb209-5"><a href="#cb209-5" aria-hidden="true"></a>. Bird</span>
+<span id="cb209-6"><a href="#cb209-6" aria-hidden="true"></a>. McHale</span>
+<span id="cb209-7"><a href="#cb209-7" aria-hidden="true"></a>. Parish</span>
+<span id="cb209-8"><a href="#cb209-8" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb209-9"><a href="#cb209-9" aria-hidden="true"></a></span>
+<span id="cb209-10"><a href="#cb209-10" aria-hidden="true"></a><span class="fu">\def\markdownOptionHashEnumerators</span>{true}</span>
+<span id="cb209-11"><a href="#cb209-11" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb209-12"><a href="#cb209-12" aria-hidden="true"></a>. Bird</span>
+<span id="cb209-13"><a href="#cb209-13" aria-hidden="true"></a>. McHale</span>
+<span id="cb209-14"><a href="#cb209-14" aria-hidden="true"></a>. Parish</span>
+<span id="cb209-15"><a href="#cb209-15" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb209-16"><a href="#cb209-16" aria-hidden="true"></a></span>
+<span id="cb209-17"><a href="#cb209-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="cb209"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb209-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb210"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb210-1"><a href="#cb210-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>
 <h1 id="bird-1">. Bird</h1>
@@ -2214,18 +2222,18 @@
 <li>Parish</li>
 </ol>
 </blockquote>
-<h4 id="header-attributes"><span class="header-section-number">2.2.1.18</span> Option <code>headerAttributes</code></h4>
+<h4 data-number="2.2.1.18" id="header-attributes"><span class="header-section-number">2.2.1.18</span> Option <code>headerAttributes</code></h4>
 <dl>
 <dt><code>headerAttributes</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Enable the assignment of HTML attributes to headings:</p>
-<div class="sourceCode" id="cb210"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb210-1" data-line-number="1"><span class="fu"># My first heading {#foo}</span></a>
-<a class="sourceLine" id="cb210-2" data-line-number="2"></a>
-<a class="sourceLine" id="cb210-3" data-line-number="3"><span class="fu">## My second heading ##    {#bar .baz}</span></a>
-<a class="sourceLine" id="cb210-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb210-5" data-line-number="5">Yet another heading   {key=value}</a>
-<a class="sourceLine" id="cb210-6" data-line-number="6">===================</a></code></pre></div>
+<div class="sourceCode" id="cb211"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb211-1"><a href="#cb211-1" aria-hidden="true"></a><span class="fu"># My first heading {#foo}</span></span>
+<span id="cb211-2"><a href="#cb211-2" aria-hidden="true"></a></span>
+<span id="cb211-3"><a href="#cb211-3" aria-hidden="true"></a><span class="fu">## My second heading ##    {#bar .baz}</span></span>
+<span id="cb211-4"><a href="#cb211-4" aria-hidden="true"></a></span>
+<span id="cb211-5"><a href="#cb211-5" aria-hidden="true"></a>Yet another heading   {key=value}</span>
+<span id="cb211-6"><a href="#cb211-6" aria-hidden="true"></a><span class="fu">===================</span></span></code></pre></div>
 <p>These HTML attributes have currently no effect other than enabling <a href="#slice">content slicing</a>.</p>
 </dd>
 </dl>
@@ -2237,7 +2245,7 @@
 </dl>
 </dd>
 </dl>
-<h4 id="option-html"><span class="header-section-number">2.2.1.19</span> Option <code>html</code></h4>
+<h4 data-number="2.2.1.19" id="option-html"><span class="header-section-number">2.2.1.19</span> Option <code>html</code></h4>
 <dl>
 <dt><code>html</code> (default value: <code>false</code>)</dt>
 <dd><dl>
@@ -2253,57 +2261,57 @@
 </dl>
 </dd>
 </dl>
-<h5 id="lua-module-example-8" class="unnumbered">Lua Module Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-module-example-8">Lua Module 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="cb211"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb211-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb211-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb211-3" data-line-number="3"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb211-4" data-line-number="4">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb211-5" data-line-number="5">  local convert = markdown.new()</a>
-<a class="sourceLine" id="cb211-6" data-line-number="6">  local newline = [[^^J^^J]]</a>
-<a class="sourceLine" id="cb211-7" data-line-number="7">  local input =</a>
-<a class="sourceLine" id="cb211-8" data-line-number="8">    "<div>*There is no block tag support.*</div>"        .. newline ..</a>
-<a class="sourceLine" id="cb211-9" data-line-number="9">    "*There is no <inline tag="tag"></inline> support.*" .. newline ..</a>
-<a class="sourceLine" id="cb211-10" data-line-number="10">    "_There is no <!-- comment --> support._"            .. newline ..</a>
-<a class="sourceLine" id="cb211-11" data-line-number="11">    "_There is no <? HTML instruction ?> support._"</a>
-<a class="sourceLine" id="cb211-12" data-line-number="12">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb211-13" data-line-number="13"><span class="fu">\par</span></a>
-<a class="sourceLine" id="cb211-14" data-line-number="14"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb211-15" data-line-number="15">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb211-16" data-line-number="16">  local convert = markdown.new({html = true})</a>
-<a class="sourceLine" id="cb211-17" data-line-number="17">  local input =</a>
-<a class="sourceLine" id="cb211-18" data-line-number="18">    "<div>*There is block tag support.*</div>"        .. newline ..</a>
-<a class="sourceLine" id="cb211-19" data-line-number="19">    "*There is <inline tag="tag"></inline> support.*" .. newline ..</a>
-<a class="sourceLine" id="cb211-20" data-line-number="20">    "_There is <!-- comment --> support._"            .. newline ..</a>
-<a class="sourceLine" id="cb211-21" data-line-number="21">    "_There is <? HTML instruction ?> support._"</a>
-<a class="sourceLine" id="cb211-22" data-line-number="22">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb211-23" data-line-number="23"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb212"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb212-1"><a href="#cb212-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb212-2"><a href="#cb212-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb212-3"><a href="#cb212-3" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb212-4"><a href="#cb212-4" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb212-5"><a href="#cb212-5" aria-hidden="true"></a>  local convert = markdown.new()</span>
+<span id="cb212-6"><a href="#cb212-6" aria-hidden="true"></a>  local newline = [[^^J^^J]]</span>
+<span id="cb212-7"><a href="#cb212-7" aria-hidden="true"></a>  local input =</span>
+<span id="cb212-8"><a href="#cb212-8" aria-hidden="true"></a>    "<div>*There is no block tag support.*</div>"        .. newline ..</span>
+<span id="cb212-9"><a href="#cb212-9" aria-hidden="true"></a>    "*There is no <inline tag="tag"></inline> support.*" .. newline ..</span>
+<span id="cb212-10"><a href="#cb212-10" aria-hidden="true"></a>    "_There is no <!-- comment --> support._"            .. newline ..</span>
+<span id="cb212-11"><a href="#cb212-11" aria-hidden="true"></a>    "_There is no <? HTML instruction ?> support._"</span>
+<span id="cb212-12"><a href="#cb212-12" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb212-13"><a href="#cb212-13" aria-hidden="true"></a><span class="fu">\par</span></span>
+<span id="cb212-14"><a href="#cb212-14" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb212-15"><a href="#cb212-15" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb212-16"><a href="#cb212-16" aria-hidden="true"></a>  local convert = markdown.new({html = true})</span>
+<span id="cb212-17"><a href="#cb212-17" aria-hidden="true"></a>  local input =</span>
+<span id="cb212-18"><a href="#cb212-18" aria-hidden="true"></a>    "<div>*There is block tag support.*</div>"        .. newline ..</span>
+<span id="cb212-19"><a href="#cb212-19" aria-hidden="true"></a>    "*There is <inline tag="tag"></inline> support.*" .. newline ..</span>
+<span id="cb212-20"><a href="#cb212-20" aria-hidden="true"></a>    "_There is <!-- comment --> support._"            .. newline ..</span>
+<span id="cb212-21"><a href="#cb212-21" aria-hidden="true"></a>    "_There is <? HTML instruction ?> support._"</span>
+<span id="cb212-22"><a href="#cb212-22" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb212-23"><a href="#cb212-23" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Then, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb212"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb212-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb213"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb213-1"><a href="#cb213-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><div>There is no block tag support.</div> There is no <inline tag=”tag”></inline> support. There is no <!– comment –> support. There is no <? HTML instruction ?> support.</p>
 <p>There is support. There is support. There is support.</p>
 </blockquote>
-<h5 id="lua-cli-example-7" class="unnumbered">Lua CLI Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-cli-example-7">Lua CLI 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="cb213"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb213-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb213-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb213-3" data-line-number="3"><span class="fu">\input</span> optionfalse</a>
-<a class="sourceLine" id="cb213-4" data-line-number="4"><span class="fu">\par</span></a>
-<a class="sourceLine" id="cb213-5" data-line-number="5"><span class="fu">\input</span> optiontrue</a>
-<a class="sourceLine" id="cb213-6" data-line-number="6"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb214"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb214-1"><a href="#cb214-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb214-2"><a href="#cb214-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb214-3"><a href="#cb214-3" aria-hidden="true"></a><span class="fu">\input</span> optionfalse</span>
+<span id="cb214-4"><a href="#cb214-4" aria-hidden="true"></a><span class="fu">\par</span></span>
+<span id="cb214-5"><a href="#cb214-5" aria-hidden="true"></a><span class="fu">\input</span> optiontrue</span>
+<span id="cb214-6"><a href="#cb214-6" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Using a text editor, create a text document named <code>content.md</code> with the following content:</p>
-<div class="sourceCode" id="cb214"><pre class="sourceCode html"><code class="sourceCode html"><a class="sourceLine" id="cb214-1" data-line-number="1"><span class="kw"><div></span></a>
-<a class="sourceLine" id="cb214-2" data-line-number="2">*Is there block tag support?*</a>
-<a class="sourceLine" id="cb214-3" data-line-number="3"><span class="kw"></div></span></a>
-<a class="sourceLine" id="cb214-4" data-line-number="4">*Is there <span class="kw"><inline</span><span class="ot"> tag=</span><span class="st">"tag"</span><span class="kw">></inline></span> support?*</a>
-<a class="sourceLine" id="cb214-5" data-line-number="5">_Is there <span class="co"><!-- comment --></span> support?_</a>
-<a class="sourceLine" id="cb214-6" data-line-number="6">_Is there <span class="kw"><?</span> HTML instruction <span class="kw">?></span> support?_</a></code></pre></div>
+<div class="sourceCode" id="cb215"><pre class="sourceCode html"><code class="sourceCode html"><span id="cb215-1"><a href="#cb215-1" aria-hidden="true"></a><span class="kw"><div></span></span>
+<span id="cb215-2"><a href="#cb215-2" aria-hidden="true"></a>*Is there block tag support?*</span>
+<span id="cb215-3"><a href="#cb215-3" aria-hidden="true"></a><span class="kw"></div></span></span>
+<span id="cb215-4"><a href="#cb215-4" aria-hidden="true"></a>*Is there <span class="kw"><inline</span><span class="ot"> tag=</span><span class="st">"tag"</span><span class="kw">></inline></span> support?*</span>
+<span id="cb215-5"><a href="#cb215-5" aria-hidden="true"></a>_Is there <span class="co"><!-- comment --></span> support?_</span>
+<span id="cb215-6"><a href="#cb215-6" aria-hidden="true"></a>_Is there <span class="kw"><?</span> HTML instruction <span class="kw">?></span> support?_</span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb215"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb215-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</a>
-<a class="sourceLine" id="cb215-2" data-line-number="2"><span class="ex">texlua</span> ⟨CLI pathname⟩ html=true -- content.md optiontrue.tex</a>
-<a class="sourceLine" id="cb215-3" data-line-number="3"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb216"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb216-1"><a href="#cb216-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</span>
+<span id="cb216-2"><a href="#cb216-2" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ html=true -- content.md optiontrue.tex</span>
+<span id="cb216-3"><a href="#cb216-3" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
 <blockquote>
@@ -2310,105 +2318,105 @@
 <p><div>Is there block tag support?</div> Is there <inline tag=”tag”></inline> support? Is there <!– comment –> support? Is there <? HTML instruction ?> support?</p>
 <p>Is there support? Is there support? Is there support?</p>
 </blockquote>
-<h5 id="plain-tex-example-8" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-8">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="cb216"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb216-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb216-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb216-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb216-4" data-line-number="4"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb216-5" data-line-number="5"><div></a>
-<a class="sourceLine" id="cb216-6" data-line-number="6">*There is no block tag support.*</a>
-<a class="sourceLine" id="cb216-7" data-line-number="7"></div></a>
-<a class="sourceLine" id="cb216-8" data-line-number="8">*There is no <inline tag="tag"></inline> support.*</a>
-<a class="sourceLine" id="cb216-9" data-line-number="9">_There is no <!-- comment --> support._</a>
-<a class="sourceLine" id="cb216-10" data-line-number="10">_There is no <? HTML instruction ?> support._</a>
-<a class="sourceLine" id="cb216-11" data-line-number="11"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb216-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb216-13" data-line-number="13"><span class="fu">\def</span>\markdownOptionHtml{true}</a>
-<a class="sourceLine" id="cb216-14" data-line-number="14"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb216-15" data-line-number="15"><div></a>
-<a class="sourceLine" id="cb216-16" data-line-number="16">*There is block tag support.*</a>
-<a class="sourceLine" id="cb216-17" data-line-number="17"></div></a>
-<a class="sourceLine" id="cb216-18" data-line-number="18">*There is <inline tag="tag"></inline> support.*</a>
-<a class="sourceLine" id="cb216-19" data-line-number="19">_There is <!-- comment --> support._</a>
-<a class="sourceLine" id="cb216-20" data-line-number="20">_There is <? HTML instruction ?> support._</a>
-<a class="sourceLine" id="cb216-21" data-line-number="21"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb216-22" data-line-number="22"></a>
-<a class="sourceLine" id="cb216-23" data-line-number="23"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb217"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb217-1"><a href="#cb217-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb217-2"><a href="#cb217-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb217-3"><a href="#cb217-3" aria-hidden="true"></a></span>
+<span id="cb217-4"><a href="#cb217-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb217-5"><a href="#cb217-5" aria-hidden="true"></a><div></span>
+<span id="cb217-6"><a href="#cb217-6" aria-hidden="true"></a>*There is no block tag support.*</span>
+<span id="cb217-7"><a href="#cb217-7" aria-hidden="true"></a></div></span>
+<span id="cb217-8"><a href="#cb217-8" aria-hidden="true"></a>*There is no <inline tag="tag"></inline> support.*</span>
+<span id="cb217-9"><a href="#cb217-9" aria-hidden="true"></a>_There is no <!-- comment --> support._</span>
+<span id="cb217-10"><a href="#cb217-10" aria-hidden="true"></a>_There is no <? HTML instruction ?> support._</span>
+<span id="cb217-11"><a href="#cb217-11" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb217-12"><a href="#cb217-12" aria-hidden="true"></a></span>
+<span id="cb217-13"><a href="#cb217-13" aria-hidden="true"></a><span class="fu">\def\markdownOptionHtml</span>{true}</span>
+<span id="cb217-14"><a href="#cb217-14" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb217-15"><a href="#cb217-15" aria-hidden="true"></a><div></span>
+<span id="cb217-16"><a href="#cb217-16" aria-hidden="true"></a>*There is block tag support.*</span>
+<span id="cb217-17"><a href="#cb217-17" aria-hidden="true"></a></div></span>
+<span id="cb217-18"><a href="#cb217-18" aria-hidden="true"></a>*There is <inline tag="tag"></inline> support.*</span>
+<span id="cb217-19"><a href="#cb217-19" aria-hidden="true"></a>_There is <!-- comment --> support._</span>
+<span id="cb217-20"><a href="#cb217-20" aria-hidden="true"></a>_There is <? HTML instruction ?> support._</span>
+<span id="cb217-21"><a href="#cb217-21" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb217-22"><a href="#cb217-22" aria-hidden="true"></a></span>
+<span id="cb217-23"><a href="#cb217-23" 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="cb217"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb217-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb218"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb218-1"><a href="#cb218-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><div>There is no block tag support.</div> There is no <inline tag=”tag”></inline> support. There is no <!– comment –> support. There is no <? HTML instruction ?> support.</p>
 <p>There is support. There is support. There is support.</p>
 </blockquote>
-<h5 id="latex-example-16" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-16"><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="cb218"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb218-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb218-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb218-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb218-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb218-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb218-6" data-line-number="6"><div></a>
-<a class="sourceLine" id="cb218-7" data-line-number="7">*There is no block tag support.*</a>
-<a class="sourceLine" id="cb218-8" data-line-number="8"></div></a>
-<a class="sourceLine" id="cb218-9" data-line-number="9">*There is no <inline tag="tag"></inline> support.*</a>
-<a class="sourceLine" id="cb218-10" data-line-number="10">_There is no <!-- comment --> support._</a>
-<a class="sourceLine" id="cb218-11" data-line-number="11">_There is no <? HTML instruction ?> support._</a>
-<a class="sourceLine" id="cb218-12" data-line-number="12"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb218-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb218-14" data-line-number="14"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{html}</a>
-<a class="sourceLine" id="cb218-15" data-line-number="15"><div></a>
-<a class="sourceLine" id="cb218-16" data-line-number="16">*There is block tag support.*</a>
-<a class="sourceLine" id="cb218-17" data-line-number="17"></div></a>
-<a class="sourceLine" id="cb218-18" data-line-number="18">*There is <inline tag="tag"></inline> support.*</a>
-<a class="sourceLine" id="cb218-19" data-line-number="19">_There is <!-- comment --> support._</a>
-<a class="sourceLine" id="cb218-20" data-line-number="20">_There is <? HTML instruction ?> support._</a>
-<a class="sourceLine" id="cb218-21" data-line-number="21"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb218-22" data-line-number="22"></a>
-<a class="sourceLine" id="cb218-23" data-line-number="23"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb219"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb219-1"><a href="#cb219-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb219-2"><a href="#cb219-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb219-3"><a href="#cb219-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb219-4"><a href="#cb219-4" aria-hidden="true"></a></span>
+<span id="cb219-5"><a href="#cb219-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb219-6"><a href="#cb219-6" aria-hidden="true"></a><div></span>
+<span id="cb219-7"><a href="#cb219-7" aria-hidden="true"></a>*There is no block tag support.*</span>
+<span id="cb219-8"><a href="#cb219-8" aria-hidden="true"></a></div></span>
+<span id="cb219-9"><a href="#cb219-9" aria-hidden="true"></a>*There is no <inline tag="tag"></inline> support.*</span>
+<span id="cb219-10"><a href="#cb219-10" aria-hidden="true"></a>_There is no <!-- comment --> support._</span>
+<span id="cb219-11"><a href="#cb219-11" aria-hidden="true"></a>_There is no <? HTML instruction ?> support._</span>
+<span id="cb219-12"><a href="#cb219-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb219-13"><a href="#cb219-13" aria-hidden="true"></a></span>
+<span id="cb219-14"><a href="#cb219-14" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{html}</span>
+<span id="cb219-15"><a href="#cb219-15" aria-hidden="true"></a><div></span>
+<span id="cb219-16"><a href="#cb219-16" aria-hidden="true"></a>*There is block tag support.*</span>
+<span id="cb219-17"><a href="#cb219-17" aria-hidden="true"></a></div></span>
+<span id="cb219-18"><a href="#cb219-18" aria-hidden="true"></a>*There is <inline tag="tag"></inline> support.*</span>
+<span id="cb219-19"><a href="#cb219-19" aria-hidden="true"></a>_There is <!-- comment --> support._</span>
+<span id="cb219-20"><a href="#cb219-20" aria-hidden="true"></a>_There is <? HTML instruction ?> support._</span>
+<span id="cb219-21"><a href="#cb219-21" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb219-22"><a href="#cb219-22" aria-hidden="true"></a></span>
+<span id="cb219-23"><a href="#cb219-23" 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="cb219"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb219-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb220"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb220-1"><a href="#cb220-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><div>There is no block tag support.</div> There is no <inline tag=”tag”></inline> support. There is no <!– comment –> support. There is no <? HTML instruction ?> support.</p>
 <p>There is support. There is support. There is support.</p>
 </blockquote>
-<h5 id="context-example-14" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-14">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="cb220"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb220-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb220-2" data-line-number="2"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb220-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb220-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb220-5" data-line-number="5"><div></a>
-<a class="sourceLine" id="cb220-6" data-line-number="6">*There is no block tag support.*</a>
-<a class="sourceLine" id="cb220-7" data-line-number="7"></div></a>
-<a class="sourceLine" id="cb220-8" data-line-number="8">*There is no <inline tag="tag"></inline> support.*</a>
-<a class="sourceLine" id="cb220-9" data-line-number="9">_There is no <!-- comment --> support._</a>
-<a class="sourceLine" id="cb220-10" data-line-number="10">_There is no <? HTML instruction ?> support._</a>
-<a class="sourceLine" id="cb220-11" data-line-number="11"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb220-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb220-13" data-line-number="13"><span class="fu">\def</span>\markdownOptionHtml{true}</a>
-<a class="sourceLine" id="cb220-14" data-line-number="14"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb220-15" data-line-number="15"><div></a>
-<a class="sourceLine" id="cb220-16" data-line-number="16">*There is block tag support.*</a>
-<a class="sourceLine" id="cb220-17" data-line-number="17"></div></a>
-<a class="sourceLine" id="cb220-18" data-line-number="18">*There is <inline tag="tag"></inline> support.*</a>
-<a class="sourceLine" id="cb220-19" data-line-number="19">_There is <!-- comment --> support._</a>
-<a class="sourceLine" id="cb220-20" data-line-number="20">_There is <? HTML instruction ?> support._</a>
-<a class="sourceLine" id="cb220-21" data-line-number="21"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb220-22" data-line-number="22"></a>
-<a class="sourceLine" id="cb220-23" data-line-number="23"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb221"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb221-1"><a href="#cb221-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb221-2"><a href="#cb221-2" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb221-3"><a href="#cb221-3" aria-hidden="true"></a></span>
+<span id="cb221-4"><a href="#cb221-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb221-5"><a href="#cb221-5" aria-hidden="true"></a><div></span>
+<span id="cb221-6"><a href="#cb221-6" aria-hidden="true"></a>*There is no block tag support.*</span>
+<span id="cb221-7"><a href="#cb221-7" aria-hidden="true"></a></div></span>
+<span id="cb221-8"><a href="#cb221-8" aria-hidden="true"></a>*There is no <inline tag="tag"></inline> support.*</span>
+<span id="cb221-9"><a href="#cb221-9" aria-hidden="true"></a>_There is no <!-- comment --> support._</span>
+<span id="cb221-10"><a href="#cb221-10" aria-hidden="true"></a>_There is no <? HTML instruction ?> support._</span>
+<span id="cb221-11"><a href="#cb221-11" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb221-12"><a href="#cb221-12" aria-hidden="true"></a></span>
+<span id="cb221-13"><a href="#cb221-13" aria-hidden="true"></a><span class="fu">\def\markdownOptionHtml</span>{true}</span>
+<span id="cb221-14"><a href="#cb221-14" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb221-15"><a href="#cb221-15" aria-hidden="true"></a><div></span>
+<span id="cb221-16"><a href="#cb221-16" aria-hidden="true"></a>*There is block tag support.*</span>
+<span id="cb221-17"><a href="#cb221-17" aria-hidden="true"></a></div></span>
+<span id="cb221-18"><a href="#cb221-18" aria-hidden="true"></a>*There is <inline tag="tag"></inline> support.*</span>
+<span id="cb221-19"><a href="#cb221-19" aria-hidden="true"></a>_There is <!-- comment --> support._</span>
+<span id="cb221-20"><a href="#cb221-20" aria-hidden="true"></a>_There is <? HTML instruction ?> support._</span>
+<span id="cb221-21"><a href="#cb221-21" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb221-22"><a href="#cb221-22" aria-hidden="true"></a></span>
+<span id="cb221-23"><a href="#cb221-23" 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="cb221"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb221-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb222"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb222-1"><a href="#cb222-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><div>There is no block tag support.</div> There is no <inline tag=”tag”></inline> support. There is no <!– comment –> support. There is no <? HTML instruction ?> support.</p>
 <p>There is support. There is support. There is support.</p>
 </blockquote>
-<h4 id="option-hybrid"><span class="header-section-number">2.2.1.20</span> Option <code>hybrid</code></h4>
+<h4 data-number="2.2.1.20" id="option-hybrid"><span class="header-section-number">2.2.1.20</span> Option <code>hybrid</code></h4>
 <dl>
-<dt><code>hybrid</code> (default value: <code>true</code>)</dt>
+<dt><code>hybrid</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Disable the escaping of special plain <span class="tex">T<sub>e</sub>X</span> characters, which makes it possible to intersperse your markdown markup with <span class="tex">T<sub>e</sub>X</span> code. The intended usage is in documents prepared manually by a human author. In such documents, it can often be desirable to mix <span class="tex">T<sub>e</sub>X</span> and markdown markup freely.</p>
@@ -2422,49 +2430,49 @@
 </dl>
 </dd>
 </dl>
-<h5 id="lua-module-example-9" class="unnumbered">Lua Module Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-module-example-9">Lua Module 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="cb222"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb222-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb222-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb222-3" data-line-number="3"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb222-4" data-line-number="4">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb222-5" data-line-number="5">  local input, convert_safe, convert_unsafe, paragraph</a>
-<a class="sourceLine" id="cb222-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb222-7" data-line-number="7">  input = [[<span class="ss">$</span><span class="sc">\string\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.]]</a>
-<a class="sourceLine" id="cb222-8" data-line-number="8">  convert_safe = markdown.new()</a>
-<a class="sourceLine" id="cb222-9" data-line-number="9">  convert_unsafe = markdown.new({hybrid = true})</a>
-<a class="sourceLine" id="cb222-10" data-line-number="10">  paragraph = [[<span class="fu">\par</span>]]</a>
-<a class="sourceLine" id="cb222-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb222-12" data-line-number="12">  tex.sprint(</a>
-<a class="sourceLine" id="cb222-13" data-line-number="13">    convert_safe(input) .. paragraph ..</a>
-<a class="sourceLine" id="cb222-14" data-line-number="14">    convert_unsafe(input)</a>
-<a class="sourceLine" id="cb222-15" data-line-number="15">  )</a>
-<a class="sourceLine" id="cb222-16" data-line-number="16">}</a>
-<a class="sourceLine" id="cb222-17" data-line-number="17"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb223"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb223-1"><a href="#cb223-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb223-2"><a href="#cb223-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb223-3"><a href="#cb223-3" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb223-4"><a href="#cb223-4" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb223-5"><a href="#cb223-5" aria-hidden="true"></a>  local input, convert_safe, convert_unsafe, paragraph</span>
+<span id="cb223-6"><a href="#cb223-6" aria-hidden="true"></a></span>
+<span id="cb223-7"><a href="#cb223-7" aria-hidden="true"></a>  input = [[<span class="ss">$</span><span class="sc">\string\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.]]</span>
+<span id="cb223-8"><a href="#cb223-8" aria-hidden="true"></a>  convert_safe = markdown.new()</span>
+<span id="cb223-9"><a href="#cb223-9" aria-hidden="true"></a>  convert_unsafe = markdown.new({hybrid = true})</span>
+<span id="cb223-10"><a href="#cb223-10" aria-hidden="true"></a>  paragraph = [[<span class="fu">\par</span>]]</span>
+<span id="cb223-11"><a href="#cb223-11" aria-hidden="true"></a></span>
+<span id="cb223-12"><a href="#cb223-12" aria-hidden="true"></a>  tex.sprint(</span>
+<span id="cb223-13"><a href="#cb223-13" aria-hidden="true"></a>    convert_safe(input) .. paragraph ..</span>
+<span id="cb223-14"><a href="#cb223-14" aria-hidden="true"></a>    convert_unsafe(input)</span>
+<span id="cb223-15"><a href="#cb223-15" aria-hidden="true"></a>  )</span>
+<span id="cb223-16"><a href="#cb223-16" aria-hidden="true"></a>}</span>
+<span id="cb223-17"><a href="#cb223-17" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Then, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb223"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb223-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb224"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb224-1"><a href="#cb224-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}$ <em>equals</em> $i$.</p>
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
-<h5 id="lua-cli-example-8" class="unnumbered">Lua CLI Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-cli-example-8">Lua CLI 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="cb224"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb224-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb224-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb224-3" data-line-number="3"><span class="fu">\input</span> optionfalse</a>
-<a class="sourceLine" id="cb224-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb224-5" data-line-number="5"><span class="fu">\begingroup</span></a>
-<a class="sourceLine" id="cb224-6" data-line-number="6"><span class="fu">\catcode</span>`<span class="fu">\%</span>=12</a>
-<a class="sourceLine" id="cb224-7" data-line-number="7"><span class="fu">\input</span> optiontrue</a>
-<a class="sourceLine" id="cb224-8" data-line-number="8"><span class="fu">\endgroup</span></a>
-<a class="sourceLine" id="cb224-9" data-line-number="9"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb225"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb225-1"><a href="#cb225-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb225-2"><a href="#cb225-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb225-3"><a href="#cb225-3" aria-hidden="true"></a><span class="fu">\input</span> optionfalse</span>
+<span id="cb225-4"><a href="#cb225-4" aria-hidden="true"></a></span>
+<span id="cb225-5"><a href="#cb225-5" aria-hidden="true"></a><span class="fu">\begingroup</span></span>
+<span id="cb225-6"><a href="#cb225-6" aria-hidden="true"></a><span class="fu">\catcode</span>`<span class="fu">\%</span>=12</span>
+<span id="cb225-7"><a href="#cb225-7" aria-hidden="true"></a><span class="fu">\input</span> optiontrue</span>
+<span id="cb225-8"><a href="#cb225-8" aria-hidden="true"></a><span class="fu">\endgroup</span></span>
+<span id="cb225-9"><a href="#cb225-9" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Using a text editor, create a text document named <code>content.md</code> with the following content:</p>
-<div class="sourceCode" id="cb225"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb225-1" data-line-number="1">$\sqrt{-1}$ *equals* $i$.</a></code></pre></div>
+<div class="sourceCode" id="cb226"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb226-1"><a href="#cb226-1" aria-hidden="true"></a>$\sqrt{-1}$ *equals* $i$.</span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb226"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb226-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</a>
-<a class="sourceLine" id="cb226-2" data-line-number="2"><span class="ex">texlua</span> ⟨CLI pathname⟩ hybrid=true -- content.md optiontrue.tex</a>
-<a class="sourceLine" id="cb226-3" data-line-number="3"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb227"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb227-1"><a href="#cb227-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</span>
+<span id="cb227-2"><a href="#cb227-2" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ hybrid=true -- content.md optiontrue.tex</span>
+<span id="cb227-3"><a href="#cb227-3" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
 <blockquote>
@@ -2471,81 +2479,81 @@
 <p>$\sqrt {-1}$ <em>equals</em> $i$.</p>
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
-<h5 id="plain-tex-example-9" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-9">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="cb227"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb227-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb227-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb227-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb227-4" data-line-number="4"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb227-5" data-line-number="5"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.</a>
-<a class="sourceLine" id="cb227-6" data-line-number="6"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb227-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb227-8" data-line-number="8"><span class="fu">\def</span>\markdownOptionHybrid{true}</a>
-<a class="sourceLine" id="cb227-9" data-line-number="9"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb227-10" data-line-number="10"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.</a>
-<a class="sourceLine" id="cb227-11" data-line-number="11"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb227-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb227-13" data-line-number="13"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb228"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb228-1"><a href="#cb228-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb228-2"><a href="#cb228-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb228-3"><a href="#cb228-3" aria-hidden="true"></a></span>
+<span id="cb228-4"><a href="#cb228-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb228-5"><a href="#cb228-5" 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="cb228-6"><a href="#cb228-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb228-7"><a href="#cb228-7" aria-hidden="true"></a></span>
+<span id="cb228-8"><a href="#cb228-8" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
+<span id="cb228-9"><a href="#cb228-9" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb228-10"><a href="#cb228-10" 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="cb228-11"><a href="#cb228-11" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb228-12"><a href="#cb228-12" aria-hidden="true"></a></span>
+<span id="cb228-13"><a href="#cb228-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="cb228"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb228-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb229"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb229-1"><a href="#cb229-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}$ <em>equals</em> $i$.</p>
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
-<h5 id="latex-example-17" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-17"><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="cb229"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb229-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb229-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb229-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb229-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb229-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb229-6" data-line-number="6"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.</a>
-<a class="sourceLine" id="cb229-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb229-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb229-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{hybrid}</a>
-<a class="sourceLine" id="cb229-10" data-line-number="10"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.</a>
-<a class="sourceLine" id="cb229-11" data-line-number="11"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb229-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb229-13" data-line-number="13"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb230"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb230-1"><a href="#cb230-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb230-2"><a href="#cb230-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb230-3"><a href="#cb230-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb230-4"><a href="#cb230-4" aria-hidden="true"></a></span>
+<span id="cb230-5"><a href="#cb230-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb230-6"><a href="#cb230-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="cb230-7"><a href="#cb230-7" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb230-8"><a href="#cb230-8" aria-hidden="true"></a></span>
+<span id="cb230-9"><a href="#cb230-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{hybrid}</span>
+<span id="cb230-10"><a href="#cb230-10" 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="cb230-11"><a href="#cb230-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb230-12"><a href="#cb230-12" aria-hidden="true"></a></span>
+<span id="cb230-13"><a href="#cb230-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="cb230"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb230-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb231"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb231-1"><a href="#cb231-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}$ <em>equals</em> $i$.</p>
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
-<h5 id="context-example-15" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-15">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="cb231"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb231-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb231-2" data-line-number="2"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb231-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb231-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb231-5" data-line-number="5"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.</a>
-<a class="sourceLine" id="cb231-6" data-line-number="6"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb231-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb231-8" data-line-number="8"><span class="fu">\def</span>\markdownOptionHybrid{true}</a>
-<a class="sourceLine" id="cb231-9" data-line-number="9"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb231-10" data-line-number="10"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>.</a>
-<a class="sourceLine" id="cb231-11" data-line-number="11"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb231-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb231-13" data-line-number="13"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb232"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb232-1"><a href="#cb232-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb232-2"><a href="#cb232-2" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb232-3"><a href="#cb232-3" aria-hidden="true"></a></span>
+<span id="cb232-4"><a href="#cb232-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb232-5"><a href="#cb232-5" 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="cb232-6"><a href="#cb232-6" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb232-7"><a href="#cb232-7" aria-hidden="true"></a></span>
+<span id="cb232-8"><a href="#cb232-8" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
+<span id="cb232-9"><a href="#cb232-9" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb232-10"><a href="#cb232-10" 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="cb232-11"><a href="#cb232-11" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb232-12"><a href="#cb232-12" aria-hidden="true"></a></span>
+<span id="cb232-13"><a href="#cb232-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="cb232"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb232-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb233"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb233-1"><a href="#cb233-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}$ <em>equals</em> $i$.</p>
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
-<h4 id="option-inlinefootnotes"><span class="header-section-number">2.2.1.21</span> Option <code>inlineFootnotes</code></h4>
+<h4 data-number="2.2.1.21" id="option-inlinefootnotes"><span class="header-section-number">2.2.1.21</span> Option <code>inlineFootnotes</code></h4>
 <dl>
 <dt><code>inlineFootnotes</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Enable the pandoc inline footnote syntax extension:</p>
-<div class="sourceCode" id="cb233"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb233-1" data-line-number="1">Here is an inline note.^[Inlines notes are easier to</a>
-<a class="sourceLine" id="cb233-2" data-line-number="2">write, since you don't have to pick an identifier and</a>
-<a class="sourceLine" id="cb233-3" data-line-number="3">move down to type the note.]</a></code></pre></div>
+<div class="sourceCode" id="cb234"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb234-1"><a href="#cb234-1" aria-hidden="true"></a>Here is an inline note.^[Inlines notes are easier to</span>
+<span id="cb234-2"><a href="#cb234-2" aria-hidden="true"></a>write, since you don't have to pick an identifier and</span>
+<span id="cb234-3"><a href="#cb234-3" aria-hidden="true"></a>move down to type the note.]</span></code></pre></div>
 </dd>
 </dl>
 </dd>
@@ -2556,51 +2564,150 @@
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-18" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-18"><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="cb234"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb234-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb234-2" data-line-number="2"><span class="bu">\usepackage</span>[inlineFootnotes]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb234-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb234-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb234-5" data-line-number="5">Here is an inline note.^[Inlines notes are easier to</a>
-<a class="sourceLine" id="cb234-6" data-line-number="6">write, since you don't have to pick an identifier and</a>
-<a class="sourceLine" id="cb234-7" data-line-number="7">move down to type the note.]</a>
-<a class="sourceLine" id="cb234-8" data-line-number="8"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb234-9" data-line-number="9"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb235"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb235-1"><a href="#cb235-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb235-2"><a href="#cb235-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[inlineFootnotes]{<span class="ex">markdown</span>}</span>
+<span id="cb235-3"><a href="#cb235-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb235-4"><a href="#cb235-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb235-5"><a href="#cb235-5" aria-hidden="true"></a>Here is an inline note.^[Inlines notes are easier to</span>
+<span id="cb235-6"><a href="#cb235-6" aria-hidden="true"></a>write, since you don't have to pick an identifier and</span>
+<span id="cb235-7"><a href="#cb235-7" aria-hidden="true"></a>move down to type the note.]</span>
+<span id="cb235-8"><a href="#cb235-8" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb235-9"><a href="#cb235-9" 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="cb235"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb235-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb236"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb236-1"><a href="#cb236-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>Here is an inline note.<a href="#fn5" class="footnote-ref" id="fnref5"><sup>5</sup></a></p>
+<p>Here is an inline note.<a href="#fn5" class="footnote-ref" id="fnref5" role="doc-noteref"><sup>5</sup></a></p>
 </blockquote>
-<h5 id="context-example-16" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-16">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="cb236"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb236-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb236-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionInlineFootnotes{true}</a>
-<a class="sourceLine" id="cb236-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb236-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb236-5" data-line-number="5">Here is an inline note.^[Inlines notes are easier to</a>
-<a class="sourceLine" id="cb236-6" data-line-number="6">write, since you don't have to pick an identifier and</a>
-<a class="sourceLine" id="cb236-7" data-line-number="7">move down to type the note.]</a>
-<a class="sourceLine" id="cb236-8" data-line-number="8"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb236-9" data-line-number="9"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb237"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb237-1"><a href="#cb237-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb237-2"><a href="#cb237-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionInlineFootnotes</span>{true}</span>
+<span id="cb237-3"><a href="#cb237-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb237-4"><a href="#cb237-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb237-5"><a href="#cb237-5" aria-hidden="true"></a>Here is an inline note.^[Inlines notes are easier to</span>
+<span id="cb237-6"><a href="#cb237-6" aria-hidden="true"></a>write, since you don't have to pick an identifier and</span>
+<span id="cb237-7"><a href="#cb237-7" aria-hidden="true"></a>move down to type the note.]</span>
+<span id="cb237-8"><a href="#cb237-8" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb237-9"><a href="#cb237-9" 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="cb237"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb237-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb238"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb238-1"><a href="#cb238-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>Here is an inline note.<a href="#fn6" class="footnote-ref" id="fnref6"><sup>6</sup></a></p>
+<p>Here is an inline note.<a href="#fn6" class="footnote-ref" id="fnref6" role="doc-noteref"><sup>6</sup></a></p>
 </blockquote>
-<h4 id="pipe-tables"><span class="header-section-number">2.2.1.22</span> Option <code>pipeTables</code></h4>
+<h4 data-number="2.2.1.22" id="option-jekylldata"><span class="header-section-number">2.2.1.22</span> Option <code>jekyllData</code></h4>
 <dl>
+<dt><code>jekyllData</code> (default value: <code>false</code>)</dt>
+<dd><dl>
+<dt>true</dt>
+<dd><p>Enable the Pandoc <code>yaml_metadata_block</code> syntax extension for entering metadata in <abbr>yaml</abbr>:</p>
+<div class="sourceCode" id="cb239"><pre class="sourceCode yaml"><code class="sourceCode yaml"><span id="cb239-1"><a href="#cb239-1" aria-hidden="true"></a><span class="pp">---</span></span>
+<span id="cb239-2"><a href="#cb239-2" aria-hidden="true"></a><span class="fu">title</span><span class="kw">:</span><span class="at">  </span><span class="st">'This is the title: it contains a colon'</span></span>
+<span id="cb239-3"><a href="#cb239-3" aria-hidden="true"></a><span class="fu">author</span><span class="kw">:</span></span>
+<span id="cb239-4"><a href="#cb239-4" aria-hidden="true"></a><span class="kw">-</span><span class="at"> Author One</span></span>
+<span id="cb239-5"><a href="#cb239-5" aria-hidden="true"></a><span class="kw">-</span><span class="at"> Author Two</span></span>
+<span id="cb239-6"><a href="#cb239-6" aria-hidden="true"></a><span class="fu">keywords</span><span class="kw">:</span><span class="at"> </span><span class="kw">[</span><span class="at">nothing</span><span class="kw">,</span><span class="at"> nothingness</span><span class="kw">]</span></span>
+<span id="cb239-7"><a href="#cb239-7" aria-hidden="true"></a><span class="fu">abstract</span><span class="kw">: </span><span class="ch">|</span></span>
+<span id="cb239-8"><a href="#cb239-8" aria-hidden="true"></a>  This is the abstract.</span>
+<span id="cb239-9"><a href="#cb239-9" aria-hidden="true"></a></span>
+<span id="cb239-10"><a href="#cb239-10" aria-hidden="true"></a>  It consists of two paragraphs.</span>
+<span id="cb239-11"><a href="#cb239-11" aria-hidden="true"></a><span class="pp">---</span></span></code></pre></div>
+</dd>
+</dl>
+</dd>
+<dd><dl>
+<dt>false</dt>
+<dd><p>Disable the Pandoc <code>yaml_metadata_block</code> syntax extension for entering metadata in <abbr>yaml</abbr>.</p>
+</dd>
+</dl>
+</dd>
+</dl>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-10">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="cb240"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb240-1"><a href="#cb240-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb240-2"><a href="#cb240-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionJekyllData</span>{true}</span>
+<span id="cb240-3"><a href="#cb240-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataString</span>#1#2{<span class="fu">\gdef\name</span>{#2}}</span>
+<span id="cb240-4"><a href="#cb240-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataNumber</span>#1#2{<span class="fu">\gdef\age</span>{#2}}</span>
+<span id="cb240-5"><a href="#cb240-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataEnd</span>{<span class="co">%</span></span>
+<span id="cb240-6"><a href="#cb240-6" aria-hidden="true"></a>  <span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.}</span>
+<span id="cb240-7"><a href="#cb240-7" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb240-8"><a href="#cb240-8" aria-hidden="true"></a>---</span>
+<span id="cb240-9"><a href="#cb240-9" aria-hidden="true"></a>name: Jane Doe</span>
+<span id="cb240-10"><a href="#cb240-10" aria-hidden="true"></a>age:  99</span>
+<span id="cb240-11"><a href="#cb240-11" aria-hidden="true"></a>---</span>
+<span id="cb240-12"><a href="#cb240-12" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb240-13"><a href="#cb240-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="cb241"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb241-1"><a href="#cb241-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-19"><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="cb242"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb242-1"><a href="#cb242-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb242-2"><a href="#cb242-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[jekyllData]{<span class="ex">markdown</span>}</span>
+<span id="cb242-3"><a href="#cb242-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb242-4"><a href="#cb242-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb242-5"><a href="#cb242-5" aria-hidden="true"></a>    jekyllDataString = {<span class="fu">\gdef\name</span>{#2}},</span>
+<span id="cb242-6"><a href="#cb242-6" aria-hidden="true"></a>    jekyllDataNumber = {<span class="fu">\gdef\age</span>{#2}},</span>
+<span id="cb242-7"><a href="#cb242-7" aria-hidden="true"></a>    jekyllDataEnd = {<span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.},</span>
+<span id="cb242-8"><a href="#cb242-8" aria-hidden="true"></a>  }</span>
+<span id="cb242-9"><a href="#cb242-9" aria-hidden="true"></a>}</span>
+<span id="cb242-10"><a href="#cb242-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb242-11"><a href="#cb242-11" aria-hidden="true"></a></span>
+<span id="cb242-12"><a href="#cb242-12" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb242-13"><a href="#cb242-13" aria-hidden="true"></a>---</span>
+<span id="cb242-14"><a href="#cb242-14" aria-hidden="true"></a>name: Jane Doe</span>
+<span id="cb242-15"><a href="#cb242-15" aria-hidden="true"></a>age:  99</span>
+<span id="cb242-16"><a href="#cb242-16" aria-hidden="true"></a>---</span>
+<span id="cb242-17"><a href="#cb242-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb242-18"><a href="#cb242-18" aria-hidden="true"></a></span>
+<span id="cb242-19"><a href="#cb242-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="cb243"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb243-1"><a href="#cb243-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-17">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="cb244"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb244-1"><a href="#cb244-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb244-2"><a href="#cb244-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionJekyllData</span>{true}</span>
+<span id="cb244-3"><a href="#cb244-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataString</span>#1#2{<span class="fu">\gdef\name</span>{#2}}</span>
+<span id="cb244-4"><a href="#cb244-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataNumber</span>#1#2{<span class="fu">\gdef\age</span>{#2}}</span>
+<span id="cb244-5"><a href="#cb244-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataEnd</span>{<span class="co">%</span></span>
+<span id="cb244-6"><a href="#cb244-6" aria-hidden="true"></a>  <span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.}</span>
+<span id="cb244-7"><a href="#cb244-7" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb244-8"><a href="#cb244-8" aria-hidden="true"></a></span>
+<span id="cb244-9"><a href="#cb244-9" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb244-10"><a href="#cb244-10" aria-hidden="true"></a>---</span>
+<span id="cb244-11"><a href="#cb244-11" aria-hidden="true"></a>name: Jane Doe</span>
+<span id="cb244-12"><a href="#cb244-12" aria-hidden="true"></a>age:  99</span>
+<span id="cb244-13"><a href="#cb244-13" aria-hidden="true"></a>---</span>
+<span id="cb244-14"><a href="#cb244-14" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb244-15"><a href="#cb244-15" aria-hidden="true"></a></span>
+<span id="cb244-16"><a href="#cb244-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="cb245"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb245-1"><a href="#cb245-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.2.1.23" id="pipe-tables"><span class="header-section-number">2.2.1.23</span> Option <code>pipeTables</code></h4>
+<dl>
 <dt><code>pipeTables</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Enable the <abbr>PHP</abbr> Markdown table syntax extension:</p>
-<div class="sourceCode" id="cb238"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb238-1" data-line-number="1">| Right | Left | Default | Center |</a>
-<a class="sourceLine" id="cb238-2" data-line-number="2">|------:|:-----|---------|:------:|</a>
-<a class="sourceLine" id="cb238-3" data-line-number="3">|   12  |  12  |    12   |    12  |</a>
-<a class="sourceLine" id="cb238-4" data-line-number="4">|  123  |  123 |   123   |   123  |</a>
-<a class="sourceLine" id="cb238-5" data-line-number="5">|    1  |    1 |     1   |     1  |</a></code></pre></div>
+<div class="sourceCode" id="cb246"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb246-1"><a href="#cb246-1" aria-hidden="true"></a>| Right | Left | Default | Center |</span>
+<span id="cb246-2"><a href="#cb246-2" aria-hidden="true"></a>|------:|:-----|---------|:------:|</span>
+<span id="cb246-3"><a href="#cb246-3" aria-hidden="true"></a>|   12  |  12  |    12   |    12  |</span>
+<span id="cb246-4"><a href="#cb246-4" aria-hidden="true"></a>|  123  |  123 |   123   |   123  |</span>
+<span id="cb246-5"><a href="#cb246-5" aria-hidden="true"></a>|    1  |    1 |     1   |     1  |</span></code></pre></div>
 </dd>
 </dl>
 </dd>
@@ -2611,21 +2718,21 @@
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-19" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-20"><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="cb239"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb239-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb239-2" data-line-number="2"><span class="bu">\usepackage</span>[pipeTables]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb239-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb239-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb239-5" data-line-number="5">| Right | Left | Default | Center |</a>
-<a class="sourceLine" id="cb239-6" data-line-number="6">|------:|:-----|---------|:------:|</a>
-<a class="sourceLine" id="cb239-7" data-line-number="7">|   12  |  12  |    12   |    12  |</a>
-<a class="sourceLine" id="cb239-8" data-line-number="8">|  123  |  123 |   123   |   123  |</a>
-<a class="sourceLine" id="cb239-9" data-line-number="9">|    1  |    1 |     1   |     1  |</a>
-<a class="sourceLine" id="cb239-10" data-line-number="10"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb239-11" data-line-number="11"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb247"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb247-1"><a href="#cb247-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb247-2"><a href="#cb247-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[pipeTables]{<span class="ex">markdown</span>}</span>
+<span id="cb247-3"><a href="#cb247-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb247-4"><a href="#cb247-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb247-5"><a href="#cb247-5" aria-hidden="true"></a>| Right | Left | Default | Center |</span>
+<span id="cb247-6"><a href="#cb247-6" aria-hidden="true"></a>|------:|:-----|---------|:------:|</span>
+<span id="cb247-7"><a href="#cb247-7" aria-hidden="true"></a>|   12  |  12  |    12   |    12  |</span>
+<span id="cb247-8"><a href="#cb247-8" aria-hidden="true"></a>|  123  |  123 |   123   |   123  |</span>
+<span id="cb247-9"><a href="#cb247-9" aria-hidden="true"></a>|    1  |    1 |     1   |     1  |</span>
+<span id="cb247-10"><a href="#cb247-10" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb247-11"><a href="#cb247-11" 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="cb240"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb240-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb248"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb248-1"><a href="#cb248-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>
 <table>
@@ -2659,21 +2766,21 @@
 </tbody>
 </table>
 </blockquote>
-<h5 id="context-example-17" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-18">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="cb241"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb241-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb241-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionPipeTables{true}</a>
-<a class="sourceLine" id="cb241-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb241-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb241-5" data-line-number="5">| Right | Left | Default | Center |</a>
-<a class="sourceLine" id="cb241-6" data-line-number="6">|------:|:-----|---------|:------:|</a>
-<a class="sourceLine" id="cb241-7" data-line-number="7">|   12  |  12  |    12   |    12  |</a>
-<a class="sourceLine" id="cb241-8" data-line-number="8">|  123  |  123 |   123   |   123  |</a>
-<a class="sourceLine" id="cb241-9" data-line-number="9">|    1  |    1 |     1   |     1  |</a>
-<a class="sourceLine" id="cb241-10" data-line-number="10"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb241-11" data-line-number="11"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb249"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb249-1"><a href="#cb249-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb249-2"><a href="#cb249-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionPipeTables</span>{true}</span>
+<span id="cb249-3"><a href="#cb249-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb249-4"><a href="#cb249-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb249-5"><a href="#cb249-5" aria-hidden="true"></a>| Right | Left | Default | Center |</span>
+<span id="cb249-6"><a href="#cb249-6" aria-hidden="true"></a>|------:|:-----|---------|:------:|</span>
+<span id="cb249-7"><a href="#cb249-7" aria-hidden="true"></a>|   12  |  12  |    12   |    12  |</span>
+<span id="cb249-8"><a href="#cb249-8" aria-hidden="true"></a>|  123  |  123 |   123   |   123  |</span>
+<span id="cb249-9"><a href="#cb249-9" aria-hidden="true"></a>|    1  |    1 |     1   |     1  |</span>
+<span id="cb249-10"><a href="#cb249-10" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb249-11"><a href="#cb249-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="cb242"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb242-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb250"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb250-1"><a href="#cb250-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>
 <table>
@@ -2707,7 +2814,7 @@
 </tbody>
 </table>
 </blockquote>
-<h4 id="option-preservetabs"><span class="header-section-number">2.2.1.23</span> Option <code>preserveTabs</code></h4>
+<h4 data-number="2.2.1.24" id="option-preservetabs"><span class="header-section-number">2.2.1.24</span> Option <code>preserveTabs</code></h4>
 <dl>
 <dt><code>preserveTabs</code> (default value: <code>false</code>)</dt>
 <dd><dl>
@@ -2723,36 +2830,36 @@
 </dl>
 </dd>
 </dl>
-<h4 id="option-shiftheadings"><span class="header-section-number">2.2.1.24</span> Option <code>shiftHeadings</code></h4>
+<h4 data-number="2.2.1.25" id="option-shiftheadings"><span class="header-section-number">2.2.1.25</span> Option <code>shiftHeadings</code></h4>
 <dl>
 <dt><code>shiftHeadings</code> (default value: <code>0</code>)</dt>
 <dd><p>All headings will be shifted by ⟨<em>shift amount</em>⟩, which can be both positive and negative. Headings will not be shifted beyond level 6 or below level 1. Instead, those headings will be shifted to level 6, when ⟨<em>shift amount</em>⟩ is positive, and to level 1, when ⟨<em>shift amount</em>⟩ is negative.</p>
 </dd>
 </dl>
-<h5 id="plain-tex-example-10" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-11">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
 <p>Using a text editor, create a text document named <code>example.md</code> with the following content:</p>
-<div class="sourceCode" id="cb243"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb243-1" data-line-number="1"><span class="fu">## A section</span></a></code></pre></div>
+<div class="sourceCode" id="cb251"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb251-1"><a href="#cb251-1" aria-hidden="true"></a><span class="fu">## A section</span></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="cb244"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb244-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb244-2" data-line-number="2"></a>
-<a class="sourceLine" id="cb244-3" data-line-number="3"><span class="fu">\font\normal</span>=cmr10<span class="fu">\normal</span></a>
-<a class="sourceLine" id="cb244-4" data-line-number="4"><span class="fu">\font\big</span>=cmr10 at 12pt</a>
-<a class="sourceLine" id="cb244-5" data-line-number="5"><span class="fu">\def</span>\markdownRendererHeadingTwo#1{{\big #1\par}}</a>
-<a class="sourceLine" id="cb244-6" data-line-number="6"><span class="fu">\font\bigger</span>=cmr10 scaled 1440</a>
-<a class="sourceLine" id="cb244-7" data-line-number="7"><span class="fu">\def</span>\markdownRendererHeadingOne#1{{\bigger #1\par}}</a>
-<a class="sourceLine" id="cb244-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb244-9" data-line-number="9"><span class="fu">\def</span>\markdownOptionShiftHeadings{-1}</a>
-<a class="sourceLine" id="cb244-10" data-line-number="10"><span class="fu">\markdownInput</span>{example.md}</a>
-<a class="sourceLine" id="cb244-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb244-12" data-line-number="12"><span class="fu">\def</span>\markdownOptionShiftHeadings{0}</a>
-<a class="sourceLine" id="cb244-13" data-line-number="13"><span class="fu">\markdownInput</span>{example.md}</a>
-<a class="sourceLine" id="cb244-14" data-line-number="14"></a>
-<a class="sourceLine" id="cb244-15" data-line-number="15"><span class="fu">\def</span>\markdownOptionShiftHeadings{+1}</a>
-<a class="sourceLine" id="cb244-16" data-line-number="16"><span class="fu">\markdownInput</span>{example.md}</a>
-<a class="sourceLine" id="cb244-17" data-line-number="17"></a>
-<a class="sourceLine" id="cb244-18" data-line-number="18"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb252"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb252-1"><a href="#cb252-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb252-2"><a href="#cb252-2" aria-hidden="true"></a></span>
+<span id="cb252-3"><a href="#cb252-3" aria-hidden="true"></a><span class="fu">\font\normal</span>=cmr10<span class="fu">\normal</span></span>
+<span id="cb252-4"><a href="#cb252-4" aria-hidden="true"></a><span class="fu">\font\big</span>=cmr10 at 12pt</span>
+<span id="cb252-5"><a href="#cb252-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingTwo</span>#1{{<span class="fu">\big</span> #1<span class="fu">\par</span>}}</span>
+<span id="cb252-6"><a href="#cb252-6" aria-hidden="true"></a><span class="fu">\font\bigger</span>=cmr10 scaled 1440</span>
+<span id="cb252-7"><a href="#cb252-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingOne</span>#1{{<span class="fu">\bigger</span> #1<span class="fu">\par</span>}}</span>
+<span id="cb252-8"><a href="#cb252-8" aria-hidden="true"></a></span>
+<span id="cb252-9"><a href="#cb252-9" aria-hidden="true"></a><span class="fu">\def\markdownOptionShiftHeadings</span>{-1}</span>
+<span id="cb252-10"><a href="#cb252-10" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb252-11"><a href="#cb252-11" aria-hidden="true"></a></span>
+<span id="cb252-12"><a href="#cb252-12" aria-hidden="true"></a><span class="fu">\def\markdownOptionShiftHeadings</span>{0}</span>
+<span id="cb252-13"><a href="#cb252-13" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb252-14"><a href="#cb252-14" aria-hidden="true"></a></span>
+<span id="cb252-15"><a href="#cb252-15" aria-hidden="true"></a><span class="fu">\def\markdownOptionShiftHeadings</span>{+1}</span>
+<span id="cb252-16"><a href="#cb252-16" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb252-17"><a href="#cb252-17" aria-hidden="true"></a></span>
+<span id="cb252-18"><a href="#cb252-18" 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="cb245"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb245-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb253"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb253-1"><a href="#cb253-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>
 <h1 id="a-section">A section</h1>
@@ -2759,20 +2866,20 @@
 <h2 id="a-section-1">A section</h2>
 <h3 id="a-section-2">A section</h3>
 </blockquote>
-<h5 id="latex-example-20" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-21"><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="cb246"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb246-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb246-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb246-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">filecontents</span>}[overwrite,nosearch,noheader]{example.md}</a>
-<a class="sourceLine" id="cb246-4" data-line-number="4">## A section</a>
-<a class="sourceLine" id="cb246-5" data-line-number="5"><span class="kw">\end</span>{<span class="ex">filecontents</span>}</a>
-<a class="sourceLine" id="cb246-6" data-line-number="6"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb246-7" data-line-number="7"><span class="fu">\markdownInput</span>[shiftHeadings=-1]{example.md}</a>
-<a class="sourceLine" id="cb246-8" data-line-number="8"><span class="fu">\markdownInput</span>{example.md}</a>
-<a class="sourceLine" id="cb246-9" data-line-number="9"><span class="fu">\markdownInput</span>[shiftHeadings=+1]{example.md}</a>
-<a class="sourceLine" id="cb246-10" data-line-number="10"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb254"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb254-1"><a href="#cb254-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb254-2"><a href="#cb254-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb254-3"><a href="#cb254-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">filecontents</span>}[overwrite,nosearch,noheader]{example.md}</span>
+<span id="cb254-4"><a href="#cb254-4" aria-hidden="true"></a>## A section</span>
+<span id="cb254-5"><a href="#cb254-5" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">filecontents</span>}</span>
+<span id="cb254-6"><a href="#cb254-6" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb254-7"><a href="#cb254-7" aria-hidden="true"></a><span class="fu">\markdownInput</span>[shiftHeadings=-1]{example.md}</span>
+<span id="cb254-8"><a href="#cb254-8" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb254-9"><a href="#cb254-9" aria-hidden="true"></a><span class="fu">\markdownInput</span>[shiftHeadings=+1]{example.md}</span>
+<span id="cb254-10"><a href="#cb254-10" 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="cb247"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb247-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb255"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb255-1"><a href="#cb255-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>
 <h1 id="a-section-3">A section</h1>
@@ -2779,25 +2886,25 @@
 <h2 id="a-section-4">A section</h2>
 <h3 id="a-section-5">A section</h3>
 </blockquote>
-<h5 id="context-example-18" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-19">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
 <p>Using a text editor, create a text document named <code>example.md</code> with the following content:</p>
-<div class="sourceCode" id="cb248"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb248-1" data-line-number="1"><span class="fu">## A section</span></a></code></pre></div>
+<div class="sourceCode" id="cb256"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb256-1"><a href="#cb256-1" aria-hidden="true"></a><span class="fu">## A section</span></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="cb249"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb249-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb249-2" data-line-number="2"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb249-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb249-4" data-line-number="4"><span class="fu">\def</span>\markdownOptionShiftHeadings{-1}</a>
-<a class="sourceLine" id="cb249-5" data-line-number="5"><span class="fu">\markdownInput</span>{example.md}</a>
-<a class="sourceLine" id="cb249-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb249-7" data-line-number="7"><span class="fu">\def</span>\markdownOptionShiftHeadings{0}</a>
-<a class="sourceLine" id="cb249-8" data-line-number="8"><span class="fu">\markdownInput</span>{example.md}</a>
-<a class="sourceLine" id="cb249-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb249-10" data-line-number="10"><span class="fu">\def</span>\markdownOptionShiftHeadings{+1}</a>
-<a class="sourceLine" id="cb249-11" data-line-number="11"><span class="fu">\markdownInput</span>{example.md}</a>
-<a class="sourceLine" id="cb249-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb249-13" data-line-number="13"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb257"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb257-1"><a href="#cb257-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb257-2"><a href="#cb257-2" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb257-3"><a href="#cb257-3" aria-hidden="true"></a></span>
+<span id="cb257-4"><a href="#cb257-4" aria-hidden="true"></a><span class="fu">\def\markdownOptionShiftHeadings</span>{-1}</span>
+<span id="cb257-5"><a href="#cb257-5" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb257-6"><a href="#cb257-6" aria-hidden="true"></a></span>
+<span id="cb257-7"><a href="#cb257-7" aria-hidden="true"></a><span class="fu">\def\markdownOptionShiftHeadings</span>{0}</span>
+<span id="cb257-8"><a href="#cb257-8" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb257-9"><a href="#cb257-9" aria-hidden="true"></a></span>
+<span id="cb257-10"><a href="#cb257-10" aria-hidden="true"></a><span class="fu">\def\markdownOptionShiftHeadings</span>{+1}</span>
+<span id="cb257-11"><a href="#cb257-11" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb257-12"><a href="#cb257-12" aria-hidden="true"></a></span>
+<span id="cb257-13"><a href="#cb257-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="cb250"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb250-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb258"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb258-1"><a href="#cb258-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>
 <h1 id="a-section-6">A section</h1>
@@ -2804,7 +2911,7 @@
 <h2 id="a-section-7">A section</h2>
 <h3 id="a-section-8">A section</h3>
 </blockquote>
-<h4 id="slice"><span class="header-section-number">2.2.1.25</span> Option <code>slice</code></h4>
+<h4 data-number="2.2.1.26" id="slice"><span class="header-section-number">2.2.1.26</span> Option <code>slice</code></h4>
 <dl>
 <dt><code>slice</code> (default value: <code>^ $</code>)</dt>
 <dd><p>Two space-separated selectors that specify the slice of a document that will be processed, whereas the remainder of the document will be ignored. The following selectors are recognized:</p>
@@ -2815,44 +2922,44 @@
 <li><code>$</code>⟨<em>identifier</em>⟩ selects the end of a section with the <abbr>HTML</abbr> attribute <code>#</code>⟨<em>identifier</em>⟩.</li>
 <li>⟨<em>identifier</em>⟩ corresponds to <code>^</code>⟨<em>identifier</em>⟩ for the first selector and to <code>$</code>⟨<em>identifier</em>⟩ for the second selector.</li>
 </ul>
-<p>Specifying only a single selector, ⟨<em>identifier</em>⟩, is equivalent to specifying the two selectors ⟨<em>identifier</em>⟩ ⟨<em>identifier</em>⟩, which is equivalent to <code>^</code>⟨<em>identifier</em>⟩ <code>$</code>⟨<em>identifier</em>⟩, i.e. the entire section with the <abbr>HTML</abbr> attribute <code>#</code>⟨<em>identifier</em>⟩ will be selected.</p>
+<p>Specifying only a single selector, ⟨<em>identifier</em>⟩, is equivalent to specifying the two selectors ⟨<em>identifier</em>⟩ ⟨<em>identifier</em>⟩, which is equivalent to <code>^</code>⟨<em>identifier</em>⟩ <code>$</code>⟨<em>identifier</em>⟩, i.e. the entire section with the <abbr>HTML</abbr> attribute <code>#</code>⟨<em>identifier</em>⟩ will be selected.</p>
 </dd>
 </dl>
-<h5 id="plain-tex-example-11" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-12">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
 <p>Using a text editor, create a text document named <code>hamlet.md</code> with the following content:</p>
-<div class="sourceCode" id="cb251"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb251-1" data-line-number="1"><span class="fu"># The Tragedy of Hamlet</span></a>
-<a class="sourceLine" id="cb251-2" data-line-number="2">Shakespeare's longest play.</a>
-<a class="sourceLine" id="cb251-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb251-4" data-line-number="4"><span class="fu">## Act III {#act-3}</span></a>
-<a class="sourceLine" id="cb251-5" data-line-number="5">Hamlet kills Polonius.</a>
-<a class="sourceLine" id="cb251-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb251-7" data-line-number="7"><span class="fu">## Act V   {#act-5}</span></a>
-<a class="sourceLine" id="cb251-8" data-line-number="8">Hamlet dies.</a>
-<a class="sourceLine" id="cb251-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb251-10" data-line-number="10"><span class="fu">## Act I   {#act-1}</span></a>
-<a class="sourceLine" id="cb251-11" data-line-number="11">Hamlet talks to ghost.</a></code></pre></div>
+<div class="sourceCode" id="cb259"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb259-1"><a href="#cb259-1" aria-hidden="true"></a><span class="fu"># The Tragedy of Hamlet</span></span>
+<span id="cb259-2"><a href="#cb259-2" aria-hidden="true"></a>Shakespeare's longest play.</span>
+<span id="cb259-3"><a href="#cb259-3" aria-hidden="true"></a></span>
+<span id="cb259-4"><a href="#cb259-4" aria-hidden="true"></a><span class="fu">## Act III {#act-3}</span></span>
+<span id="cb259-5"><a href="#cb259-5" aria-hidden="true"></a>Hamlet kills Polonius.</span>
+<span id="cb259-6"><a href="#cb259-6" aria-hidden="true"></a></span>
+<span id="cb259-7"><a href="#cb259-7" aria-hidden="true"></a><span class="fu">## Act V   {#act-5}</span></span>
+<span id="cb259-8"><a href="#cb259-8" aria-hidden="true"></a>Hamlet dies.</span>
+<span id="cb259-9"><a href="#cb259-9" aria-hidden="true"></a></span>
+<span id="cb259-10"><a href="#cb259-10" aria-hidden="true"></a><span class="fu">## Act I   {#act-1}</span></span>
+<span id="cb259-11"><a href="#cb259-11" aria-hidden="true"></a>Hamlet talks to ghost.</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="cb252"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb252-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb252-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionHeaderAttributes{true}</a>
-<a class="sourceLine" id="cb252-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb252-4" data-line-number="4"><span class="fu">\font\normal</span>=cmr10<span class="fu">\normal</span></a>
-<a class="sourceLine" id="cb252-5" data-line-number="5"><span class="fu">\font\big</span>=cmr10 at 12pt</a>
-<a class="sourceLine" id="cb252-6" data-line-number="6"><span class="fu">\def</span>\markdownRendererHeadingTwo#1{{\big #1\par}}</a>
-<a class="sourceLine" id="cb252-7" data-line-number="7"><span class="fu">\font\bigger</span>=cmr10 scaled 1440</a>
-<a class="sourceLine" id="cb252-8" data-line-number="8"><span class="fu">\def</span>\markdownRendererHeadingOne#1{{\bigger #1\par}}</a>
-<a class="sourceLine" id="cb252-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb252-10" data-line-number="10"><span class="fu">\def</span>\markdownOptionSlice{^ ^act-3}</a>
-<a class="sourceLine" id="cb252-11" data-line-number="11"><span class="fu">\markdownInput</span>{hamlet.md}</a>
-<a class="sourceLine" id="cb252-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb252-13" data-line-number="13"><span class="fu">\def</span>\markdownOptionSlice{act-1}</a>
-<a class="sourceLine" id="cb252-14" data-line-number="14"><span class="fu">\markdownInput</span>{hamlet.md}</a>
-<a class="sourceLine" id="cb252-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb252-16" data-line-number="16"><span class="fu">\def</span>\markdownOptionSlice{act-3 act-5}</a>
-<a class="sourceLine" id="cb252-17" data-line-number="17"><span class="fu">\markdownInput</span>{hamlet.md}</a>
-<a class="sourceLine" id="cb252-18" data-line-number="18"></a>
-<a class="sourceLine" id="cb252-19" data-line-number="19"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb260"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb260-1"><a href="#cb260-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb260-2"><a href="#cb260-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionHeaderAttributes</span>{true}</span>
+<span id="cb260-3"><a href="#cb260-3" aria-hidden="true"></a></span>
+<span id="cb260-4"><a href="#cb260-4" aria-hidden="true"></a><span class="fu">\font\normal</span>=cmr10<span class="fu">\normal</span></span>
+<span id="cb260-5"><a href="#cb260-5" aria-hidden="true"></a><span class="fu">\font\big</span>=cmr10 at 12pt</span>
+<span id="cb260-6"><a href="#cb260-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingTwo</span>#1{{<span class="fu">\big</span> #1<span class="fu">\par</span>}}</span>
+<span id="cb260-7"><a href="#cb260-7" aria-hidden="true"></a><span class="fu">\font\bigger</span>=cmr10 scaled 1440</span>
+<span id="cb260-8"><a href="#cb260-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingOne</span>#1{{<span class="fu">\bigger</span> #1<span class="fu">\par</span>}}</span>
+<span id="cb260-9"><a href="#cb260-9" aria-hidden="true"></a></span>
+<span id="cb260-10"><a href="#cb260-10" aria-hidden="true"></a><span class="fu">\def\markdownOptionSlice</span>{^ ^act-3}</span>
+<span id="cb260-11"><a href="#cb260-11" aria-hidden="true"></a><span class="fu">\markdownInput</span>{hamlet.md}</span>
+<span id="cb260-12"><a href="#cb260-12" aria-hidden="true"></a></span>
+<span id="cb260-13"><a href="#cb260-13" aria-hidden="true"></a><span class="fu">\def\markdownOptionSlice</span>{act-1}</span>
+<span id="cb260-14"><a href="#cb260-14" aria-hidden="true"></a><span class="fu">\markdownInput</span>{hamlet.md}</span>
+<span id="cb260-15"><a href="#cb260-15" aria-hidden="true"></a></span>
+<span id="cb260-16"><a href="#cb260-16" aria-hidden="true"></a><span class="fu">\def\markdownOptionSlice</span>{act-3 act-5}</span>
+<span id="cb260-17"><a href="#cb260-17" aria-hidden="true"></a><span class="fu">\markdownInput</span>{hamlet.md}</span>
+<span id="cb260-18"><a href="#cb260-18" aria-hidden="true"></a></span>
+<span id="cb260-19"><a href="#cb260-19" 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="cb253"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb253-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb261"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb261-1"><a href="#cb261-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>
 <h1 id="the-tragedy-of-hamlet">The Tragedy of Hamlet</h1>
@@ -2864,30 +2971,30 @@
 <h2 id="act-v">Act V</h2>
 <p>Hamlet dies.</p>
 </blockquote>
-<h5 id="latex-example-21" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-22"><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="cb254"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb254-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb254-2" data-line-number="2"><span class="bu">\usepackage</span>[headerAttributes]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb254-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">filecontents</span>}[overwrite,nosearch,noheader]{hamlet.md}</a>
-<a class="sourceLine" id="cb254-4" data-line-number="4"># The Tragedy of Hamlet</a>
-<a class="sourceLine" id="cb254-5" data-line-number="5">Shakespeare's longest play.</a>
-<a class="sourceLine" id="cb254-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb254-7" data-line-number="7">## Act III {#act-3}</a>
-<a class="sourceLine" id="cb254-8" data-line-number="8">Hamlet kills Polonius.</a>
-<a class="sourceLine" id="cb254-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb254-10" data-line-number="10">## Act V   {#act-5}</a>
-<a class="sourceLine" id="cb254-11" data-line-number="11">Hamlet dies.</a>
-<a class="sourceLine" id="cb254-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb254-13" data-line-number="13">## Act I   {#act-1}</a>
-<a class="sourceLine" id="cb254-14" data-line-number="14">Hamlet talks to ghost.</a>
-<a class="sourceLine" id="cb254-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">filecontents</span>}</a>
-<a class="sourceLine" id="cb254-16" data-line-number="16"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb254-17" data-line-number="17"><span class="fu">\markdownInput</span>[slice=^ ^act-3]{hamlet.md}</a>
-<a class="sourceLine" id="cb254-18" data-line-number="18"><span class="fu">\markdownInput</span>[slice=act-1]{hamlet.md}</a>
-<a class="sourceLine" id="cb254-19" data-line-number="19"><span class="fu">\markdownInput</span>[slice=act-3 act-5]{hamlet.md}</a>
-<a class="sourceLine" id="cb254-20" data-line-number="20"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb262"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb262-1"><a href="#cb262-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb262-2"><a href="#cb262-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[headerAttributes]{<span class="ex">markdown</span>}</span>
+<span id="cb262-3"><a href="#cb262-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">filecontents</span>}[overwrite,nosearch,noheader]{hamlet.md}</span>
+<span id="cb262-4"><a href="#cb262-4" aria-hidden="true"></a># The Tragedy of Hamlet</span>
+<span id="cb262-5"><a href="#cb262-5" aria-hidden="true"></a>Shakespeare's longest play.</span>
+<span id="cb262-6"><a href="#cb262-6" aria-hidden="true"></a></span>
+<span id="cb262-7"><a href="#cb262-7" aria-hidden="true"></a>## Act III {#act-3}</span>
+<span id="cb262-8"><a href="#cb262-8" aria-hidden="true"></a>Hamlet kills Polonius.</span>
+<span id="cb262-9"><a href="#cb262-9" aria-hidden="true"></a></span>
+<span id="cb262-10"><a href="#cb262-10" aria-hidden="true"></a>## Act V   {#act-5}</span>
+<span id="cb262-11"><a href="#cb262-11" aria-hidden="true"></a>Hamlet dies.</span>
+<span id="cb262-12"><a href="#cb262-12" aria-hidden="true"></a></span>
+<span id="cb262-13"><a href="#cb262-13" aria-hidden="true"></a>## Act I   {#act-1}</span>
+<span id="cb262-14"><a href="#cb262-14" aria-hidden="true"></a>Hamlet talks to ghost.</span>
+<span id="cb262-15"><a href="#cb262-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">filecontents</span>}</span>
+<span id="cb262-16"><a href="#cb262-16" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb262-17"><a href="#cb262-17" aria-hidden="true"></a><span class="fu">\markdownInput</span>[slice=^ ^act-3]{hamlet.md}</span>
+<span id="cb262-18"><a href="#cb262-18" aria-hidden="true"></a><span class="fu">\markdownInput</span>[slice=act-1]{hamlet.md}</span>
+<span id="cb262-19"><a href="#cb262-19" aria-hidden="true"></a><span class="fu">\markdownInput</span>[slice=act-3 act-5]{hamlet.md}</span>
+<span id="cb262-20"><a href="#cb262-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="cb255"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb255-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb263"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb263-1"><a href="#cb263-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>
 <h1 id="the-tragedy-of-hamlet-1">The Tragedy of Hamlet</h1>
@@ -2899,36 +3006,36 @@
 <h2 id="act-v-1">Act V</h2>
 <p>Hamlet dies.</p>
 </blockquote>
-<h5 id="context-example-19" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-20">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
 <p>Using a text editor, create a text document named <code>hamlet.md</code> with the following content:</p>
-<div class="sourceCode" id="cb256"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb256-1" data-line-number="1"><span class="fu"># The Tragedy of Hamlet</span></a>
-<a class="sourceLine" id="cb256-2" data-line-number="2">Shakespeare's longest play.</a>
-<a class="sourceLine" id="cb256-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb256-4" data-line-number="4"><span class="fu">## Act III {#act-3}</span></a>
-<a class="sourceLine" id="cb256-5" data-line-number="5">Hamlet kills Polonius.</a>
-<a class="sourceLine" id="cb256-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb256-7" data-line-number="7"><span class="fu">## Act V   {#act-5}</span></a>
-<a class="sourceLine" id="cb256-8" data-line-number="8">Hamlet dies.</a>
-<a class="sourceLine" id="cb256-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb256-10" data-line-number="10"><span class="fu">## Act I   {#act-1}</span></a>
-<a class="sourceLine" id="cb256-11" data-line-number="11">Hamlet talks to ghost.</a></code></pre></div>
+<div class="sourceCode" id="cb264"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb264-1"><a href="#cb264-1" aria-hidden="true"></a><span class="fu"># The Tragedy of Hamlet</span></span>
+<span id="cb264-2"><a href="#cb264-2" aria-hidden="true"></a>Shakespeare's longest play.</span>
+<span id="cb264-3"><a href="#cb264-3" aria-hidden="true"></a></span>
+<span id="cb264-4"><a href="#cb264-4" aria-hidden="true"></a><span class="fu">## Act III {#act-3}</span></span>
+<span id="cb264-5"><a href="#cb264-5" aria-hidden="true"></a>Hamlet kills Polonius.</span>
+<span id="cb264-6"><a href="#cb264-6" aria-hidden="true"></a></span>
+<span id="cb264-7"><a href="#cb264-7" aria-hidden="true"></a><span class="fu">## Act V   {#act-5}</span></span>
+<span id="cb264-8"><a href="#cb264-8" aria-hidden="true"></a>Hamlet dies.</span>
+<span id="cb264-9"><a href="#cb264-9" aria-hidden="true"></a></span>
+<span id="cb264-10"><a href="#cb264-10" aria-hidden="true"></a><span class="fu">## Act I   {#act-1}</span></span>
+<span id="cb264-11"><a href="#cb264-11" aria-hidden="true"></a>Hamlet talks to ghost.</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="cb257"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb257-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb257-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionHeaderAttributes{true}</a>
-<a class="sourceLine" id="cb257-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb257-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb257-5" data-line-number="5"><span class="fu">\def</span>\markdownOptionSlice{^ ^act-3}</a>
-<a class="sourceLine" id="cb257-6" data-line-number="6"><span class="fu">\markdownInput</span>{hamlet.md}</a>
-<a class="sourceLine" id="cb257-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb257-8" data-line-number="8"><span class="fu">\def</span>\markdownOptionSlice{act-1}</a>
-<a class="sourceLine" id="cb257-9" data-line-number="9"><span class="fu">\markdownInput</span>{hamlet.md}</a>
-<a class="sourceLine" id="cb257-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb257-11" data-line-number="11"><span class="fu">\def</span>\markdownOptionSlice{act-3 act-5}</a>
-<a class="sourceLine" id="cb257-12" data-line-number="12"><span class="fu">\markdownInput</span>{hamlet.md}</a>
-<a class="sourceLine" id="cb257-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb257-14" data-line-number="14"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb265"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb265-1"><a href="#cb265-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb265-2"><a href="#cb265-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionHeaderAttributes</span>{true}</span>
+<span id="cb265-3"><a href="#cb265-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb265-4"><a href="#cb265-4" aria-hidden="true"></a></span>
+<span id="cb265-5"><a href="#cb265-5" aria-hidden="true"></a><span class="fu">\def\markdownOptionSlice</span>{^ ^act-3}</span>
+<span id="cb265-6"><a href="#cb265-6" aria-hidden="true"></a><span class="fu">\markdownInput</span>{hamlet.md}</span>
+<span id="cb265-7"><a href="#cb265-7" aria-hidden="true"></a></span>
+<span id="cb265-8"><a href="#cb265-8" aria-hidden="true"></a><span class="fu">\def\markdownOptionSlice</span>{act-1}</span>
+<span id="cb265-9"><a href="#cb265-9" aria-hidden="true"></a><span class="fu">\markdownInput</span>{hamlet.md}</span>
+<span id="cb265-10"><a href="#cb265-10" aria-hidden="true"></a></span>
+<span id="cb265-11"><a href="#cb265-11" aria-hidden="true"></a><span class="fu">\def\markdownOptionSlice</span>{act-3 act-5}</span>
+<span id="cb265-12"><a href="#cb265-12" aria-hidden="true"></a><span class="fu">\markdownInput</span>{hamlet.md}</span>
+<span id="cb265-13"><a href="#cb265-13" aria-hidden="true"></a></span>
+<span id="cb265-14"><a href="#cb265-14" 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="cb258"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb258-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb266"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb266-1"><a href="#cb266-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>
 <h1 id="the-tragedy-of-hamlet-2">The Tragedy of Hamlet</h1>
@@ -2940,12 +3047,12 @@
 <h2 id="act-v-2">Act V</h2>
 <p>Hamlet dies.</p>
 </blockquote>
-<h4 id="option-smartellipses"><span class="header-section-number">2.2.1.26</span> Option <code>smartEllipses</code></h4>
+<h4 data-number="2.2.1.27" id="option-smartellipses"><span class="header-section-number">2.2.1.27</span> Option <code>smartEllipses</code></h4>
 <dl>
 <dt><code>smartEllipses</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
-<dd><p>Convert any ellipses in the input to the <code>\markdownRendererEllipsis</code> <span class="tex">T<sub>e</sub>X</span> macro.</p>
+<dd><p>Convert any ellipses in the input to the  <span class="tex">T<sub>e</sub>X</span> macro.</p>
 </dd>
 </dl>
 </dd>
@@ -2956,45 +3063,45 @@
 </dl>
 </dd>
 </dl>
-<h5 id="lua-module-example-10" class="unnumbered">Lua Module Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-module-example-10">Lua Module 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="cb259"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb259-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb259-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererEllipsis{. . .}</a>
-<a class="sourceLine" id="cb259-3" data-line-number="3"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb259-4" data-line-number="4"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb259-5" data-line-number="5">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb259-6" data-line-number="6">  local convert = markdown.new()</a>
-<a class="sourceLine" id="cb259-7" data-line-number="7">  local input = "These are just three regular dots ..."</a>
-<a class="sourceLine" id="cb259-8" data-line-number="8">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb259-9" data-line-number="9"><span class="fu">\par</span></a>
-<a class="sourceLine" id="cb259-10" data-line-number="10"><span class="fu">\directlua</span>{</a>
-<a class="sourceLine" id="cb259-11" data-line-number="11">  local markdown = require("markdown")</a>
-<a class="sourceLine" id="cb259-12" data-line-number="12">  local convert = markdown.new({smartEllipses = true})</a>
-<a class="sourceLine" id="cb259-13" data-line-number="13">  local input = "... and this is a victorian ellipsis."</a>
-<a class="sourceLine" id="cb259-14" data-line-number="14">  tex.sprint(convert(input)) }</a>
-<a class="sourceLine" id="cb259-15" data-line-number="15"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb267"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb267-1"><a href="#cb267-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb267-2"><a href="#cb267-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererEllipsis</span>{. . .}</span>
+<span id="cb267-3"><a href="#cb267-3" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb267-4"><a href="#cb267-4" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb267-5"><a href="#cb267-5" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb267-6"><a href="#cb267-6" aria-hidden="true"></a>  local convert = markdown.new()</span>
+<span id="cb267-7"><a href="#cb267-7" aria-hidden="true"></a>  local input = "These are just three regular dots ..."</span>
+<span id="cb267-8"><a href="#cb267-8" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb267-9"><a href="#cb267-9" aria-hidden="true"></a><span class="fu">\par</span></span>
+<span id="cb267-10"><a href="#cb267-10" aria-hidden="true"></a><span class="fu">\directlua</span>{</span>
+<span id="cb267-11"><a href="#cb267-11" aria-hidden="true"></a>  local markdown = require("markdown")</span>
+<span id="cb267-12"><a href="#cb267-12" aria-hidden="true"></a>  local convert = markdown.new({smartEllipses = true})</span>
+<span id="cb267-13"><a href="#cb267-13" aria-hidden="true"></a>  local input = "... and this is a victorian ellipsis."</span>
+<span id="cb267-14"><a href="#cb267-14" aria-hidden="true"></a>  tex.sprint(convert(input)) }</span>
+<span id="cb267-15"><a href="#cb267-15" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Then, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb260"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb260-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb268"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb268-1"><a href="#cb268-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>These are just three regular dots …</p>
 <p>. . . and this is a victorian ellipsis.</p>
 </blockquote>
-<h5 id="lua-cli-example-9" class="unnumbered">Lua CLI Example</h5>
+<h5 class="unnumbered" data-number="" id="lua-cli-example-9">Lua CLI 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="cb261"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb261-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb261-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererEllipsis{. . .}</a>
-<a class="sourceLine" id="cb261-3" data-line-number="3"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb261-4" data-line-number="4"><span class="fu">\input</span> optionfalse</a>
-<a class="sourceLine" id="cb261-5" data-line-number="5"><span class="fu">\par</span></a>
-<a class="sourceLine" id="cb261-6" data-line-number="6"><span class="fu">\input</span> optiontrue</a>
-<a class="sourceLine" id="cb261-7" data-line-number="7"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb269"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb269-1"><a href="#cb269-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb269-2"><a href="#cb269-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererEllipsis</span>{. . .}</span>
+<span id="cb269-3"><a href="#cb269-3" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb269-4"><a href="#cb269-4" aria-hidden="true"></a><span class="fu">\input</span> optionfalse</span>
+<span id="cb269-5"><a href="#cb269-5" aria-hidden="true"></a><span class="fu">\par</span></span>
+<span id="cb269-6"><a href="#cb269-6" aria-hidden="true"></a><span class="fu">\input</span> optiontrue</span>
+<span id="cb269-7"><a href="#cb269-7" aria-hidden="true"></a><span class="fu">\bye</span></span></code></pre></div>
 <p>Using a text editor, create a text document named <code>content.md</code> with the following content:</p>
-<div class="sourceCode" id="cb262"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb262-1" data-line-number="1">Are these just three regular dots, a victorian ellipsis, or ... ?</a></code></pre></div>
+<div class="sourceCode" id="cb270"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb270-1"><a href="#cb270-1" aria-hidden="true"></a>Are these just three regular dots, a victorian ellipsis, or ... ?</span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb263"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb263-1" data-line-number="1"><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</a>
-<a class="sourceLine" id="cb263-2" data-line-number="2"><span class="ex">texlua</span> ⟨CLI pathname⟩ smartEllipses=true -- content.md optiontrue.tex</a>
-<a class="sourceLine" id="cb263-3" data-line-number="3"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb271"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb271-1"><a href="#cb271-1" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ -- content.md optionfalse.tex</span>
+<span id="cb271-2"><a href="#cb271-2" aria-hidden="true"></a><span class="ex">texlua</span> ⟨CLI pathname⟩ smartEllipses=true -- content.md optiontrue.tex</span>
+<span id="cb271-3"><a href="#cb271-3" aria-hidden="true"></a><span class="ex">luatex</span> document.tex</span></code></pre></div>
 <p>where ⟨<em>CLI pathname</em>⟩ corresponds to the location of the Lua CLI script file, such as <code>~/texmf/scripts/markdown/markdown-cli.lua</code> on UN*X systems or <code>C:\Users\</code>⟨<em>Your username</em>⟩<code>\texmf\scripts\markdown\markdown-cli.lua</code> on Windows systems. Use the command <code>kpsewhich -a markdown-cli.lua</code> to locate the Lua CLI script file using <a href="https://tug.org/kpathsea/" title="Kpathsea - TeX Users Group">Kpathsea</a>.</p>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the following text:</p>
 <blockquote>
@@ -3001,120 +3108,120 @@
 <p>Are these just three regular dots, a victorian ellipsis, or … ?</p>
 <p>Are these just three regular dots, a victorian ellipsis, or . . . ?</p>
 </blockquote>
-<h5 id="plain-tex-example-12" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-13">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="cb264"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb264-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb264-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererEllipsis{. . .}</a>
-<a class="sourceLine" id="cb264-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb264-4" data-line-number="4"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb264-5" data-line-number="5">These are just three regular dots ...</a>
-<a class="sourceLine" id="cb264-6" data-line-number="6"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb264-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb264-8" data-line-number="8"><span class="fu">\def</span>\markdownOptionSmartEllipses{true}</a>
-<a class="sourceLine" id="cb264-9" data-line-number="9"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb264-10" data-line-number="10">... and this is a victorian ellipsis.</a>
-<a class="sourceLine" id="cb264-11" data-line-number="11"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb264-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb264-13" data-line-number="13"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb272"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb272-1"><a href="#cb272-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb272-2"><a href="#cb272-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererEllipsis</span>{. . .}</span>
+<span id="cb272-3"><a href="#cb272-3" aria-hidden="true"></a></span>
+<span id="cb272-4"><a href="#cb272-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb272-5"><a href="#cb272-5" aria-hidden="true"></a>These are just three regular dots ...</span>
+<span id="cb272-6"><a href="#cb272-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb272-7"><a href="#cb272-7" aria-hidden="true"></a></span>
+<span id="cb272-8"><a href="#cb272-8" aria-hidden="true"></a><span class="fu">\def\markdownOptionSmartEllipses</span>{true}</span>
+<span id="cb272-9"><a href="#cb272-9" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb272-10"><a href="#cb272-10" aria-hidden="true"></a>... and this is a victorian ellipsis.</span>
+<span id="cb272-11"><a href="#cb272-11" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb272-12"><a href="#cb272-12" aria-hidden="true"></a></span>
+<span id="cb272-13"><a href="#cb272-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="cb265"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb265-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb273"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb273-1"><a href="#cb273-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>These are just three regular dots …</p>
 <p>. . . and this is a victorian ellipsis.</p>
 </blockquote>
-<h5 id="latex-example-22" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-23"><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="cb266"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb266-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb266-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb266-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb266-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb266-5" data-line-number="5">    ellipsis = {. . .}</a>
-<a class="sourceLine" id="cb266-6" data-line-number="6">  }</a>
-<a class="sourceLine" id="cb266-7" data-line-number="7">}</a>
-<a class="sourceLine" id="cb266-8" data-line-number="8"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb266-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb266-10" data-line-number="10"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb266-11" data-line-number="11">These are just three regular dots ...</a>
-<a class="sourceLine" id="cb266-12" data-line-number="12"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb266-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb266-14" data-line-number="14"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{smartEllipses}</a>
-<a class="sourceLine" id="cb266-15" data-line-number="15">... and this is a victorian ellipsis.</a>
-<a class="sourceLine" id="cb266-16" data-line-number="16"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb266-17" data-line-number="17"></a>
-<a class="sourceLine" id="cb266-18" data-line-number="18"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb274"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb274-1"><a href="#cb274-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb274-2"><a href="#cb274-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb274-3"><a href="#cb274-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb274-4"><a href="#cb274-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb274-5"><a href="#cb274-5" aria-hidden="true"></a>    ellipsis = {. . .}</span>
+<span id="cb274-6"><a href="#cb274-6" aria-hidden="true"></a>  }</span>
+<span id="cb274-7"><a href="#cb274-7" aria-hidden="true"></a>}</span>
+<span id="cb274-8"><a href="#cb274-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb274-9"><a href="#cb274-9" aria-hidden="true"></a></span>
+<span id="cb274-10"><a href="#cb274-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb274-11"><a href="#cb274-11" aria-hidden="true"></a>These are just three regular dots ...</span>
+<span id="cb274-12"><a href="#cb274-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb274-13"><a href="#cb274-13" aria-hidden="true"></a></span>
+<span id="cb274-14"><a href="#cb274-14" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{smartEllipses}</span>
+<span id="cb274-15"><a href="#cb274-15" aria-hidden="true"></a>... and this is a victorian ellipsis.</span>
+<span id="cb274-16"><a href="#cb274-16" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb274-17"><a href="#cb274-17" aria-hidden="true"></a></span>
+<span id="cb274-18"><a href="#cb274-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="cb267"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb267-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb275"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb275-1"><a href="#cb275-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>These are just three regular dots …</p>
 <p>. . . and this is a victorian ellipsis.</p>
 </blockquote>
-<h5 id="context-example-20" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-21">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="cb268"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb268-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb268-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererEllipsis{. . .}</a>
-<a class="sourceLine" id="cb268-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb268-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb268-5" data-line-number="5"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb268-6" data-line-number="6">These are just three regular dots ...</a>
-<a class="sourceLine" id="cb268-7" data-line-number="7"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb268-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb268-9" data-line-number="9"><span class="fu">\def</span>\markdownOptionSmartEllipses{true}</a>
-<a class="sourceLine" id="cb268-10" data-line-number="10"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb268-11" data-line-number="11">... and this is a victorian ellipsis.</a>
-<a class="sourceLine" id="cb268-12" data-line-number="12"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb268-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb268-14" data-line-number="14"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb276"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb276-1"><a href="#cb276-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb276-2"><a href="#cb276-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererEllipsis</span>{. . .}</span>
+<span id="cb276-3"><a href="#cb276-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb276-4"><a href="#cb276-4" aria-hidden="true"></a></span>
+<span id="cb276-5"><a href="#cb276-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb276-6"><a href="#cb276-6" aria-hidden="true"></a>These are just three regular dots ...</span>
+<span id="cb276-7"><a href="#cb276-7" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb276-8"><a href="#cb276-8" aria-hidden="true"></a></span>
+<span id="cb276-9"><a href="#cb276-9" aria-hidden="true"></a><span class="fu">\def\markdownOptionSmartEllipses</span>{true}</span>
+<span id="cb276-10"><a href="#cb276-10" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb276-11"><a href="#cb276-11" aria-hidden="true"></a>... and this is a victorian ellipsis.</span>
+<span id="cb276-12"><a href="#cb276-12" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb276-13"><a href="#cb276-13" aria-hidden="true"></a></span>
+<span id="cb276-14"><a href="#cb276-14" 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="cb269"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb269-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb277"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb277-1"><a href="#cb277-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>These are just three regular dots …</p>
 <p>. . . and this is a victorian ellipsis.</p>
 </blockquote>
-<h4 id="option-startnumber"><span class="header-section-number">2.2.1.27</span> Option <code>startNumber</code></h4>
+<h4 data-number="2.2.1.28" id="option-startnumber"><span class="header-section-number">2.2.1.28</span> Option <code>startNumber</code></h4>
 <dl>
 <dt><code>startNumber</code> (default value: <code>true</code>)</dt>
 <dd><dl>
 <dt>true</dt>
-<dd><p>Make the number in the first item of an ordered lists significant. The item numbers will be passed to the <code>\markdownRendererOlItemWithNumber</code> <span class="tex">T<sub>e</sub>X</span> macro.</p>
+<dd><p>Make the number in the first item of an ordered lists significant. The item numbers will be passed to the  <span class="tex">T<sub>e</sub>X</span> macro.</p>
 </dd>
 </dl>
 </dd>
 <dd><dl>
 <dt>false</dt>
-<dd><p>Ignore the numbers in the ordered list items. Each item will only produce a <code>\markdownRendererOlItem</code> <span class="tex">T<sub>e</sub>X</span> macro.</p>
+<dd><p>Ignore the numbers in the ordered list items. Each item will only produce a  <span class="tex">T<sub>e</sub>X</span> macro.</p>
 </dd>
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-23" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-24"><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="cb270"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb270-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb270-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb270-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb270-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb270-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb270-6" data-line-number="6">The following list respects the numbers specified in the markup:</a>
-<a class="sourceLine" id="cb270-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb270-8" data-line-number="8">3. third item</a>
-<a class="sourceLine" id="cb270-9" data-line-number="9">4. fourth item</a>
-<a class="sourceLine" id="cb270-10" data-line-number="10">5. fifth item</a>
-<a class="sourceLine" id="cb270-11" data-line-number="11"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb270-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb270-13" data-line-number="13"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{startNumber=false}</a>
-<a class="sourceLine" id="cb270-14" data-line-number="14">The following list does not respect the numbers specified in the</a>
-<a class="sourceLine" id="cb270-15" data-line-number="15">markup:</a>
-<a class="sourceLine" id="cb270-16" data-line-number="16"></a>
-<a class="sourceLine" id="cb270-17" data-line-number="17">3. third item</a>
-<a class="sourceLine" id="cb270-18" data-line-number="18">4. fourth item</a>
-<a class="sourceLine" id="cb270-19" data-line-number="19">5. fifth item</a>
-<a class="sourceLine" id="cb270-20" data-line-number="20"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb270-21" data-line-number="21"></a>
-<a class="sourceLine" id="cb270-22" data-line-number="22"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb278"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb278-1"><a href="#cb278-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb278-2"><a href="#cb278-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb278-3"><a href="#cb278-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb278-4"><a href="#cb278-4" aria-hidden="true"></a></span>
+<span id="cb278-5"><a href="#cb278-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb278-6"><a href="#cb278-6" aria-hidden="true"></a>The following list respects the numbers specified in the markup:</span>
+<span id="cb278-7"><a href="#cb278-7" aria-hidden="true"></a></span>
+<span id="cb278-8"><a href="#cb278-8" aria-hidden="true"></a>3. third item</span>
+<span id="cb278-9"><a href="#cb278-9" aria-hidden="true"></a>4. fourth item</span>
+<span id="cb278-10"><a href="#cb278-10" aria-hidden="true"></a>5. fifth item</span>
+<span id="cb278-11"><a href="#cb278-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb278-12"><a href="#cb278-12" aria-hidden="true"></a></span>
+<span id="cb278-13"><a href="#cb278-13" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{startNumber=false}</span>
+<span id="cb278-14"><a href="#cb278-14" aria-hidden="true"></a>The following list does not respect the numbers specified in the</span>
+<span id="cb278-15"><a href="#cb278-15" aria-hidden="true"></a>markup:</span>
+<span id="cb278-16"><a href="#cb278-16" aria-hidden="true"></a></span>
+<span id="cb278-17"><a href="#cb278-17" aria-hidden="true"></a>3. third item</span>
+<span id="cb278-18"><a href="#cb278-18" aria-hidden="true"></a>4. fourth item</span>
+<span id="cb278-19"><a href="#cb278-19" aria-hidden="true"></a>5. fifth item</span>
+<span id="cb278-20"><a href="#cb278-20" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb278-21"><a href="#cb278-21" aria-hidden="true"></a></span>
+<span id="cb278-22"><a href="#cb278-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="cb271"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb271-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb279"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb279-1"><a href="#cb279-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 following list respects the numbers specified in the markup:</p>
@@ -3130,30 +3237,30 @@
 <li>fifth item</li>
 </ol>
 </blockquote>
-<h5 id="context-example-21" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-22">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="cb272"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb272-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb272-2" data-line-number="2"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb272-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb272-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb272-5" data-line-number="5">The following list respects the numbers specified in the markup:</a>
-<a class="sourceLine" id="cb272-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb272-7" data-line-number="7">3. third item</a>
-<a class="sourceLine" id="cb272-8" data-line-number="8">4. fourth item</a>
-<a class="sourceLine" id="cb272-9" data-line-number="9">5. fifth item</a>
-<a class="sourceLine" id="cb272-10" data-line-number="10"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb272-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb272-12" data-line-number="12"><span class="fu">\def</span>\markdownOptionStartNumber{false}</a>
-<a class="sourceLine" id="cb272-13" data-line-number="13"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb272-14" data-line-number="14">The following list respects the numbers specified in the markup:</a>
-<a class="sourceLine" id="cb272-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb272-16" data-line-number="16">3. third item</a>
-<a class="sourceLine" id="cb272-17" data-line-number="17">4. fourth item</a>
-<a class="sourceLine" id="cb272-18" data-line-number="18">5. fifth item</a>
-<a class="sourceLine" id="cb272-19" data-line-number="19"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb272-20" data-line-number="20"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb280"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb280-1"><a href="#cb280-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb280-2"><a href="#cb280-2" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb280-3"><a href="#cb280-3" aria-hidden="true"></a></span>
+<span id="cb280-4"><a href="#cb280-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb280-5"><a href="#cb280-5" aria-hidden="true"></a>The following list respects the numbers specified in the markup:</span>
+<span id="cb280-6"><a href="#cb280-6" aria-hidden="true"></a></span>
+<span id="cb280-7"><a href="#cb280-7" aria-hidden="true"></a>3. third item</span>
+<span id="cb280-8"><a href="#cb280-8" aria-hidden="true"></a>4. fourth item</span>
+<span id="cb280-9"><a href="#cb280-9" aria-hidden="true"></a>5. fifth item</span>
+<span id="cb280-10"><a href="#cb280-10" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb280-11"><a href="#cb280-11" aria-hidden="true"></a></span>
+<span id="cb280-12"><a href="#cb280-12" aria-hidden="true"></a><span class="fu">\def\markdownOptionStartNumber</span>{false}</span>
+<span id="cb280-13"><a href="#cb280-13" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb280-14"><a href="#cb280-14" aria-hidden="true"></a>The following list respects the numbers specified in the markup:</span>
+<span id="cb280-15"><a href="#cb280-15" aria-hidden="true"></a></span>
+<span id="cb280-16"><a href="#cb280-16" aria-hidden="true"></a>3. third item</span>
+<span id="cb280-17"><a href="#cb280-17" aria-hidden="true"></a>4. fourth item</span>
+<span id="cb280-18"><a href="#cb280-18" aria-hidden="true"></a>5. fifth item</span>
+<span id="cb280-19"><a href="#cb280-19" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb280-20"><a href="#cb280-20" 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="cb273"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb273-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb281"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb281-1"><a href="#cb281-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>The following list respects the numbers specified in the markup:</p>
@@ -3169,19 +3276,19 @@
 <li>fifth item</li>
 </ol>
 </blockquote>
-<h4 id="option-stripindent"><span class="header-section-number">2.2.1.28</span> Option <code>stripIndent</code></h4>
+<h4 data-number="2.2.1.29" id="option-stripindent"><span class="header-section-number">2.2.1.29</span> Option <code>stripIndent</code></h4>
 <dl>
 <dt><code>stripIndent</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Strip the minimal indentation of non-blank lines from all lines in a markdown document. Requires that the <strong><code>preserveTabs</code></strong> Lua option is :</p>
-<div class="sourceCode" id="cb274"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb274-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb274-2" data-line-number="2"><span class="bu">\usepackage</span>[stripIndent]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb274-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb274-4" data-line-number="4">    <span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb274-5" data-line-number="5">        Hello *world*!</a>
-<a class="sourceLine" id="cb274-6" data-line-number="6">    <span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb274-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb282"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb282-1"><a href="#cb282-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb282-2"><a href="#cb282-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[stripIndent]{<span class="ex">markdown</span>}</span>
+<span id="cb282-3"><a href="#cb282-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb282-4"><a href="#cb282-4" aria-hidden="true"></a>    <span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb282-5"><a href="#cb282-5" aria-hidden="true"></a>        Hello *world*!</span>
+<span id="cb282-6"><a href="#cb282-6" aria-hidden="true"></a>    <span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb282-7"><a href="#cb282-7" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
 </dd>
 </dl>
 </dd>
@@ -3192,81 +3299,81 @@
 </dl>
 </dd>
 </dl>
-<h5 id="plain-tex-example-13" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-14">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="cb275"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb275-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb275-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionStripIndent{true}</a>
-<a class="sourceLine" id="cb275-3" data-line-number="3"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb275-4" data-line-number="4">    Hello *world*!</a>
-<a class="sourceLine" id="cb275-5" data-line-number="5"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb275-6" data-line-number="6"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb283"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb283-1"><a href="#cb283-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb283-2"><a href="#cb283-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionStripIndent</span>{true}</span>
+<span id="cb283-3"><a href="#cb283-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb283-4"><a href="#cb283-4" aria-hidden="true"></a>    Hello *world*!</span>
+<span id="cb283-5"><a href="#cb283-5" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb283-6"><a href="#cb283-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="cb276"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb276-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb284"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb284-1"><a href="#cb284-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 text “Hello <em>world</em>!”</p>
-<h5 id="latex-example-24" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-25"><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="cb277"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb277-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb277-2" data-line-number="2"><span class="bu">\usepackage</span>[stripIndent]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb277-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb277-4" data-line-number="4">    <span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb277-5" data-line-number="5">        Hello *world*!</a>
-<a class="sourceLine" id="cb277-6" data-line-number="6">    <span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb277-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb285"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb285-1"><a href="#cb285-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb285-2"><a href="#cb285-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[stripIndent]{<span class="ex">markdown</span>}</span>
+<span id="cb285-3"><a href="#cb285-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb285-4"><a href="#cb285-4" aria-hidden="true"></a>    <span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb285-5"><a href="#cb285-5" aria-hidden="true"></a>        Hello *world*!</span>
+<span id="cb285-6"><a href="#cb285-6" aria-hidden="true"></a>    <span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb285-7"><a href="#cb285-7" 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="cb278"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb278-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb286"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb286-1"><a href="#cb286-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 text “Hello <em>world</em>!”</p>
-<h5 id="context-example-22" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-23">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="cb279"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb279-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb279-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionStripIndent{true}</a>
-<a class="sourceLine" id="cb279-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb279-4" data-line-number="4">    <span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb279-5" data-line-number="5">        Hello *world*!</a>
-<a class="sourceLine" id="cb279-6" data-line-number="6">    <span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb279-7" data-line-number="7"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb287"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb287-1"><a href="#cb287-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb287-2"><a href="#cb287-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionStripIndent</span>{true}</span>
+<span id="cb287-3"><a href="#cb287-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb287-4"><a href="#cb287-4" aria-hidden="true"></a>    <span class="fu">\startmarkdown</span></span>
+<span id="cb287-5"><a href="#cb287-5" aria-hidden="true"></a>        Hello *world*!</span>
+<span id="cb287-6"><a href="#cb287-6" aria-hidden="true"></a>    <span class="fu">\stopmarkdown</span></span>
+<span id="cb287-7"><a href="#cb287-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="cb280"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb280-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb288"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb288-1"><a href="#cb288-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 text “Hello <em>world</em>!”</p>
-<h4 id="option-tablecaptions"><span class="header-section-number">2.2.1.29</span> Option <code>tableCaptions</code></h4>
+<h4 data-number="2.2.1.30" id="option-tablecaptions"><span class="header-section-number">2.2.1.30</span> Option <code>tableCaptions</code></h4>
 <dl>
 <dt><code>tableCaptions</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Enable the Pandoc <code>table_captions</code> syntax extension for <a href="#pipe-tables">pipe tables</a>.</p>
-<div class="sourceCode" id="cb281"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb281-1" data-line-number="1">| Right | Left | Default | Center |</a>
-<a class="sourceLine" id="cb281-2" data-line-number="2">|------:|:-----|---------|:------:|</a>
-<a class="sourceLine" id="cb281-3" data-line-number="3">|   12  |  12  |    12   |    12  |</a>
-<a class="sourceLine" id="cb281-4" data-line-number="4">|  123  |  123 |   123   |   123  |</a>
-<a class="sourceLine" id="cb281-5" data-line-number="5">|    1  |    1 |     1   |     1  |</a>
-<a class="sourceLine" id="cb281-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb281-7" data-line-number="7">  : Demonstration of pipe table syntax.</a></code></pre></div>
+<div class="sourceCode" id="cb289"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb289-1"><a href="#cb289-1" aria-hidden="true"></a>| Right | Left | Default | Center |</span>
+<span id="cb289-2"><a href="#cb289-2" aria-hidden="true"></a>|------:|:-----|---------|:------:|</span>
+<span id="cb289-3"><a href="#cb289-3" aria-hidden="true"></a>|   12  |  12  |    12   |    12  |</span>
+<span id="cb289-4"><a href="#cb289-4" aria-hidden="true"></a>|  123  |  123 |   123   |   123  |</span>
+<span id="cb289-5"><a href="#cb289-5" aria-hidden="true"></a>|    1  |    1 |     1   |     1  |</span>
+<span id="cb289-6"><a href="#cb289-6" aria-hidden="true"></a></span>
+<span id="cb289-7"><a href="#cb289-7" aria-hidden="true"></a>  : Demonstration of pipe table syntax.</span></code></pre></div>
 </dd>
 </dl>
 </dd>
 <dd><dl>
 <dt>false</dt>
-<dd><p>Enable the Pandoc <code>table_captions</code> syntax extension.</p>
+<dd><p>Disable the Pandoc <code>table_captions</code> syntax extension.</p>
 </dd>
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-25" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-26"><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="cb282"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb282-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb282-2" data-line-number="2"><span class="bu">\usepackage</span>[pipeTables, tableCaptions]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb282-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb282-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb282-5" data-line-number="5">| Right | Left | Default | Center |</a>
-<a class="sourceLine" id="cb282-6" data-line-number="6">|------:|:-----|---------|:------:|</a>
-<a class="sourceLine" id="cb282-7" data-line-number="7">|   12  |  12  |    12   |    12  |</a>
-<a class="sourceLine" id="cb282-8" data-line-number="8">|  123  |  123 |   123   |   123  |</a>
-<a class="sourceLine" id="cb282-9" data-line-number="9">|    1  |    1 |     1   |     1  |</a>
-<a class="sourceLine" id="cb282-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb282-11" data-line-number="11">  : Demonstration of pipe table syntax.</a>
-<a class="sourceLine" id="cb282-12" data-line-number="12"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb282-13" data-line-number="13"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb290"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb290-1"><a href="#cb290-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb290-2"><a href="#cb290-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[pipeTables, tableCaptions]{<span class="ex">markdown</span>}</span>
+<span id="cb290-3"><a href="#cb290-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb290-4"><a href="#cb290-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb290-5"><a href="#cb290-5" aria-hidden="true"></a>| Right | Left | Default | Center |</span>
+<span id="cb290-6"><a href="#cb290-6" aria-hidden="true"></a>|------:|:-----|---------|:------:|</span>
+<span id="cb290-7"><a href="#cb290-7" aria-hidden="true"></a>|   12  |  12  |    12   |    12  |</span>
+<span id="cb290-8"><a href="#cb290-8" aria-hidden="true"></a>|  123  |  123 |   123   |   123  |</span>
+<span id="cb290-9"><a href="#cb290-9" aria-hidden="true"></a>|    1  |    1 |     1   |     1  |</span>
+<span id="cb290-10"><a href="#cb290-10" aria-hidden="true"></a></span>
+<span id="cb290-11"><a href="#cb290-11" aria-hidden="true"></a>  : Demonstration of pipe table syntax.</span>
+<span id="cb290-12"><a href="#cb290-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb290-13"><a href="#cb290-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="cb283"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb283-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb291"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb291-1"><a href="#cb291-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>
 <table>
@@ -3301,24 +3408,24 @@
 </tbody>
 </table>
 </blockquote>
-<h5 id="context-example-23" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-24">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="cb284"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb284-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb284-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionPipeTables{true}</a>
-<a class="sourceLine" id="cb284-3" data-line-number="3"><span class="fu">\def</span>\markdownOptionTableCaptions{true}</a>
-<a class="sourceLine" id="cb284-4" data-line-number="4"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb284-5" data-line-number="5"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb284-6" data-line-number="6">| Right | Left | Default | Center |</a>
-<a class="sourceLine" id="cb284-7" data-line-number="7">|------:|:-----|---------|:------:|</a>
-<a class="sourceLine" id="cb284-8" data-line-number="8">|   12  |  12  |    12   |    12  |</a>
-<a class="sourceLine" id="cb284-9" data-line-number="9">|  123  |  123 |   123   |   123  |</a>
-<a class="sourceLine" id="cb284-10" data-line-number="10">|    1  |    1 |     1   |     1  |</a>
-<a class="sourceLine" id="cb284-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb284-12" data-line-number="12">  : Demonstration of pipe table syntax.</a>
-<a class="sourceLine" id="cb284-13" data-line-number="13"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb284-14" data-line-number="14"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb292"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb292-1"><a href="#cb292-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb292-2"><a href="#cb292-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionPipeTables</span>{true}</span>
+<span id="cb292-3"><a href="#cb292-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionTableCaptions</span>{true}</span>
+<span id="cb292-4"><a href="#cb292-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb292-5"><a href="#cb292-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb292-6"><a href="#cb292-6" aria-hidden="true"></a>| Right | Left | Default | Center |</span>
+<span id="cb292-7"><a href="#cb292-7" aria-hidden="true"></a>|------:|:-----|---------|:------:|</span>
+<span id="cb292-8"><a href="#cb292-8" aria-hidden="true"></a>|   12  |  12  |    12   |    12  |</span>
+<span id="cb292-9"><a href="#cb292-9" aria-hidden="true"></a>|  123  |  123 |   123   |   123  |</span>
+<span id="cb292-10"><a href="#cb292-10" aria-hidden="true"></a>|    1  |    1 |     1   |     1  |</span>
+<span id="cb292-11"><a href="#cb292-11" aria-hidden="true"></a></span>
+<span id="cb292-12"><a href="#cb292-12" aria-hidden="true"></a>  : Demonstration of pipe table syntax.</span>
+<span id="cb292-13"><a href="#cb292-13" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb292-14"><a href="#cb292-14" 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="cb285"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb285-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb293"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb293-1"><a href="#cb293-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>
 <table>
@@ -3353,20 +3460,91 @@
 </tbody>
 </table>
 </blockquote>
-<h4 id="option-texcomments"><span class="header-section-number">2.2.1.30</span> Option <code>texComments</code></h4>
+<h4 data-number="2.2.1.31" id="option-tasklists"><span class="header-section-number">2.2.1.31</span> Option <code>taskLists</code></h4>
 <dl>
+<dt><code>taskLists</code> (default value: <code>false</code>)</dt>
+<dd><dl>
+<dt>true</dt>
+<dd><p>Enable the Pandoc <code>task_lists</code> syntax extension.</p>
+<div class="sourceCode" id="cb294"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb294-1"><a href="#cb294-1" aria-hidden="true"></a><span class="ss">- </span><span class="va">[ ]</span> an unticked task list item</span>
+<span id="cb294-2"><a href="#cb294-2" aria-hidden="true"></a><span class="ss">- </span><span class="co">[</span><span class="ot">/</span><span class="co">]</span> a half-checked task list item</span>
+<span id="cb294-3"><a href="#cb294-3" aria-hidden="true"></a><span class="ss">- </span><span class="co">[</span><span class="ot">X</span><span class="co">]</span> a ticked task list item</span></code></pre></div>
+</dd>
+</dl>
+</dd>
+<dd><dl>
+<dt>false</dt>
+<dd><p>Disable the Pandoc <code>task_lists</code> syntax extension.</p>
+</dd>
+</dl>
+</dd>
+</dl>
+<h5 class="unnumbered" data-number="" id="latex-example-27"><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="cb295"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb295-1"><a href="#cb295-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb295-2"><a href="#cb295-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[taskLists]{<span class="ex">markdown</span>}</span>
+<span id="cb295-3"><a href="#cb295-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb295-4"><a href="#cb295-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb295-5"><a href="#cb295-5" aria-hidden="true"></a>    untickedBox = No,</span>
+<span id="cb295-6"><a href="#cb295-6" aria-hidden="true"></a>    halfTickedBox = Maybe,</span>
+<span id="cb295-7"><a href="#cb295-7" aria-hidden="true"></a>    tickedBox = Yes,</span>
+<span id="cb295-8"><a href="#cb295-8" aria-hidden="true"></a>  },</span>
+<span id="cb295-9"><a href="#cb295-9" aria-hidden="true"></a>}</span>
+<span id="cb295-10"><a href="#cb295-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb295-11"><a href="#cb295-11" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb295-12"><a href="#cb295-12" aria-hidden="true"></a>- [ ] you can't.</span>
+<span id="cb295-13"><a href="#cb295-13" aria-hidden="true"></a>- [/] I can?</span>
+<span id="cb295-14"><a href="#cb295-14" aria-hidden="true"></a>- [X] I can!</span>
+<span id="cb295-15"><a href="#cb295-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb295-16"><a href="#cb295-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="cb296"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb296-1"><a href="#cb296-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>
+<ul>
+<li>No you can’t.</li>
+<li>Maybe I can?</li>
+<li>Yes I can!</li>
+</ul>
+</blockquote>
+<h5 class="unnumbered" data-number="" id="context-example-25">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="cb297"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb297-1"><a href="#cb297-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb297-2"><a href="#cb297-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTaskLists</span>{true}</span>
+<span id="cb297-3"><a href="#cb297-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererUntickedBox</span>{No}</span>
+<span id="cb297-4"><a href="#cb297-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererHalftickedBox</span>{Maybe}</span>
+<span id="cb297-5"><a href="#cb297-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererTickedBox</span>{Yes}</span>
+<span id="cb297-6"><a href="#cb297-6" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb297-7"><a href="#cb297-7" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb297-8"><a href="#cb297-8" aria-hidden="true"></a>- [ ] you can't.</span>
+<span id="cb297-9"><a href="#cb297-9" aria-hidden="true"></a>- [/] I can?</span>
+<span id="cb297-10"><a href="#cb297-10" aria-hidden="true"></a>- [X] I can!</span>
+<span id="cb297-11"><a href="#cb297-11" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb297-12"><a href="#cb297-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="cb298"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb298-1"><a href="#cb298-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>
+<ul>
+<li>No you can’t.</li>
+<li>Maybe I can?</li>
+<li>Yes I can!</li>
+</ul>
+</blockquote>
+<h4 data-number="2.2.1.32" id="option-texcomments"><span class="header-section-number">2.2.1.32</span> Option <code>texComments</code></h4>
+<dl>
 <dt><code>texComments</code> (default value: <code>false</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Strip <span class="tex">T<sub>e</sub>X</span>-style comments.</p>
-<div class="sourceCode" id="cb286"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb286-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb286-2" data-line-number="2"><span class="bu">\usepackage</span>[texComments]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb286-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb286-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb286-5" data-line-number="5">Hel<span class="co">%  this is a comment</span></a>
-<a class="sourceLine" id="cb286-6" data-line-number="6">   lo *world*!</a>
-<a class="sourceLine" id="cb286-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb286-8" data-line-number="8"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb299"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb299-1"><a href="#cb299-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb299-2"><a href="#cb299-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[texComments]{<span class="ex">markdown</span>}</span>
+<span id="cb299-3"><a href="#cb299-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb299-4"><a href="#cb299-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb299-5"><a href="#cb299-5" aria-hidden="true"></a>Hel<span class="co">%  this is a comment</span></span>
+<span id="cb299-6"><a href="#cb299-6" aria-hidden="true"></a>   lo *world*!</span>
+<span id="cb299-7"><a href="#cb299-7" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb299-8"><a href="#cb299-8" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span></code></pre></div>
 <p>Always enabled when <strong><code>hybrid</code></strong> is enabled.</p>
 </dd>
 </dl>
@@ -3378,50 +3556,50 @@
 </dl>
 </dd>
 </dl>
-<h5 id="plain-tex-example-14" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-15">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="cb287"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb287-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb287-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionTeXComments{true}</a>
-<a class="sourceLine" id="cb287-3" data-line-number="3"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb287-4" data-line-number="4">Hel<span class="co">%  this is a comment</span></a>
-<a class="sourceLine" id="cb287-5" data-line-number="5">   lo *world*!</a>
-<a class="sourceLine" id="cb287-6" data-line-number="6"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb287-7" data-line-number="7"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb300"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb300-1"><a href="#cb300-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb300-2"><a href="#cb300-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTeXComments</span>{true}</span>
+<span id="cb300-3"><a href="#cb300-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb300-4"><a href="#cb300-4" aria-hidden="true"></a>Hel<span class="co">%  this is a comment</span></span>
+<span id="cb300-5"><a href="#cb300-5" aria-hidden="true"></a>   lo *world*!</span>
+<span id="cb300-6"><a href="#cb300-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb300-7"><a href="#cb300-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="cb288"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb288-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb301"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb301-1"><a href="#cb301-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 text “Hello <em>world</em>!”</p>
-<h5 id="latex-example-26" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-28"><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="cb289"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb289-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb289-2" data-line-number="2"><span class="bu">\usepackage</span>[texComments]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb289-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb289-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb289-5" data-line-number="5">Hel<span class="co">%  this is a comment</span></a>
-<a class="sourceLine" id="cb289-6" data-line-number="6">   lo *world*!</a>
-<a class="sourceLine" id="cb289-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb289-8" data-line-number="8"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb302"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb302-1"><a href="#cb302-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb302-2"><a href="#cb302-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[texComments]{<span class="ex">markdown</span>}</span>
+<span id="cb302-3"><a href="#cb302-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb302-4"><a href="#cb302-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb302-5"><a href="#cb302-5" aria-hidden="true"></a>Hel<span class="co">%  this is a comment</span></span>
+<span id="cb302-6"><a href="#cb302-6" aria-hidden="true"></a>   lo *world*!</span>
+<span id="cb302-7"><a href="#cb302-7" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb302-8"><a href="#cb302-8" 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="cb290"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb290-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb303"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb303-1"><a href="#cb303-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 text “Hello <em>world</em>!”</p>
-<h5 id="context-example-24" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-26">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="cb291"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb291-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb291-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionTeXComments{true}</a>
-<a class="sourceLine" id="cb291-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb291-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb291-5" data-line-number="5">Hel<span class="co">%  this is a comment</span></a>
-<a class="sourceLine" id="cb291-6" data-line-number="6">   lo *world*!</a>
-<a class="sourceLine" id="cb291-7" data-line-number="7"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb291-8" data-line-number="8"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb304"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb304-1"><a href="#cb304-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb304-2"><a href="#cb304-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTeXComments</span>{true}</span>
+<span id="cb304-3"><a href="#cb304-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb304-4"><a href="#cb304-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb304-5"><a href="#cb304-5" aria-hidden="true"></a>Hel<span class="co">%  this is a comment</span></span>
+<span id="cb304-6"><a href="#cb304-6" aria-hidden="true"></a>   lo *world*!</span>
+<span id="cb304-7"><a href="#cb304-7" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb304-8"><a href="#cb304-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="cb292"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb292-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb305"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb305-1"><a href="#cb305-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 text “Hello <em>world</em>!”</p>
-<h4 id="option-tightlists"><span class="header-section-number">2.2.1.31</span> Option <code>tightLists</code></h4>
+<h4 data-number="2.2.1.33" id="option-tightlists"><span class="header-section-number">2.2.1.33</span> Option <code>tightLists</code></h4>
 <dl>
 <dt><code>tightLists</code> (default value: <code>true</code>)</dt>
 <dd><dl>
 <dt>true</dt>
-<dd><p>Lists whose bullets do not consist of multiple paragraphs will be passed to the <code>\markdownRendererOlBeginTight</code>, <code>\markdownRendererOlEndTight</code>, <code>\markdownRendererUlBeginTight</code>, <code>\markdownRendererUlEndTight</code>, <code>\markdownRendererDlBeginTight</code>, and <code>\markdownRendererDlEndTight</code> <span class="tex">T<sub>e</sub>X</span> macros.</p>
+<dd><p>Lists whose bullets do not consist of multiple paragraphs will be passed to the , , , , , and  <span class="tex">T<sub>e</sub>X</span> macros.</p>
 </dd>
 </dl>
 </dd>
@@ -3432,39 +3610,39 @@
 </dl>
 </dd>
 </dl>
-<h5 id="latex-example-27" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-29"><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="cb293"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb293-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb293-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb293-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb293-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb293-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb293-6" data-line-number="6">The following list is tight:</a>
-<a class="sourceLine" id="cb293-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb293-8" data-line-number="8">  - first item</a>
-<a class="sourceLine" id="cb293-9" data-line-number="9">  - second item</a>
-<a class="sourceLine" id="cb293-10" data-line-number="10">  - third item</a>
-<a class="sourceLine" id="cb293-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb293-12" data-line-number="12">The following list is loose:</a>
-<a class="sourceLine" id="cb293-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb293-14" data-line-number="14">  - first item</a>
-<a class="sourceLine" id="cb293-15" data-line-number="15">  - second item that spans</a>
-<a class="sourceLine" id="cb293-16" data-line-number="16"></a>
-<a class="sourceLine" id="cb293-17" data-line-number="17">    multiple paragraphs</a>
-<a class="sourceLine" id="cb293-18" data-line-number="18">  - third item</a>
-<a class="sourceLine" id="cb293-19" data-line-number="19"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb293-20" data-line-number="20"></a>
-<a class="sourceLine" id="cb293-21" data-line-number="21"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{tightLists=false}</a>
-<a class="sourceLine" id="cb293-22" data-line-number="22">The following list is now also loose:</a>
-<a class="sourceLine" id="cb293-23" data-line-number="23"></a>
-<a class="sourceLine" id="cb293-24" data-line-number="24">  - first item</a>
-<a class="sourceLine" id="cb293-25" data-line-number="25">  - second item</a>
-<a class="sourceLine" id="cb293-26" data-line-number="26">  - third item</a>
-<a class="sourceLine" id="cb293-27" data-line-number="27"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb293-28" data-line-number="28"></a>
-<a class="sourceLine" id="cb293-29" data-line-number="29"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb306"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb306-1"><a href="#cb306-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb306-2"><a href="#cb306-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb306-3"><a href="#cb306-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb306-4"><a href="#cb306-4" aria-hidden="true"></a></span>
+<span id="cb306-5"><a href="#cb306-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb306-6"><a href="#cb306-6" aria-hidden="true"></a>The following list is tight:</span>
+<span id="cb306-7"><a href="#cb306-7" aria-hidden="true"></a></span>
+<span id="cb306-8"><a href="#cb306-8" aria-hidden="true"></a>  - first item</span>
+<span id="cb306-9"><a href="#cb306-9" aria-hidden="true"></a>  - second item</span>
+<span id="cb306-10"><a href="#cb306-10" aria-hidden="true"></a>  - third item</span>
+<span id="cb306-11"><a href="#cb306-11" aria-hidden="true"></a></span>
+<span id="cb306-12"><a href="#cb306-12" aria-hidden="true"></a>The following list is loose:</span>
+<span id="cb306-13"><a href="#cb306-13" aria-hidden="true"></a></span>
+<span id="cb306-14"><a href="#cb306-14" aria-hidden="true"></a>  - first item</span>
+<span id="cb306-15"><a href="#cb306-15" aria-hidden="true"></a>  - second item that spans</span>
+<span id="cb306-16"><a href="#cb306-16" aria-hidden="true"></a></span>
+<span id="cb306-17"><a href="#cb306-17" aria-hidden="true"></a>    multiple paragraphs</span>
+<span id="cb306-18"><a href="#cb306-18" aria-hidden="true"></a>  - third item</span>
+<span id="cb306-19"><a href="#cb306-19" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb306-20"><a href="#cb306-20" aria-hidden="true"></a></span>
+<span id="cb306-21"><a href="#cb306-21" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{tightLists=false}</span>
+<span id="cb306-22"><a href="#cb306-22" aria-hidden="true"></a>The following list is now also loose:</span>
+<span id="cb306-23"><a href="#cb306-23" aria-hidden="true"></a></span>
+<span id="cb306-24"><a href="#cb306-24" aria-hidden="true"></a>  - first item</span>
+<span id="cb306-25"><a href="#cb306-25" aria-hidden="true"></a>  - second item</span>
+<span id="cb306-26"><a href="#cb306-26" aria-hidden="true"></a>  - third item</span>
+<span id="cb306-27"><a href="#cb306-27" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb306-28"><a href="#cb306-28" aria-hidden="true"></a></span>
+<span id="cb306-29"><a href="#cb306-29" 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="cb294"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb294-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb307"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb307-1"><a href="#cb307-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 following list is tight:</p>
@@ -3475,9 +3653,9 @@
 </ul>
 <p>The following list is loose:</p>
 <ul>
-<li>first item</li>
+<li><p>first item</p></li>
 <li><p>second item that spans</p>
-multiple paragraphs</li>
+<p>multiple paragraphs</p></li>
 <li><p>third item</p></li>
 </ul>
 <p>The following list is now also loose:</p>
@@ -3487,16 +3665,16 @@
 <li><p>third item</p></li>
 </ul>
 </blockquote>
-<h4 id="option-underscores"><span class="header-section-number">2.2.1.32</span> Option <code>underscores</code></h4>
+<h4 data-number="2.2.1.34" id="option-underscores"><span class="header-section-number">2.2.1.34</span> Option <code>underscores</code></h4>
 <dl>
 <dt><code>underscores</code> (default value: <code>true</code>)</dt>
 <dd><dl>
 <dt>true</dt>
 <dd><p>Both underscores and asterisks can be used to denote emphasis and strong emphasis:</p>
-<div class="sourceCode" id="cb295"><pre class="sourceCode md"><code class="sourceCode markdown"><a class="sourceLine" id="cb295-1" data-line-number="1">*single asterisks*</a>
-<a class="sourceLine" id="cb295-2" data-line-number="2">_single underscores_</a>
-<a class="sourceLine" id="cb295-3" data-line-number="3">**double asterisks**</a>
-<a class="sourceLine" id="cb295-4" data-line-number="4">__double underscores__</a></code></pre></div>
+<div class="sourceCode" id="cb308"><pre class="sourceCode md"><code class="sourceCode markdown"><span id="cb308-1"><a href="#cb308-1" aria-hidden="true"></a>*single asterisks*</span>
+<span id="cb308-2"><a href="#cb308-2" aria-hidden="true"></a>_single underscores_</span>
+<span id="cb308-3"><a href="#cb308-3" aria-hidden="true"></a>**double asterisks**</span>
+<span id="cb308-4"><a href="#cb308-4" aria-hidden="true"></a>__double underscores__</span></code></pre></div>
 </dd>
 </dl>
 </dd>
@@ -3507,87 +3685,87 @@
 </dl>
 </dd>
 </dl>
-<h5 id="plain-tex-example-15" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="plain-tex-example-16">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="cb296"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb296-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb296-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionHybrid{true}</a>
-<a class="sourceLine" id="cb296-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb296-4" data-line-number="4"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb296-5" data-line-number="5">This is _emphasized text_ and this is a math subscript: <span class="ss">$m</span><span class="sc">\_</span><span class="ss">n$</span>.</a>
-<a class="sourceLine" id="cb296-6" data-line-number="6"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb296-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb296-8" data-line-number="8"><span class="fu">\def</span>\markdownOptionUnderscores{false}</a>
-<a class="sourceLine" id="cb296-9" data-line-number="9"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb296-10" data-line-number="10">This is *emphasized text* and this is a math subscript: <span class="ss">$m_n$</span>.</a>
-<a class="sourceLine" id="cb296-11" data-line-number="11"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb296-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb296-13" data-line-number="13"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb309"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb309-1"><a href="#cb309-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb309-2"><a href="#cb309-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
+<span id="cb309-3"><a href="#cb309-3" aria-hidden="true"></a></span>
+<span id="cb309-4"><a href="#cb309-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb309-5"><a href="#cb309-5" aria-hidden="true"></a>This is _emphasized text_ and this is a math subscript: <span class="ss">$m</span><span class="sc">\_</span><span class="ss">n$</span>.</span>
+<span id="cb309-6"><a href="#cb309-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb309-7"><a href="#cb309-7" aria-hidden="true"></a></span>
+<span id="cb309-8"><a href="#cb309-8" aria-hidden="true"></a><span class="fu">\def\markdownOptionUnderscores</span>{false}</span>
+<span id="cb309-9"><a href="#cb309-9" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb309-10"><a href="#cb309-10" aria-hidden="true"></a>This is *emphasized text* and this is a math subscript: <span class="ss">$m_n$</span>.</span>
+<span id="cb309-11"><a href="#cb309-11" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb309-12"><a href="#cb309-12" aria-hidden="true"></a></span>
+<span id="cb309-13"><a href="#cb309-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="cb297"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb297-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb310"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb310-1"><a href="#cb310-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>emphasized text</em> and this is a math subscript: <em>mₙ</em>.</p>
 <p>This is <em>emphasized text</em> and this is a math subscript: <em>mₙ</em>.</p>
 </blockquote>
-<h5 id="latex-example-28" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-30"><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="cb298"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb298-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb298-2" data-line-number="2"><span class="bu">\usepackage</span>[hybrid]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb298-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb298-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb298-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb298-6" data-line-number="6">This is _emphasized text_ and this is a math subscript: <span class="ss">$m</span><span class="sc">\_</span><span class="ss">n$</span>.</a>
-<a class="sourceLine" id="cb298-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb298-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb298-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{underscores=false}</a>
-<a class="sourceLine" id="cb298-10" data-line-number="10">This is *emphasized text* and this is a math subscript: <span class="ss">$m_n$</span>.</a>
-<a class="sourceLine" id="cb298-11" data-line-number="11"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb298-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb298-13" data-line-number="13"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb311"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb311-1"><a href="#cb311-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb311-2"><a href="#cb311-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[hybrid]{<span class="ex">markdown</span>}</span>
+<span id="cb311-3"><a href="#cb311-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb311-4"><a href="#cb311-4" aria-hidden="true"></a></span>
+<span id="cb311-5"><a href="#cb311-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb311-6"><a href="#cb311-6" aria-hidden="true"></a>This is _emphasized text_ and this is a math subscript: <span class="ss">$m</span><span class="sc">\_</span><span class="ss">n$</span>.</span>
+<span id="cb311-7"><a href="#cb311-7" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb311-8"><a href="#cb311-8" aria-hidden="true"></a></span>
+<span id="cb311-9"><a href="#cb311-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{underscores=false}</span>
+<span id="cb311-10"><a href="#cb311-10" aria-hidden="true"></a>This is *emphasized text* and this is a math subscript: <span class="ss">$m_n$</span>.</span>
+<span id="cb311-11"><a href="#cb311-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb311-12"><a href="#cb311-12" aria-hidden="true"></a></span>
+<span id="cb311-13"><a href="#cb311-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="cb299"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb299-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb312"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb312-1"><a href="#cb312-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>emphasized text</em> and this is a math subscript: <em>mₙ</em>.</p>
 <p>This is <em>emphasized text</em> and this is a math subscript: <em>mₙ</em>.</p>
 </blockquote>
-<h5 id="context-example-25" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<h5 class="unnumbered" data-number="" id="context-example-27">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="cb300"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb300-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb300-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionHybrid{true}</a>
-<a class="sourceLine" id="cb300-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb300-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb300-5" data-line-number="5"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb300-6" data-line-number="6">This is _emphasized text_ and this is a math subscript: <span class="ss">$m</span><span class="sc">\_</span><span class="ss">n$</span>.</a>
-<a class="sourceLine" id="cb300-7" data-line-number="7"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb300-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb300-9" data-line-number="9"><span class="fu">\def</span>\markdownOptionUnderscores{false}</a>
-<a class="sourceLine" id="cb300-10" data-line-number="10"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb300-11" data-line-number="11">This is *emphasized text* and this is a math subscript: <span class="ss">$m_n$</span>.</a>
-<a class="sourceLine" id="cb300-12" data-line-number="12"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb300-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb300-14" data-line-number="14"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb313"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb313-1"><a href="#cb313-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb313-2"><a href="#cb313-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
+<span id="cb313-3"><a href="#cb313-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb313-4"><a href="#cb313-4" aria-hidden="true"></a></span>
+<span id="cb313-5"><a href="#cb313-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb313-6"><a href="#cb313-6" aria-hidden="true"></a>This is _emphasized text_ and this is a math subscript: <span class="ss">$m</span><span class="sc">\_</span><span class="ss">n$</span>.</span>
+<span id="cb313-7"><a href="#cb313-7" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb313-8"><a href="#cb313-8" aria-hidden="true"></a></span>
+<span id="cb313-9"><a href="#cb313-9" aria-hidden="true"></a><span class="fu">\def\markdownOptionUnderscores</span>{false}</span>
+<span id="cb313-10"><a href="#cb313-10" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb313-11"><a href="#cb313-11" aria-hidden="true"></a>This is *emphasized text* and this is a math subscript: <span class="ss">$m_n$</span>.</span>
+<span id="cb313-12"><a href="#cb313-12" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb313-13"><a href="#cb313-13" aria-hidden="true"></a></span>
+<span id="cb313-14"><a href="#cb313-14" 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="cb301"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb301-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb314"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb314-1"><a href="#cb314-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>emphasized text</em> and this is a math subscript: <em>mₙ</em>.</p>
 <p>This is <em>emphasized text</em> and this is a math subscript: <em>mₙ</em>.</p>
 </blockquote>
-<h3 id="plain-tex-1"><span class="header-section-number">2.2.2</span> Plain <span class="tex">T<sub>e</sub>X</span></h3>
+<h3 data-number="2.2.2" id="plain-tex-1"><span class="header-section-number">2.2.2</span> Plain <span class="tex">T<sub>e</sub>X</span></h3>
 <p>Plain <span class="tex">T<sub>e</sub>X</span> options control the communication between the <span class="tex">T<sub>e</sub>X</span> interface and the <code>markdown</code> Lua module. They are supported by all higher-level interfaces of the Markdown package, i.e. the plain <span class="tex">T<sub>e</sub>X</span>, <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> and Con<span class="tex">T<sub>e</sub>X</span>t interfaces.</p>
-<h4 id="finalizing-and-freezing-the-cache"><span class="header-section-number">2.2.2.1</span> Finalizing and Freezing the Cache</h4>
+<h4 data-number="2.2.2.1" id="finalizing-and-freezing-the-cache"><span class="header-section-number">2.2.2.1</span> Finalizing and Freezing the Cache</h4>
 <p>The <code>\markdownOptionFrozenCache</code> option uses the mapping previously created by the Lua interface <strong><code>finalizeCache</code></strong> option, and uses it to typeset the plain <span class="tex">T<sub>e</sub>X</span> document without invoking Lua. As a result, the plain <span class="tex">T<sub>e</sub>X</span> document becomes more portable, but further changes in the order and the content of markdown documents will not be reflected. It defaults to <code>false</code>.</p>
-<p>The standard usage of the <strong><code>finalizeCache</code></strong> and <code>\markdownOptionFrozenCache</code> options is as follows:</p>
+<p>The standard usage of the <strong><code>finalizeCache</code></strong> and  options is as follows:</p>
 <ol type="1">
 <li>Remove the <strong><code>cacheDir</code></strong> cache directory with stale auxiliary cache files.</li>
 <li>Enable the <strong><code>finalizeCache</code></strong> option.</li>
 <li>Typeset the plain <span class="tex">T<sub>e</sub>X</span> document to populate and finalize the cache.</li>
-<li>Enable the <code>\markdownOptionFrozenCache</code> option.</li>
+<li>Enable the  option.</li>
 <li>Publish the source code of the plain <span class="tex">T<sub>e</sub>X</span> document and the <strong><code>cacheDir</code></strong> directory.</li>
 </ol>
 <p>For more information, see the examples for the <strong><code>finalizeCache</code></strong> option.</p>
-<h4 id="file-and-directory-names"><span class="header-section-number">2.2.2.2</span> File and Directory Names</h4>
+<h4 data-number="2.2.2.2" id="file-and-directory-names"><span class="header-section-number">2.2.2.2</span> File and Directory Names</h4>
 <p>The plain <span class="tex">T<sub>e</sub>X</span> interface provides the following commands that you can use to specify the location of temporary files produced during the conversion from Markdown to <span class="tex">T<sub>e</sub>X</span>:</p>
 <ul>
 <li><code>\markdownOptionHelperScriptFileName</code>,</li>
@@ -3599,104 +3777,104 @@
 <li><code>\markdownOptionFrozenCacheFileName</code>.</li>
 </ul>
 <p>Using a text editor, create a folder named <code>output-directory</code> and a text document named <code>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb302"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb302-1" data-line-number="1"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb302-2" data-line-number="2"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb302-3" data-line-number="3"><span class="fu">\def</span>\markdownOptionHelperScriptFileName{helper-script.lua}</a>
-<a class="sourceLine" id="cb302-4" data-line-number="4"><span class="fu">\def</span>\markdownOptionInputTempFileName{temporary-input.md}</a>
-<a class="sourceLine" id="cb302-5" data-line-number="5"><span class="fu">\def</span>\markdownOptionOutputTempFileName{temporary-output.tex}</a>
-<a class="sourceLine" id="cb302-6" data-line-number="6"><span class="fu">\def</span>\markdownOptionErrorTempFileName{error-output.txt}</a>
-<a class="sourceLine" id="cb302-7" data-line-number="7"><span class="fu">\def</span>\markdownOptionOutputDir{output-directory}</a>
-<a class="sourceLine" id="cb302-8" data-line-number="8"><span class="fu">\def</span>\markdownOptionCacheDir{output-directory/cache-directory}</a>
-<a class="sourceLine" id="cb302-9" data-line-number="9"><span class="fu">\markdownOptionFinalizeCachetrue</span></a>
-<a class="sourceLine" id="cb302-10" data-line-number="10"><span class="fu">\def</span>\markdownOptionFrozenCacheFileName{output-directory/cache-directory/frozen-cache.tex}</a>
-<a class="sourceLine" id="cb302-11" data-line-number="11"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb302-12" data-line-number="12">Hello *world*!</a>
-<a class="sourceLine" id="cb302-13" data-line-number="13"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb302-14" data-line-number="14"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb315"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb315-1"><a href="#cb315-1" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb315-2"><a href="#cb315-2" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb315-3"><a href="#cb315-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionHelperScriptFileName</span>{helper-script.lua}</span>
+<span id="cb315-4"><a href="#cb315-4" aria-hidden="true"></a><span class="fu">\def\markdownOptionInputTempFileName</span>{temporary-input.md}</span>
+<span id="cb315-5"><a href="#cb315-5" aria-hidden="true"></a><span class="fu">\def\markdownOptionOutputTempFileName</span>{temporary-output.tex}</span>
+<span id="cb315-6"><a href="#cb315-6" aria-hidden="true"></a><span class="fu">\def\markdownOptionErrorTempFileName</span>{error-output.txt}</span>
+<span id="cb315-7"><a href="#cb315-7" aria-hidden="true"></a><span class="fu">\def\markdownOptionOutputDir</span>{output-directory}</span>
+<span id="cb315-8"><a href="#cb315-8" aria-hidden="true"></a><span class="fu">\def\markdownOptionCacheDir</span>{output-directory/cache-directory}</span>
+<span id="cb315-9"><a href="#cb315-9" aria-hidden="true"></a><span class="fu">\markdownOptionFinalizeCachetrue</span></span>
+<span id="cb315-10"><a href="#cb315-10" aria-hidden="true"></a><span class="fu">\def\markdownOptionFrozenCacheFileName</span>{output-directory/cache-directory/frozen-cache.tex}</span>
+<span id="cb315-11"><a href="#cb315-11" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb315-12"><a href="#cb315-12" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb315-13"><a href="#cb315-13" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb315-14"><a href="#cb315-14" 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="cb303"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb303-1" data-line-number="1"><span class="ex">luatex</span> --output-directory output-directory document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb316"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb316-1"><a href="#cb316-1" aria-hidden="true"></a><span class="ex">luatex</span> --output-directory output-directory document.tex</span></code></pre></div>
 <p>A text document named <code>temporary-input.md</code> should be produced in the folder named <code>output-directory</code> and contain the following text:</p>
 <blockquote>
 <p>Hello *world*!</p>
 </blockquote>
 <p>A folder named <code>output-directory/cache-directory</code> should also be produced and contain fragments of the converted markdown document. LuaTeX does not need other temporary files to perform the conversion from markdown to <span class="tex">T<sub>e</sub>X</span>. To produce the remaining temporary files, invoke pdfTeX from the terminal:</p>
-<div class="sourceCode" id="cb304"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb304-1" data-line-number="1"><span class="ex">pdftex</span> --output-directory output-directory --shell-escape document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb317"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb317-1"><a href="#cb317-1" aria-hidden="true"></a><span class="ex">pdftex</span> --output-directory output-directory --shell-escape document.tex</span></code></pre></div>
 <p>Text documents named <code>helper-script.lua</code>, and <code>temporary-output.md</code> should be produced in the folder named <code>output-directory</code>. The document named <code>helper-script.lua</code> will contain Lua code that was executed to convert markdown to plain <span class="tex">T<sub>e</sub>X</span>. The document named <code>temporary-output.tex</code> will contain the input markdown document converted to <span class="tex">T<sub>e</sub>X</span>.</p>
 <p>No document named <code>error-output.txt</code> should be produced in the folder named <code>output-directory</code>. This document would only be produced if an error had occured while executing the Lua code. If this happens, please <a href="https://github.com/witiko/markdown/issues">file a bug</a>.</p>
-<h4 id="package-documentation"><span class="header-section-number">2.2.2.3</span> Package Documentation</h4>
+<h4 data-number="2.2.2.3" id="package-documentation"><span class="header-section-number">2.2.2.3</span> Package Documentation</h4>
 <p>The <code>\markdownOptionStripPercentSigns</code> macro controls whether a percent sign (<code>%</code>) at the beginning of a line will be discarded when reading Markdown input from a <span class="tex">T<sub>e</sub>X</span> document. This enables the use of markdown when writing <span class="tex">T<sub>e</sub>X</span> package documentation using the <a href="https://ctan.org/pkg/doc" title="doc – Format LaTeX documentation">Doc <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> package</a> by Frank Mittelbach. The recognized values of the macro are <code>true</code> (discard) and <code>false</code> (retain). It defaults to <code>false</code>.</p>
 <p>Using a text editor, create a text document named <code>document.dtx</code> with the following content:</p>
-<div class="sourceCode" id="cb305"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb305-1" data-line-number="1"><span class="co">% \iffalse</span></a>
-<a class="sourceLine" id="cb305-2" data-line-number="2"><span class="bu">\documentclass</span>{<span class="ex">ltxdoc</span>}</a>
-<a class="sourceLine" id="cb305-3" data-line-number="3"><span class="bu">\usepackage</span>[stripPercentSigns]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb305-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb305-5" data-line-number="5"><span class="fu">\DocInput</span>{document.dtx}</a>
-<a class="sourceLine" id="cb305-6" data-line-number="6"><span class="kw">\end</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb305-7" data-line-number="7"><span class="co">% \fi</span></a>
-<a class="sourceLine" id="cb305-8" data-line-number="8"><span class="co">%</span></a>
-<a class="sourceLine" id="cb305-9" data-line-number="9"><span class="co">% \begin{markdown}</span></a>
-<a class="sourceLine" id="cb305-10" data-line-number="10"><span class="co">% Hello *world*!</span></a>
-<a class="sourceLine" id="cb305-11" data-line-number="11"><span class="co">% \end{markdown}</span></a></code></pre></div>
+<div class="sourceCode" id="cb318"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb318-1"><a href="#cb318-1" aria-hidden="true"></a><span class="co">% \iffalse</span></span>
+<span id="cb318-2"><a href="#cb318-2" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">ltxdoc</span>}</span>
+<span id="cb318-3"><a href="#cb318-3" aria-hidden="true"></a><span class="bu">\usepackage</span>[stripPercentSigns]{<span class="ex">markdown</span>}</span>
+<span id="cb318-4"><a href="#cb318-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb318-5"><a href="#cb318-5" aria-hidden="true"></a><span class="fu">\DocInput</span>{document.dtx}</span>
+<span id="cb318-6"><a href="#cb318-6" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">document</span>}</span>
+<span id="cb318-7"><a href="#cb318-7" aria-hidden="true"></a><span class="co">% \fi</span></span>
+<span id="cb318-8"><a href="#cb318-8" aria-hidden="true"></a><span class="co">%</span></span>
+<span id="cb318-9"><a href="#cb318-9" aria-hidden="true"></a><span class="co">% \begin{markdown}</span></span>
+<span id="cb318-10"><a href="#cb318-10" aria-hidden="true"></a><span class="co">% Hello *world*!</span></span>
+<span id="cb318-11"><a href="#cb318-11" aria-hidden="true"></a><span class="co">% \end{markdown}</span></span></code></pre></div>
 <p>Next, invoke LuaTeX from the terminal:</p>
-<div class="sourceCode" id="cb306"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb306-1" data-line-number="1"><span class="ex">lualatex</span> document.dtx</a></code></pre></div>
+<div class="sourceCode" id="cb319"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb319-1"><a href="#cb319-1" aria-hidden="true"></a><span class="ex">lualatex</span> document.dtx</span></code></pre></div>
 <p>A PDF document named <code>document.pdf</code> should be produced and contain the text “Hello <em>world</em>!”</p>
-<h3 id="latex-1"><span class="header-section-number">2.2.3</span> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span></h3>
+<h3 data-number="2.2.3" id="latex-1"><span class="header-section-number">2.2.3</span> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span></h3>
 <p><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> options allow us to disable the redefinition of the default renderer prototypes from plain <span class="tex">T<sub>e</sub>X</span>, load user-contributed themes, and invoke user-defined setup snippets.</p>
-<h4 id="no-default-token-renderer-prototypes"><span class="header-section-number">2.2.3.1</span> No default token renderer prototypes</h4>
+<h4 data-number="2.2.3.1" id="no-default-token-renderer-prototypes"><span class="header-section-number">2.2.3.1</span> No default token renderer prototypes</h4>
 <p>Default token renderer prototypes require <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> packages that may clash with other packages used in a document. Additionally, if we redefine token renderers and renderer prototypes ourselves, the default definitions will bring no benefit to us. Using the <code>plain</code> package option, we can keep the default definitions from the plain <span class="tex">T<sub>e</sub>X</span> implementation (see Section ) and prevent the soft <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> prerequisites in Section  from being loaded:</p>
-<div class="sourceCode" id="cb307"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb307-1" data-line-number="1"><span class="bu">\usepackage</span>[plain]{<span class="ex">markdown</span>}</a></code></pre></div>
-<h4 id="latex-themes"><span class="header-section-number">2.2.3.2</span> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> themes</h4>
+<div class="sourceCode" id="cb320"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb320-1"><a href="#cb320-1" aria-hidden="true"></a><span class="bu">\usepackage</span>[plain]{<span class="ex">markdown</span>}</span></code></pre></div>
+<h4 data-number="2.2.3.2" id="latex-themes"><span class="header-section-number">2.2.3.2</span> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> themes</h4>
 <p>User-contributed <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> themes for the Markdown package provide a domain-specific interpretation of some Markdown tokens. Similarly to <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> packages, themes allow the authors to achieve a specific look and other high-level goals without low-level programming.</p>
 <p>For example, to load themes named <code>witiko/beamer/MU</code> and <code>witiko/dot</code>, you would use the following code in the preamble of your document:</p>
-<div class="sourceCode" id="cb308"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb308-1" data-line-number="1"><span class="bu">\usepackage</span>[</a>
-<a class="sourceLine" id="cb308-2" data-line-number="2">  theme = witiko/beamer/MU,</a>
-<a class="sourceLine" id="cb308-3" data-line-number="3">  theme = witiko/dot,</a>
-<a class="sourceLine" id="cb308-4" data-line-number="4">]{<span class="ex">markdown</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb321"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb321-1"><a href="#cb321-1" aria-hidden="true"></a><span class="bu">\usepackage</span>[</span>
+<span id="cb321-2"><a href="#cb321-2" aria-hidden="true"></a>  theme = witiko/beamer/MU,</span>
+<span id="cb321-3"><a href="#cb321-3" aria-hidden="true"></a>  theme = witiko/dot,</span>
+<span id="cb321-4"><a href="#cb321-4" aria-hidden="true"></a>]{<span class="ex">markdown</span>}</span></code></pre></div>
 <p>Due to limitations of <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span>, themes may not be loaded after the beginning of a <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> document.</p>
 <p>Example themes provided with the Markdown package include:</p>
 <dl>
 <dt><strong><code>witiko/dot</code></strong></dt>
-<dd><p>A theme that typesets fenced code blocks with the <code>dot …</code> infostring as images of directed graphs rendered by the Graphviz tools. The right tail of the infostring is used as the image title. The theme requires a Unix-like operating system with GNU Diffutils and Graphviz installed. The theme also requires shell access unless the <code>\markdownOptionFrozenCache</code> plain <span class="tex">T<sub>e</sub>X</span> option is enabled.</p>
+<dd><p>A theme that typesets fenced code blocks with the <code>dot …</code> infostring as images of directed graphs rendered by the Graphviz tools. The right tail of the infostring is used as the image title. The theme requires a Unix-like operating system with GNU Diffutils and Graphviz installed. The theme also requires shell access unless the  plain <span class="tex">T<sub>e</sub>X</span> option is enabled.</p>
 </dd>
 </dl>
-<h5 id="latex-example-29" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-31"><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="cb309"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb309-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb309-2" data-line-number="2"><span class="bu">\usepackage</span>[theme=witiko/dot]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb309-3" data-line-number="3"><span class="fu">\setkeys</span>{Gin}{</a>
-<a class="sourceLine" id="cb309-4" data-line-number="4">  width=<span class="fu">\columnwidth</span>,</a>
-<a class="sourceLine" id="cb309-5" data-line-number="5">  height=0.65<span class="fu">\paperheight</span>,</a>
-<a class="sourceLine" id="cb309-6" data-line-number="6">  keepaspectratio}</a>
-<a class="sourceLine" id="cb309-7" data-line-number="7"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb309-8" data-line-number="8"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb309-9" data-line-number="9">``` dot Various formats of mathemathical formulae</a>
-<a class="sourceLine" id="cb309-10" data-line-number="10">digraph tree {</a>
-<a class="sourceLine" id="cb309-11" data-line-number="11">  margin = 0;</a>
-<a class="sourceLine" id="cb309-12" data-line-number="12">  rankdir = "LR";</a>
-<a class="sourceLine" id="cb309-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb309-14" data-line-number="14">  latex -> pmml;</a>
-<a class="sourceLine" id="cb309-15" data-line-number="15">  latex -> cmml;</a>
-<a class="sourceLine" id="cb309-16" data-line-number="16">  pmml -> slt;</a>
-<a class="sourceLine" id="cb309-17" data-line-number="17">  cmml -> opt;</a>
-<a class="sourceLine" id="cb309-18" data-line-number="18">  cmml -> prefix;</a>
-<a class="sourceLine" id="cb309-19" data-line-number="19">  cmml -> infix;</a>
-<a class="sourceLine" id="cb309-20" data-line-number="20">  pmml -> mterms [style=dashed];</a>
-<a class="sourceLine" id="cb309-21" data-line-number="21">  cmml -> mterms;</a>
-<a class="sourceLine" id="cb309-22" data-line-number="22"></a>
-<a class="sourceLine" id="cb309-23" data-line-number="23">  latex [label = "LaTeX"];</a>
-<a class="sourceLine" id="cb309-24" data-line-number="24">  pmml [label = "Presentation MathML"];</a>
-<a class="sourceLine" id="cb309-25" data-line-number="25">  cmml [label = "Content MathML"];</a>
-<a class="sourceLine" id="cb309-26" data-line-number="26">  slt [label = "Symbol Layout Tree"];</a>
-<a class="sourceLine" id="cb309-27" data-line-number="27">  opt [label = "Operator Tree"];</a>
-<a class="sourceLine" id="cb309-28" data-line-number="28">  prefix [label = "Prefix"];</a>
-<a class="sourceLine" id="cb309-29" data-line-number="29">  infix [label = "Infix"];</a>
-<a class="sourceLine" id="cb309-30" data-line-number="30">  mterms [label = "M-Terms"];</a>
-<a class="sourceLine" id="cb309-31" data-line-number="31">}</a>
-<a class="sourceLine" id="cb309-32" data-line-number="32">```</a>
-<a class="sourceLine" id="cb309-33" data-line-number="33"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb309-34" data-line-number="34"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb322"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb322-1"><a href="#cb322-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb322-2"><a href="#cb322-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[theme=witiko/dot]{<span class="ex">markdown</span>}</span>
+<span id="cb322-3"><a href="#cb322-3" aria-hidden="true"></a><span class="fu">\setkeys</span>{Gin}{</span>
+<span id="cb322-4"><a href="#cb322-4" aria-hidden="true"></a>  width=<span class="fu">\columnwidth</span>,</span>
+<span id="cb322-5"><a href="#cb322-5" aria-hidden="true"></a>  height=0.65<span class="fu">\paperheight</span>,</span>
+<span id="cb322-6"><a href="#cb322-6" aria-hidden="true"></a>  keepaspectratio}</span>
+<span id="cb322-7"><a href="#cb322-7" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb322-8"><a href="#cb322-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb322-9"><a href="#cb322-9" aria-hidden="true"></a>``` dot Various formats of mathemathical formulae</span>
+<span id="cb322-10"><a href="#cb322-10" aria-hidden="true"></a>digraph tree {</span>
+<span id="cb322-11"><a href="#cb322-11" aria-hidden="true"></a>  margin = 0;</span>
+<span id="cb322-12"><a href="#cb322-12" aria-hidden="true"></a>  rankdir = "LR";</span>
+<span id="cb322-13"><a href="#cb322-13" aria-hidden="true"></a></span>
+<span id="cb322-14"><a href="#cb322-14" aria-hidden="true"></a>  latex -> pmml;</span>
+<span id="cb322-15"><a href="#cb322-15" aria-hidden="true"></a>  latex -> cmml;</span>
+<span id="cb322-16"><a href="#cb322-16" aria-hidden="true"></a>  pmml -> slt;</span>
+<span id="cb322-17"><a href="#cb322-17" aria-hidden="true"></a>  cmml -> opt;</span>
+<span id="cb322-18"><a href="#cb322-18" aria-hidden="true"></a>  cmml -> prefix;</span>
+<span id="cb322-19"><a href="#cb322-19" aria-hidden="true"></a>  cmml -> infix;</span>
+<span id="cb322-20"><a href="#cb322-20" aria-hidden="true"></a>  pmml -> mterms [style=dashed];</span>
+<span id="cb322-21"><a href="#cb322-21" aria-hidden="true"></a>  cmml -> mterms;</span>
+<span id="cb322-22"><a href="#cb322-22" aria-hidden="true"></a></span>
+<span id="cb322-23"><a href="#cb322-23" aria-hidden="true"></a>  latex [label = "LaTeX"];</span>
+<span id="cb322-24"><a href="#cb322-24" aria-hidden="true"></a>  pmml [label = "Presentation MathML"];</span>
+<span id="cb322-25"><a href="#cb322-25" aria-hidden="true"></a>  cmml [label = "Content MathML"];</span>
+<span id="cb322-26"><a href="#cb322-26" aria-hidden="true"></a>  slt [label = "Symbol Layout Tree"];</span>
+<span id="cb322-27"><a href="#cb322-27" aria-hidden="true"></a>  opt [label = "Operator Tree"];</span>
+<span id="cb322-28"><a href="#cb322-28" aria-hidden="true"></a>  prefix [label = "Prefix"];</span>
+<span id="cb322-29"><a href="#cb322-29" aria-hidden="true"></a>  infix [label = "Infix"];</span>
+<span id="cb322-30"><a href="#cb322-30" aria-hidden="true"></a>  mterms [label = "M-Terms"];</span>
+<span id="cb322-31"><a href="#cb322-31" aria-hidden="true"></a>}</span>
+<span id="cb322-32"><a href="#cb322-32" aria-hidden="true"></a>```</span>
+<span id="cb322-33"><a href="#cb322-33" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb322-34"><a href="#cb322-34" 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="cb310"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb310-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb323"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb323-1"><a href="#cb323-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 a drawing of a directed graph similar to Figure 1 from the following conference article:</p>
 <blockquote>
 <p>NOVOTNÝ, Vít, Petr SOJKA, Michal ŠTEFÁNIK and Dávid LUPTÁK. Three is Better than One: Ensembling Math Information Retrieval Systems. <em>CEUR Workshop Proceedings</em>. Thessaloniki, Greece: M. Jeusfeld c/o Redaktion Sun SITE, Informatik V, RWTH Aachen., 2020, vol. 2020, No 2696, p. 1-30. ISSN 1613-0073. <a href="http://ceur-ws.org/Vol-2696/paper_235.pdf" class="uri">http://ceur-ws.org/Vol-2696/paper_235.pdf</a></p>
@@ -3703,25 +3881,25 @@
 </blockquote>
 <dl>
 <dt><strong><code>witiko/graphicx/http</code></strong></dt>
-<dd><p>A theme that adds support for downloading images whose URL has the http or https protocol. The theme requires the <strong><code>catchfile</code></strong> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> package and a Unix-like operating system with GNU Coreutils <code>md5sum</code> and either GNU Wget or cURL installed. The theme also requires shell access unless the <code>\markdownOptionFrozenCache</code> plain <span class="tex">T<sub>e</sub>X</span> option is enabled.</p>
+<dd><p>A theme that adds support for downloading images whose URL has the http or https protocol. The theme requires the <strong><code>catchfile</code></strong> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> package and a Unix-like operating system with GNU Coreutils <code>md5sum</code> and either GNU Wget or cURL installed. The theme also requires shell access unless the  plain <span class="tex">T<sub>e</sub>X</span> option is enabled.</p>
 </dd>
 </dl>
-<h5 id="latex-example-30" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-32"><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="cb311"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb311-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb311-2" data-line-number="2"><span class="bu">\usepackage</span>[theme=witiko/graphicx/http]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb311-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb311-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb311-5" data-line-number="5">![img](https://github.com/witiko/markdown/raw/master/banner.png</a>
-<a class="sourceLine" id="cb311-6" data-line-number="6">       "The banner of the Markdown package")</a>
-<a class="sourceLine" id="cb311-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb311-8" data-line-number="8"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb324"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb324-1"><a href="#cb324-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb324-2"><a href="#cb324-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[theme=witiko/graphicx/http]{<span class="ex">markdown</span>}</span>
+<span id="cb324-3"><a href="#cb324-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb324-4"><a href="#cb324-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb324-5"><a href="#cb324-5" aria-hidden="true"></a>![img](https://github.com/witiko/markdown/raw/main/markdown.png</span>
+<span id="cb324-6"><a href="#cb324-6" aria-hidden="true"></a>       "The banner of the Markdown package")</span>
+<span id="cb324-7"><a href="#cb324-7" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb324-8"><a href="#cb324-8" 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="cb312"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb312-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb325"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb325-1"><a href="#cb325-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 image:</p>
 <blockquote>
 <figure>
-<img src="https://github.com/witiko/markdown/raw/master/banner.png" title="The banner of the Markdown package" alt="img" /><figcaption>img</figcaption>
+<img src="https://github.com/witiko/markdown/raw/main/markdown.png" title="The banner of the Markdown package" alt="" /><figcaption>img</figcaption>
 </figure>
 </blockquote>
 <dl>
@@ -3729,69 +3907,117 @@
 <dd><p>A theme that makes tilde (<code>~</code>) always typeset the non-breaking space even when the <strong><code>hybrid</code></strong> Lua option is <code>false</code>.</p>
 </dd>
 </dl>
-<h5 id="latex-example-31" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-33"><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="cb313"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb313-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb313-2" data-line-number="2"><span class="bu">\usepackage</span>[theme=witiko/tilde]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb313-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb313-4" data-line-number="4"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb313-5" data-line-number="5">Bartel~Leendert van~der~Waerden</a>
-<a class="sourceLine" id="cb313-6" data-line-number="6"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb313-7" data-line-number="7"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb326"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb326-1"><a href="#cb326-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb326-2"><a href="#cb326-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[theme=witiko/tilde]{<span class="ex">markdown</span>}</span>
+<span id="cb326-3"><a href="#cb326-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb326-4"><a href="#cb326-4" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb326-5"><a href="#cb326-5" aria-hidden="true"></a>Bartel~Leendert van~der~Waerden</span>
+<span id="cb326-6"><a href="#cb326-6" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb326-7"><a href="#cb326-7" 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="cb314"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb314-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb327"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb327-1"><a href="#cb327-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>
-<h4 id="latex-setup-snippets"><span class="header-section-number">2.2.3.3</span> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> setup snippets</h4>
+<h4 data-number="2.2.3.3" id="latex-setup-snippets"><span class="header-section-number">2.2.3.3</span> <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> setup snippets</h4>
 <p>User-contributed <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> themes provide global control over high-level goals. However, it is often desirable to change only some local aspects of a document. <span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> setup snippets provide syntactic sugar for defining and invoking various options locally.</p>
 <p>Here is how we can use setup snippets to store options and invoke them later:</p>
-<div class="sourceCode" id="cb315"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb315-1" data-line-number="1"><span class="fu">\markdownSetupSnippet</span>{romanNumerals}{</a>
-<a class="sourceLine" id="cb315-2" data-line-number="2">  renderers = {</a>
-<a class="sourceLine" id="cb315-3" data-line-number="3">      olItemWithNumber = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb315-4" data-line-number="4">          <span class="fu">\item</span>[<span class="fu">\romannumeral</span>#1<span class="fu">\relax</span>.]<span class="co">%</span></a>
-<a class="sourceLine" id="cb315-5" data-line-number="5">      },</a>
-<a class="sourceLine" id="cb315-6" data-line-number="6">  },</a>
-<a class="sourceLine" id="cb315-7" data-line-number="7">}</a>
-<a class="sourceLine" id="cb315-8" data-line-number="8"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb315-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb315-10" data-line-number="10">The following ordered list will be preceded by arabic numerals:</a>
-<a class="sourceLine" id="cb315-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb315-12" data-line-number="12">1. wahid</a>
-<a class="sourceLine" id="cb315-13" data-line-number="13">2. aithnayn</a>
-<a class="sourceLine" id="cb315-14" data-line-number="14"></a>
-<a class="sourceLine" id="cb315-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb315-16" data-line-number="16"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{snippet=romanNumerals}</a>
-<a class="sourceLine" id="cb315-17" data-line-number="17"></a>
-<a class="sourceLine" id="cb315-18" data-line-number="18">The following ordered list will be preceded by roman numerals:</a>
-<a class="sourceLine" id="cb315-19" data-line-number="19"></a>
-<a class="sourceLine" id="cb315-20" data-line-number="20">3. tres</a>
-<a class="sourceLine" id="cb315-21" data-line-number="21">4. quattuor</a>
-<a class="sourceLine" id="cb315-22" data-line-number="22"></a>
-<a class="sourceLine" id="cb315-23" data-line-number="23"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a></code></pre></div>
-<h2 id="markdown-tokens"><span class="header-section-number">2.3</span> Markdown Tokens</h2>
+<div class="sourceCode" id="cb328"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb328-1"><a href="#cb328-1" aria-hidden="true"></a><span class="fu">\markdownSetupSnippet</span>{romanNumerals}{</span>
+<span id="cb328-2"><a href="#cb328-2" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb328-3"><a href="#cb328-3" aria-hidden="true"></a>      olItemWithNumber = {<span class="co">%</span></span>
+<span id="cb328-4"><a href="#cb328-4" aria-hidden="true"></a>          <span class="fu">\item</span>[<span class="fu">\romannumeral</span>#1<span class="fu">\relax</span>.]<span class="co">%</span></span>
+<span id="cb328-5"><a href="#cb328-5" aria-hidden="true"></a>      },</span>
+<span id="cb328-6"><a href="#cb328-6" aria-hidden="true"></a>  },</span>
+<span id="cb328-7"><a href="#cb328-7" aria-hidden="true"></a>}</span>
+<span id="cb328-8"><a href="#cb328-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb328-9"><a href="#cb328-9" aria-hidden="true"></a></span>
+<span id="cb328-10"><a href="#cb328-10" aria-hidden="true"></a>The following ordered list will be preceded by arabic numerals:</span>
+<span id="cb328-11"><a href="#cb328-11" aria-hidden="true"></a></span>
+<span id="cb328-12"><a href="#cb328-12" aria-hidden="true"></a>1. wahid</span>
+<span id="cb328-13"><a href="#cb328-13" aria-hidden="true"></a>2. aithnayn</span>
+<span id="cb328-14"><a href="#cb328-14" aria-hidden="true"></a></span>
+<span id="cb328-15"><a href="#cb328-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb328-16"><a href="#cb328-16" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{snippet=romanNumerals}</span>
+<span id="cb328-17"><a href="#cb328-17" aria-hidden="true"></a></span>
+<span id="cb328-18"><a href="#cb328-18" aria-hidden="true"></a>The following ordered list will be preceded by roman numerals:</span>
+<span id="cb328-19"><a href="#cb328-19" aria-hidden="true"></a></span>
+<span id="cb328-20"><a href="#cb328-20" aria-hidden="true"></a>3. tres</span>
+<span id="cb328-21"><a href="#cb328-21" aria-hidden="true"></a>4. quattuor</span>
+<span id="cb328-22"><a href="#cb328-22" aria-hidden="true"></a></span>
+<span id="cb328-23"><a href="#cb328-23" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span></code></pre></div>
+<h2 data-number="2.3" id="markdown-tokens"><span class="header-section-number">2.3</span> Markdown Tokens</h2>
 <p>A key feature of the Markdown package is the support for manipulating markdown tokens, such as headings, emphasized text, links, and lists, in <span class="tex">T<sub>e</sub>X</span>. Instead of reducing <span class="tex">T<sub>e</sub>X</span> to a PDF document producer, the Markdown package allows the user to specify how every markdown token should be processed and rendered.</p>
-<h3 id="token-renderers"><span class="header-section-number">2.3.1</span> Token Renderers</h3>
+<h3 data-number="2.3.1" id="token-renderers"><span class="header-section-number">2.3.1</span> Token Renderers</h3>
 <p>Token renderers are user-defined <span class="tex">T<sub>e</sub>X</span> macros, which render markdown tokens. In this section, I will describe the individual token renderers.</p>
-<h4 id="interblock-separator-renderer"><span class="header-section-number">2.3.1.1</span> Interblock Separator Renderer</h4>
+<h4 data-number="2.3.1.1" id="tickbox-renderers"><span class="header-section-number">2.3.1.1</span> Tickbox Renderers</h4>
+<p>The macros named <code>\markdownRendererTickedBox</code>, <code>\markdownRendererHalfTickedBox</code>, and <code>\markdownRendererUntickedBox</code> represent ticked and unticked boxes, respectively. These macros will either be produced, when the <strong><code>taskLists</code></strong> option is enabled, or when the Ballot Box with X (☒, U+2612), Hourglass (⌛, U+231B) or Ballot Box (☐, U+2610) Unicode characters are encountered in the markdown input, respectively.</p>
+<h5 class="unnumbered" data-number="" id="latex-example-34"><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="cb329"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb329-1"><a href="#cb329-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb329-2"><a href="#cb329-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[taskLists]{<span class="ex">markdown</span>}</span>
+<span id="cb329-3"><a href="#cb329-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb329-4"><a href="#cb329-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb329-5"><a href="#cb329-5" aria-hidden="true"></a>    untickedBox = No,</span>
+<span id="cb329-6"><a href="#cb329-6" aria-hidden="true"></a>    tickedBox = Yes,</span>
+<span id="cb329-7"><a href="#cb329-7" aria-hidden="true"></a>  },</span>
+<span id="cb329-8"><a href="#cb329-8" aria-hidden="true"></a>}</span>
+<span id="cb329-9"><a href="#cb329-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb329-10"><a href="#cb329-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb329-11"><a href="#cb329-11" aria-hidden="true"></a>- [ ] you can't.</span>
+<span id="cb329-12"><a href="#cb329-12" aria-hidden="true"></a>- [x] I can!</span>
+<span id="cb329-13"><a href="#cb329-13" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb329-14"><a href="#cb329-14" 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="cb330"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb330-1"><a href="#cb330-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>
+<ul>
+<li>No you can’t.</li>
+<li>Yes I can!</li>
+</ul>
+</blockquote>
+<h5 class="unnumbered" data-number="" id="context-example-28">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="cb331"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb331-1"><a href="#cb331-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb331-2"><a href="#cb331-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTaskLists</span>{true}</span>
+<span id="cb331-3"><a href="#cb331-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererUntickedBox</span>{No}</span>
+<span id="cb331-4"><a href="#cb331-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererTickedBox</span>{Yes}</span>
+<span id="cb331-5"><a href="#cb331-5" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb331-6"><a href="#cb331-6" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb331-7"><a href="#cb331-7" aria-hidden="true"></a>- [ ] you can't.</span>
+<span id="cb331-8"><a href="#cb331-8" aria-hidden="true"></a>- [x] I can!</span>
+<span id="cb331-9"><a href="#cb331-9" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb331-10"><a href="#cb331-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="cb332"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb332-1"><a href="#cb332-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>
+<ul>
+<li>No you can’t.</li>
+<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>
 <p>The <code>\markdownRendererInterblockSeparator</code> macro represents a separator between two markdown block elements. The macro receives no arguments.</p>
-<h5 id="plain-tex-example-16" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb316"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb316-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb316-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb316-3" data-line-number="3">  \par</a>
-<a class="sourceLine" id="cb316-4" data-line-number="4">  {\it(The end of a block)}<span class="co">%</span></a>
-<a class="sourceLine" id="cb316-5" data-line-number="5">  \par</a>
-<a class="sourceLine" id="cb316-6" data-line-number="6">}</a>
-<a class="sourceLine" id="cb316-7" data-line-number="7"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb316-8" data-line-number="8">Hello *world*!</a>
-<a class="sourceLine" id="cb316-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb316-10" data-line-number="10">_Foo_ bar!</a>
-<a class="sourceLine" id="cb316-11" data-line-number="11"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb316-12" data-line-number="12"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb333"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb333-1"><a href="#cb333-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb333-2"><a href="#cb333-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb333-3"><a href="#cb333-3" aria-hidden="true"></a>  <span class="fu">\par</span></span>
+<span id="cb333-4"><a href="#cb333-4" aria-hidden="true"></a>  {<span class="fu">\it</span>(The end of a block)}<span class="co">%</span></span>
+<span id="cb333-5"><a href="#cb333-5" aria-hidden="true"></a>  <span class="fu">\par</span></span>
+<span id="cb333-6"><a href="#cb333-6" aria-hidden="true"></a>}</span>
+<span id="cb333-7"><a href="#cb333-7" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb333-8"><a href="#cb333-8" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb333-9"><a href="#cb333-9" aria-hidden="true"></a></span>
+<span id="cb333-10"><a href="#cb333-10" aria-hidden="true"></a>_Foo_ bar!</span>
+<span id="cb333-11"><a href="#cb333-11" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb333-12"><a href="#cb333-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="cb317"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb317-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb334"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb334-1"><a href="#cb334-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>
@@ -3798,28 +4024,28 @@
 <p><em>(The end of a block)</em></p>
 <p><em>Foo</em> bar!</p>
 </blockquote>
-<h5 id="latex-example-32" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<h5 class="unnumbered" data-number="" id="latex-example-35"><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="cb318"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb318-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb318-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb318-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb318-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb318-5" data-line-number="5">    interblockSeparator = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb318-6" data-line-number="6">      <span class="fu">\par</span></a>
-<a class="sourceLine" id="cb318-7" data-line-number="7">      <span class="fu">\emph</span>{(The end of a block)}<span class="co">%</span></a>
-<a class="sourceLine" id="cb318-8" data-line-number="8">      <span class="fu">\par</span></a>
-<a class="sourceLine" id="cb318-9" data-line-number="9">    },</a>
-<a class="sourceLine" id="cb318-10" data-line-number="10">  },</a>
-<a class="sourceLine" id="cb318-11" data-line-number="11">}</a>
-<a class="sourceLine" id="cb318-12" data-line-number="12"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb318-13" data-line-number="13"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb318-14" data-line-number="14">Hello *world*!</a>
-<a class="sourceLine" id="cb318-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb318-16" data-line-number="16">_Foo_ bar!</a>
-<a class="sourceLine" id="cb318-17" data-line-number="17"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb318-18" data-line-number="18"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb335"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb335-1"><a href="#cb335-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb335-2"><a href="#cb335-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb335-3"><a href="#cb335-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb335-4"><a href="#cb335-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb335-5"><a href="#cb335-5" aria-hidden="true"></a>    interblockSeparator = {<span class="co">%</span></span>
+<span id="cb335-6"><a href="#cb335-6" aria-hidden="true"></a>      <span class="fu">\par</span></span>
+<span id="cb335-7"><a href="#cb335-7" aria-hidden="true"></a>      <span class="fu">\emph</span>{(The end of a block)}<span class="co">%</span></span>
+<span id="cb335-8"><a href="#cb335-8" aria-hidden="true"></a>      <span class="fu">\par</span></span>
+<span id="cb335-9"><a href="#cb335-9" aria-hidden="true"></a>    },</span>
+<span id="cb335-10"><a href="#cb335-10" aria-hidden="true"></a>  },</span>
+<span id="cb335-11"><a href="#cb335-11" aria-hidden="true"></a>}</span>
+<span id="cb335-12"><a href="#cb335-12" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb335-13"><a href="#cb335-13" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb335-14"><a href="#cb335-14" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb335-15"><a href="#cb335-15" aria-hidden="true"></a></span>
+<span id="cb335-16"><a href="#cb335-16" aria-hidden="true"></a>_Foo_ bar!</span>
+<span id="cb335-17"><a href="#cb335-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb335-18"><a href="#cb335-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="cb319"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb319-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb336"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb336-1"><a href="#cb336-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>
@@ -3826,23 +4052,23 @@
 <p><em>(The end of a block)</em></p>
 <p><em>Foo</em> bar!</p>
 </blockquote>
-<h5 id="context-example-26" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb320"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb320-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb320-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb320-3" data-line-number="3">  \par</a>
-<a class="sourceLine" id="cb320-4" data-line-number="4">  \emph{(The end of a block)}<span class="co">%</span></a>
-<a class="sourceLine" id="cb320-5" data-line-number="5">  \par</a>
-<a class="sourceLine" id="cb320-6" data-line-number="6">}</a>
-<a class="sourceLine" id="cb320-7" data-line-number="7"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb320-8" data-line-number="8"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb320-9" data-line-number="9">Hello *world*!</a>
-<a class="sourceLine" id="cb320-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb320-11" data-line-number="11">_Foo_ bar!</a>
-<a class="sourceLine" id="cb320-12" data-line-number="12"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb320-13" data-line-number="13"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb337"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb337-1"><a href="#cb337-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb337-2"><a href="#cb337-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb337-3"><a href="#cb337-3" aria-hidden="true"></a>  <span class="fu">\par</span></span>
+<span id="cb337-4"><a href="#cb337-4" aria-hidden="true"></a>  <span class="fu">\emph</span>{(The end of a block)}<span class="co">%</span></span>
+<span id="cb337-5"><a href="#cb337-5" aria-hidden="true"></a>  <span class="fu">\par</span></span>
+<span id="cb337-6"><a href="#cb337-6" aria-hidden="true"></a>}</span>
+<span id="cb337-7"><a href="#cb337-7" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb337-8"><a href="#cb337-8" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb337-9"><a href="#cb337-9" aria-hidden="true"></a>Hello *world*!</span>
+<span id="cb337-10"><a href="#cb337-10" aria-hidden="true"></a></span>
+<span id="cb337-11"><a href="#cb337-11" aria-hidden="true"></a>_Foo_ bar!</span>
+<span id="cb337-12"><a href="#cb337-12" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb337-13"><a href="#cb337-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="cb321"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb321-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb338"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb338-1"><a href="#cb338-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>
@@ -3849,22 +4075,22 @@
 <p><em>(The end of a block)</em></p>
 <p><em>Foo</em> bar!</p>
 </blockquote>
-<h4 id="line-break-renderer"><span class="header-section-number">2.3.1.2</span> Line Break Renderer</h4>
+<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>
 <p>The <code>\markdownRendererLineBreak</code> macro represents a forced line break. The macro receives no arguments.</p>
-<h5 id="plain-tex-example-17" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb322"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb322-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb322-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererLineBreak{<span class="co">%</span></a>
-<a class="sourceLine" id="cb322-3" data-line-number="3">  \par</a>
-<a class="sourceLine" id="cb322-4" data-line-number="4">  {\it(A forced linebreak)}<span class="co">%</span></a>
-<a class="sourceLine" id="cb322-5" data-line-number="5">  \par</a>
-<a class="sourceLine" id="cb322-6" data-line-number="6">}</a>
-<a class="sourceLine" id="cb322-7" data-line-number="7"><span class="fu">\markdownInput</span>{example.md}</a>
-<a class="sourceLine" id="cb322-8" data-line-number="8"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb339"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb339-1"><a href="#cb339-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb339-2"><a href="#cb339-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLineBreak</span>{<span class="co">%</span></span>
+<span id="cb339-3"><a href="#cb339-3" aria-hidden="true"></a>  <span class="fu">\par</span></span>
+<span id="cb339-4"><a href="#cb339-4" aria-hidden="true"></a>  {<span class="fu">\it</span>(A forced linebreak)}<span class="co">%</span></span>
+<span id="cb339-5"><a href="#cb339-5" aria-hidden="true"></a>  <span class="fu">\par</span></span>
+<span id="cb339-6"><a href="#cb339-6" aria-hidden="true"></a>}</span>
+<span id="cb339-7"><a href="#cb339-7" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb339-8"><a href="#cb339-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="cb323"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb323-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb340"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb340-1"><a href="#cb340-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>
@@ -3871,26 +4097,26 @@
 <p><em>(A forced linebreak)</em></p>
 <p><em>Foo</em> bar!</p>
 </blockquote>
-<h5 id="latex-example-33" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<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>document.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb324"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb324-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb324-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb324-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb324-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb324-5" data-line-number="5">    lineBreak = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb324-6" data-line-number="6">      <span class="fu">\par</span></a>
-<a class="sourceLine" id="cb324-7" data-line-number="7">      <span class="fu">\emph</span>{(A forced linebreak)}<span class="co">%</span></a>
-<a class="sourceLine" id="cb324-8" data-line-number="8">      <span class="fu">\par</span></a>
-<a class="sourceLine" id="cb324-9" data-line-number="9">    },</a>
-<a class="sourceLine" id="cb324-10" data-line-number="10">  },</a>
-<a class="sourceLine" id="cb324-11" data-line-number="11">}</a>
-<a class="sourceLine" id="cb324-12" data-line-number="12"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb324-13" data-line-number="13"><span class="fu">\markdownInput</span>{example.md}</a>
-<a class="sourceLine" id="cb324-14" data-line-number="14"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb341"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb341-1"><a href="#cb341-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb341-2"><a href="#cb341-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb341-3"><a href="#cb341-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb341-4"><a href="#cb341-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb341-5"><a href="#cb341-5" aria-hidden="true"></a>    lineBreak = {<span class="co">%</span></span>
+<span id="cb341-6"><a href="#cb341-6" aria-hidden="true"></a>      <span class="fu">\par</span></span>
+<span id="cb341-7"><a href="#cb341-7" aria-hidden="true"></a>      <span class="fu">\emph</span>{(A forced linebreak)}<span class="co">%</span></span>
+<span id="cb341-8"><a href="#cb341-8" aria-hidden="true"></a>      <span class="fu">\par</span></span>
+<span id="cb341-9"><a href="#cb341-9" aria-hidden="true"></a>    },</span>
+<span id="cb341-10"><a href="#cb341-10" aria-hidden="true"></a>  },</span>
+<span id="cb341-11"><a href="#cb341-11" aria-hidden="true"></a>}</span>
+<span id="cb341-12"><a href="#cb341-12" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb341-13"><a href="#cb341-13" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb341-14"><a href="#cb341-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="cb325"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb325-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb342"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb342-1"><a href="#cb342-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>
@@ -3897,21 +4123,21 @@
 <p><em>(A forced linebreak)</em></p>
 <p><em>Foo</em> bar!</p>
 </blockquote>
-<h5 id="context-example-27" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb326"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb326-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb326-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererLineBreak{<span class="co">%</span></a>
-<a class="sourceLine" id="cb326-3" data-line-number="3">  \par</a>
-<a class="sourceLine" id="cb326-4" data-line-number="4">  \emph{(A forced linebreak)}<span class="co">%</span></a>
-<a class="sourceLine" id="cb326-5" data-line-number="5">  \par</a>
-<a class="sourceLine" id="cb326-6" data-line-number="6">}</a>
-<a class="sourceLine" id="cb326-7" data-line-number="7"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb326-8" data-line-number="8"><span class="fu">\markdownInput</span>{example.md}</a>
-<a class="sourceLine" id="cb326-9" data-line-number="9"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb343"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb343-1"><a href="#cb343-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb343-2"><a href="#cb343-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLineBreak</span>{<span class="co">%</span></span>
+<span id="cb343-3"><a href="#cb343-3" aria-hidden="true"></a>  <span class="fu">\par</span></span>
+<span id="cb343-4"><a href="#cb343-4" aria-hidden="true"></a>  <span class="fu">\emph</span>{(A forced linebreak)}<span class="co">%</span></span>
+<span id="cb343-5"><a href="#cb343-5" aria-hidden="true"></a>  <span class="fu">\par</span></span>
+<span id="cb343-6"><a href="#cb343-6" aria-hidden="true"></a>}</span>
+<span id="cb343-7"><a href="#cb343-7" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb343-8"><a href="#cb343-8" aria-hidden="true"></a><span class="fu">\markdownInput</span>{example.md}</span>
+<span id="cb343-9"><a href="#cb343-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="cb327"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb327-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb344"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb344-1"><a href="#cb344-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>
@@ -3918,55 +4144,55 @@
 <p><em>(A forced linebreak)</em></p>
 <p><em>Foo</em> bar!</p>
 </blockquote>
-<h4 id="ellipsis-renderer"><span class="header-section-number">2.3.1.3</span> Ellipsis Renderer</h4>
+<h4 data-number="2.3.1.4" id="ellipsis-renderer"><span class="header-section-number">2.3.1.4</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 id="plain-tex-example-18" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb328"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb328-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb328-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionSmartEllipses{true}</a>
-<a class="sourceLine" id="cb328-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererEllipsis{{\it SHAZAM}!}</a>
-<a class="sourceLine" id="cb328-4" data-line-number="4"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb328-5" data-line-number="5">The secret word is ...</a>
-<a class="sourceLine" id="cb328-6" data-line-number="6"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb328-7" data-line-number="7"><span class="fu">\bye</span></a></code></pre></div>
+<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="fu">\input</span> markdown</span>
+<span id="cb345-2"><a href="#cb345-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionSmartEllipses</span>{true}</span>
+<span id="cb345-3"><a href="#cb345-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererEllipsis</span>{{<span class="fu">\it</span> SHAZAM}!}</span>
+<span id="cb345-4"><a href="#cb345-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb345-5"><a href="#cb345-5" aria-hidden="true"></a>The secret word is ...</span>
+<span id="cb345-6"><a href="#cb345-6" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb345-7"><a href="#cb345-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="cb329"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb329-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<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">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 id="latex-example-34" class="unnumbered"><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="cb330"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb330-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb330-2" data-line-number="2"><span class="bu">\usepackage</span>[smartEllipses]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb330-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb330-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb330-5" data-line-number="5">    ellipsis = <span class="fu">\emph</span>{SHAZAM}!,</a>
-<a class="sourceLine" id="cb330-6" data-line-number="6">  },</a>
-<a class="sourceLine" id="cb330-7" data-line-number="7">}</a>
-<a class="sourceLine" id="cb330-8" data-line-number="8"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb330-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb330-10" data-line-number="10">The secret word is ...</a>
-<a class="sourceLine" id="cb330-11" data-line-number="11"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb330-12" data-line-number="12"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb347-2"><a href="#cb347-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[smartEllipses]{<span class="ex">markdown</span>}</span>
+<span id="cb347-3"><a href="#cb347-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb347-4"><a href="#cb347-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb347-5"><a href="#cb347-5" aria-hidden="true"></a>    ellipsis = <span class="fu">\emph</span>{SHAZAM}!,</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>
+<span id="cb347-8"><a href="#cb347-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb347-9"><a href="#cb347-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb347-10"><a href="#cb347-10" aria-hidden="true"></a>The secret word is ...</span>
+<span id="cb347-11"><a href="#cb347-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb347-12"><a href="#cb347-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="cb331"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb331-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></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">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 id="context-example-28" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb332"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb332-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb332-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionSmartEllipses{true}</a>
-<a class="sourceLine" id="cb332-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererEllipsis{\emph{SHAZAM}!}</a>
-<a class="sourceLine" id="cb332-4" data-line-number="4"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb332-5" data-line-number="5"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb332-6" data-line-number="6">The secret word is ...</a>
-<a class="sourceLine" id="cb332-7" data-line-number="7"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb332-8" data-line-number="8"><span class="fu">\stoptext</span></a></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="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb349-2"><a href="#cb349-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionSmartEllipses</span>{true}</span>
+<span id="cb349-3"><a href="#cb349-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererEllipsis</span>{<span class="fu">\emph</span>{SHAZAM}!}</span>
+<span id="cb349-4"><a href="#cb349-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb349-5"><a href="#cb349-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb349-6"><a href="#cb349-6" aria-hidden="true"></a>The secret word is ...</span>
+<span id="cb349-7"><a href="#cb349-7" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb349-8"><a href="#cb349-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="cb333"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb333-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<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">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>
@@ -3973,42 +4199,42 @@
 <p><em>(The end of a block)</em></p>
 <p><em>Foo</em> bar!</p>
 </blockquote>
-<h4 id="non-breaking-space-renderer"><span class="header-section-number">2.3.1.4</span> Non-Breaking Space Renderer</h4>
+<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>
 <p>The <code>\markdownRendererNbsp</code> macro represents a non-breaking space.</p>
-<h5 id="latex-example-35" class="unnumbered"><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.bib</code> with the following content:</p>
-<div class="sourceCode" id="cb334"><pre class="sourceCode bib"><code class="sourceCode bibtex"><a class="sourceLine" id="cb334-1" data-line-number="1"><span class="va">@book</span>{<span class="ot">knuth:tex</span>,</a>
-<a class="sourceLine" id="cb334-2" data-line-number="2">  <span class="dt">author</span>    = "<span class="st">Knuth, Donald Ervin</span>",</a>
-<a class="sourceLine" id="cb334-3" data-line-number="3">  <span class="dt">title</span>     = "<span class="st">The </span><span class="ch">\TeX</span><span class="st"> book, volume A of Computers and typesetting</span>",</a>
-<a class="sourceLine" id="cb334-4" data-line-number="4">  <span class="dt">publisher</span> = "<span class="st">Addison-Wesley</span>",</a>
-<a class="sourceLine" id="cb334-5" data-line-number="5">  <span class="dt">year</span>      = "<span class="st">1984</span>"</a>
-<a class="sourceLine" id="cb334-6" data-line-number="6">}</a></code></pre></div>
+<div class="sourceCode" id="cb351"><pre class="sourceCode bib"><code class="sourceCode bibtex"><span id="cb351-1"><a href="#cb351-1" aria-hidden="true"></a><span class="va">@book</span>{<span class="ot">knuth:tex</span>,</span>
+<span id="cb351-2"><a href="#cb351-2" aria-hidden="true"></a>  <span class="dt">author</span>    = "<span class="st">Knuth, Donald Ervin</span>",</span>
+<span id="cb351-3"><a href="#cb351-3" aria-hidden="true"></a>  <span class="dt">title</span>     = "<span class="st">The </span><span class="ch">\TeX</span><span class="st"> book, volume A of Computers and typesetting</span>",</span>
+<span id="cb351-4"><a href="#cb351-4" aria-hidden="true"></a>  <span class="dt">publisher</span> = "<span class="st">Addison-Wesley</span>",</span>
+<span id="cb351-5"><a href="#cb351-5" aria-hidden="true"></a>  <span class="dt">year</span>      = "<span class="st">1984</span>"</span>
+<span id="cb351-6"><a href="#cb351-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="cb335"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb335-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb335-2" data-line-number="2"><span class="bu">\usepackage</span>[</a>
-<a class="sourceLine" id="cb335-3" data-line-number="3">  citations,</a>
-<a class="sourceLine" id="cb335-4" data-line-number="4">  citationNbsps,</a>
-<a class="sourceLine" id="cb335-5" data-line-number="5">]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb335-6" data-line-number="6"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb335-7" data-line-number="7">  renderers = {</a>
-<a class="sourceLine" id="cb335-8" data-line-number="8">    nbsp = {<span class="ss">$</span><span class="sc">\cdot</span><span class="ss">$</span>},</a>
-<a class="sourceLine" id="cb335-9" data-line-number="9">  },</a>
-<a class="sourceLine" id="cb335-10" data-line-number="10">}</a>
-<a class="sourceLine" id="cb335-11" data-line-number="11"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb335-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb335-13" data-line-number="13"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb335-14" data-line-number="14">The TeXbook [@knuth:tex, p. 123 and 130] is good.</a>
-<a class="sourceLine" id="cb335-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb335-16" data-line-number="16"></a>
-<a class="sourceLine" id="cb335-17" data-line-number="17"><span class="bu">\bibliographystyle</span>{<span class="ex">plain</span>}</a>
-<a class="sourceLine" id="cb335-18" data-line-number="18"><span class="bu">\bibliography</span>{<span class="ex">document.bib</span>}</a>
-<a class="sourceLine" id="cb335-19" data-line-number="19"></a>
-<a class="sourceLine" id="cb335-20" data-line-number="20"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<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>
+<span id="cb352-3"><a href="#cb352-3" aria-hidden="true"></a>  citations,</span>
+<span id="cb352-4"><a href="#cb352-4" aria-hidden="true"></a>  citationNbsps,</span>
+<span id="cb352-5"><a href="#cb352-5" aria-hidden="true"></a>]{<span class="ex">markdown</span>}</span>
+<span id="cb352-6"><a href="#cb352-6" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb352-7"><a href="#cb352-7" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb352-8"><a href="#cb352-8" aria-hidden="true"></a>    nbsp = {<span class="ss">$</span><span class="sc">\cdot</span><span class="ss">$</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 class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb352-12"><a href="#cb352-12" aria-hidden="true"></a></span>
+<span id="cb352-13"><a href="#cb352-13" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb352-14"><a href="#cb352-14" aria-hidden="true"></a>The TeXbook [@knuth:tex, p. 123 and 130] is good.</span>
+<span id="cb352-15"><a href="#cb352-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb352-16"><a href="#cb352-16" aria-hidden="true"></a></span>
+<span id="cb352-17"><a href="#cb352-17" aria-hidden="true"></a><span class="bu">\bibliographystyle</span>{<span class="ex">plain</span>}</span>
+<span id="cb352-18"><a href="#cb352-18" aria-hidden="true"></a><span class="bu">\bibliography</span>{<span class="ex">document.bib</span>}</span>
+<span id="cb352-19"><a href="#cb352-19" aria-hidden="true"></a></span>
+<span id="cb352-20"><a href="#cb352-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="cb336"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb336-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a>
-<a class="sourceLine" id="cb336-2" data-line-number="2"><span class="ex">bibtex</span> document.aux</a>
-<a class="sourceLine" id="cb336-3" data-line-number="3"><span class="ex">lualatex</span> document.tex</a>
-<a class="sourceLine" id="cb336-4" data-line-number="4"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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>
+<span id="cb353-2"><a href="#cb353-2" aria-hidden="true"></a><span class="ex">bibtex</span> document.aux</span>
+<span id="cb353-3"><a href="#cb353-3" aria-hidden="true"></a><span class="ex">lualatex</span> document.tex</span>
+<span id="cb353-4"><a href="#cb353-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>
@@ -4015,7 +4241,7 @@
 <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 id="special-character-renderers"><span class="header-section-number">2.3.1.5</span> Special Character Renderers</h4>
+<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>
 <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>&</code>).</li>
@@ -4030,78 +4256,78 @@
 <li><code>\markdownRendererTilde</code> replaces the tilde (<code>~</code>).</li>
 <li><code>\markdownRendererUnderscore</code> replaces the underscore (<code>_</code>).</li>
 </ul>
-<h5 id="plain-tex-example-19" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb337"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb337-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb337-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererTilde{~}</a>
-<a class="sourceLine" id="cb337-3" data-line-number="3"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb337-4" data-line-number="4">Bartel~Leendert van~der~Waerden</a>
-<a class="sourceLine" id="cb337-5" data-line-number="5"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb337-6" data-line-number="6"><span class="fu">\bye</span></a></code></pre></div>
+<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">\input</span> markdown</span>
+<span id="cb354-2"><a href="#cb354-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererTilde</span>{~}</span>
+<span id="cb354-3"><a href="#cb354-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb354-4"><a href="#cb354-4" aria-hidden="true"></a>Bartel~Leendert van~der~Waerden</span>
+<span id="cb354-5"><a href="#cb354-5" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb354-6"><a href="#cb354-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="cb338"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb338-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<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>
 <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 id="latex-example-36" class="unnumbered"><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. 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="cb339"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb339-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb339-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb339-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb339-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb339-5" data-line-number="5">    tilde = ~,</a>
-<a class="sourceLine" id="cb339-6" data-line-number="6">  },</a>
-<a class="sourceLine" id="cb339-7" data-line-number="7">}</a>
-<a class="sourceLine" id="cb339-8" data-line-number="8"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb339-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb339-10" data-line-number="10">Bartel~Leendert van~der~Waerden</a>
-<a class="sourceLine" id="cb339-11" data-line-number="11"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb339-12" data-line-number="12"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb356-2"><a href="#cb356-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb356-3"><a href="#cb356-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb356-4"><a href="#cb356-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb356-5"><a href="#cb356-5" aria-hidden="true"></a>    tilde = ~,</span>
+<span id="cb356-6"><a href="#cb356-6" aria-hidden="true"></a>  },</span>
+<span id="cb356-7"><a href="#cb356-7" aria-hidden="true"></a>}</span>
+<span id="cb356-8"><a href="#cb356-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb356-9"><a href="#cb356-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb356-10"><a href="#cb356-10" aria-hidden="true"></a>Bartel~Leendert van~der~Waerden</span>
+<span id="cb356-11"><a href="#cb356-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb356-12"><a href="#cb356-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="cb340"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb340-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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">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 id="context-example-29" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb341"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb341-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb341-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererTilde{~}</a>
-<a class="sourceLine" id="cb341-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb341-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb341-5" data-line-number="5">Bartel~Leendert van~der~Waerden</a>
-<a class="sourceLine" id="cb341-6" data-line-number="6"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb341-7" data-line-number="7"><span class="fu">\stoptext</span></a></code></pre></div>
+<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="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb358-2"><a href="#cb358-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererTilde</span>{~}</span>
+<span id="cb358-3"><a href="#cb358-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb358-4"><a href="#cb358-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb358-5"><a href="#cb358-5" aria-hidden="true"></a>Bartel~Leendert van~der~Waerden</span>
+<span id="cb358-6"><a href="#cb358-6" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb358-7"><a href="#cb358-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="cb342"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb342-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<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">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 id="code-span-renderer"><span class="header-section-number">2.3.1.6</span> Code Span Renderer</h4>
+<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>
 <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 id="plain-tex-example-20" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb343"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb343-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb343-2" data-line-number="2"><span class="fu">\input</span> lmfonts</a>
-<a class="sourceLine" id="cb343-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb343-4" data-line-number="4"><span class="fu">\def</span>\markdownRendererCodeSpan#1{#1}</a>
-<a class="sourceLine" id="cb343-5" data-line-number="5"></a>
-<a class="sourceLine" id="cb343-6" data-line-number="6"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb343-7" data-line-number="7">`<span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>`</a>
-<a class="sourceLine" id="cb343-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb343-9" data-line-number="9"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></a>
-<a class="sourceLine" id="cb343-10" data-line-number="10"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb343-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb343-12" data-line-number="12"><span class="fu">\def</span>\markdownOptionHybrid{true}</a>
-<a class="sourceLine" id="cb343-13" data-line-number="13"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb343-14" data-line-number="14"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></a>
-<a class="sourceLine" id="cb343-15" data-line-number="15"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb343-16" data-line-number="16"></a>
-<a class="sourceLine" id="cb343-17" data-line-number="17"><span class="fu">\bye</span></a></code></pre></div>
+<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">\input</span> markdown</span>
+<span id="cb360-2"><a href="#cb360-2" aria-hidden="true"></a><span class="fu">\input</span> lmfonts</span>
+<span id="cb360-3"><a href="#cb360-3" aria-hidden="true"></a></span>
+<span id="cb360-4"><a href="#cb360-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererCodeSpan</span>#1{#1}</span>
+<span id="cb360-5"><a href="#cb360-5" aria-hidden="true"></a></span>
+<span id="cb360-6"><a href="#cb360-6" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb360-7"><a href="#cb360-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="cb360-8"><a href="#cb360-8" aria-hidden="true"></a></span>
+<span id="cb360-9"><a href="#cb360-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="cb360-10"><a href="#cb360-10" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb360-11"><a href="#cb360-11" aria-hidden="true"></a></span>
+<span id="cb360-12"><a href="#cb360-12" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
+<span id="cb360-13"><a href="#cb360-13" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb360-14"><a href="#cb360-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="cb360-15"><a href="#cb360-15" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb360-16"><a href="#cb360-16" aria-hidden="true"></a></span>
+<span id="cb360-17"><a href="#cb360-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="cb344"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb344-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<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">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>
@@ -4108,30 +4334,30 @@
 <p>$\sqrt{-1}$ <em>equals</em> $i$.</p>
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
-<h5 id="latex-example-37" class="unnumbered"><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.tex</code> with the following content:</p>
-<div class="sourceCode" id="cb345"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb345-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb345-2" data-line-number="2"><span class="bu">\usepackage</span>[smartEllipses]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb345-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb345-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb345-5" data-line-number="5">    codeSpan = {#1},</a>
-<a class="sourceLine" id="cb345-6" data-line-number="6">  },</a>
-<a class="sourceLine" id="cb345-7" data-line-number="7">}</a>
-<a class="sourceLine" id="cb345-8" data-line-number="8"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb345-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb345-10" data-line-number="10"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb345-11" data-line-number="11">`<span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>`</a>
-<a class="sourceLine" id="cb345-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb345-13" data-line-number="13"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></a>
-<a class="sourceLine" id="cb345-14" data-line-number="14"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb345-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb345-16" data-line-number="16"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{hybrid}</a>
-<a class="sourceLine" id="cb345-17" data-line-number="17"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></a>
-<a class="sourceLine" id="cb345-18" data-line-number="18"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb345-19" data-line-number="19"></a>
-<a class="sourceLine" id="cb345-20" data-line-number="20"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<div class="sourceCode" id="cb362"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb362-1"><a href="#cb362-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb362-2"><a href="#cb362-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[smartEllipses]{<span class="ex">markdown</span>}</span>
+<span id="cb362-3"><a href="#cb362-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb362-4"><a href="#cb362-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb362-5"><a href="#cb362-5" aria-hidden="true"></a>    codeSpan = {#1},</span>
+<span id="cb362-6"><a href="#cb362-6" aria-hidden="true"></a>  },</span>
+<span id="cb362-7"><a href="#cb362-7" aria-hidden="true"></a>}</span>
+<span id="cb362-8"><a href="#cb362-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb362-9"><a href="#cb362-9" aria-hidden="true"></a></span>
+<span id="cb362-10"><a href="#cb362-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb362-11"><a href="#cb362-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="cb362-12"><a href="#cb362-12" aria-hidden="true"></a></span>
+<span id="cb362-13"><a href="#cb362-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="cb362-14"><a href="#cb362-14" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb362-15"><a href="#cb362-15" aria-hidden="true"></a></span>
+<span id="cb362-16"><a href="#cb362-16" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{hybrid}</span>
+<span id="cb362-17"><a href="#cb362-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="cb362-18"><a href="#cb362-18" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb362-19"><a href="#cb362-19" aria-hidden="true"></a></span>
+<span id="cb362-20"><a href="#cb362-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="cb346"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb346-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb363"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb363-1"><a href="#cb363-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>
@@ -4138,26 +4364,26 @@
 <p>$\sqrt{-1}$ <em>equals</em> $i$.</p>
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
-<h5 id="context-example-30" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb347"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb347-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb347-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererCodeSpan#1{#1}</a>
-<a class="sourceLine" id="cb347-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb347-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb347-5" data-line-number="5"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb347-6" data-line-number="6">`<span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span>`</a>
-<a class="sourceLine" id="cb347-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb347-8" data-line-number="8"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></a>
-<a class="sourceLine" id="cb347-9" data-line-number="9"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb347-10" data-line-number="10"></a>
-<a class="sourceLine" id="cb347-11" data-line-number="11"><span class="fu">\def</span>\markdownOptionHybrid{true}</a>
-<a class="sourceLine" id="cb347-12" data-line-number="12"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb347-13" data-line-number="13"><span class="ss">$</span><span class="sc">\sqrt</span><span class="ss">{-1}$</span> *equals* <span class="ss">$i$</span></a>
-<a class="sourceLine" id="cb347-14" data-line-number="14"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb347-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb347-16" data-line-number="16"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb364"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb364-1"><a href="#cb364-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb364-2"><a href="#cb364-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererCodeSpan</span>#1{#1}</span>
+<span id="cb364-3"><a href="#cb364-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb364-4"><a href="#cb364-4" aria-hidden="true"></a></span>
+<span id="cb364-5"><a href="#cb364-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb364-6"><a href="#cb364-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="cb364-7"><a href="#cb364-7" aria-hidden="true"></a></span>
+<span id="cb364-8"><a href="#cb364-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="cb364-9"><a href="#cb364-9" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb364-10"><a href="#cb364-10" aria-hidden="true"></a></span>
+<span id="cb364-11"><a href="#cb364-11" aria-hidden="true"></a><span class="fu">\def\markdownOptionHybrid</span>{true}</span>
+<span id="cb364-12"><a href="#cb364-12" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb364-13"><a href="#cb364-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="cb364-14"><a href="#cb364-14" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb364-15"><a href="#cb364-15" aria-hidden="true"></a></span>
+<span id="cb364-16"><a href="#cb364-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="cb348"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb348-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb365"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb365-1"><a href="#cb365-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>
@@ -4164,145 +4390,145 @@
 <p>$\sqrt{-1}$ <em>equals</em> $i$.</p>
 <p>√-̅1̅ <em>equals</em> <span class="math inline"><em>i</em></span>.</p>
 </blockquote>
-<h4 id="link-renderer"><span class="header-section-number">2.3.1.7</span> Link Renderer</h4>
+<h4 data-number="2.3.1.8" id="link-renderer"><span class="header-section-number">2.3.1.8</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 id="plain-tex-example-21" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb349"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb349-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb349-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererLink#1#2#3#4{<span class="co">%</span></a>
-<a class="sourceLine" id="cb349-3" data-line-number="3">  #1 {\tt#2} titled {\it#4}<span class="co">%</span></a>
-<a class="sourceLine" id="cb349-4" data-line-number="4">}</a>
-<a class="sourceLine" id="cb349-5" data-line-number="5"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb349-6" data-line-number="6">Please visit [the link][ctan].</a>
-<a class="sourceLine" id="cb349-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb349-8" data-line-number="8"> [ctan]: https://ctan.org/</a>
-<a class="sourceLine" id="cb349-9" data-line-number="9">         (the Comprehensive TeX Archive Network)</a>
-<a class="sourceLine" id="cb349-10" data-line-number="10"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb349-11" data-line-number="11"><span class="fu">\bye</span></a></code></pre></div>
+<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="fu">\input</span> markdown</span>
+<span id="cb366-2"><a href="#cb366-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLink</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb366-3"><a href="#cb366-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="cb366-4"><a href="#cb366-4" aria-hidden="true"></a>}</span>
+<span id="cb366-5"><a href="#cb366-5" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb366-6"><a href="#cb366-6" aria-hidden="true"></a>Please visit [the link][ctan].</span>
+<span id="cb366-7"><a href="#cb366-7" aria-hidden="true"></a></span>
+<span id="cb366-8"><a href="#cb366-8" aria-hidden="true"></a> [ctan]: https://ctan.org/</span>
+<span id="cb366-9"><a href="#cb366-9" aria-hidden="true"></a>         (the Comprehensive TeX Archive Network)</span>
+<span id="cb366-10"><a href="#cb366-10" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb366-11"><a href="#cb366-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="cb350"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb350-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></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">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 id="latex-example-38" class="unnumbered"><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:</p>
-<div class="sourceCode" id="cb351"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb351-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb351-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb351-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb351-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb351-5" data-line-number="5">    link = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb351-6" data-line-number="6">      #1 <span class="fu">\texttt</span>{#2} titled <span class="fu">\emph</span>{#4}<span class="co">%</span></a>
-<a class="sourceLine" id="cb351-7" data-line-number="7">    },</a>
-<a class="sourceLine" id="cb351-8" data-line-number="8">  },</a>
-<a class="sourceLine" id="cb351-9" data-line-number="9">}</a>
-<a class="sourceLine" id="cb351-10" data-line-number="10"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb351-11" data-line-number="11"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb351-12" data-line-number="12">Please visit [the link][ctan].</a>
-<a class="sourceLine" id="cb351-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb351-14" data-line-number="14"> [ctan]: https://ctan.org/</a>
-<a class="sourceLine" id="cb351-15" data-line-number="15">         (the Comprehensive TeX Archive Network)</a>
-<a class="sourceLine" id="cb351-16" data-line-number="16"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb351-17" data-line-number="17"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb368-2"><a href="#cb368-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb368-3"><a href="#cb368-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb368-4"><a href="#cb368-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb368-5"><a href="#cb368-5" aria-hidden="true"></a>    link = {<span class="co">%</span></span>
+<span id="cb368-6"><a href="#cb368-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="cb368-7"><a href="#cb368-7" aria-hidden="true"></a>    },</span>
+<span id="cb368-8"><a href="#cb368-8" aria-hidden="true"></a>  },</span>
+<span id="cb368-9"><a href="#cb368-9" aria-hidden="true"></a>}</span>
+<span id="cb368-10"><a href="#cb368-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb368-11"><a href="#cb368-11" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb368-12"><a href="#cb368-12" aria-hidden="true"></a>Please visit [the link][ctan].</span>
+<span id="cb368-13"><a href="#cb368-13" aria-hidden="true"></a></span>
+<span id="cb368-14"><a href="#cb368-14" aria-hidden="true"></a> [ctan]: https://ctan.org/</span>
+<span id="cb368-15"><a href="#cb368-15" aria-hidden="true"></a>         (the Comprehensive TeX Archive Network)</span>
+<span id="cb368-16"><a href="#cb368-16" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb368-17"><a href="#cb368-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="cb352"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb352-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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">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 id="context-example-31" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb353"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb353-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb353-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererLink#1#2#3#4{<span class="co">%</span></a>
-<a class="sourceLine" id="cb353-3" data-line-number="3">  #1 {\tt#2} titled \emph{#4}<span class="co">%</span></a>
-<a class="sourceLine" id="cb353-4" data-line-number="4">}</a>
-<a class="sourceLine" id="cb353-5" data-line-number="5"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb353-6" data-line-number="6"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb353-7" data-line-number="7">Please visit [the link][ctan].</a>
-<a class="sourceLine" id="cb353-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb353-9" data-line-number="9"> [ctan]: https://ctan.org/</a>
-<a class="sourceLine" id="cb353-10" data-line-number="10">         (the Comprehensive TeX Archive Network)</a>
-<a class="sourceLine" id="cb353-11" data-line-number="11"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb353-12" data-line-number="12"><span class="fu">\stoptext</span></a></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="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb370-2"><a href="#cb370-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererLink</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb370-3"><a href="#cb370-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="cb370-4"><a href="#cb370-4" aria-hidden="true"></a>}</span>
+<span id="cb370-5"><a href="#cb370-5" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb370-6"><a href="#cb370-6" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb370-7"><a href="#cb370-7" aria-hidden="true"></a>Please visit [the link][ctan].</span>
+<span id="cb370-8"><a href="#cb370-8" aria-hidden="true"></a></span>
+<span id="cb370-9"><a href="#cb370-9" aria-hidden="true"></a> [ctan]: https://ctan.org/</span>
+<span id="cb370-10"><a href="#cb370-10" aria-hidden="true"></a>         (the Comprehensive TeX Archive Network)</span>
+<span id="cb370-11"><a href="#cb370-11" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb370-12"><a href="#cb370-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="cb354"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb354-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<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">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 id="image-renderer"><span class="header-section-number">2.3.1.8</span> Image Renderer</h4>
+<h4 data-number="2.3.1.9" id="image-renderer"><span class="header-section-number">2.3.1.9</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 id="latex-example-39" class="unnumbered"><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="cb355"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb355-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb355-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb355-3" data-line-number="3"><span class="fu">\begingroup</span></a>
-<a class="sourceLine" id="cb355-4" data-line-number="4"><span class="fu">\catcode</span>`<span class="fu">\@</span>=11</a>
-<a class="sourceLine" id="cb355-5" data-line-number="5"><span class="fu">\catcode</span>`<span class="fu">\%</span>=12</a>
-<a class="sourceLine" id="cb355-6" data-line-number="6"><span class="fu">\catcode</span>`<span class="fu">\^</span>^A=14</a>
-<a class="sourceLine" id="cb355-7" data-line-number="7"><span class="fu">\global\def</span>\markdownRendererImage#1#2#3#4{^^A</a>
-<a class="sourceLine" id="cb355-8" data-line-number="8">  \immediate\write18{^^A</a></code></pre></div>
-<div class="sourceCode" id="cb356"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb356-1" data-line-number="1">    <span class="kw">if</span> <span class="bu">printf</span> <span class="st">'%s'</span> <span class="st">"#3"</span> <span class="kw">|</span> <span class="fu">grep</span> -q ^http<span class="kw">;</span> <span class="kw">then</span></a>
-<a class="sourceLine" id="cb356-2" data-line-number="2">      <span class="va">OUTPUT=</span><span class="st">"</span><span class="va">$(</span><span class="bu">printf</span> <span class="st">'%s'</span> <span class="st">"#3"</span> <span class="kw">|</span> <span class="ex">md5sum</span> <span class="kw">|</span> <span class="fu">cut</span> -d<span class="st">' '</span> -f1<span class="va">)</span><span class="st">.^^A</span></a>
-<a class="sourceLine" id="cb356-3" data-line-number="3"><span class="st">              </span><span class="va">$(</span><span class="bu">printf</span> <span class="st">'%s'</span> <span class="st">"#3"</span> <span class="kw">|</span> <span class="fu">sed</span> <span class="st">'s/.*[.]//'</span><span class="va">)</span><span class="st">"</span>;</a>
-<a class="sourceLine" id="cb356-4" data-line-number="4">      <span class="kw">if</span> !<span class="bu"> [</span> <span class="ot">-e</span> <span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span><span class="bu"> ]</span>; <span class="kw">then</span></a>
-<a class="sourceLine" id="cb356-5" data-line-number="5">        <span class="fu">wget</span> -O <span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span> <span class="st">'#3'</span> <span class="kw">||</span> <span class="fu">rm</span> <span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span><span class="kw">;</span></a>
-<a class="sourceLine" id="cb356-6" data-line-number="6">        <span class="ex">convert</span> <span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span> png:<span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span><span class="kw">;</span></a>
-<a class="sourceLine" id="cb356-7" data-line-number="7">      <span class="kw">fi</span>;</a>
-<a class="sourceLine" id="cb356-8" data-line-number="8">      <span class="bu">printf</span> <span class="st">'%s%%'</span> <span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span> <span class="op">></span> \jobname.fetched<span class="kw">;</span></a>
-<a class="sourceLine" id="cb356-9" data-line-number="9">    <span class="kw">else</span></a>
-<a class="sourceLine" id="cb356-10" data-line-number="10">      <span class="bu">printf</span> <span class="st">'%s%%'</span> <span class="st">"#3"</span>      <span class="op">></span> \jobname.fetched<span class="kw">;</span></a>
-<a class="sourceLine" id="cb356-11" data-line-number="11">    <span class="kw">fi</span>^^<span class="ex">A</span></a></code></pre></div>
-<div class="sourceCode" id="cb357"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb357-1" data-line-number="1">  }^^A</a>
-<a class="sourceLine" id="cb357-2" data-line-number="2">  {^^A</a>
-<a class="sourceLine" id="cb357-3" data-line-number="3">    <span class="fu">\everyeof</span>={<span class="fu">\noexpand</span>}^^A</a>
-<a class="sourceLine" id="cb357-4" data-line-number="4">    <span class="fu">\edef</span>\filename{\@@input"\jobname.fetched" }^^A</a>
-<a class="sourceLine" id="cb357-5" data-line-number="5">    <span class="bu">\includegraphics</span>[width=<span class="fu">\textwidth</span>]{<span class="fu">\filename</span>}^^A</a>
-<a class="sourceLine" id="cb357-6" data-line-number="6">  }^^A</a>
-<a class="sourceLine" id="cb357-7" data-line-number="7">}</a>
-<a class="sourceLine" id="cb357-8" data-line-number="8"><span class="fu">\endgroup</span></a>
-<a class="sourceLine" id="cb357-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb357-10" data-line-number="10"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb357-11" data-line-number="11">![TUGboat](https://tug.org/tugboat/noword.jpg)</a>
-<a class="sourceLine" id="cb357-12" data-line-number="12"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb357-13" data-line-number="13"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb372-2"><a href="#cb372-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb372-3"><a href="#cb372-3" aria-hidden="true"></a><span class="fu">\begingroup</span></span>
+<span id="cb372-4"><a href="#cb372-4" aria-hidden="true"></a><span class="fu">\catcode</span>`<span class="fu">\@</span>=11</span>
+<span id="cb372-5"><a href="#cb372-5" aria-hidden="true"></a><span class="fu">\catcode</span>`<span class="fu">\%</span>=12</span>
+<span id="cb372-6"><a href="#cb372-6" aria-hidden="true"></a><span class="fu">\catcode</span>`<span class="fu">\^</span>^A=14</span>
+<span id="cb372-7"><a href="#cb372-7" aria-hidden="true"></a><span class="fu">\global\def\markdownRendererImage</span>#1#2#3#4{^^A</span>
+<span id="cb372-8"><a href="#cb372-8" aria-hidden="true"></a>  <span class="fu">\immediate\write</span>18{^^A</span></code></pre></div>
+<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="kw">if</span> <span class="bu">printf</span> <span class="st">'%s'</span> <span class="st">"#3"</span> <span class="kw">|</span> <span class="fu">grep</span> -q ^http<span class="kw">;</span> <span class="kw">then</span></span>
+<span id="cb373-2"><a href="#cb373-2" aria-hidden="true"></a>      <span class="va">OUTPUT=</span><span class="st">"</span><span class="va">$(</span><span class="bu">printf</span> <span class="st">'%s'</span> <span class="st">"#3"</span> <span class="kw">|</span> <span class="ex">md5sum</span> <span class="kw">|</span> <span class="fu">cut</span> -d<span class="st">' '</span> -f1<span class="va">)</span><span class="st">.^^A</span></span>
+<span id="cb373-3"><a href="#cb373-3" aria-hidden="true"></a><span class="st">              </span><span class="va">$(</span><span class="bu">printf</span> <span class="st">'%s'</span> <span class="st">"#3"</span> <span class="kw">|</span> <span class="fu">sed</span> <span class="st">'s/.*[.]//'</span><span class="va">)</span><span class="st">"</span>;</span>
+<span id="cb373-4"><a href="#cb373-4" aria-hidden="true"></a>      <span class="kw">if</span> !<span class="bu"> [</span> <span class="ot">-e</span> <span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span><span class="bu"> ]</span>; <span class="kw">then</span></span>
+<span id="cb373-5"><a href="#cb373-5" aria-hidden="true"></a>        <span class="fu">wget</span> -O <span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span> <span class="st">'#3'</span> <span class="kw">||</span> <span class="fu">rm</span> <span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span><span class="kw">;</span></span>
+<span id="cb373-6"><a href="#cb373-6" aria-hidden="true"></a>        <span class="ex">convert</span> <span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span> png:<span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span><span class="kw">;</span></span>
+<span id="cb373-7"><a href="#cb373-7" aria-hidden="true"></a>      <span class="kw">fi</span>;</span>
+<span id="cb373-8"><a href="#cb373-8" aria-hidden="true"></a>      <span class="bu">printf</span> <span class="st">'%s%%'</span> <span class="st">"</span><span class="va">$OUTPUT</span><span class="st">"</span> <span class="op">></span> \jobname.fetched<span class="kw">;</span></span>
+<span id="cb373-9"><a href="#cb373-9" aria-hidden="true"></a>    <span class="kw">else</span></span>
+<span id="cb373-10"><a href="#cb373-10" aria-hidden="true"></a>      <span class="bu">printf</span> <span class="st">'%s%%'</span> <span class="st">"#3"</span>      <span class="op">></span> \jobname.fetched<span class="kw">;</span></span>
+<span id="cb373-11"><a href="#cb373-11" aria-hidden="true"></a>    <span class="kw">fi</span>^^<span class="ex">A</span></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>  }^^A</span>
+<span id="cb374-2"><a href="#cb374-2" aria-hidden="true"></a>  {^^A</span>
+<span id="cb374-3"><a href="#cb374-3" aria-hidden="true"></a>    <span class="fu">\everyeof</span>={<span class="fu">\noexpand</span>}^^A</span>
+<span id="cb374-4"><a href="#cb374-4" aria-hidden="true"></a>    <span class="fu">\edef\filename</span>{<span class="fu">\_</span>_markdowninput"<span class="fu">\jobname</span>.fetched" }^^A</span>
+<span id="cb374-5"><a href="#cb374-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="cb374-6"><a href="#cb374-6" aria-hidden="true"></a>  }^^A</span>
+<span id="cb374-7"><a href="#cb374-7" aria-hidden="true"></a>}</span>
+<span id="cb374-8"><a href="#cb374-8" aria-hidden="true"></a><span class="fu">\endgroup</span></span>
+<span id="cb374-9"><a href="#cb374-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb374-10"><a href="#cb374-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb374-11"><a href="#cb374-11" aria-hidden="true"></a>![TUGboat](https://tug.org/tugboat/noword.jpg)</span>
+<span id="cb374-12"><a href="#cb374-12" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb374-13"><a href="#cb374-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="cb358"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb358-1" data-line-number="1"><span class="ex">lualatex</span> --shell-escape document.tex</a></code></pre></div>
+<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">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 id="content-block-renderers"><span class="header-section-number">2.3.1.9</span> Content Block Renderers</h4>
+<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>
 <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 <code>\markdownRendererContentBlock</code>.</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 id="plain-tex-example-22" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb359"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb359-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb359-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionContentBlocks{true}</a>
-<a class="sourceLine" id="cb359-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererContentBlock#1#2#3#4{<span class="co">%</span></a>
-<a class="sourceLine" id="cb359-4" data-line-number="4">  This is {\tt #2}, #4.</a>
-<a class="sourceLine" id="cb359-5" data-line-number="5">}</a>
-<a class="sourceLine" id="cb359-6" data-line-number="6"><span class="fu">\def</span>\markdownRendererContentBlockOnlineImage#1#2#3#4{<span class="co">%</span></a>
-<a class="sourceLine" id="cb359-7" data-line-number="7">  This is the image {\tt #2}, #4.</a>
-<a class="sourceLine" id="cb359-8" data-line-number="8">}</a>
-<a class="sourceLine" id="cb359-9" data-line-number="9"><span class="fu">\def</span>\markdownRendererContentBlockCode#1#2#3#4#5{<span class="co">%</span></a>
-<a class="sourceLine" id="cb359-10" data-line-number="10">  This is the #2 (\uppercase{#1}) document {\tt #3}, #5.</a>
-<a class="sourceLine" id="cb359-11" data-line-number="11">}</a>
-<a class="sourceLine" id="cb359-12" data-line-number="12"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb359-13" data-line-number="13">/document.tex (the document that we are currently typesetting)</a>
-<a class="sourceLine" id="cb359-14" data-line-number="14">/markdown-languages.json (the mapping between filename extensions</a>
-<a class="sourceLine" id="cb359-15" data-line-number="15">                          and programming language names)</a>
-<a class="sourceLine" id="cb359-16" data-line-number="16">https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</a>
-<a class="sourceLine" id="cb359-17" data-line-number="17"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb359-18" data-line-number="18"><span class="fu">\bye</span></a></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="fu">\input</span> markdown</span>
+<span id="cb376-2"><a href="#cb376-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionContentBlocks</span>{true}</span>
+<span id="cb376-3"><a href="#cb376-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlock</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb376-4"><a href="#cb376-4" aria-hidden="true"></a>  This is {<span class="fu">\tt</span> #2}, #4.</span>
+<span id="cb376-5"><a href="#cb376-5" aria-hidden="true"></a>}</span>
+<span id="cb376-6"><a href="#cb376-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlockOnlineImage</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb376-7"><a href="#cb376-7" aria-hidden="true"></a>  This is the image {<span class="fu">\tt</span> #2}, #4.</span>
+<span id="cb376-8"><a href="#cb376-8" aria-hidden="true"></a>}</span>
+<span id="cb376-9"><a href="#cb376-9" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlockCode</span>#1#2#3#4#5{<span class="co">%</span></span>
+<span id="cb376-10"><a href="#cb376-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="cb376-11"><a href="#cb376-11" aria-hidden="true"></a>}</span>
+<span id="cb376-12"><a href="#cb376-12" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb376-13"><a href="#cb376-13" aria-hidden="true"></a>/document.tex (the document that we are currently typesetting)</span>
+<span id="cb376-14"><a href="#cb376-14" aria-hidden="true"></a>/markdown-languages.json (the mapping between filename extensions</span>
+<span id="cb376-15"><a href="#cb376-15" aria-hidden="true"></a>                          and programming language names)</span>
+<span id="cb376-16"><a href="#cb376-16" aria-hidden="true"></a>https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</span>
+<span id="cb376-17"><a href="#cb376-17" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb376-18"><a href="#cb376-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="cb360"><pre class="sourceCode js"><code class="sourceCode javascript"><a class="sourceLine" id="cb360-1" data-line-number="1"><span class="op">{</span></a>
-<a class="sourceLine" id="cb360-2" data-line-number="2">  <span class="st">"json"</span><span class="op">:</span> <span class="st">"JavaScript Object Notation"</span><span class="op">,</span></a>
-<a class="sourceLine" id="cb360-3" data-line-number="3"><span class="op">}</span></a></code></pre></div>
+<div class="sourceCode" id="cb377"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb377-1"><a href="#cb377-1" aria-hidden="true"></a>{</span>
+<span id="cb377-2"><a href="#cb377-2" aria-hidden="true"></a>  <span class="st">"json"</span><span class="op">:</span> <span class="st">"JavaScript Object Notation"</span><span class="op">,</span></span>
+<span id="cb377-3"><a href="#cb377-3" aria-hidden="true"></a>}</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"><a class="sourceLine" id="cb361-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<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>
 <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>
@@ -4309,34 +4535,34 @@
 <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 id="latex-example-40" class="unnumbered"><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="cb362"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb362-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb362-2" data-line-number="2"><span class="kw">\begin</span>{<span class="ex">filecontents</span>}[overwrite,nosearch,noheader]{markdown-languages.json}</a>
-<a class="sourceLine" id="cb362-3" data-line-number="3">{</a>
-<a class="sourceLine" id="cb362-4" data-line-number="4">  "json": "JavaScript Object Notation",</a>
-<a class="sourceLine" id="cb362-5" data-line-number="5">}</a>
-<a class="sourceLine" id="cb362-6" data-line-number="6"><span class="kw">\end</span>{<span class="ex">filecontents</span>}</a>
-<a class="sourceLine" id="cb362-7" data-line-number="7"><span class="bu">\usepackage</span>[contentBlocks]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb362-8" data-line-number="8"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb362-9" data-line-number="9">  renderers = {</a>
-<a class="sourceLine" id="cb362-10" data-line-number="10">    contentBlock = {This is <span class="fu">\texttt</span>{#2}, #4.},</a>
-<a class="sourceLine" id="cb362-11" data-line-number="11">    contentBlockOnlineImage = {This is the image <span class="fu">\texttt</span>{#2}, #4.},</a>
-<a class="sourceLine" id="cb362-12" data-line-number="12">    contentBlockCode = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb362-13" data-line-number="13">      This is the #2 (<span class="fu">\MakeUppercase</span>{#1}) document <span class="fu">\texttt</span>{#3}, #5.</a>
-<a class="sourceLine" id="cb362-14" data-line-number="14">    },</a>
-<a class="sourceLine" id="cb362-15" data-line-number="15">  },</a>
-<a class="sourceLine" id="cb362-16" data-line-number="16">}</a>
-<a class="sourceLine" id="cb362-17" data-line-number="17"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb362-18" data-line-number="18"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb362-19" data-line-number="19">/document.tex (the document that we are currently typesetting)</a>
-<a class="sourceLine" id="cb362-20" data-line-number="20">/markdown-languages.json (the mapping between filename extensions</a>
-<a class="sourceLine" id="cb362-21" data-line-number="21">                          and programming language names)</a>
-<a class="sourceLine" id="cb362-22" data-line-number="22">https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</a>
-<a class="sourceLine" id="cb362-23" data-line-number="23"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb362-24" data-line-number="24"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<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="kw">\begin</span>{<span class="ex">filecontents</span>}[overwrite,nosearch,noheader]{markdown-languages.json}</span>
+<span id="cb379-3"><a href="#cb379-3" aria-hidden="true"></a>{</span>
+<span id="cb379-4"><a href="#cb379-4" aria-hidden="true"></a>  "json": "JavaScript Object Notation",</span>
+<span id="cb379-5"><a href="#cb379-5" aria-hidden="true"></a>}</span>
+<span id="cb379-6"><a href="#cb379-6" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">filecontents</span>}</span>
+<span id="cb379-7"><a href="#cb379-7" aria-hidden="true"></a><span class="bu">\usepackage</span>[contentBlocks]{<span class="ex">markdown</span>}</span>
+<span id="cb379-8"><a href="#cb379-8" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb379-9"><a href="#cb379-9" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb379-10"><a href="#cb379-10" aria-hidden="true"></a>    contentBlock = {This is <span class="fu">\texttt</span>{#2}, #4.},</span>
+<span id="cb379-11"><a href="#cb379-11" aria-hidden="true"></a>    contentBlockOnlineImage = {This is the image <span class="fu">\texttt</span>{#2}, #4.},</span>
+<span id="cb379-12"><a href="#cb379-12" aria-hidden="true"></a>    contentBlockCode = {<span class="co">%</span></span>
+<span id="cb379-13"><a href="#cb379-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="cb379-14"><a href="#cb379-14" aria-hidden="true"></a>    },</span>
+<span id="cb379-15"><a href="#cb379-15" aria-hidden="true"></a>  },</span>
+<span id="cb379-16"><a href="#cb379-16" aria-hidden="true"></a>}</span>
+<span id="cb379-17"><a href="#cb379-17" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb379-18"><a href="#cb379-18" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb379-19"><a href="#cb379-19" aria-hidden="true"></a>/document.tex (the document that we are currently typesetting)</span>
+<span id="cb379-20"><a href="#cb379-20" aria-hidden="true"></a>/markdown-languages.json (the mapping between filename extensions</span>
+<span id="cb379-21"><a href="#cb379-21" aria-hidden="true"></a>                          and programming language names)</span>
+<span id="cb379-22"><a href="#cb379-22" aria-hidden="true"></a>https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</span>
+<span id="cb379-23"><a href="#cb379-23" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb379-24"><a href="#cb379-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="cb363"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb363-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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>
 <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>
@@ -4343,33 +4569,33 @@
 <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 id="context-example-32" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb364"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb364-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb364-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionContentBlocks{true}</a>
-<a class="sourceLine" id="cb364-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererContentBlock#1#2#3#4{<span class="co">%</span></a>
-<a class="sourceLine" id="cb364-4" data-line-number="4">  This is {\tt #2}, #4.</a>
-<a class="sourceLine" id="cb364-5" data-line-number="5">}</a>
-<a class="sourceLine" id="cb364-6" data-line-number="6"><span class="fu">\def</span>\markdownRendererContentBlockOnlineImage#1#2#3#4{<span class="co">%</span></a>
-<a class="sourceLine" id="cb364-7" data-line-number="7">  This is the image {\tt #2}, #4.</a>
-<a class="sourceLine" id="cb364-8" data-line-number="8">}</a>
-<a class="sourceLine" id="cb364-9" data-line-number="9"><span class="fu">\def</span>\markdownRendererContentBlockCode#1#2#3#4#5{<span class="co">%</span></a>
-<a class="sourceLine" id="cb364-10" data-line-number="10">  This is the #2 (\uppercase{#1}) document {\tt #3}, #5.</a>
-<a class="sourceLine" id="cb364-11" data-line-number="11">}</a>
-<a class="sourceLine" id="cb364-12" data-line-number="12"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb364-13" data-line-number="13"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb364-14" data-line-number="14">/document.tex (the document that we are currently typesetting)</a>
-<a class="sourceLine" id="cb364-15" data-line-number="15">/markdown-languages.json (the mapping between filename extensions</a>
-<a class="sourceLine" id="cb364-16" data-line-number="16">                          and programming language names)</a>
-<a class="sourceLine" id="cb364-17" data-line-number="17">https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</a>
-<a class="sourceLine" id="cb364-18" data-line-number="18"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb364-19" data-line-number="19"><span class="fu">\stoptext</span></a></code></pre></div>
+<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\markdownOptionContentBlocks</span>{true}</span>
+<span id="cb381-3"><a href="#cb381-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlock</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb381-4"><a href="#cb381-4" aria-hidden="true"></a>  This is {<span class="fu">\tt</span> #2}, #4.</span>
+<span id="cb381-5"><a href="#cb381-5" aria-hidden="true"></a>}</span>
+<span id="cb381-6"><a href="#cb381-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererContentBlockOnlineImage</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb381-7"><a href="#cb381-7" aria-hidden="true"></a>  This is the image {<span class="fu">\tt</span> #2}, #4.</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><span class="fu">\def\markdownRendererContentBlockCode</span>#1#2#3#4#5{<span class="co">%</span></span>
+<span id="cb381-10"><a href="#cb381-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="cb381-11"><a href="#cb381-11" aria-hidden="true"></a>}</span>
+<span id="cb381-12"><a href="#cb381-12" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb381-13"><a href="#cb381-13" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb381-14"><a href="#cb381-14" aria-hidden="true"></a>/document.tex (the document that we are currently typesetting)</span>
+<span id="cb381-15"><a href="#cb381-15" aria-hidden="true"></a>/markdown-languages.json (the mapping between filename extensions</span>
+<span id="cb381-16"><a href="#cb381-16" aria-hidden="true"></a>                          and programming language names)</span>
+<span id="cb381-17"><a href="#cb381-17" aria-hidden="true"></a>https://tug.org/tugboat/noword.jpg (the logotype of TUGboat)</span>
+<span id="cb381-18"><a href="#cb381-18" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb381-19"><a href="#cb381-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="cb365"><pre class="sourceCode js"><code class="sourceCode javascript"><a class="sourceLine" id="cb365-1" data-line-number="1"><span class="op">{</span></a>
-<a class="sourceLine" id="cb365-2" data-line-number="2">  <span class="st">"json"</span><span class="op">:</span> <span class="st">"JavaScript Object Notation"</span><span class="op">,</span></a>
-<a class="sourceLine" id="cb365-3" data-line-number="3"><span class="op">}</span></a></code></pre></div>
+<div class="sourceCode" id="cb382"><pre class="sourceCode js"><code class="sourceCode javascript"><span id="cb382-1"><a href="#cb382-1" aria-hidden="true"></a>{</span>
+<span id="cb382-2"><a href="#cb382-2" aria-hidden="true"></a>  <span class="st">"json"</span><span class="op">:</span> <span class="st">"JavaScript Object Notation"</span><span class="op">,</span></span>
+<span id="cb382-3"><a href="#cb382-3" aria-hidden="true"></a>}</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"><a class="sourceLine" id="cb366-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<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">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>
@@ -4376,7 +4602,7 @@
 <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 id="bullet-list-renderers"><span class="header-section-number">2.3.1.10</span> Bullet List Renderers</h4>
+<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>
 <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>
@@ -4383,52 +4609,52 @@
 <p>The <code>\markdownRendererUlItemEnd</code> macro represents the end of an item in a bulleted list. The macro receives no arguments.</p>
 <p>The <code>\markdownRendererUlEnd</code> macro represents the end 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>\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 id="plain-tex-example-23" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb367"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb367-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb367-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionTightLists{true}</a>
-<a class="sourceLine" id="cb367-3" data-line-number="3"></a>
-<a class="sourceLine" id="cb367-4" data-line-number="4"><span class="fu">\def</span>\markdownRendererInterblockSeparator{}</a>
-<a class="sourceLine" id="cb367-5" data-line-number="5"><span class="fu">\def</span>\markdownRendererUlBeginTight{ (}</a>
-<a class="sourceLine" id="cb367-6" data-line-number="6"><span class="fu">\def</span>\markdownRendererUlItem{<span class="co">%</span></a>
-<a class="sourceLine" id="cb367-7" data-line-number="7">  \def\markdownRendererUlItem{<span class="co">%</span></a>
-<a class="sourceLine" id="cb367-8" data-line-number="8">    ,</a>
-<a class="sourceLine" id="cb367-9" data-line-number="9">    \def\markdownRendererUlItem{, and }<span class="co">%</span></a>
-<a class="sourceLine" id="cb367-10" data-line-number="10">  }<span class="co">%</span></a>
-<a class="sourceLine" id="cb367-11" data-line-number="11">}</a>
-<a class="sourceLine" id="cb367-12" data-line-number="12"><span class="fu">\def</span>\markdownRendererUlItemEnd{}</a>
-<a class="sourceLine" id="cb367-13" data-line-number="13"><span class="fu">\def</span>\markdownRendererUlEndTight{).}</a>
-<a class="sourceLine" id="cb367-14" data-line-number="14"></a>
-<a class="sourceLine" id="cb367-15" data-line-number="15"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb367-16" data-line-number="16">This is a tight list</a>
-<a class="sourceLine" id="cb367-17" data-line-number="17"></a>
-<a class="sourceLine" id="cb367-18" data-line-number="18">- the first item</a>
-<a class="sourceLine" id="cb367-19" data-line-number="19">- the second item</a>
-<a class="sourceLine" id="cb367-20" data-line-number="20">- the third item</a>
-<a class="sourceLine" id="cb367-21" data-line-number="21"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb367-22" data-line-number="22"></a>
-<a class="sourceLine" id="cb367-23" data-line-number="23"><span class="fu">\def</span>\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb367-24" data-line-number="24">  :\par</a>
-<a class="sourceLine" id="cb367-25" data-line-number="25">  \def\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb367-26" data-line-number="26">}</a>
-<a class="sourceLine" id="cb367-27" data-line-number="27"><span class="fu">\def</span>\markdownRendererUlBegin{}</a>
-<a class="sourceLine" id="cb367-28" data-line-number="28"><span class="fu">\def</span>\markdownRendererUlItem{--\kern 0.5em}</a>
-<a class="sourceLine" id="cb367-29" data-line-number="29"><span class="fu">\def</span>\markdownRendererUlItemEnd{.\par}</a>
-<a class="sourceLine" id="cb367-30" data-line-number="30"><span class="fu">\def</span>\markdownRendererUlEnd{}</a>
-<a class="sourceLine" id="cb367-31" data-line-number="31"></a>
-<a class="sourceLine" id="cb367-32" data-line-number="32"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb367-33" data-line-number="33">This is a loose list</a>
-<a class="sourceLine" id="cb367-34" data-line-number="34"></a>
-<a class="sourceLine" id="cb367-35" data-line-number="35">- This is the first item</a>
-<a class="sourceLine" id="cb367-36" data-line-number="36"></a>
-<a class="sourceLine" id="cb367-37" data-line-number="37">- This is the second item</a>
-<a class="sourceLine" id="cb367-38" data-line-number="38"></a>
-<a class="sourceLine" id="cb367-39" data-line-number="39">- This is the third item</a>
-<a class="sourceLine" id="cb367-40" data-line-number="40"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb367-41" data-line-number="41"></a>
-<a class="sourceLine" id="cb367-42" data-line-number="42"><span class="fu">\bye</span></a></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">\input</span> markdown</span>
+<span id="cb384-2"><a href="#cb384-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
+<span id="cb384-3"><a href="#cb384-3" aria-hidden="true"></a></span>
+<span id="cb384-4"><a href="#cb384-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb384-5"><a href="#cb384-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBeginTight</span>{ (}</span>
+<span id="cb384-6"><a href="#cb384-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
+<span id="cb384-7"><a href="#cb384-7" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></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>    <span class="fu">\def\markdownRendererUlItem</span>{, and }<span class="co">%</span></span>
+<span id="cb384-10"><a href="#cb384-10" aria-hidden="true"></a>  }<span class="co">%</span></span>
+<span id="cb384-11"><a href="#cb384-11" aria-hidden="true"></a>}</span>
+<span id="cb384-12"><a href="#cb384-12" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{}</span>
+<span id="cb384-13"><a href="#cb384-13" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEndTight</span>{).}</span>
+<span id="cb384-14"><a href="#cb384-14" aria-hidden="true"></a></span>
+<span id="cb384-15"><a href="#cb384-15" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb384-16"><a href="#cb384-16" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb384-17"><a href="#cb384-17" aria-hidden="true"></a></span>
+<span id="cb384-18"><a href="#cb384-18" aria-hidden="true"></a>- the first item</span>
+<span id="cb384-19"><a href="#cb384-19" aria-hidden="true"></a>- the second item</span>
+<span id="cb384-20"><a href="#cb384-20" aria-hidden="true"></a>- the third item</span>
+<span id="cb384-21"><a href="#cb384-21" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb384-22"><a href="#cb384-22" aria-hidden="true"></a></span>
+<span id="cb384-23"><a href="#cb384-23" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb384-24"><a href="#cb384-24" aria-hidden="true"></a>  :<span class="fu">\par</span></span>
+<span id="cb384-25"><a href="#cb384-25" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb384-26"><a href="#cb384-26" aria-hidden="true"></a>}</span>
+<span id="cb384-27"><a href="#cb384-27" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBegin</span>{}</span>
+<span id="cb384-28"><a href="#cb384-28" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{--<span class="fu">\kern</span> 0.5em}</span>
+<span id="cb384-29"><a href="#cb384-29" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{.<span class="fu">\par</span>}</span>
+<span id="cb384-30"><a href="#cb384-30" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEnd</span>{}</span>
+<span id="cb384-31"><a href="#cb384-31" aria-hidden="true"></a></span>
+<span id="cb384-32"><a href="#cb384-32" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb384-33"><a href="#cb384-33" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb384-34"><a href="#cb384-34" aria-hidden="true"></a></span>
+<span id="cb384-35"><a href="#cb384-35" aria-hidden="true"></a>- This is the first item</span>
+<span id="cb384-36"><a href="#cb384-36" aria-hidden="true"></a></span>
+<span id="cb384-37"><a href="#cb384-37" aria-hidden="true"></a>- This is the second item</span>
+<span id="cb384-38"><a href="#cb384-38" aria-hidden="true"></a></span>
+<span id="cb384-39"><a href="#cb384-39" aria-hidden="true"></a>- This is the third item</span>
+<span id="cb384-40"><a href="#cb384-40" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb384-41"><a href="#cb384-41" aria-hidden="true"></a></span>
+<span id="cb384-42"><a href="#cb384-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="cb368"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb368-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></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">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>
@@ -4439,57 +4665,57 @@
 <li><p>This is the third item.</p></li>
 </ul>
 </blockquote>
-<h5 id="latex-example-41" class="unnumbered"><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="cb369"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb369-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb369-2" data-line-number="2"><span class="bu">\usepackage</span>[tightLists]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb369-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb369-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb369-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</a>
-<a class="sourceLine" id="cb369-6" data-line-number="6">  renderers = {</a>
-<a class="sourceLine" id="cb369-7" data-line-number="7">    interblockSeparator = {},</a>
-<a class="sourceLine" id="cb369-8" data-line-number="8">    ulBeginTight = { (},</a>
-<a class="sourceLine" id="cb369-9" data-line-number="9">    ulItem = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb369-10" data-line-number="10">      <span class="fu">\def</span>\markdownRendererUlItem{<span class="co">%</span></a>
-<a class="sourceLine" id="cb369-11" data-line-number="11">        ,</a>
-<a class="sourceLine" id="cb369-12" data-line-number="12">        \def\markdownRendererUlItem{, and }<span class="co">%</span></a>
-<a class="sourceLine" id="cb369-13" data-line-number="13">      }<span class="co">%</span></a>
-<a class="sourceLine" id="cb369-14" data-line-number="14">    },</a>
-<a class="sourceLine" id="cb369-15" data-line-number="15">    ulItemEnd = {},</a>
-<a class="sourceLine" id="cb369-16" data-line-number="16">    ulEndTight = {).},</a>
-<a class="sourceLine" id="cb369-17" data-line-number="17">  },</a>
-<a class="sourceLine" id="cb369-18" data-line-number="18">}</a>
-<a class="sourceLine" id="cb369-19" data-line-number="19">This is a tight list</a>
-<a class="sourceLine" id="cb369-20" data-line-number="20"></a>
-<a class="sourceLine" id="cb369-21" data-line-number="21">- the first item</a>
-<a class="sourceLine" id="cb369-22" data-line-number="22">- the second item</a>
-<a class="sourceLine" id="cb369-23" data-line-number="23">- the third item</a>
-<a class="sourceLine" id="cb369-24" data-line-number="24"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb369-25" data-line-number="25"></a>
-<a class="sourceLine" id="cb369-26" data-line-number="26"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</a>
-<a class="sourceLine" id="cb369-27" data-line-number="27">  renderers = {</a>
-<a class="sourceLine" id="cb369-28" data-line-number="28">    interblockSeparator = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb369-29" data-line-number="29">      :<span class="fu">\par</span></a>
-<a class="sourceLine" id="cb369-30" data-line-number="30">      <span class="fu">\def</span>\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb369-31" data-line-number="31">    },</a>
-<a class="sourceLine" id="cb369-32" data-line-number="32">    ulBeginTight = {<span class="kw">\begin</span>{<span class="ex">itemize</span>}},</a>
-<a class="sourceLine" id="cb369-33" data-line-number="33">    ulItem = {<span class="fu">\item</span>},</a>
-<a class="sourceLine" id="cb369-34" data-line-number="34">    ulItemEnd = {.},</a>
-<a class="sourceLine" id="cb369-35" data-line-number="35">    ulEnd = {<span class="kw">\end</span>{<span class="ex">itemize</span>}},</a>
-<a class="sourceLine" id="cb369-36" data-line-number="36">  },</a>
-<a class="sourceLine" id="cb369-37" data-line-number="37">}</a>
-<a class="sourceLine" id="cb369-38" data-line-number="38">This is a loose list</a>
-<a class="sourceLine" id="cb369-39" data-line-number="39"></a>
-<a class="sourceLine" id="cb369-40" data-line-number="40">- This is the first item</a>
-<a class="sourceLine" id="cb369-41" data-line-number="41"></a>
-<a class="sourceLine" id="cb369-42" data-line-number="42">- This is the second item</a>
-<a class="sourceLine" id="cb369-43" data-line-number="43"></a>
-<a class="sourceLine" id="cb369-44" data-line-number="44">- This is the third item</a>
-<a class="sourceLine" id="cb369-45" data-line-number="45"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb369-46" data-line-number="46"></a>
-<a class="sourceLine" id="cb369-47" data-line-number="47"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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>[tightLists]{<span class="ex">markdown</span>}</span>
+<span id="cb386-3"><a href="#cb386-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb386-4"><a href="#cb386-4" aria-hidden="true"></a></span>
+<span id="cb386-5"><a href="#cb386-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb386-6"><a href="#cb386-6" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb386-7"><a href="#cb386-7" aria-hidden="true"></a>    interblockSeparator = {},</span>
+<span id="cb386-8"><a href="#cb386-8" aria-hidden="true"></a>    ulBeginTight = { (},</span>
+<span id="cb386-9"><a href="#cb386-9" aria-hidden="true"></a>    ulItem = {<span class="co">%</span></span>
+<span id="cb386-10"><a href="#cb386-10" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
+<span id="cb386-11"><a href="#cb386-11" aria-hidden="true"></a>        ,</span>
+<span id="cb386-12"><a href="#cb386-12" aria-hidden="true"></a>        <span class="fu">\def\markdownRendererUlItem</span>{, and }<span class="co">%</span></span>
+<span id="cb386-13"><a href="#cb386-13" aria-hidden="true"></a>      }<span class="co">%</span></span>
+<span id="cb386-14"><a href="#cb386-14" aria-hidden="true"></a>    },</span>
+<span id="cb386-15"><a href="#cb386-15" aria-hidden="true"></a>    ulItemEnd = {},</span>
+<span id="cb386-16"><a href="#cb386-16" aria-hidden="true"></a>    ulEndTight = {).},</span>
+<span id="cb386-17"><a href="#cb386-17" aria-hidden="true"></a>  },</span>
+<span id="cb386-18"><a href="#cb386-18" aria-hidden="true"></a>}</span>
+<span id="cb386-19"><a href="#cb386-19" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb386-20"><a href="#cb386-20" aria-hidden="true"></a></span>
+<span id="cb386-21"><a href="#cb386-21" aria-hidden="true"></a>- the first item</span>
+<span id="cb386-22"><a href="#cb386-22" aria-hidden="true"></a>- the second item</span>
+<span id="cb386-23"><a href="#cb386-23" aria-hidden="true"></a>- the third item</span>
+<span id="cb386-24"><a href="#cb386-24" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb386-25"><a href="#cb386-25" aria-hidden="true"></a></span>
+<span id="cb386-26"><a href="#cb386-26" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb386-27"><a href="#cb386-27" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb386-28"><a href="#cb386-28" aria-hidden="true"></a>    interblockSeparator = {<span class="co">%</span></span>
+<span id="cb386-29"><a href="#cb386-29" aria-hidden="true"></a>      :<span class="fu">\par</span></span>
+<span id="cb386-30"><a href="#cb386-30" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb386-31"><a href="#cb386-31" aria-hidden="true"></a>    },</span>
+<span id="cb386-32"><a href="#cb386-32" aria-hidden="true"></a>    ulBeginTight = {<span class="kw">\begin</span>{<span class="ex">itemize</span>}},</span>
+<span id="cb386-33"><a href="#cb386-33" aria-hidden="true"></a>    ulItem = {<span class="fu">\item</span>},</span>
+<span id="cb386-34"><a href="#cb386-34" aria-hidden="true"></a>    ulItemEnd = {.},</span>
+<span id="cb386-35"><a href="#cb386-35" aria-hidden="true"></a>    ulEnd = {<span class="kw">\end</span>{<span class="ex">itemize</span>}},</span>
+<span id="cb386-36"><a href="#cb386-36" aria-hidden="true"></a>  },</span>
+<span id="cb386-37"><a href="#cb386-37" aria-hidden="true"></a>}</span>
+<span id="cb386-38"><a href="#cb386-38" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb386-39"><a href="#cb386-39" aria-hidden="true"></a></span>
+<span id="cb386-40"><a href="#cb386-40" aria-hidden="true"></a>- This is the first item</span>
+<span id="cb386-41"><a href="#cb386-41" aria-hidden="true"></a></span>
+<span id="cb386-42"><a href="#cb386-42" aria-hidden="true"></a>- This is the second item</span>
+<span id="cb386-43"><a href="#cb386-43" aria-hidden="true"></a></span>
+<span id="cb386-44"><a href="#cb386-44" aria-hidden="true"></a>- This is the third item</span>
+<span id="cb386-45"><a href="#cb386-45" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb386-46"><a href="#cb386-46" aria-hidden="true"></a></span>
+<span id="cb386-47"><a href="#cb386-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="cb370"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb370-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></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="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>
@@ -4500,53 +4726,53 @@
 <li><p>This is the third item.</p></li>
 </ul>
 </blockquote>
-<h5 id="context-example-33" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb371"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb371-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb371-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionTightLists{true}</a>
-<a class="sourceLine" id="cb371-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb371-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb371-5" data-line-number="5"><span class="fu">\def</span>\markdownRendererInterblockSeparator{}</a>
-<a class="sourceLine" id="cb371-6" data-line-number="6"><span class="fu">\def</span>\markdownRendererUlBeginTight{ (}</a>
-<a class="sourceLine" id="cb371-7" data-line-number="7"><span class="fu">\def</span>\markdownRendererUlItem{<span class="co">%</span></a>
-<a class="sourceLine" id="cb371-8" data-line-number="8">  \def\markdownRendererUlItem{<span class="co">%</span></a>
-<a class="sourceLine" id="cb371-9" data-line-number="9">    ,</a>
-<a class="sourceLine" id="cb371-10" data-line-number="10">    \def\markdownRendererUlItem{, and }<span class="co">%</span></a>
-<a class="sourceLine" id="cb371-11" data-line-number="11">  }<span class="co">%</span></a>
-<a class="sourceLine" id="cb371-12" data-line-number="12">}</a>
-<a class="sourceLine" id="cb371-13" data-line-number="13"><span class="fu">\def</span>\markdownRendererUlItemEnd{}</a>
-<a class="sourceLine" id="cb371-14" data-line-number="14"><span class="fu">\def</span>\markdownRendererUlEndTight{).}</a>
-<a class="sourceLine" id="cb371-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb371-16" data-line-number="16"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb371-17" data-line-number="17">This is a tight list</a>
-<a class="sourceLine" id="cb371-18" data-line-number="18"></a>
-<a class="sourceLine" id="cb371-19" data-line-number="19">- the first item</a>
-<a class="sourceLine" id="cb371-20" data-line-number="20">- the second item</a>
-<a class="sourceLine" id="cb371-21" data-line-number="21">- the third item</a>
-<a class="sourceLine" id="cb371-22" data-line-number="22"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb371-23" data-line-number="23"></a>
-<a class="sourceLine" id="cb371-24" data-line-number="24"><span class="fu">\def</span>\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb371-25" data-line-number="25">  :\par</a>
-<a class="sourceLine" id="cb371-26" data-line-number="26">  \def\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb371-27" data-line-number="27">}</a>
-<a class="sourceLine" id="cb371-28" data-line-number="28"><span class="fu">\def</span>\markdownRendererUlBegin{\startitemize}</a>
-<a class="sourceLine" id="cb371-29" data-line-number="29"><span class="fu">\def</span>\markdownRendererUlItem{\item}</a>
-<a class="sourceLine" id="cb371-30" data-line-number="30"><span class="fu">\def</span>\markdownRendererUlItemEnd{.}</a>
-<a class="sourceLine" id="cb371-31" data-line-number="31"><span class="fu">\def</span>\markdownRendererUlEnd{\stopitemize}</a>
-<a class="sourceLine" id="cb371-32" data-line-number="32"></a>
-<a class="sourceLine" id="cb371-33" data-line-number="33"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb371-34" data-line-number="34">This is a loose list</a>
-<a class="sourceLine" id="cb371-35" data-line-number="35"></a>
-<a class="sourceLine" id="cb371-36" data-line-number="36">- This is the first item</a>
-<a class="sourceLine" id="cb371-37" data-line-number="37"></a>
-<a class="sourceLine" id="cb371-38" data-line-number="38">- This is the second item</a>
-<a class="sourceLine" id="cb371-39" data-line-number="39"></a>
-<a class="sourceLine" id="cb371-40" data-line-number="40">- This is the third item</a>
-<a class="sourceLine" id="cb371-41" data-line-number="41"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb371-42" data-line-number="42"></a>
-<a class="sourceLine" id="cb371-43" data-line-number="43"><span class="fu">\stoptext</span></a></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><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb388-2"><a href="#cb388-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
+<span id="cb388-3"><a href="#cb388-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb388-4"><a href="#cb388-4" aria-hidden="true"></a></span>
+<span id="cb388-5"><a href="#cb388-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb388-6"><a href="#cb388-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBeginTight</span>{ (}</span>
+<span id="cb388-7"><a href="#cb388-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
+<span id="cb388-8"><a href="#cb388-8" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererUlItem</span>{<span class="co">%</span></span>
+<span id="cb388-9"><a href="#cb388-9" aria-hidden="true"></a>    ,</span>
+<span id="cb388-10"><a href="#cb388-10" aria-hidden="true"></a>    <span class="fu">\def\markdownRendererUlItem</span>{, and }<span class="co">%</span></span>
+<span id="cb388-11"><a href="#cb388-11" aria-hidden="true"></a>  }<span class="co">%</span></span>
+<span id="cb388-12"><a href="#cb388-12" aria-hidden="true"></a>}</span>
+<span id="cb388-13"><a href="#cb388-13" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{}</span>
+<span id="cb388-14"><a href="#cb388-14" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEndTight</span>{).}</span>
+<span id="cb388-15"><a href="#cb388-15" aria-hidden="true"></a></span>
+<span id="cb388-16"><a href="#cb388-16" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb388-17"><a href="#cb388-17" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb388-18"><a href="#cb388-18" aria-hidden="true"></a></span>
+<span id="cb388-19"><a href="#cb388-19" aria-hidden="true"></a>- the first item</span>
+<span id="cb388-20"><a href="#cb388-20" aria-hidden="true"></a>- the second item</span>
+<span id="cb388-21"><a href="#cb388-21" aria-hidden="true"></a>- the third item</span>
+<span id="cb388-22"><a href="#cb388-22" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb388-23"><a href="#cb388-23" aria-hidden="true"></a></span>
+<span id="cb388-24"><a href="#cb388-24" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb388-25"><a href="#cb388-25" aria-hidden="true"></a>  :<span class="fu">\par</span></span>
+<span id="cb388-26"><a href="#cb388-26" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb388-27"><a href="#cb388-27" aria-hidden="true"></a>}</span>
+<span id="cb388-28"><a href="#cb388-28" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlBegin</span>{<span class="fu">\startitemize</span>}</span>
+<span id="cb388-29"><a href="#cb388-29" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItem</span>{<span class="fu">\item</span>}</span>
+<span id="cb388-30"><a href="#cb388-30" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlItemEnd</span>{.}</span>
+<span id="cb388-31"><a href="#cb388-31" aria-hidden="true"></a><span class="fu">\def\markdownRendererUlEnd</span>{<span class="fu">\stopitemize</span>}</span>
+<span id="cb388-32"><a href="#cb388-32" aria-hidden="true"></a></span>
+<span id="cb388-33"><a href="#cb388-33" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb388-34"><a href="#cb388-34" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb388-35"><a href="#cb388-35" aria-hidden="true"></a></span>
+<span id="cb388-36"><a href="#cb388-36" aria-hidden="true"></a>- This is the first item</span>
+<span id="cb388-37"><a href="#cb388-37" aria-hidden="true"></a></span>
+<span id="cb388-38"><a href="#cb388-38" aria-hidden="true"></a>- This is the second item</span>
+<span id="cb388-39"><a href="#cb388-39" aria-hidden="true"></a></span>
+<span id="cb388-40"><a href="#cb388-40" aria-hidden="true"></a>- This is the third item</span>
+<span id="cb388-41"><a href="#cb388-41" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb388-42"><a href="#cb388-42" aria-hidden="true"></a></span>
+<span id="cb388-43"><a href="#cb388-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="cb372"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb372-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<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">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>
@@ -4557,7 +4783,7 @@
 <li><p>This is the third item.</p></li>
 </ul>
 </blockquote>
-<h4 id="ordered-list-renderers"><span class="header-section-number">2.3.1.11</span> Ordered List Renderers</h4>
+<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>
 <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>
@@ -4565,70 +4791,70 @@
 <p>The <code>\markdownRendererOlItemWithNumber</code> macro represents an item in an ordered list. This macro will only be produced, when the <strong><code>startNumber</code></strong> option is enabled. The macro receives a single numeric argument that corresponds to the item number.</p>
 <p>The <code>\markdownRendererOlEnd</code> macro represents the end 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>\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 id="plain-tex-example-24" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb373"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb373-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb373-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionTightLists{true}</a>
-<a class="sourceLine" id="cb373-3" data-line-number="3"><span class="fu">\def</span>\markdownOptionStartNumber{true}</a>
-<a class="sourceLine" id="cb373-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb373-5" data-line-number="5"><span class="fu">\def</span>\markdownRendererInterblockSeparator{}</a>
-<a class="sourceLine" id="cb373-6" data-line-number="6"><span class="fu">\def</span>\markdownRendererOlBeginTight{ (}</a>
-<a class="sourceLine" id="cb373-7" data-line-number="7"><span class="fu">\def</span>\markdownRendererOlItemWithNumber#1{<span class="co">%</span></a>
-<a class="sourceLine" id="cb373-8" data-line-number="8">  \ifnum #1=1\relax</a>
-<a class="sourceLine" id="cb373-9" data-line-number="9">    the first</a>
-<a class="sourceLine" id="cb373-10" data-line-number="10">  \else</a>
-<a class="sourceLine" id="cb373-11" data-line-number="11">    \ifnum #1=2\relax</a>
-<a class="sourceLine" id="cb373-12" data-line-number="12">      , the second</a>
-<a class="sourceLine" id="cb373-13" data-line-number="13">    \else</a>
-<a class="sourceLine" id="cb373-14" data-line-number="14">      , and the third</a>
-<a class="sourceLine" id="cb373-15" data-line-number="15">    \fi</a>
-<a class="sourceLine" id="cb373-16" data-line-number="16">  \fi</a>
-<a class="sourceLine" id="cb373-17" data-line-number="17">}</a>
-<a class="sourceLine" id="cb373-18" data-line-number="18"><span class="fu">\def</span>\markdownRendererOlItemEnd{}</a>
-<a class="sourceLine" id="cb373-19" data-line-number="19"><span class="fu">\def</span>\markdownRendererOlEndTight{).}</a>
-<a class="sourceLine" id="cb373-20" data-line-number="20"></a>
-<a class="sourceLine" id="cb373-21" data-line-number="21"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb373-22" data-line-number="22">This is a tight list</a>
-<a class="sourceLine" id="cb373-23" data-line-number="23"></a>
-<a class="sourceLine" id="cb373-24" data-line-number="24">1. item</a>
-<a class="sourceLine" id="cb373-25" data-line-number="25">2. item</a>
-<a class="sourceLine" id="cb373-26" data-line-number="26">3. item</a>
-<a class="sourceLine" id="cb373-27" data-line-number="27"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb373-28" data-line-number="28"></a>
-<a class="sourceLine" id="cb373-29" data-line-number="29"><span class="fu">\def</span>\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb373-30" data-line-number="30">  :\par</a>
-<a class="sourceLine" id="cb373-31" data-line-number="31">  \def\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb373-32" data-line-number="32">}</a>
-<a class="sourceLine" id="cb373-33" data-line-number="33"><span class="fu">\def</span>\markdownRendererOlBegin{}</a>
-<a class="sourceLine" id="cb373-34" data-line-number="34"><span class="fu">\def</span>\markdownRendererOlItemWithNumber#1{<span class="co">%</span></a>
-<a class="sourceLine" id="cb373-35" data-line-number="35">  #1.\kern 0.5em<span class="co">%</span></a>
-<a class="sourceLine" id="cb373-36" data-line-number="36">  This is the</a>
-<a class="sourceLine" id="cb373-37" data-line-number="37">  \ifnum #1=1\relax</a>
-<a class="sourceLine" id="cb373-38" data-line-number="38">    first</a>
-<a class="sourceLine" id="cb373-39" data-line-number="39">  \else</a>
-<a class="sourceLine" id="cb373-40" data-line-number="40">    \ifnum #1=2\relax</a>
-<a class="sourceLine" id="cb373-41" data-line-number="41">      second</a>
-<a class="sourceLine" id="cb373-42" data-line-number="42">    \else</a>
-<a class="sourceLine" id="cb373-43" data-line-number="43">      third</a>
-<a class="sourceLine" id="cb373-44" data-line-number="44">    \fi</a>
-<a class="sourceLine" id="cb373-45" data-line-number="45">  \fi</a>
-<a class="sourceLine" id="cb373-46" data-line-number="46">}</a>
-<a class="sourceLine" id="cb373-47" data-line-number="47"><span class="fu">\def</span>\markdownRendererOlItemEnd{.\par}</a>
-<a class="sourceLine" id="cb373-48" data-line-number="48"><span class="fu">\def</span>\markdownRendererOlEnd{}</a>
-<a class="sourceLine" id="cb373-49" data-line-number="49"></a>
-<a class="sourceLine" id="cb373-50" data-line-number="50"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb373-51" data-line-number="51">This is a loose list</a>
-<a class="sourceLine" id="cb373-52" data-line-number="52"></a>
-<a class="sourceLine" id="cb373-53" data-line-number="53">1. item</a>
-<a class="sourceLine" id="cb373-54" data-line-number="54"></a>
-<a class="sourceLine" id="cb373-55" data-line-number="55">2. item</a>
-<a class="sourceLine" id="cb373-56" data-line-number="56"></a>
-<a class="sourceLine" id="cb373-57" data-line-number="57">3. item</a>
-<a class="sourceLine" id="cb373-58" data-line-number="58"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb373-59" data-line-number="59"></a>
-<a class="sourceLine" id="cb373-60" data-line-number="60"><span class="fu">\bye</span></a></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\markdownOptionTightLists</span>{true}</span>
+<span id="cb390-3"><a href="#cb390-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionStartNumber</span>{true}</span>
+<span id="cb390-4"><a href="#cb390-4" aria-hidden="true"></a></span>
+<span id="cb390-5"><a href="#cb390-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb390-6"><a href="#cb390-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBeginTight</span>{ (}</span>
+<span id="cb390-7"><a href="#cb390-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
+<span id="cb390-8"><a href="#cb390-8" aria-hidden="true"></a>  <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb390-9"><a href="#cb390-9" aria-hidden="true"></a>    the first</span>
+<span id="cb390-10"><a href="#cb390-10" aria-hidden="true"></a>  <span class="fu">\else</span></span>
+<span id="cb390-11"><a href="#cb390-11" aria-hidden="true"></a>    <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb390-12"><a href="#cb390-12" aria-hidden="true"></a>      , the second</span>
+<span id="cb390-13"><a href="#cb390-13" aria-hidden="true"></a>    <span class="fu">\else</span></span>
+<span id="cb390-14"><a href="#cb390-14" aria-hidden="true"></a>      , and the third</span>
+<span id="cb390-15"><a href="#cb390-15" aria-hidden="true"></a>    <span class="fu">\fi</span></span>
+<span id="cb390-16"><a href="#cb390-16" aria-hidden="true"></a>  <span class="fu">\fi</span></span>
+<span id="cb390-17"><a href="#cb390-17" aria-hidden="true"></a>}</span>
+<span id="cb390-18"><a href="#cb390-18" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{}</span>
+<span id="cb390-19"><a href="#cb390-19" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEndTight</span>{).}</span>
+<span id="cb390-20"><a href="#cb390-20" aria-hidden="true"></a></span>
+<span id="cb390-21"><a href="#cb390-21" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb390-22"><a href="#cb390-22" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb390-23"><a href="#cb390-23" aria-hidden="true"></a></span>
+<span id="cb390-24"><a href="#cb390-24" aria-hidden="true"></a>1. item</span>
+<span id="cb390-25"><a href="#cb390-25" aria-hidden="true"></a>2. item</span>
+<span id="cb390-26"><a href="#cb390-26" aria-hidden="true"></a>3. item</span>
+<span id="cb390-27"><a href="#cb390-27" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb390-28"><a href="#cb390-28" aria-hidden="true"></a></span>
+<span id="cb390-29"><a href="#cb390-29" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb390-30"><a href="#cb390-30" aria-hidden="true"></a>  :<span class="fu">\par</span></span>
+<span id="cb390-31"><a href="#cb390-31" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb390-32"><a href="#cb390-32" aria-hidden="true"></a>}</span>
+<span id="cb390-33"><a href="#cb390-33" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBegin</span>{}</span>
+<span id="cb390-34"><a href="#cb390-34" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
+<span id="cb390-35"><a href="#cb390-35" aria-hidden="true"></a>  #1.<span class="fu">\kern</span> 0.5em<span class="co">%</span></span>
+<span id="cb390-36"><a href="#cb390-36" aria-hidden="true"></a>  This is the</span>
+<span id="cb390-37"><a href="#cb390-37" aria-hidden="true"></a>  <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb390-38"><a href="#cb390-38" aria-hidden="true"></a>    first</span>
+<span id="cb390-39"><a href="#cb390-39" aria-hidden="true"></a>  <span class="fu">\else</span></span>
+<span id="cb390-40"><a href="#cb390-40" aria-hidden="true"></a>    <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb390-41"><a href="#cb390-41" aria-hidden="true"></a>      second</span>
+<span id="cb390-42"><a href="#cb390-42" aria-hidden="true"></a>    <span class="fu">\else</span></span>
+<span id="cb390-43"><a href="#cb390-43" aria-hidden="true"></a>      third</span>
+<span id="cb390-44"><a href="#cb390-44" aria-hidden="true"></a>    <span class="fu">\fi</span></span>
+<span id="cb390-45"><a href="#cb390-45" aria-hidden="true"></a>  <span class="fu">\fi</span></span>
+<span id="cb390-46"><a href="#cb390-46" aria-hidden="true"></a>}</span>
+<span id="cb390-47"><a href="#cb390-47" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{.<span class="fu">\par</span>}</span>
+<span id="cb390-48"><a href="#cb390-48" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEnd</span>{}</span>
+<span id="cb390-49"><a href="#cb390-49" aria-hidden="true"></a></span>
+<span id="cb390-50"><a href="#cb390-50" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb390-51"><a href="#cb390-51" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb390-52"><a href="#cb390-52" aria-hidden="true"></a></span>
+<span id="cb390-53"><a href="#cb390-53" aria-hidden="true"></a>1. item</span>
+<span id="cb390-54"><a href="#cb390-54" aria-hidden="true"></a></span>
+<span id="cb390-55"><a href="#cb390-55" aria-hidden="true"></a>2. item</span>
+<span id="cb390-56"><a href="#cb390-56" aria-hidden="true"></a></span>
+<span id="cb390-57"><a href="#cb390-57" aria-hidden="true"></a>3. item</span>
+<span id="cb390-58"><a href="#cb390-58" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb390-59"><a href="#cb390-59" aria-hidden="true"></a></span>
+<span id="cb390-60"><a href="#cb390-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="cb374"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb374-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<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">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>
@@ -4639,73 +4865,73 @@
 <li><p>This is the third item.</p></li>
 </ol>
 </blockquote>
-<h5 id="latex-example-42" class="unnumbered"><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="cb375"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb375-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb375-2" data-line-number="2"><span class="bu">\usepackage</span>[tightLists, startNumber]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb375-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb375-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb375-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</a>
-<a class="sourceLine" id="cb375-6" data-line-number="6">  renderers = {</a>
-<a class="sourceLine" id="cb375-7" data-line-number="7">    interblockSeparator = {},</a>
-<a class="sourceLine" id="cb375-8" data-line-number="8">    olBeginTight = { (},</a>
-<a class="sourceLine" id="cb375-9" data-line-number="9">    olItemWithNumber = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb375-10" data-line-number="10">      <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></a>
-<a class="sourceLine" id="cb375-11" data-line-number="11">        the first</a>
-<a class="sourceLine" id="cb375-12" data-line-number="12">      <span class="fu">\else</span></a>
-<a class="sourceLine" id="cb375-13" data-line-number="13">        <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></a>
-<a class="sourceLine" id="cb375-14" data-line-number="14">          , the second</a>
-<a class="sourceLine" id="cb375-15" data-line-number="15">        <span class="fu">\else</span></a>
-<a class="sourceLine" id="cb375-16" data-line-number="16">          , and the third</a>
-<a class="sourceLine" id="cb375-17" data-line-number="17">        <span class="fu">\fi</span></a>
-<a class="sourceLine" id="cb375-18" data-line-number="18">      <span class="fu">\fi</span></a>
-<a class="sourceLine" id="cb375-19" data-line-number="19">    },</a>
-<a class="sourceLine" id="cb375-20" data-line-number="20">    olItemEnd = {},</a>
-<a class="sourceLine" id="cb375-21" data-line-number="21">    olEndTight = {).},</a>
-<a class="sourceLine" id="cb375-22" data-line-number="22">  },</a>
-<a class="sourceLine" id="cb375-23" data-line-number="23">}</a>
-<a class="sourceLine" id="cb375-24" data-line-number="24">This is a tight list</a>
-<a class="sourceLine" id="cb375-25" data-line-number="25"></a>
-<a class="sourceLine" id="cb375-26" data-line-number="26">1. item</a>
-<a class="sourceLine" id="cb375-27" data-line-number="27">2. item</a>
-<a class="sourceLine" id="cb375-28" data-line-number="28">3. item</a>
-<a class="sourceLine" id="cb375-29" data-line-number="29"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb375-30" data-line-number="30"></a>
-<a class="sourceLine" id="cb375-31" data-line-number="31"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</a>
-<a class="sourceLine" id="cb375-32" data-line-number="32">  renderers = {</a>
-<a class="sourceLine" id="cb375-33" data-line-number="33">    interblockSeparator = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb375-34" data-line-number="34">      :<span class="fu">\par</span></a>
-<a class="sourceLine" id="cb375-35" data-line-number="35">      <span class="fu">\def</span>\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb375-36" data-line-number="36">    },</a>
-<a class="sourceLine" id="cb375-37" data-line-number="37">    olBeginTight = {<span class="kw">\begin</span>{<span class="ex">enumerate</span>}},</a>
-<a class="sourceLine" id="cb375-38" data-line-number="38">    olItemWithNumber = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb375-39" data-line-number="39">      <span class="fu">\item</span> This is the</a>
-<a class="sourceLine" id="cb375-40" data-line-number="40">      <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></a>
-<a class="sourceLine" id="cb375-41" data-line-number="41">        first</a>
-<a class="sourceLine" id="cb375-42" data-line-number="42">      <span class="fu">\else</span></a>
-<a class="sourceLine" id="cb375-43" data-line-number="43">        <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></a>
-<a class="sourceLine" id="cb375-44" data-line-number="44">          second</a>
-<a class="sourceLine" id="cb375-45" data-line-number="45">        <span class="fu">\else</span></a>
-<a class="sourceLine" id="cb375-46" data-line-number="46">          third</a>
-<a class="sourceLine" id="cb375-47" data-line-number="47">        <span class="fu">\fi</span></a>
-<a class="sourceLine" id="cb375-48" data-line-number="48">      <span class="fu">\fi</span></a>
-<a class="sourceLine" id="cb375-49" data-line-number="49">    },</a>
-<a class="sourceLine" id="cb375-50" data-line-number="50">    olItemEnd = {.},</a>
-<a class="sourceLine" id="cb375-51" data-line-number="51">    olEnd = {<span class="kw">\end</span>{<span class="ex">enumerate</span>}},</a>
-<a class="sourceLine" id="cb375-52" data-line-number="52">  },</a>
-<a class="sourceLine" id="cb375-53" data-line-number="53">}</a>
-<a class="sourceLine" id="cb375-54" data-line-number="54">This is a loose list</a>
-<a class="sourceLine" id="cb375-55" data-line-number="55"></a>
-<a class="sourceLine" id="cb375-56" data-line-number="56">1. item</a>
-<a class="sourceLine" id="cb375-57" data-line-number="57"></a>
-<a class="sourceLine" id="cb375-58" data-line-number="58">2. item</a>
-<a class="sourceLine" id="cb375-59" data-line-number="59"></a>
-<a class="sourceLine" id="cb375-60" data-line-number="60">3. item</a>
-<a class="sourceLine" id="cb375-61" data-line-number="61"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb375-62" data-line-number="62"></a>
-<a class="sourceLine" id="cb375-63" data-line-number="63"><span class="kw">\end</span>{<span class="ex">document</span>}</a></code></pre></div>
+<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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb392-2"><a href="#cb392-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[tightLists, startNumber]{<span class="ex">markdown</span>}</span>
+<span id="cb392-3"><a href="#cb392-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb392-4"><a href="#cb392-4" aria-hidden="true"></a></span>
+<span id="cb392-5"><a href="#cb392-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb392-6"><a href="#cb392-6" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb392-7"><a href="#cb392-7" aria-hidden="true"></a>    interblockSeparator = {},</span>
+<span id="cb392-8"><a href="#cb392-8" aria-hidden="true"></a>    olBeginTight = { (},</span>
+<span id="cb392-9"><a href="#cb392-9" aria-hidden="true"></a>    olItemWithNumber = {<span class="co">%</span></span>
+<span id="cb392-10"><a href="#cb392-10" aria-hidden="true"></a>      <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb392-11"><a href="#cb392-11" aria-hidden="true"></a>        the first</span>
+<span id="cb392-12"><a href="#cb392-12" aria-hidden="true"></a>      <span class="fu">\else</span></span>
+<span id="cb392-13"><a href="#cb392-13" aria-hidden="true"></a>        <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb392-14"><a href="#cb392-14" aria-hidden="true"></a>          , the second</span>
+<span id="cb392-15"><a href="#cb392-15" aria-hidden="true"></a>        <span class="fu">\else</span></span>
+<span id="cb392-16"><a href="#cb392-16" aria-hidden="true"></a>          , and the third</span>
+<span id="cb392-17"><a href="#cb392-17" aria-hidden="true"></a>        <span class="fu">\fi</span></span>
+<span id="cb392-18"><a href="#cb392-18" aria-hidden="true"></a>      <span class="fu">\fi</span></span>
+<span id="cb392-19"><a href="#cb392-19" aria-hidden="true"></a>    },</span>
+<span id="cb392-20"><a href="#cb392-20" aria-hidden="true"></a>    olItemEnd = {},</span>
+<span id="cb392-21"><a href="#cb392-21" aria-hidden="true"></a>    olEndTight = {).},</span>
+<span id="cb392-22"><a href="#cb392-22" aria-hidden="true"></a>  },</span>
+<span id="cb392-23"><a href="#cb392-23" aria-hidden="true"></a>}</span>
+<span id="cb392-24"><a href="#cb392-24" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb392-25"><a href="#cb392-25" aria-hidden="true"></a></span>
+<span id="cb392-26"><a href="#cb392-26" aria-hidden="true"></a>1. item</span>
+<span id="cb392-27"><a href="#cb392-27" aria-hidden="true"></a>2. item</span>
+<span id="cb392-28"><a href="#cb392-28" aria-hidden="true"></a>3. item</span>
+<span id="cb392-29"><a href="#cb392-29" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb392-30"><a href="#cb392-30" aria-hidden="true"></a></span>
+<span id="cb392-31"><a href="#cb392-31" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb392-32"><a href="#cb392-32" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb392-33"><a href="#cb392-33" aria-hidden="true"></a>    interblockSeparator = {<span class="co">%</span></span>
+<span id="cb392-34"><a href="#cb392-34" aria-hidden="true"></a>      :<span class="fu">\par</span></span>
+<span id="cb392-35"><a href="#cb392-35" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb392-36"><a href="#cb392-36" aria-hidden="true"></a>    },</span>
+<span id="cb392-37"><a href="#cb392-37" aria-hidden="true"></a>    olBeginTight = {<span class="kw">\begin</span>{<span class="ex">enumerate</span>}},</span>
+<span id="cb392-38"><a href="#cb392-38" aria-hidden="true"></a>    olItemWithNumber = {<span class="co">%</span></span>
+<span id="cb392-39"><a href="#cb392-39" aria-hidden="true"></a>      <span class="fu">\item</span> This is the</span>
+<span id="cb392-40"><a href="#cb392-40" aria-hidden="true"></a>      <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb392-41"><a href="#cb392-41" aria-hidden="true"></a>        first</span>
+<span id="cb392-42"><a href="#cb392-42" aria-hidden="true"></a>      <span class="fu">\else</span></span>
+<span id="cb392-43"><a href="#cb392-43" aria-hidden="true"></a>        <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb392-44"><a href="#cb392-44" aria-hidden="true"></a>          second</span>
+<span id="cb392-45"><a href="#cb392-45" aria-hidden="true"></a>        <span class="fu">\else</span></span>
+<span id="cb392-46"><a href="#cb392-46" aria-hidden="true"></a>          third</span>
+<span id="cb392-47"><a href="#cb392-47" aria-hidden="true"></a>        <span class="fu">\fi</span></span>
+<span id="cb392-48"><a href="#cb392-48" aria-hidden="true"></a>      <span class="fu">\fi</span></span>
+<span id="cb392-49"><a href="#cb392-49" aria-hidden="true"></a>    },</span>
+<span id="cb392-50"><a href="#cb392-50" aria-hidden="true"></a>    olItemEnd = {.},</span>
+<span id="cb392-51"><a href="#cb392-51" aria-hidden="true"></a>    olEnd = {<span class="kw">\end</span>{<span class="ex">enumerate</span>}},</span>
+<span id="cb392-52"><a href="#cb392-52" aria-hidden="true"></a>  },</span>
+<span id="cb392-53"><a href="#cb392-53" aria-hidden="true"></a>}</span>
+<span id="cb392-54"><a href="#cb392-54" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb392-55"><a href="#cb392-55" aria-hidden="true"></a></span>
+<span id="cb392-56"><a href="#cb392-56" aria-hidden="true"></a>1. item</span>
+<span id="cb392-57"><a href="#cb392-57" aria-hidden="true"></a></span>
+<span id="cb392-58"><a href="#cb392-58" aria-hidden="true"></a>2. item</span>
+<span id="cb392-59"><a href="#cb392-59" aria-hidden="true"></a></span>
+<span id="cb392-60"><a href="#cb392-60" aria-hidden="true"></a>3. item</span>
+<span id="cb392-61"><a href="#cb392-61" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb392-62"><a href="#cb392-62" aria-hidden="true"></a></span>
+<span id="cb392-63"><a href="#cb392-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="cb376"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb376-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb393"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb393-1"><a href="#cb393-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>
@@ -4716,71 +4942,71 @@
 <li><p>This is the third item.</p></li>
 </ol>
 </blockquote>
-<h5 id="context-example-34" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb377"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb377-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb377-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionTightLists{true}</a>
-<a class="sourceLine" id="cb377-3" data-line-number="3"><span class="fu">\def</span>\markdownOptionStartNumber{true}</a>
-<a class="sourceLine" id="cb377-4" data-line-number="4"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb377-5" data-line-number="5"></a>
-<a class="sourceLine" id="cb377-6" data-line-number="6"><span class="fu">\def</span>\markdownRendererInterblockSeparator{}</a>
-<a class="sourceLine" id="cb377-7" data-line-number="7"><span class="fu">\def</span>\markdownRendererOlBeginTight{ (}</a>
-<a class="sourceLine" id="cb377-8" data-line-number="8"><span class="fu">\def</span>\markdownRendererOlItemWithNumber#1{<span class="co">%</span></a>
-<a class="sourceLine" id="cb377-9" data-line-number="9">  \ifnum #1=1\relax</a>
-<a class="sourceLine" id="cb377-10" data-line-number="10">    the first</a>
-<a class="sourceLine" id="cb377-11" data-line-number="11">  \else</a>
-<a class="sourceLine" id="cb377-12" data-line-number="12">    \ifnum #1=2\relax</a>
-<a class="sourceLine" id="cb377-13" data-line-number="13">      , the second</a>
-<a class="sourceLine" id="cb377-14" data-line-number="14">    \else</a>
-<a class="sourceLine" id="cb377-15" data-line-number="15">      , and the third</a>
-<a class="sourceLine" id="cb377-16" data-line-number="16">    \fi</a>
-<a class="sourceLine" id="cb377-17" data-line-number="17">  \fi</a>
-<a class="sourceLine" id="cb377-18" data-line-number="18">}</a>
-<a class="sourceLine" id="cb377-19" data-line-number="19"><span class="fu">\def</span>\markdownRendererOlItemEnd{}</a>
-<a class="sourceLine" id="cb377-20" data-line-number="20"><span class="fu">\def</span>\markdownRendererOlEndTight{).}</a>
-<a class="sourceLine" id="cb377-21" data-line-number="21"></a>
-<a class="sourceLine" id="cb377-22" data-line-number="22"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb377-23" data-line-number="23">This is a tight list</a>
-<a class="sourceLine" id="cb377-24" data-line-number="24"></a>
-<a class="sourceLine" id="cb377-25" data-line-number="25">1. item</a>
-<a class="sourceLine" id="cb377-26" data-line-number="26">2. item</a>
-<a class="sourceLine" id="cb377-27" data-line-number="27">3. item</a>
-<a class="sourceLine" id="cb377-28" data-line-number="28"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb377-29" data-line-number="29"></a>
-<a class="sourceLine" id="cb377-30" data-line-number="30"><span class="fu">\def</span>\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb377-31" data-line-number="31">  :\par</a>
-<a class="sourceLine" id="cb377-32" data-line-number="32">  \def\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb377-33" data-line-number="33">}</a>
-<a class="sourceLine" id="cb377-34" data-line-number="34"><span class="fu">\def</span>\markdownRendererOlBegin{\startitemize}</a>
-<a class="sourceLine" id="cb377-35" data-line-number="35"><span class="fu">\def</span>\markdownRendererOlItemWithNumber#1{<span class="co">%</span></a>
-<a class="sourceLine" id="cb377-36" data-line-number="36">  \sym{#1.}</a>
-<a class="sourceLine" id="cb377-37" data-line-number="37">  This is the</a>
-<a class="sourceLine" id="cb377-38" data-line-number="38">  \ifnum #1=1\relax</a>
-<a class="sourceLine" id="cb377-39" data-line-number="39">    first</a>
-<a class="sourceLine" id="cb377-40" data-line-number="40">  \else</a>
-<a class="sourceLine" id="cb377-41" data-line-number="41">    \ifnum #1=2\relax</a>
-<a class="sourceLine" id="cb377-42" data-line-number="42">      second</a>
-<a class="sourceLine" id="cb377-43" data-line-number="43">    \else</a>
-<a class="sourceLine" id="cb377-44" data-line-number="44">      third</a>
-<a class="sourceLine" id="cb377-45" data-line-number="45">    \fi</a>
-<a class="sourceLine" id="cb377-46" data-line-number="46">  \fi</a>
-<a class="sourceLine" id="cb377-47" data-line-number="47">}</a>
-<a class="sourceLine" id="cb377-48" data-line-number="48"><span class="fu">\def</span>\markdownRendererOlItemEnd{.\par}</a>
-<a class="sourceLine" id="cb377-49" data-line-number="49"><span class="fu">\def</span>\markdownRendererOlEnd{\stopitemize}</a>
-<a class="sourceLine" id="cb377-50" data-line-number="50"></a>
-<a class="sourceLine" id="cb377-51" data-line-number="51"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb377-52" data-line-number="52">This is a loose list</a>
-<a class="sourceLine" id="cb377-53" data-line-number="53"></a>
-<a class="sourceLine" id="cb377-54" data-line-number="54">1. item</a>
-<a class="sourceLine" id="cb377-55" data-line-number="55"></a>
-<a class="sourceLine" id="cb377-56" data-line-number="56">2. item</a>
-<a class="sourceLine" id="cb377-57" data-line-number="57"></a>
-<a class="sourceLine" id="cb377-58" data-line-number="58">3. item</a>
-<a class="sourceLine" id="cb377-59" data-line-number="59"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb377-60" data-line-number="60"></a>
-<a class="sourceLine" id="cb377-61" data-line-number="61"><span class="fu">\stoptext</span></a></code></pre></div>
+<div class="sourceCode" id="cb394"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb394-1"><a href="#cb394-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb394-2"><a href="#cb394-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
+<span id="cb394-3"><a href="#cb394-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionStartNumber</span>{true}</span>
+<span id="cb394-4"><a href="#cb394-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb394-5"><a href="#cb394-5" aria-hidden="true"></a></span>
+<span id="cb394-6"><a href="#cb394-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb394-7"><a href="#cb394-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBeginTight</span>{ (}</span>
+<span id="cb394-8"><a href="#cb394-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
+<span id="cb394-9"><a href="#cb394-9" aria-hidden="true"></a>  <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb394-10"><a href="#cb394-10" aria-hidden="true"></a>    the first</span>
+<span id="cb394-11"><a href="#cb394-11" aria-hidden="true"></a>  <span class="fu">\else</span></span>
+<span id="cb394-12"><a href="#cb394-12" aria-hidden="true"></a>    <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb394-13"><a href="#cb394-13" aria-hidden="true"></a>      , the second</span>
+<span id="cb394-14"><a href="#cb394-14" aria-hidden="true"></a>    <span class="fu">\else</span></span>
+<span id="cb394-15"><a href="#cb394-15" aria-hidden="true"></a>      , and the third</span>
+<span id="cb394-16"><a href="#cb394-16" aria-hidden="true"></a>    <span class="fu">\fi</span></span>
+<span id="cb394-17"><a href="#cb394-17" aria-hidden="true"></a>  <span class="fu">\fi</span></span>
+<span id="cb394-18"><a href="#cb394-18" aria-hidden="true"></a>}</span>
+<span id="cb394-19"><a href="#cb394-19" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{}</span>
+<span id="cb394-20"><a href="#cb394-20" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEndTight</span>{).}</span>
+<span id="cb394-21"><a href="#cb394-21" aria-hidden="true"></a></span>
+<span id="cb394-22"><a href="#cb394-22" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb394-23"><a href="#cb394-23" aria-hidden="true"></a>This is a tight list</span>
+<span id="cb394-24"><a href="#cb394-24" aria-hidden="true"></a></span>
+<span id="cb394-25"><a href="#cb394-25" aria-hidden="true"></a>1. item</span>
+<span id="cb394-26"><a href="#cb394-26" aria-hidden="true"></a>2. item</span>
+<span id="cb394-27"><a href="#cb394-27" aria-hidden="true"></a>3. item</span>
+<span id="cb394-28"><a href="#cb394-28" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb394-29"><a href="#cb394-29" aria-hidden="true"></a></span>
+<span id="cb394-30"><a href="#cb394-30" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb394-31"><a href="#cb394-31" aria-hidden="true"></a>  :<span class="fu">\par</span></span>
+<span id="cb394-32"><a href="#cb394-32" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb394-33"><a href="#cb394-33" aria-hidden="true"></a>}</span>
+<span id="cb394-34"><a href="#cb394-34" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlBegin</span>{<span class="fu">\startitemize</span>}</span>
+<span id="cb394-35"><a href="#cb394-35" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemWithNumber</span>#1{<span class="co">%</span></span>
+<span id="cb394-36"><a href="#cb394-36" aria-hidden="true"></a>  <span class="fu">\sym</span>{#1.}</span>
+<span id="cb394-37"><a href="#cb394-37" aria-hidden="true"></a>  This is the</span>
+<span id="cb394-38"><a href="#cb394-38" aria-hidden="true"></a>  <span class="fu">\ifnum</span> #1=1<span class="fu">\relax</span></span>
+<span id="cb394-39"><a href="#cb394-39" aria-hidden="true"></a>    first</span>
+<span id="cb394-40"><a href="#cb394-40" aria-hidden="true"></a>  <span class="fu">\else</span></span>
+<span id="cb394-41"><a href="#cb394-41" aria-hidden="true"></a>    <span class="fu">\ifnum</span> #1=2<span class="fu">\relax</span></span>
+<span id="cb394-42"><a href="#cb394-42" aria-hidden="true"></a>      second</span>
+<span id="cb394-43"><a href="#cb394-43" aria-hidden="true"></a>    <span class="fu">\else</span></span>
+<span id="cb394-44"><a href="#cb394-44" aria-hidden="true"></a>      third</span>
+<span id="cb394-45"><a href="#cb394-45" aria-hidden="true"></a>    <span class="fu">\fi</span></span>
+<span id="cb394-46"><a href="#cb394-46" aria-hidden="true"></a>  <span class="fu">\fi</span></span>
+<span id="cb394-47"><a href="#cb394-47" aria-hidden="true"></a>}</span>
+<span id="cb394-48"><a href="#cb394-48" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlItemEnd</span>{.<span class="fu">\par</span>}</span>
+<span id="cb394-49"><a href="#cb394-49" aria-hidden="true"></a><span class="fu">\def\markdownRendererOlEnd</span>{<span class="fu">\stopitemize</span>}</span>
+<span id="cb394-50"><a href="#cb394-50" aria-hidden="true"></a></span>
+<span id="cb394-51"><a href="#cb394-51" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb394-52"><a href="#cb394-52" aria-hidden="true"></a>This is a loose list</span>
+<span id="cb394-53"><a href="#cb394-53" aria-hidden="true"></a></span>
+<span id="cb394-54"><a href="#cb394-54" aria-hidden="true"></a>1. item</span>
+<span id="cb394-55"><a href="#cb394-55" aria-hidden="true"></a></span>
+<span id="cb394-56"><a href="#cb394-56" aria-hidden="true"></a>2. item</span>
+<span id="cb394-57"><a href="#cb394-57" aria-hidden="true"></a></span>
+<span id="cb394-58"><a href="#cb394-58" aria-hidden="true"></a>3. item</span>
+<span id="cb394-59"><a href="#cb394-59" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb394-60"><a href="#cb394-60" aria-hidden="true"></a></span>
+<span id="cb394-61"><a href="#cb394-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="cb378"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb378-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb395"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb395-1"><a href="#cb395-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>
@@ -4791,7 +5017,7 @@
 <li><p>This is the third item.</p></li>
 </ol>
 </blockquote>
-<h4 id="definition-list-renderers"><span class="header-section-number">2.3.1.12</span> Definition List Renderers</h4>
+<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>
 <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>
@@ -4801,88 +5027,88 @@
 <p>The <code>\markdownRendererDlDefinitionEnd</code> macro represents the end of a definition in a definition list. There can be several definitions for a single term.</p>
 <p>The <code>\markdownRendererDlEnd</code> macro represents the end 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>\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 id="plain-tex-example-25" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb379"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb379-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb379-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionDefinitionLists{true}</a>
-<a class="sourceLine" id="cb379-3" data-line-number="3"><span class="fu">\def</span>\markdownOptionTightLists{true}</a>
-<a class="sourceLine" id="cb379-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb379-5" data-line-number="5"><span class="fu">\def</span>\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-6" data-line-number="6">  :<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-7" data-line-number="7">  \def\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-8" data-line-number="8">}</a>
-<a class="sourceLine" id="cb379-9" data-line-number="9"><span class="fu">\def</span>\markdownRendererDlBeginTight{<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-10" data-line-number="10">  \begingroup</a>
-<a class="sourceLine" id="cb379-11" data-line-number="11">  \parindent=0pt</a>
-<a class="sourceLine" id="cb379-12" data-line-number="12">}</a>
-<a class="sourceLine" id="cb379-13" data-line-number="13"><span class="fu">\def</span>\markdownRendererDlItem#1{<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-14" data-line-number="14">  \par{\bf#1}<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-15" data-line-number="15">  \def\markdownRendererDlDefinitionEnd{<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-16" data-line-number="16">    ,</a>
-<a class="sourceLine" id="cb379-17" data-line-number="17">    \def\markdownRendererDlDefinitionEnd{<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-18" data-line-number="18">      , and</a>
-<a class="sourceLine" id="cb379-19" data-line-number="19">      \def\markdownRendererDlDefinitionEnd{.}<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-20" data-line-number="20">    }<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-21" data-line-number="21">  }<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-22" data-line-number="22">}</a>
-<a class="sourceLine" id="cb379-23" data-line-number="23"><span class="fu">\def</span>\markdownRendererDlItemEnd{}</a>
-<a class="sourceLine" id="cb379-24" data-line-number="24"><span class="fu">\def</span>\markdownRendererDlDefinitionBegin{\par--\kern 0.5em}</a>
-<a class="sourceLine" id="cb379-25" data-line-number="25"><span class="fu">\def</span>\markdownRendererDlEndTight{\endgroup}</a>
-<a class="sourceLine" id="cb379-26" data-line-number="26"></a>
-<a class="sourceLine" id="cb379-27" data-line-number="27"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb379-28" data-line-number="28">This is a tight definition list</a>
-<a class="sourceLine" id="cb379-29" data-line-number="29"></a>
-<a class="sourceLine" id="cb379-30" data-line-number="30">Coffee</a>
-<a class="sourceLine" id="cb379-31" data-line-number="31">:   black hot drink</a>
-<a class="sourceLine" id="cb379-32" data-line-number="32">:   prepared from roasted coffee beans</a>
-<a class="sourceLine" id="cb379-33" data-line-number="33">:   one of the most traded agricultural commodities in the world</a>
-<a class="sourceLine" id="cb379-34" data-line-number="34"></a>
-<a class="sourceLine" id="cb379-35" data-line-number="35">Milk</a>
-<a class="sourceLine" id="cb379-36" data-line-number="36">:   white cold drink</a>
-<a class="sourceLine" id="cb379-37" data-line-number="37">:   nutrient-rich</a>
-<a class="sourceLine" id="cb379-38" data-line-number="38">:   produced on an industrial scale</a>
-<a class="sourceLine" id="cb379-39" data-line-number="39"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb379-40" data-line-number="40"></a>
-<a class="sourceLine" id="cb379-41" data-line-number="41"><span class="fu">\def</span>\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-42" data-line-number="42">  \def\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-43" data-line-number="43">}</a>
-<a class="sourceLine" id="cb379-44" data-line-number="44"><span class="fu">\def</span>\markdownRendererDlBegin{}</a>
-<a class="sourceLine" id="cb379-45" data-line-number="45"><span class="fu">\def</span>\markdownRendererDlItem#1{<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-46" data-line-number="46">  . #1 is a</a>
-<a class="sourceLine" id="cb379-47" data-line-number="47">  \def\markdownRendererDlDefinitionBegin{<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-48" data-line-number="48">    \def\markdownRendererDlDefinitionBegin{<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-49" data-line-number="49">      ,</a>
-<a class="sourceLine" id="cb379-50" data-line-number="50">      \def\markdownRendererDlDefinitionBegin{, and }<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-51" data-line-number="51">    }<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-52" data-line-number="52">  }<span class="co">%</span></a>
-<a class="sourceLine" id="cb379-53" data-line-number="53">}</a>
-<a class="sourceLine" id="cb379-54" data-line-number="54"><span class="fu">\def</span>\markdownRendererDlItemEnd{}</a>
-<a class="sourceLine" id="cb379-55" data-line-number="55"><span class="fu">\def</span>\markdownRendererDlDefinitionEnd{}</a>
-<a class="sourceLine" id="cb379-56" data-line-number="56"><span class="fu">\def</span>\markdownRendererDlEnd{.}</a>
-<a class="sourceLine" id="cb379-57" data-line-number="57"></a>
-<a class="sourceLine" id="cb379-58" data-line-number="58"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb379-59" data-line-number="59">This is a loose definition list</a>
-<a class="sourceLine" id="cb379-60" data-line-number="60"></a>
-<a class="sourceLine" id="cb379-61" data-line-number="61">Coffee</a>
-<a class="sourceLine" id="cb379-62" data-line-number="62"></a>
-<a class="sourceLine" id="cb379-63" data-line-number="63">:   black hot drink</a>
-<a class="sourceLine" id="cb379-64" data-line-number="64"></a>
-<a class="sourceLine" id="cb379-65" data-line-number="65">:   prepared from roasted coffee beans</a>
-<a class="sourceLine" id="cb379-66" data-line-number="66"></a>
-<a class="sourceLine" id="cb379-67" data-line-number="67">:   one of the most traded agricultural commodities in the world</a>
-<a class="sourceLine" id="cb379-68" data-line-number="68"></a>
-<a class="sourceLine" id="cb379-69" data-line-number="69">Milk</a>
-<a class="sourceLine" id="cb379-70" data-line-number="70"></a>
-<a class="sourceLine" id="cb379-71" data-line-number="71">:   white cold drink</a>
-<a class="sourceLine" id="cb379-72" data-line-number="72"></a>
-<a class="sourceLine" id="cb379-73" data-line-number="73">:   nutrient-rich</a>
-<a class="sourceLine" id="cb379-74" data-line-number="74"></a>
-<a class="sourceLine" id="cb379-75" data-line-number="75">:   produced on an industrial scale</a>
-<a class="sourceLine" id="cb379-76" data-line-number="76"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb379-77" data-line-number="77"></a>
-<a class="sourceLine" id="cb379-78" data-line-number="78"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb396"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb396-1"><a href="#cb396-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb396-2"><a href="#cb396-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionDefinitionLists</span>{true}</span>
+<span id="cb396-3"><a href="#cb396-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
+<span id="cb396-4"><a href="#cb396-4" aria-hidden="true"></a></span>
+<span id="cb396-5"><a href="#cb396-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb396-6"><a href="#cb396-6" aria-hidden="true"></a>  :<span class="co">%</span></span>
+<span id="cb396-7"><a href="#cb396-7" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb396-8"><a href="#cb396-8" aria-hidden="true"></a>}</span>
+<span id="cb396-9"><a href="#cb396-9" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBeginTight</span>{<span class="co">%</span></span>
+<span id="cb396-10"><a href="#cb396-10" aria-hidden="true"></a>  <span class="fu">\begingroup</span></span>
+<span id="cb396-11"><a href="#cb396-11" aria-hidden="true"></a>  <span class="fu">\parindent</span>=0pt</span>
+<span id="cb396-12"><a href="#cb396-12" aria-hidden="true"></a>}</span>
+<span id="cb396-13"><a href="#cb396-13" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
+<span id="cb396-14"><a href="#cb396-14" aria-hidden="true"></a>  <span class="fu">\par</span>{<span class="fu">\bf</span>#1}<span class="co">%</span></span>
+<span id="cb396-15"><a href="#cb396-15" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb396-16"><a href="#cb396-16" aria-hidden="true"></a>    ,</span>
+<span id="cb396-17"><a href="#cb396-17" aria-hidden="true"></a>    <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb396-18"><a href="#cb396-18" aria-hidden="true"></a>      , and</span>
+<span id="cb396-19"><a href="#cb396-19" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{.}<span class="co">%</span></span>
+<span id="cb396-20"><a href="#cb396-20" aria-hidden="true"></a>    }<span class="co">%</span></span>
+<span id="cb396-21"><a href="#cb396-21" aria-hidden="true"></a>  }<span class="co">%</span></span>
+<span id="cb396-22"><a href="#cb396-22" aria-hidden="true"></a>}</span>
+<span id="cb396-23"><a href="#cb396-23" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{}</span>
+<span id="cb396-24"><a href="#cb396-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="cb396-25"><a href="#cb396-25" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEndTight</span>{<span class="fu">\endgroup</span>}</span>
+<span id="cb396-26"><a href="#cb396-26" aria-hidden="true"></a></span>
+<span id="cb396-27"><a href="#cb396-27" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb396-28"><a href="#cb396-28" aria-hidden="true"></a>This is a tight definition list</span>
+<span id="cb396-29"><a href="#cb396-29" aria-hidden="true"></a></span>
+<span id="cb396-30"><a href="#cb396-30" aria-hidden="true"></a>Coffee</span>
+<span id="cb396-31"><a href="#cb396-31" aria-hidden="true"></a>:   black hot drink</span>
+<span id="cb396-32"><a href="#cb396-32" aria-hidden="true"></a>:   prepared from roasted coffee beans</span>
+<span id="cb396-33"><a href="#cb396-33" aria-hidden="true"></a>:   one of the most traded agricultural commodities in the world</span>
+<span id="cb396-34"><a href="#cb396-34" aria-hidden="true"></a></span>
+<span id="cb396-35"><a href="#cb396-35" aria-hidden="true"></a>Milk</span>
+<span id="cb396-36"><a href="#cb396-36" aria-hidden="true"></a>:   white cold drink</span>
+<span id="cb396-37"><a href="#cb396-37" aria-hidden="true"></a>:   nutrient-rich</span>
+<span id="cb396-38"><a href="#cb396-38" aria-hidden="true"></a>:   produced on an industrial scale</span>
+<span id="cb396-39"><a href="#cb396-39" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb396-40"><a href="#cb396-40" aria-hidden="true"></a></span>
+<span id="cb396-41"><a href="#cb396-41" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb396-42"><a href="#cb396-42" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb396-43"><a href="#cb396-43" aria-hidden="true"></a>}</span>
+<span id="cb396-44"><a href="#cb396-44" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBegin</span>{}</span>
+<span id="cb396-45"><a href="#cb396-45" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
+<span id="cb396-46"><a href="#cb396-46" aria-hidden="true"></a>  . #1 is a</span>
+<span id="cb396-47"><a href="#cb396-47" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb396-48"><a href="#cb396-48" aria-hidden="true"></a>    <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb396-49"><a href="#cb396-49" aria-hidden="true"></a>      ,</span>
+<span id="cb396-50"><a href="#cb396-50" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{, and }<span class="co">%</span></span>
+<span id="cb396-51"><a href="#cb396-51" aria-hidden="true"></a>    }<span class="co">%</span></span>
+<span id="cb396-52"><a href="#cb396-52" aria-hidden="true"></a>  }<span class="co">%</span></span>
+<span id="cb396-53"><a href="#cb396-53" aria-hidden="true"></a>}</span>
+<span id="cb396-54"><a href="#cb396-54" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{}</span>
+<span id="cb396-55"><a href="#cb396-55" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlDefinitionEnd</span>{}</span>
+<span id="cb396-56"><a href="#cb396-56" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEnd</span>{.}</span>
+<span id="cb396-57"><a href="#cb396-57" aria-hidden="true"></a></span>
+<span id="cb396-58"><a href="#cb396-58" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb396-59"><a href="#cb396-59" aria-hidden="true"></a>This is a loose definition list</span>
+<span id="cb396-60"><a href="#cb396-60" aria-hidden="true"></a></span>
+<span id="cb396-61"><a href="#cb396-61" aria-hidden="true"></a>Coffee</span>
+<span id="cb396-62"><a href="#cb396-62" aria-hidden="true"></a></span>
+<span id="cb396-63"><a href="#cb396-63" aria-hidden="true"></a>:   black hot drink</span>
+<span id="cb396-64"><a href="#cb396-64" aria-hidden="true"></a></span>
+<span id="cb396-65"><a href="#cb396-65" aria-hidden="true"></a>:   prepared from roasted coffee beans</span>
+<span id="cb396-66"><a href="#cb396-66" aria-hidden="true"></a></span>
+<span id="cb396-67"><a href="#cb396-67" aria-hidden="true"></a>:   one of the most traded agricultural commodities in the world</span>
+<span id="cb396-68"><a href="#cb396-68" aria-hidden="true"></a></span>
+<span id="cb396-69"><a href="#cb396-69" aria-hidden="true"></a>Milk</span>
+<span id="cb396-70"><a href="#cb396-70" aria-hidden="true"></a></span>
+<span id="cb396-71"><a href="#cb396-71" aria-hidden="true"></a>:   white cold drink</span>
+<span id="cb396-72"><a href="#cb396-72" aria-hidden="true"></a></span>
+<span id="cb396-73"><a href="#cb396-73" aria-hidden="true"></a>:   nutrient-rich</span>
+<span id="cb396-74"><a href="#cb396-74" aria-hidden="true"></a></span>
+<span id="cb396-75"><a href="#cb396-75" aria-hidden="true"></a>:   produced on an industrial scale</span>
+<span id="cb396-76"><a href="#cb396-76" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb396-77"><a href="#cb396-77" aria-hidden="true"></a></span>
+<span id="cb396-78"><a href="#cb396-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="cb380"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb380-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></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">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>
@@ -4900,90 +5126,90 @@
 </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 id="latex-example-43" class="unnumbered"><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="cb381"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb381-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb381-2" data-line-number="2"><span class="bu">\usepackage</span>[definitionLists, tightLists]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb381-3" data-line-number="3"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb381-4" data-line-number="4"></a>
-<a class="sourceLine" id="cb381-5" data-line-number="5"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</a>
-<a class="sourceLine" id="cb381-6" data-line-number="6">  renderers = {</a>
-<a class="sourceLine" id="cb381-7" data-line-number="7">    interblockSeparator = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-8" data-line-number="8">      :<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-9" data-line-number="9">      <span class="fu">\def</span>\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-10" data-line-number="10">    },</a>
-<a class="sourceLine" id="cb381-11" data-line-number="11">    dlBeginTight = {<span class="kw">\begin</span>{<span class="ex">description</span>}},</a>
-<a class="sourceLine" id="cb381-12" data-line-number="12">    dlItem = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-13" data-line-number="13">      <span class="fu">\item</span>[#1]</a>
-<a class="sourceLine" id="cb381-14" data-line-number="14">      <span class="kw">\begin</span>{<span class="ex">itemize</span>}</a>
-<a class="sourceLine" id="cb381-15" data-line-number="15">      <span class="fu">\def</span>\markdownRendererDlDefinitionEnd{<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-16" data-line-number="16">        ,</a>
-<a class="sourceLine" id="cb381-17" data-line-number="17">        \def\markdownRendererDlDefinitionEnd{<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-18" data-line-number="18">          , and</a>
-<a class="sourceLine" id="cb381-19" data-line-number="19">          \def\markdownRendererDlDefinitionEnd{.}<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-20" data-line-number="20">        }<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-21" data-line-number="21">      }<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-22" data-line-number="22">    },</a>
-<a class="sourceLine" id="cb381-23" data-line-number="23">    dlItemEnd = {<span class="kw">\end</span>{<span class="ex">itemize</span>}},</a>
-<a class="sourceLine" id="cb381-24" data-line-number="24">    dlDefinitionBegin = <span class="fu">\item</span>,</a>
-<a class="sourceLine" id="cb381-25" data-line-number="25">    dlEndTight = {<span class="kw">\end</span>{<span class="ex">description</span>}},</a>
-<a class="sourceLine" id="cb381-26" data-line-number="26">  },</a>
-<a class="sourceLine" id="cb381-27" data-line-number="27">}</a>
-<a class="sourceLine" id="cb381-28" data-line-number="28">This is a tight definition list</a>
-<a class="sourceLine" id="cb381-29" data-line-number="29"></a>
-<a class="sourceLine" id="cb381-30" data-line-number="30">Coffee</a>
-<a class="sourceLine" id="cb381-31" data-line-number="31">:   black hot drink</a>
-<a class="sourceLine" id="cb381-32" data-line-number="32">:   prepared from roasted coffee beans</a>
-<a class="sourceLine" id="cb381-33" data-line-number="33">:   one of the most traded agricultural commodities in the world</a>
-<a class="sourceLine" id="cb381-34" data-line-number="34"></a>
-<a class="sourceLine" id="cb381-35" data-line-number="35">Milk</a>
-<a class="sourceLine" id="cb381-36" data-line-number="36">:   white cold drink</a>
-<a class="sourceLine" id="cb381-37" data-line-number="37">:   nutrient-rich</a>
-<a class="sourceLine" id="cb381-38" data-line-number="38">:   produced on an industrial scale</a>
-<a class="sourceLine" id="cb381-39" data-line-number="39"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb381-40" data-line-number="40"></a>
-<a class="sourceLine" id="cb381-41" data-line-number="41"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</a>
-<a class="sourceLine" id="cb381-42" data-line-number="42">  renderers = {</a>
-<a class="sourceLine" id="cb381-43" data-line-number="43">    interblockSeparator = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-44" data-line-number="44">      <span class="fu">\def</span>\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-45" data-line-number="45">    },</a>
-<a class="sourceLine" id="cb381-46" data-line-number="46">    dlBegin = {},</a>
-<a class="sourceLine" id="cb381-47" data-line-number="47">    dlItem = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-48" data-line-number="48">      . #1 is a</a>
-<a class="sourceLine" id="cb381-49" data-line-number="49">      <span class="fu">\def</span>\markdownRendererDlDefinitionBegin{<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-50" data-line-number="50">        \def\markdownRendererDlDefinitionBegin{<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-51" data-line-number="51">          ,</a>
-<a class="sourceLine" id="cb381-52" data-line-number="52">          \def\markdownRendererDlDefinitionBegin{, and }<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-53" data-line-number="53">        }<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-54" data-line-number="54">      }<span class="co">%</span></a>
-<a class="sourceLine" id="cb381-55" data-line-number="55">    },</a>
-<a class="sourceLine" id="cb381-56" data-line-number="56">    dlItemEnd = {},</a>
-<a class="sourceLine" id="cb381-57" data-line-number="57">    dlDefinitionEnd = {},</a>
-<a class="sourceLine" id="cb381-58" data-line-number="58">    dlEnd = {.},</a>
-<a class="sourceLine" id="cb381-59" data-line-number="59">  },</a>
-<a class="sourceLine" id="cb381-60" data-line-number="60">}</a>
-<a class="sourceLine" id="cb381-61" data-line-number="61">This is a loose definition list</a>
-<a class="sourceLine" id="cb381-62" data-line-number="62"></a>
-<a class="sourceLine" id="cb381-63" data-line-number="63">Coffee</a>
-<a class="sourceLine" id="cb381-64" data-line-number="64"></a>
-<a class="sourceLine" id="cb381-65" data-line-number="65">:   black hot drink</a>
-<a class="sourceLine" id="cb381-66" data-line-number="66"></a>
-<a class="sourceLine" id="cb381-67" data-line-number="67">:   prepared from roasted coffee beans</a>
-<a class="sourceLine" id="cb381-68" data-line-number="68"></a>
-<a class="sourceLine" id="cb381-69" data-line-number="69">:   one of the most traded agricultural commodities in the world</a>
-<a class="sourceLine" id="cb381-70" data-line-number="70"></a>
-<a class="sourceLine" id="cb381-71" data-line-number="71">Milk</a>
-<a class="sourceLine" id="cb381-72" data-line-number="72"></a>
-<a class="sourceLine" id="cb381-73" data-line-number="73">:   white cold drink</a>
-<a class="sourceLine" id="cb381-74" data-line-number="74"></a>
-<a class="sourceLine" id="cb381-75" data-line-number="75">:   nutrient-rich</a>
-<a class="sourceLine" id="cb381-76" data-line-number="76"></a>
-<a class="sourceLine" id="cb381-77" data-line-number="77">:   produced on an industrial scale</a>
-<a class="sourceLine" id="cb381-78" data-line-number="78"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb381-79" data-line-number="79"></a>
-<a class="sourceLine" id="cb381-80" data-line-number="80"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb398-2"><a href="#cb398-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[definitionLists, tightLists]{<span class="ex">markdown</span>}</span>
+<span id="cb398-3"><a href="#cb398-3" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb398-4"><a href="#cb398-4" aria-hidden="true"></a></span>
+<span id="cb398-5"><a href="#cb398-5" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb398-6"><a href="#cb398-6" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb398-7"><a href="#cb398-7" aria-hidden="true"></a>    interblockSeparator = {<span class="co">%</span></span>
+<span id="cb398-8"><a href="#cb398-8" aria-hidden="true"></a>      :<span class="co">%</span></span>
+<span id="cb398-9"><a href="#cb398-9" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb398-10"><a href="#cb398-10" aria-hidden="true"></a>    },</span>
+<span id="cb398-11"><a href="#cb398-11" aria-hidden="true"></a>    dlBeginTight = {<span class="kw">\begin</span>{<span class="ex">description</span>}},</span>
+<span id="cb398-12"><a href="#cb398-12" aria-hidden="true"></a>    dlItem = {<span class="co">%</span></span>
+<span id="cb398-13"><a href="#cb398-13" aria-hidden="true"></a>      <span class="fu">\item</span>[#1]</span>
+<span id="cb398-14"><a href="#cb398-14" aria-hidden="true"></a>      <span class="kw">\begin</span>{<span class="ex">itemize</span>}</span>
+<span id="cb398-15"><a href="#cb398-15" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb398-16"><a href="#cb398-16" aria-hidden="true"></a>        ,</span>
+<span id="cb398-17"><a href="#cb398-17" aria-hidden="true"></a>        <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb398-18"><a href="#cb398-18" aria-hidden="true"></a>          , and</span>
+<span id="cb398-19"><a href="#cb398-19" aria-hidden="true"></a>          <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{.}<span class="co">%</span></span>
+<span id="cb398-20"><a href="#cb398-20" aria-hidden="true"></a>        }<span class="co">%</span></span>
+<span id="cb398-21"><a href="#cb398-21" aria-hidden="true"></a>      }<span class="co">%</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>    dlItemEnd = {<span class="kw">\end</span>{<span class="ex">itemize</span>}},</span>
+<span id="cb398-24"><a href="#cb398-24" aria-hidden="true"></a>    dlDefinitionBegin = <span class="fu">\item</span>,</span>
+<span id="cb398-25"><a href="#cb398-25" aria-hidden="true"></a>    dlEndTight = {<span class="kw">\end</span>{<span class="ex">description</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>
+<span id="cb398-28"><a href="#cb398-28" aria-hidden="true"></a>This is a tight definition list</span>
+<span id="cb398-29"><a href="#cb398-29" aria-hidden="true"></a></span>
+<span id="cb398-30"><a href="#cb398-30" aria-hidden="true"></a>Coffee</span>
+<span id="cb398-31"><a href="#cb398-31" aria-hidden="true"></a>:   black hot drink</span>
+<span id="cb398-32"><a href="#cb398-32" aria-hidden="true"></a>:   prepared from roasted coffee beans</span>
+<span id="cb398-33"><a href="#cb398-33" aria-hidden="true"></a>:   one of the most traded agricultural commodities in the world</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>Milk</span>
+<span id="cb398-36"><a href="#cb398-36" aria-hidden="true"></a>:   white cold drink</span>
+<span id="cb398-37"><a href="#cb398-37" aria-hidden="true"></a>:   nutrient-rich</span>
+<span id="cb398-38"><a href="#cb398-38" aria-hidden="true"></a>:   produced on an industrial scale</span>
+<span id="cb398-39"><a href="#cb398-39" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb398-40"><a href="#cb398-40" aria-hidden="true"></a></span>
+<span id="cb398-41"><a href="#cb398-41" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb398-42"><a href="#cb398-42" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb398-43"><a href="#cb398-43" aria-hidden="true"></a>    interblockSeparator = {<span class="co">%</span></span>
+<span id="cb398-44"><a href="#cb398-44" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb398-45"><a href="#cb398-45" aria-hidden="true"></a>    },</span>
+<span id="cb398-46"><a href="#cb398-46" aria-hidden="true"></a>    dlBegin = {},</span>
+<span id="cb398-47"><a href="#cb398-47" aria-hidden="true"></a>    dlItem = {<span class="co">%</span></span>
+<span id="cb398-48"><a href="#cb398-48" aria-hidden="true"></a>      . #1 is a</span>
+<span id="cb398-49"><a href="#cb398-49" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb398-50"><a href="#cb398-50" aria-hidden="true"></a>        <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb398-51"><a href="#cb398-51" aria-hidden="true"></a>          ,</span>
+<span id="cb398-52"><a href="#cb398-52" aria-hidden="true"></a>          <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{, and }<span class="co">%</span></span>
+<span id="cb398-53"><a href="#cb398-53" aria-hidden="true"></a>        }<span class="co">%</span></span>
+<span id="cb398-54"><a href="#cb398-54" aria-hidden="true"></a>      }<span class="co">%</span></span>
+<span id="cb398-55"><a href="#cb398-55" aria-hidden="true"></a>    },</span>
+<span id="cb398-56"><a href="#cb398-56" aria-hidden="true"></a>    dlItemEnd = {},</span>
+<span id="cb398-57"><a href="#cb398-57" aria-hidden="true"></a>    dlDefinitionEnd = {},</span>
+<span id="cb398-58"><a href="#cb398-58" aria-hidden="true"></a>    dlEnd = {.},</span>
+<span id="cb398-59"><a href="#cb398-59" aria-hidden="true"></a>  },</span>
+<span id="cb398-60"><a href="#cb398-60" aria-hidden="true"></a>}</span>
+<span id="cb398-61"><a href="#cb398-61" aria-hidden="true"></a>This is a loose definition list</span>
+<span id="cb398-62"><a href="#cb398-62" aria-hidden="true"></a></span>
+<span id="cb398-63"><a href="#cb398-63" aria-hidden="true"></a>Coffee</span>
+<span id="cb398-64"><a href="#cb398-64" aria-hidden="true"></a></span>
+<span id="cb398-65"><a href="#cb398-65" aria-hidden="true"></a>:   black hot drink</span>
+<span id="cb398-66"><a href="#cb398-66" aria-hidden="true"></a></span>
+<span id="cb398-67"><a href="#cb398-67" aria-hidden="true"></a>:   prepared from roasted coffee beans</span>
+<span id="cb398-68"><a href="#cb398-68" aria-hidden="true"></a></span>
+<span id="cb398-69"><a href="#cb398-69" aria-hidden="true"></a>:   one of the most traded agricultural commodities in the world</span>
+<span id="cb398-70"><a href="#cb398-70" aria-hidden="true"></a></span>
+<span id="cb398-71"><a href="#cb398-71" aria-hidden="true"></a>Milk</span>
+<span id="cb398-72"><a href="#cb398-72" aria-hidden="true"></a></span>
+<span id="cb398-73"><a href="#cb398-73" aria-hidden="true"></a>:   white cold drink</span>
+<span id="cb398-74"><a href="#cb398-74" aria-hidden="true"></a></span>
+<span id="cb398-75"><a href="#cb398-75" aria-hidden="true"></a>:   nutrient-rich</span>
+<span id="cb398-76"><a href="#cb398-76" aria-hidden="true"></a></span>
+<span id="cb398-77"><a href="#cb398-77" aria-hidden="true"></a>:   produced on an industrial scale</span>
+<span id="cb398-78"><a href="#cb398-78" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb398-79"><a href="#cb398-79" aria-hidden="true"></a></span>
+<span id="cb398-80"><a href="#cb398-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="cb382"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb382-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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">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>
@@ -5001,87 +5227,87 @@
 </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 id="context-example-35" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb383"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb383-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb383-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionDefinitionLists{true}</a>
-<a class="sourceLine" id="cb383-3" data-line-number="3"><span class="fu">\def</span>\markdownOptionTightLists{true}</a>
-<a class="sourceLine" id="cb383-4" data-line-number="4"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb383-5" data-line-number="5"></a>
-<a class="sourceLine" id="cb383-6" data-line-number="6"><span class="fu">\def</span>\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-7" data-line-number="7">  :<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-8" data-line-number="8">  \def\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-9" data-line-number="9">}</a>
-<a class="sourceLine" id="cb383-10" data-line-number="10"><span class="fu">\def</span>\markdownRendererDlBeginTight{}</a>
-<a class="sourceLine" id="cb383-11" data-line-number="11"><span class="fu">\def</span>\markdownRendererDlItem#1{<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-12" data-line-number="12">  \par{\bf#1}<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-13" data-line-number="13">  \startitemize</a>
-<a class="sourceLine" id="cb383-14" data-line-number="14">  \def\markdownRendererDlDefinitionEnd{<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-15" data-line-number="15">    ,</a>
-<a class="sourceLine" id="cb383-16" data-line-number="16">    \def\markdownRendererDlDefinitionEnd{<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-17" data-line-number="17">      , and</a>
-<a class="sourceLine" id="cb383-18" data-line-number="18">      \def\markdownRendererDlDefinitionEnd{.}<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-19" data-line-number="19">    }<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-20" data-line-number="20">  }<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-21" data-line-number="21">}</a>
-<a class="sourceLine" id="cb383-22" data-line-number="22"><span class="fu">\def</span>\markdownRendererDlItemEnd{\stopitemize}</a>
-<a class="sourceLine" id="cb383-23" data-line-number="23"><span class="fu">\def</span>\markdownRendererDlDefinitionBegin{\item}</a>
-<a class="sourceLine" id="cb383-24" data-line-number="24"><span class="fu">\def</span>\markdownRendererDlEndTight{}</a>
-<a class="sourceLine" id="cb383-25" data-line-number="25"></a>
-<a class="sourceLine" id="cb383-26" data-line-number="26"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb383-27" data-line-number="27">This is a tight definition list</a>
-<a class="sourceLine" id="cb383-28" data-line-number="28"></a>
-<a class="sourceLine" id="cb383-29" data-line-number="29">Coffee</a>
-<a class="sourceLine" id="cb383-30" data-line-number="30">:   black hot drink</a>
-<a class="sourceLine" id="cb383-31" data-line-number="31">:   prepared from roasted coffee beans</a>
-<a class="sourceLine" id="cb383-32" data-line-number="32">:   one of the most traded agricultural commodities in the world</a>
-<a class="sourceLine" id="cb383-33" data-line-number="33"></a>
-<a class="sourceLine" id="cb383-34" data-line-number="34">Milk</a>
-<a class="sourceLine" id="cb383-35" data-line-number="35">:   white cold drink</a>
-<a class="sourceLine" id="cb383-36" data-line-number="36">:   nutrient-rich</a>
-<a class="sourceLine" id="cb383-37" data-line-number="37">:   produced on an industrial scale</a>
-<a class="sourceLine" id="cb383-38" data-line-number="38"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb383-39" data-line-number="39"></a>
-<a class="sourceLine" id="cb383-40" data-line-number="40"><span class="fu">\def</span>\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-41" data-line-number="41">  \def\markdownRendererInterblockSeparator{\par}<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-42" data-line-number="42">}</a>
-<a class="sourceLine" id="cb383-43" data-line-number="43"><span class="fu">\def</span>\markdownRendererDlBegin{}</a>
-<a class="sourceLine" id="cb383-44" data-line-number="44"><span class="fu">\def</span>\markdownRendererDlItem#1{<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-45" data-line-number="45">  . #1 is a</a>
-<a class="sourceLine" id="cb383-46" data-line-number="46">  \def\markdownRendererDlDefinitionBegin{<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-47" data-line-number="47">    \def\markdownRendererDlDefinitionBegin{<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-48" data-line-number="48">      ,</a>
-<a class="sourceLine" id="cb383-49" data-line-number="49">      \def\markdownRendererDlDefinitionBegin{, and }<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-50" data-line-number="50">    }<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-51" data-line-number="51">  }<span class="co">%</span></a>
-<a class="sourceLine" id="cb383-52" data-line-number="52">}</a>
-<a class="sourceLine" id="cb383-53" data-line-number="53"><span class="fu">\def</span>\markdownRendererDlItemEnd{}</a>
-<a class="sourceLine" id="cb383-54" data-line-number="54"><span class="fu">\def</span>\markdownRendererDlDefinitionEnd{}</a>
-<a class="sourceLine" id="cb383-55" data-line-number="55"><span class="fu">\def</span>\markdownRendererDlEnd{.}</a>
-<a class="sourceLine" id="cb383-56" data-line-number="56"></a>
-<a class="sourceLine" id="cb383-57" data-line-number="57"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb383-58" data-line-number="58">This is a loose definition list</a>
-<a class="sourceLine" id="cb383-59" data-line-number="59"></a>
-<a class="sourceLine" id="cb383-60" data-line-number="60">Coffee</a>
-<a class="sourceLine" id="cb383-61" data-line-number="61"></a>
-<a class="sourceLine" id="cb383-62" data-line-number="62">:   black hot drink</a>
-<a class="sourceLine" id="cb383-63" data-line-number="63"></a>
-<a class="sourceLine" id="cb383-64" data-line-number="64">:   prepared from roasted coffee beans</a>
-<a class="sourceLine" id="cb383-65" data-line-number="65"></a>
-<a class="sourceLine" id="cb383-66" data-line-number="66">:   one of the most traded agricultural commodities in the world</a>
-<a class="sourceLine" id="cb383-67" data-line-number="67"></a>
-<a class="sourceLine" id="cb383-68" data-line-number="68">Milk</a>
-<a class="sourceLine" id="cb383-69" data-line-number="69"></a>
-<a class="sourceLine" id="cb383-70" data-line-number="70">:   white cold drink</a>
-<a class="sourceLine" id="cb383-71" data-line-number="71"></a>
-<a class="sourceLine" id="cb383-72" data-line-number="72">:   nutrient-rich</a>
-<a class="sourceLine" id="cb383-73" data-line-number="73"></a>
-<a class="sourceLine" id="cb383-74" data-line-number="74">:   produced on an industrial scale</a>
-<a class="sourceLine" id="cb383-75" data-line-number="75"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb383-76" data-line-number="76"></a>
-<a class="sourceLine" id="cb383-77" data-line-number="77"><span class="fu">\stoptext</span></a></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="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb400-2"><a href="#cb400-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionDefinitionLists</span>{true}</span>
+<span id="cb400-3"><a href="#cb400-3" aria-hidden="true"></a><span class="fu">\def\markdownOptionTightLists</span>{true}</span>
+<span id="cb400-4"><a href="#cb400-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb400-5"><a href="#cb400-5" aria-hidden="true"></a></span>
+<span id="cb400-6"><a href="#cb400-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb400-7"><a href="#cb400-7" aria-hidden="true"></a>  :<span class="co">%</span></span>
+<span id="cb400-8"><a href="#cb400-8" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb400-9"><a href="#cb400-9" aria-hidden="true"></a>}</span>
+<span id="cb400-10"><a href="#cb400-10" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBeginTight</span>{}</span>
+<span id="cb400-11"><a href="#cb400-11" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
+<span id="cb400-12"><a href="#cb400-12" aria-hidden="true"></a>  <span class="fu">\par</span>{<span class="fu">\bf</span>#1}<span class="co">%</span></span>
+<span id="cb400-13"><a href="#cb400-13" aria-hidden="true"></a>  <span class="fu">\startitemize</span></span>
+<span id="cb400-14"><a href="#cb400-14" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb400-15"><a href="#cb400-15" aria-hidden="true"></a>    ,</span>
+<span id="cb400-16"><a href="#cb400-16" aria-hidden="true"></a>    <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{<span class="co">%</span></span>
+<span id="cb400-17"><a href="#cb400-17" aria-hidden="true"></a>      , and</span>
+<span id="cb400-18"><a href="#cb400-18" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererDlDefinitionEnd</span>{.}<span class="co">%</span></span>
+<span id="cb400-19"><a href="#cb400-19" aria-hidden="true"></a>    }<span class="co">%</span></span>
+<span id="cb400-20"><a href="#cb400-20" aria-hidden="true"></a>  }<span class="co">%</span></span>
+<span id="cb400-21"><a href="#cb400-21" aria-hidden="true"></a>}</span>
+<span id="cb400-22"><a href="#cb400-22" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{<span class="fu">\stopitemize</span>}</span>
+<span id="cb400-23"><a href="#cb400-23" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="fu">\item</span>}</span>
+<span id="cb400-24"><a href="#cb400-24" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEndTight</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="fu">\startmarkdown</span></span>
+<span id="cb400-27"><a href="#cb400-27" aria-hidden="true"></a>This is a tight definition list</span>
+<span id="cb400-28"><a href="#cb400-28" aria-hidden="true"></a></span>
+<span id="cb400-29"><a href="#cb400-29" aria-hidden="true"></a>Coffee</span>
+<span id="cb400-30"><a href="#cb400-30" aria-hidden="true"></a>:   black hot drink</span>
+<span id="cb400-31"><a href="#cb400-31" aria-hidden="true"></a>:   prepared from roasted coffee beans</span>
+<span id="cb400-32"><a href="#cb400-32" aria-hidden="true"></a>:   one of the most traded agricultural commodities in the world</span>
+<span id="cb400-33"><a href="#cb400-33" aria-hidden="true"></a></span>
+<span id="cb400-34"><a href="#cb400-34" aria-hidden="true"></a>Milk</span>
+<span id="cb400-35"><a href="#cb400-35" aria-hidden="true"></a>:   white cold drink</span>
+<span id="cb400-36"><a href="#cb400-36" aria-hidden="true"></a>:   nutrient-rich</span>
+<span id="cb400-37"><a href="#cb400-37" aria-hidden="true"></a>:   produced on an industrial scale</span>
+<span id="cb400-38"><a href="#cb400-38" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></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><span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb400-41"><a href="#cb400-41" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="fu">\par</span>}<span class="co">%</span></span>
+<span id="cb400-42"><a href="#cb400-42" aria-hidden="true"></a>}</span>
+<span id="cb400-43"><a href="#cb400-43" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlBegin</span>{}</span>
+<span id="cb400-44"><a href="#cb400-44" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItem</span>#1{<span class="co">%</span></span>
+<span id="cb400-45"><a href="#cb400-45" aria-hidden="true"></a>  . #1 is a</span>
+<span id="cb400-46"><a href="#cb400-46" aria-hidden="true"></a>  <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb400-47"><a href="#cb400-47" aria-hidden="true"></a>    <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{<span class="co">%</span></span>
+<span id="cb400-48"><a href="#cb400-48" aria-hidden="true"></a>      ,</span>
+<span id="cb400-49"><a href="#cb400-49" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererDlDefinitionBegin</span>{, and }<span class="co">%</span></span>
+<span id="cb400-50"><a href="#cb400-50" aria-hidden="true"></a>    }<span class="co">%</span></span>
+<span id="cb400-51"><a href="#cb400-51" aria-hidden="true"></a>  }<span class="co">%</span></span>
+<span id="cb400-52"><a href="#cb400-52" aria-hidden="true"></a>}</span>
+<span id="cb400-53"><a href="#cb400-53" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlItemEnd</span>{}</span>
+<span id="cb400-54"><a href="#cb400-54" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlDefinitionEnd</span>{}</span>
+<span id="cb400-55"><a href="#cb400-55" aria-hidden="true"></a><span class="fu">\def\markdownRendererDlEnd</span>{.}</span>
+<span id="cb400-56"><a href="#cb400-56" aria-hidden="true"></a></span>
+<span id="cb400-57"><a href="#cb400-57" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb400-58"><a href="#cb400-58" aria-hidden="true"></a>This is a loose definition list</span>
+<span id="cb400-59"><a href="#cb400-59" aria-hidden="true"></a></span>
+<span id="cb400-60"><a href="#cb400-60" aria-hidden="true"></a>Coffee</span>
+<span id="cb400-61"><a href="#cb400-61" aria-hidden="true"></a></span>
+<span id="cb400-62"><a href="#cb400-62" aria-hidden="true"></a>:   black hot drink</span>
+<span id="cb400-63"><a href="#cb400-63" aria-hidden="true"></a></span>
+<span id="cb400-64"><a href="#cb400-64" aria-hidden="true"></a>:   prepared from roasted coffee beans</span>
+<span id="cb400-65"><a href="#cb400-65" aria-hidden="true"></a></span>
+<span id="cb400-66"><a href="#cb400-66" aria-hidden="true"></a>:   one of the most traded agricultural commodities in the world</span>
+<span id="cb400-67"><a href="#cb400-67" aria-hidden="true"></a></span>
+<span id="cb400-68"><a href="#cb400-68" aria-hidden="true"></a>Milk</span>
+<span id="cb400-69"><a href="#cb400-69" aria-hidden="true"></a></span>
+<span id="cb400-70"><a href="#cb400-70" aria-hidden="true"></a>:   white cold drink</span>
+<span id="cb400-71"><a href="#cb400-71" aria-hidden="true"></a></span>
+<span id="cb400-72"><a href="#cb400-72" aria-hidden="true"></a>:   nutrient-rich</span>
+<span id="cb400-73"><a href="#cb400-73" aria-hidden="true"></a></span>
+<span id="cb400-74"><a href="#cb400-74" aria-hidden="true"></a>:   produced on an industrial scale</span>
+<span id="cb400-75"><a href="#cb400-75" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb400-76"><a href="#cb400-76" aria-hidden="true"></a></span>
+<span id="cb400-77"><a href="#cb400-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="cb384"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb384-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<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">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>
@@ -5099,64 +5325,64 @@
 </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 id="emphasis-renderers"><span class="header-section-number">2.3.1.13</span> Emphasis Renderers</h4>
+<h4 data-number="2.3.1.14" id="emphasis-renderers"><span class="header-section-number">2.3.1.14</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 id="plain-tex-example-26" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb385"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb385-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb385-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererEmphasis#1{{\it#1}}</a>
-<a class="sourceLine" id="cb385-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererStrongEmphasis#1{{\bf#1}}</a>
-<a class="sourceLine" id="cb385-4" data-line-number="4"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb385-5" data-line-number="5">This is *emphasis*.</a>
-<a class="sourceLine" id="cb385-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb385-7" data-line-number="7">This is **strong emphasis**.</a>
-<a class="sourceLine" id="cb385-8" data-line-number="8"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb385-9" data-line-number="9"><span class="fu">\bye</span></a></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">\input</span> markdown</span>
+<span id="cb402-2"><a href="#cb402-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererEmphasis</span>#1{{<span class="fu">\it</span>#1}}</span>
+<span id="cb402-3"><a href="#cb402-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererStrongEmphasis</span>#1{{<span class="fu">\bf</span>#1}}</span>
+<span id="cb402-4"><a href="#cb402-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb402-5"><a href="#cb402-5" aria-hidden="true"></a>This is *emphasis*.</span>
+<span id="cb402-6"><a href="#cb402-6" aria-hidden="true"></a></span>
+<span id="cb402-7"><a href="#cb402-7" aria-hidden="true"></a>This is **strong emphasis**.</span>
+<span id="cb402-8"><a href="#cb402-8" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb402-9"><a href="#cb402-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="cb386"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb386-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<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">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 id="latex-example-44" class="unnumbered"><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="cb387"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb387-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb387-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb387-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb387-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb387-5" data-line-number="5">    emphasis = {<span class="fu">\emph</span>{#1}},</a>
-<a class="sourceLine" id="cb387-6" data-line-number="6">    strongEmphasis = {<span class="fu">\textbf</span>{#1}},</a>
-<a class="sourceLine" id="cb387-7" data-line-number="7">  },</a>
-<a class="sourceLine" id="cb387-8" data-line-number="8">}</a>
-<a class="sourceLine" id="cb387-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb387-10" data-line-number="10"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb387-11" data-line-number="11">This is *emphasis*.</a>
-<a class="sourceLine" id="cb387-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb387-13" data-line-number="13">This is **strong emphasis**.</a>
-<a class="sourceLine" id="cb387-14" data-line-number="14"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb387-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb404-2"><a href="#cb404-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb404-3"><a href="#cb404-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb404-4"><a href="#cb404-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb404-5"><a href="#cb404-5" aria-hidden="true"></a>    emphasis = {<span class="fu">\emph</span>{#1}},</span>
+<span id="cb404-6"><a href="#cb404-6" aria-hidden="true"></a>    strongEmphasis = {<span class="fu">\textbf</span>{#1}},</span>
+<span id="cb404-7"><a href="#cb404-7" aria-hidden="true"></a>  },</span>
+<span id="cb404-8"><a href="#cb404-8" aria-hidden="true"></a>}</span>
+<span id="cb404-9"><a href="#cb404-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb404-10"><a href="#cb404-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb404-11"><a href="#cb404-11" aria-hidden="true"></a>This is *emphasis*.</span>
+<span id="cb404-12"><a href="#cb404-12" aria-hidden="true"></a></span>
+<span id="cb404-13"><a href="#cb404-13" aria-hidden="true"></a>This is **strong emphasis**.</span>
+<span id="cb404-14"><a href="#cb404-14" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb404-15"><a href="#cb404-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="cb388"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb388-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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">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>
 <p>This is <strong>strong emphasis</strong>.</p>
 </blockquote>
-<h5 id="context-example-36" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb389"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb389-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb389-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererEmphasis#1{\emph{#1}}</a>
-<a class="sourceLine" id="cb389-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererStrongEmphasis#1{\bold{#1}}</a>
-<a class="sourceLine" id="cb389-4" data-line-number="4"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb389-5" data-line-number="5"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb389-6" data-line-number="6">This is *emphasis*.</a>
-<a class="sourceLine" id="cb389-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb389-8" data-line-number="8">This is **strong emphasis**.</a>
-<a class="sourceLine" id="cb389-9" data-line-number="9"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb389-10" data-line-number="10"><span class="fu">\stoptext</span></a></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="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb406-2"><a href="#cb406-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererEmphasis</span>#1{<span class="fu">\emph</span>{#1}}</span>
+<span id="cb406-3"><a href="#cb406-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererStrongEmphasis</span>#1{<span class="fu">\bold</span>{#1}}</span>
+<span id="cb406-4"><a href="#cb406-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb406-5"><a href="#cb406-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb406-6"><a href="#cb406-6" aria-hidden="true"></a>This is *emphasis*.</span>
+<span id="cb406-7"><a href="#cb406-7" aria-hidden="true"></a></span>
+<span id="cb406-8"><a href="#cb406-8" aria-hidden="true"></a>This is **strong emphasis**.</span>
+<span id="cb406-9"><a href="#cb406-9" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb406-10"><a href="#cb406-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="cb390"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb390-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<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">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>
@@ -5163,33 +5389,34 @@
 <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 id="block-quote-renderers"><span class="header-section-number">2.3.1.14</span> Block Quote Renderers</h4>
+<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>
 <p>The <code>\markdownRendererBlockQuoteBegin</code> macro represents the beginning of a block quote. The macro receives no arguments.</p>
-<h5 id="plain-tex-example-27" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb391"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb391-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb391-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererBlockQuoteBegin{<span class="co">%</span></a>
-<a class="sourceLine" id="cb391-3" data-line-number="3">  \begingroup</a>
-<a class="sourceLine" id="cb391-4" data-line-number="4">  \vskip\parindent</a>
-<a class="sourceLine" id="cb391-5" data-line-number="5">  \leftskip=2\parindent</a>
-<a class="sourceLine" id="cb391-6" data-line-number="6">  \parindent=0pt</a>
-<a class="sourceLine" id="cb391-7" data-line-number="7">}</a>
-<a class="sourceLine" id="cb391-8" data-line-number="8"><span class="fu">\def</span>\markdownRendererBlockQuoteEnd{<span class="co">%</span></a>
-<a class="sourceLine" id="cb391-9" data-line-number="9">  \par</a>
-<a class="sourceLine" id="cb391-10" data-line-number="10">  \vskip\parindent</a>
-<a class="sourceLine" id="cb391-11" data-line-number="11">  \endgroup</a>
-<a class="sourceLine" id="cb391-12" data-line-number="12">}</a>
-<a class="sourceLine" id="cb391-13" data-line-number="13"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb391-14" data-line-number="14">A quote from William Shakespeare's King Lear:</a>
-<a class="sourceLine" id="cb391-15" data-line-number="15"></a>
-<a class="sourceLine" id="cb391-16" data-line-number="16">> This is the excellent foppery of the world that when we are</a>
-<a class="sourceLine" id="cb391-17" data-line-number="17">> sick in fortune---often the surfeit of our own behavior---we</a>
-<a class="sourceLine" id="cb391-18" data-line-number="18">> make guilty of our disasters the sun, the moon, and the</a>
-<a class="sourceLine" id="cb391-19" data-line-number="19">> stars [...]</a>
-<a class="sourceLine" id="cb391-20" data-line-number="20"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb391-21" data-line-number="21"><span class="fu">\bye</span></a></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">\input</span> markdown</span>
+<span id="cb408-2"><a href="#cb408-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteBegin</span>{<span class="co">%</span></span>
+<span id="cb408-3"><a href="#cb408-3" aria-hidden="true"></a>  <span class="fu">\begingroup</span></span>
+<span id="cb408-4"><a href="#cb408-4" aria-hidden="true"></a>  <span class="fu">\vskip\parindent</span></span>
+<span id="cb408-5"><a href="#cb408-5" aria-hidden="true"></a>  <span class="fu">\leftskip</span>=2<span class="fu">\parindent</span></span>
+<span id="cb408-6"><a href="#cb408-6" aria-hidden="true"></a>  <span class="fu">\parindent</span>=0pt</span>
+<span id="cb408-7"><a href="#cb408-7" aria-hidden="true"></a>}</span>
+<span id="cb408-8"><a href="#cb408-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteEnd</span>{<span class="co">%</span></span>
+<span id="cb408-9"><a href="#cb408-9" aria-hidden="true"></a>  <span class="fu">\par</span></span>
+<span id="cb408-10"><a href="#cb408-10" aria-hidden="true"></a>  <span class="fu">\vskip\parindent</span></span>
+<span id="cb408-11"><a href="#cb408-11" aria-hidden="true"></a>  <span class="fu">\endgroup</span></span>
+<span id="cb408-12"><a href="#cb408-12" aria-hidden="true"></a>}</span>
+<span id="cb408-13"><a href="#cb408-13" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb408-14"><a href="#cb408-14" aria-hidden="true"></a>A quote from William Shakespeare's King Lear:</span>
+<span id="cb408-15"><a href="#cb408-15" aria-hidden="true"></a></span>
+<span id="cb408-16"><a href="#cb408-16" aria-hidden="true"></a>> This is the excellent foppery of the world that when we are</span>
+<span id="cb408-17"><a href="#cb408-17" aria-hidden="true"></a>> sick in fortune---often the surfeit of our own behavior---we</span>
+<span id="cb408-18"><a href="#cb408-18" aria-hidden="true"></a>> make guilty of our disasters the sun, the moon, and the</span>
+<span id="cb408-19"><a href="#cb408-19" aria-hidden="true"></a>> stars [...]</span>
+<span id="cb408-20"><a href="#cb408-20" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb408-21"><a href="#cb408-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="cb392"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb392-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<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">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>
@@ -5197,28 +5424,28 @@
 <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 id="latex-example-45" class="unnumbered"><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="cb393"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb393-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb393-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb393-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb393-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb393-5" data-line-number="5">    blockQuoteBegin = {<span class="kw">\begin</span>{<span class="ex">quote</span>}},</a>
-<a class="sourceLine" id="cb393-6" data-line-number="6">    blockQuoteEnd = {<span class="kw">\end</span>{<span class="ex">quote</span>}},</a>
-<a class="sourceLine" id="cb393-7" data-line-number="7">  },</a>
-<a class="sourceLine" id="cb393-8" data-line-number="8">}</a>
-<a class="sourceLine" id="cb393-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb393-10" data-line-number="10"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb393-11" data-line-number="11">A quote from William Shakespeare's King Lear:</a>
-<a class="sourceLine" id="cb393-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb393-13" data-line-number="13">> This is the excellent foppery of the world that when we are</a>
-<a class="sourceLine" id="cb393-14" data-line-number="14">> sick in fortune---often the surfeit of our own behavior---we</a>
-<a class="sourceLine" id="cb393-15" data-line-number="15">> make guilty of our disasters the sun, the moon, and the</a>
-<a class="sourceLine" id="cb393-16" data-line-number="16">> stars [...]</a>
-<a class="sourceLine" id="cb393-17" data-line-number="17"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb393-18" data-line-number="18"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb410-2"><a href="#cb410-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb410-3"><a href="#cb410-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb410-4"><a href="#cb410-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb410-5"><a href="#cb410-5" aria-hidden="true"></a>    blockQuoteBegin = {<span class="kw">\begin</span>{<span class="ex">quote</span>}},</span>
+<span id="cb410-6"><a href="#cb410-6" aria-hidden="true"></a>    blockQuoteEnd = {<span class="kw">\end</span>{<span class="ex">quote</span>}},</span>
+<span id="cb410-7"><a href="#cb410-7" aria-hidden="true"></a>  },</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="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb410-10"><a href="#cb410-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb410-11"><a href="#cb410-11" aria-hidden="true"></a>A quote from William Shakespeare's King Lear:</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>> This is the excellent foppery of the world that when we are</span>
+<span id="cb410-14"><a href="#cb410-14" aria-hidden="true"></a>> sick in fortune---often the surfeit of our own behavior---we</span>
+<span id="cb410-15"><a href="#cb410-15" aria-hidden="true"></a>> make guilty of our disasters the sun, the moon, and the</span>
+<span id="cb410-16"><a href="#cb410-16" aria-hidden="true"></a>> stars [...]</span>
+<span id="cb410-17"><a href="#cb410-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb410-18"><a href="#cb410-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="cb394"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb394-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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">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>
@@ -5226,23 +5453,23 @@
 <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 id="context-example-37" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb395"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb395-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb395-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererBlockQuoteBegin{\startquotation}</a>
-<a class="sourceLine" id="cb395-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererBlockQuoteEnd{\stopquotation}</a>
-<a class="sourceLine" id="cb395-4" data-line-number="4"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb395-5" data-line-number="5"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb395-6" data-line-number="6">A quote from William Shakespeare's King Lear:</a>
-<a class="sourceLine" id="cb395-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb395-8" data-line-number="8">> This is the excellent foppery of the world that when we are</a>
-<a class="sourceLine" id="cb395-9" data-line-number="9">> sick in fortune---often the surfeit of our own behavior---we</a>
-<a class="sourceLine" id="cb395-10" data-line-number="10">> make guilty of our disasters the sun, the moon, and the</a>
-<a class="sourceLine" id="cb395-11" data-line-number="11">> stars [...]</a>
-<a class="sourceLine" id="cb395-12" data-line-number="12"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb395-13" data-line-number="13"><span class="fu">\stoptext</span></a></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="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb412-2"><a href="#cb412-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteBegin</span>{<span class="fu">\startquotation</span>}</span>
+<span id="cb412-3"><a href="#cb412-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererBlockQuoteEnd</span>{<span class="fu">\stopquotation</span>}</span>
+<span id="cb412-4"><a href="#cb412-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb412-5"><a href="#cb412-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb412-6"><a href="#cb412-6" aria-hidden="true"></a>A quote from William Shakespeare's King Lear:</span>
+<span id="cb412-7"><a href="#cb412-7" aria-hidden="true"></a></span>
+<span id="cb412-8"><a href="#cb412-8" aria-hidden="true"></a>> This is the excellent foppery of the world that when we are</span>
+<span id="cb412-9"><a href="#cb412-9" aria-hidden="true"></a>> sick in fortune---often the surfeit of our own behavior---we</span>
+<span id="cb412-10"><a href="#cb412-10" aria-hidden="true"></a>> make guilty of our disasters the sun, the moon, and the</span>
+<span id="cb412-11"><a href="#cb412-11" aria-hidden="true"></a>> stars [...]</span>
+<span id="cb412-12"><a href="#cb412-12" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb412-13"><a href="#cb412-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="cb396"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb396-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<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">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>
@@ -5250,79 +5477,160 @@
 <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>
-<p>The <code>\markdownRendererBlockQuoteEnd</code> macro represents the end of a block quote. The macro receives no arguments.</p>
-<h4 id="code-block-renderers"><span class="header-section-number">2.3.1.15</span> Code Block Renderers</h4>
+<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>
 <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 id="latex-example-46" class="unnumbered"><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="cb397"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb397-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb397-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">verbatim</span>}</a>
-<a class="sourceLine" id="cb397-3" data-line-number="3"><span class="bu">\usepackage</span>[hyphens]{<span class="ex">url</span>}</a>
-<a class="sourceLine" id="cb397-4" data-line-number="4"><span class="bu">\usepackage</span>[fencedCode]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb397-5" data-line-number="5"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb397-6" data-line-number="6">  renderers = {</a>
-<a class="sourceLine" id="cb397-7" data-line-number="7">    interblockSeparator = {</a>
-<a class="sourceLine" id="cb397-8" data-line-number="8">      <span class="fu">\def</span>\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb397-9" data-line-number="9">        \par</a>
-<a class="sourceLine" id="cb397-10" data-line-number="10">        \def\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb397-11" data-line-number="11">          \def\markdownRendererInterblockSeparator{<span class="co">%</span></a>
-<a class="sourceLine" id="cb397-12" data-line-number="12">            \par</a>
-<a class="sourceLine" id="cb397-13" data-line-number="13">          }<span class="co">%</span></a>
-<a class="sourceLine" id="cb397-14" data-line-number="14">        }<span class="co">%</span></a>
-<a class="sourceLine" id="cb397-15" data-line-number="15">      }<span class="co">%</span></a>
-<a class="sourceLine" id="cb397-16" data-line-number="16">    },</a>
-<a class="sourceLine" id="cb397-17" data-line-number="17">    inputVerbatim = {</a>
-<a class="sourceLine" id="cb397-18" data-line-number="18">      is contained in file <span class="fu">\url</span>{#1}:<span class="co">%</span></a>
-<a class="sourceLine" id="cb397-19" data-line-number="19">      <span class="fu">\verbatiminput</span>{#1}<span class="co">%</span></a>
-<a class="sourceLine" id="cb397-20" data-line-number="20">    },</a>
-<a class="sourceLine" id="cb397-21" data-line-number="21">    inputFencedCode = {</a>
-<a class="sourceLine" id="cb397-22" data-line-number="22">      in #2 <span class="fu">\markdownRendererInputVerbatim</span>{#1}<span class="co">%</span></a>
-<a class="sourceLine" id="cb397-23" data-line-number="23">    },</a>
-<a class="sourceLine" id="cb397-24" data-line-number="24">  },</a>
-<a class="sourceLine" id="cb397-25" data-line-number="25">}</a>
-<a class="sourceLine" id="cb397-26" data-line-number="26"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb397-27" data-line-number="27"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb397-28" data-line-number="28">The following code</a>
-<a class="sourceLine" id="cb397-29" data-line-number="29"></a>
-<a class="sourceLine" id="cb397-30" data-line-number="30">    def foo(bar):</a>
-<a class="sourceLine" id="cb397-31" data-line-number="31">      if len(bar) <= 1:</a>
-<a class="sourceLine" id="cb397-32" data-line-number="32">        return bar[0]</a>
-<a class="sourceLine" id="cb397-33" data-line-number="33">      elif len(bar) == 2:</a>
-<a class="sourceLine" id="cb397-34" data-line-number="34">        return sorted(bar)</a>
-<a class="sourceLine" id="cb397-35" data-line-number="35">      else:</a>
-<a class="sourceLine" id="cb397-36" data-line-number="36">        baz = len(bar) // 2</a>
-<a class="sourceLine" id="cb397-37" data-line-number="37">        return foo(bar[baz:], bar[:baz])</a>
-<a class="sourceLine" id="cb397-38" data-line-number="38"></a>
-<a class="sourceLine" id="cb397-39" data-line-number="39">The following code</a>
-<a class="sourceLine" id="cb397-40" data-line-number="40"></a>
-<a class="sourceLine" id="cb397-41" data-line-number="41">~~~ Python</a>
-<a class="sourceLine" id="cb397-42" data-line-number="42">>>> foo([4, 2, 1, 3])</a>
-<a class="sourceLine" id="cb397-43" data-line-number="43">[1, 2, 3, 4]</a>
-<a class="sourceLine" id="cb397-44" data-line-number="44">~~~~~~~~~~</a>
-<a class="sourceLine" id="cb397-45" data-line-number="45"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb397-46" data-line-number="46"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb414-2"><a href="#cb414-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">verbatim</span>}</span>
+<span id="cb414-3"><a href="#cb414-3" aria-hidden="true"></a><span class="bu">\usepackage</span>[hyphens]{<span class="ex">url</span>}</span>
+<span id="cb414-4"><a href="#cb414-4" aria-hidden="true"></a><span class="bu">\usepackage</span>[fencedCode]{<span class="ex">markdown</span>}</span>
+<span id="cb414-5"><a href="#cb414-5" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb414-6"><a href="#cb414-6" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb414-7"><a href="#cb414-7" aria-hidden="true"></a>    interblockSeparator = {</span>
+<span id="cb414-8"><a href="#cb414-8" aria-hidden="true"></a>      <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb414-9"><a href="#cb414-9" aria-hidden="true"></a>        <span class="fu">\par</span></span>
+<span id="cb414-10"><a href="#cb414-10" aria-hidden="true"></a>        <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb414-11"><a href="#cb414-11" aria-hidden="true"></a>          <span class="fu">\def\markdownRendererInterblockSeparator</span>{<span class="co">%</span></span>
+<span id="cb414-12"><a href="#cb414-12" aria-hidden="true"></a>            <span class="fu">\par</span></span>
+<span id="cb414-13"><a href="#cb414-13" aria-hidden="true"></a>          }<span class="co">%</span></span>
+<span id="cb414-14"><a href="#cb414-14" aria-hidden="true"></a>        }<span class="co">%</span></span>
+<span id="cb414-15"><a href="#cb414-15" aria-hidden="true"></a>      }<span class="co">%</span></span>
+<span id="cb414-16"><a href="#cb414-16" aria-hidden="true"></a>    },</span>
+<span id="cb414-17"><a href="#cb414-17" aria-hidden="true"></a>    inputVerbatim = {</span>
+<span id="cb414-18"><a href="#cb414-18" aria-hidden="true"></a>      is contained in file <span class="fu">\url</span>{#1}:<span class="co">%</span></span>
+<span id="cb414-19"><a href="#cb414-19" aria-hidden="true"></a>      <span class="fu">\verbatiminput</span>{#1}<span class="co">%</span></span>
+<span id="cb414-20"><a href="#cb414-20" aria-hidden="true"></a>    },</span>
+<span id="cb414-21"><a href="#cb414-21" aria-hidden="true"></a>    inputFencedCode = {</span>
+<span id="cb414-22"><a href="#cb414-22" aria-hidden="true"></a>      in #2 <span class="fu">\markdownRendererInputVerbatim</span>{#1}<span class="co">%</span></span>
+<span id="cb414-23"><a href="#cb414-23" aria-hidden="true"></a>    },</span>
+<span id="cb414-24"><a href="#cb414-24" aria-hidden="true"></a>  },</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="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb414-27"><a href="#cb414-27" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb414-28"><a href="#cb414-28" aria-hidden="true"></a>The following code</span>
+<span id="cb414-29"><a href="#cb414-29" aria-hidden="true"></a></span>
+<span id="cb414-30"><a href="#cb414-30" aria-hidden="true"></a>    def foo(bar):</span>
+<span id="cb414-31"><a href="#cb414-31" aria-hidden="true"></a>      if len(bar) <= 1:</span>
+<span id="cb414-32"><a href="#cb414-32" aria-hidden="true"></a>        return bar[0]</span>
+<span id="cb414-33"><a href="#cb414-33" aria-hidden="true"></a>      elif len(bar) == 2:</span>
+<span id="cb414-34"><a href="#cb414-34" aria-hidden="true"></a>        return sorted(bar)</span>
+<span id="cb414-35"><a href="#cb414-35" aria-hidden="true"></a>      else:</span>
+<span id="cb414-36"><a href="#cb414-36" aria-hidden="true"></a>        baz = len(bar) // 2</span>
+<span id="cb414-37"><a href="#cb414-37" aria-hidden="true"></a>        return foo(bar[baz:], bar[:baz])</span>
+<span id="cb414-38"><a href="#cb414-38" aria-hidden="true"></a></span>
+<span id="cb414-39"><a href="#cb414-39" aria-hidden="true"></a>The following code</span>
+<span id="cb414-40"><a href="#cb414-40" aria-hidden="true"></a></span>
+<span id="cb414-41"><a href="#cb414-41" aria-hidden="true"></a>~~~ Python</span>
+<span id="cb414-42"><a href="#cb414-42" aria-hidden="true"></a>>>> foo([4, 2, 1, 3])</span>
+<span id="cb414-43"><a href="#cb414-43" aria-hidden="true"></a>[1, 2, 3, 4]</span>
+<span id="cb414-44"><a href="#cb414-44" aria-hidden="true"></a>~~~~~~~~~~</span>
+<span id="cb414-45"><a href="#cb414-45" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb414-46"><a href="#cb414-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="cb398"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb398-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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">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="cb399"><pre class="sourceCode py"><code class="sourceCode python"><a class="sourceLine" id="cb399-1" data-line-number="1"><span class="kw">def</span> foo(bar):</a>
-<a class="sourceLine" id="cb399-2" data-line-number="2">  <span class="cf">if</span> <span class="bu">len</span>(bar) <span class="op"><=</span> <span class="dv">1</span>:</a>
-<a class="sourceLine" id="cb399-3" data-line-number="3">    <span class="cf">return</span> bar[:<span class="dv">1</span>]</a>
-<a class="sourceLine" id="cb399-4" data-line-number="4">  <span class="cf">elif</span> <span class="bu">len</span>(bar) <span class="op">==</span> <span class="dv">2</span>:</a>
-<a class="sourceLine" id="cb399-5" data-line-number="5">    <span class="cf">return</span> <span class="bu">sorted</span>(bar)</a>
-<a class="sourceLine" id="cb399-6" data-line-number="6">  <span class="cf">else</span>:</a>
-<a class="sourceLine" id="cb399-7" data-line-number="7">    baz <span class="op">=</span> bar[<span class="bu">len</span>(bar) <span class="op">//</span> <span class="dv">2</span>]</a>
-<a class="sourceLine" id="cb399-8" data-line-number="8">    <span class="cf">return</span> (</a>
-<a class="sourceLine" id="cb399-9" data-line-number="9">      foo([qux <span class="cf">for</span> qux <span class="kw">in</span> bar <span class="cf">if</span> qux <span class="op"><</span> baz]) <span class="op">+</span> [baz] <span class="op">+</span></a>
-<a class="sourceLine" id="cb399-10" data-line-number="10">      foo([qux <span class="cf">for</span> qux <span class="kw">in</span> bar <span class="cf">if</span> qux <span class="op">></span> baz])</a>
-<a class="sourceLine" id="cb399-11" data-line-number="11">    )</a></code></pre></div>
+<div class="sourceCode" id="cb416"><pre class="sourceCode py"><code class="sourceCode python"><span id="cb416-1"><a href="#cb416-1" aria-hidden="true"></a><span class="kw">def</span> foo(bar):</span>
+<span id="cb416-2"><a href="#cb416-2" aria-hidden="true"></a>  <span class="cf">if</span> <span class="bu">len</span>(bar) <span class="op"><=</span> <span class="dv">1</span>:</span>
+<span id="cb416-3"><a href="#cb416-3" aria-hidden="true"></a>    <span class="cf">return</span> bar[:<span class="dv">1</span>]</span>
+<span id="cb416-4"><a href="#cb416-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="cb416-5"><a href="#cb416-5" aria-hidden="true"></a>    <span class="cf">return</span> <span class="bu">sorted</span>(bar)</span>
+<span id="cb416-6"><a href="#cb416-6" aria-hidden="true"></a>  <span class="cf">else</span>:</span>
+<span id="cb416-7"><a href="#cb416-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="cb416-8"><a href="#cb416-8" aria-hidden="true"></a>    <span class="cf">return</span> (</span>
+<span id="cb416-9"><a href="#cb416-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"><</span> baz]) <span class="op">+</span> [baz] <span class="op">+</span></span>
+<span id="cb416-10"><a href="#cb416-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">></span> baz])</span>
+<span id="cb416-11"><a href="#cb416-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="cb400"><pre class="sourceCode py"><code class="sourceCode python"><a class="sourceLine" id="cb400-1" data-line-number="1"><span class="op">>>></span> foo([<span class="dv">4</span>, <span class="dv">2</span>, <span class="dv">1</span>, <span class="dv">3</span>])</a>
-<a class="sourceLine" id="cb400-2" data-line-number="2">[<span class="dv">1</span>, <span class="dv">2</span>, <span class="dv">3</span>, <span class="dv">4</span>]</a></code></pre></div>
+<div class="sourceCode" id="cb417"><pre class="sourceCode py"><code class="sourceCode python"><span id="cb417-1"><a href="#cb417-1" aria-hidden="true"></a><span class="op">>>></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="cb417-2"><a href="#cb417-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 id="heading-renderers"><span class="header-section-number">2.3.1.16</span> Heading Renderers</h4>
+<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>
+<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>
+<p>The <code>\markdownRendererJekyllDataMappingEnd</code> macro represents the end 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 no arguments.</p>
+<p>The <code>\markdownRendererJekyllDataSequenceBegin</code> macro represents the beginning of a sequence 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 sequence.</p>
+<p>The <code>\markdownRendererJekyllDataBoolean</code> macro represents a boolean 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 two arguments: the scalar key in the parent structure, and the scalar value, both cast to a string following <abbr>yaml</abbr> serialization rules.</p>
+<p>The <code>\markdownRendererJekyllDataNumber</code> macro represents a numeric 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 two arguments: the scalar key in the parent structure, and the scalar value, both cast to a string following <abbr>yaml</abbr> serialization rules.</p>
+<p>The <code>\markdownRendererJekyllDataString</code> macro represents a string 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 two arguments: the scalar key in the parent structure, cast to a string following <abbr>yaml</abbr> serialization rules, and the scalar value.</p>
+<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="cb418"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb418-1"><a href="#cb418-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb418-2"><a href="#cb418-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionJekyllData</span>{true}</span>
+<span id="cb418-3"><a href="#cb418-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataString</span>#1#2{<span class="fu">\gdef\name</span>{#2}}</span>
+<span id="cb418-4"><a href="#cb418-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataNumber</span>#1#2{<span class="fu">\gdef\age</span>{#2}}</span>
+<span id="cb418-5"><a href="#cb418-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataEnd</span>{<span class="co">%</span></span>
+<span id="cb418-6"><a href="#cb418-6" aria-hidden="true"></a>  <span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.}</span>
+<span id="cb418-7"><a href="#cb418-7" aria-hidden="true"></a><span class="fu">\markdownBegin</span></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>name: Jane Doe</span>
+<span id="cb418-10"><a href="#cb418-10" aria-hidden="true"></a>age:  99</span>
+<span id="cb418-11"><a href="#cb418-11" aria-hidden="true"></a>---</span>
+<span id="cb418-12"><a href="#cb418-12" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb418-13"><a href="#cb418-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="cb419"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb419-1"><a href="#cb419-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-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="cb420"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb420-1"><a href="#cb420-1" aria-hidden="true"></a><span class="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb420-2"><a href="#cb420-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[jekyllData]{<span class="ex">markdown</span>}</span>
+<span id="cb420-3"><a href="#cb420-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb420-4"><a href="#cb420-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb420-5"><a href="#cb420-5" aria-hidden="true"></a>    jekyllDataString = {<span class="fu">\gdef\name</span>{#2}},</span>
+<span id="cb420-6"><a href="#cb420-6" aria-hidden="true"></a>    jekyllDataNumber = {<span class="fu">\gdef\age</span>{#2}},</span>
+<span id="cb420-7"><a href="#cb420-7" aria-hidden="true"></a>    jekyllDataEnd = {<span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.},</span>
+<span id="cb420-8"><a href="#cb420-8" aria-hidden="true"></a>  }</span>
+<span id="cb420-9"><a href="#cb420-9" aria-hidden="true"></a>}</span>
+<span id="cb420-10"><a href="#cb420-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb420-11"><a href="#cb420-11" aria-hidden="true"></a></span>
+<span id="cb420-12"><a href="#cb420-12" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb420-13"><a href="#cb420-13" aria-hidden="true"></a>---</span>
+<span id="cb420-14"><a href="#cb420-14" aria-hidden="true"></a>name: Jane Doe</span>
+<span id="cb420-15"><a href="#cb420-15" aria-hidden="true"></a>age:  99</span>
+<span id="cb420-16"><a href="#cb420-16" aria-hidden="true"></a>---</span>
+<span id="cb420-17"><a href="#cb420-17" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb420-18"><a href="#cb420-18" aria-hidden="true"></a></span>
+<span id="cb420-19"><a href="#cb420-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="cb421"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb421-1"><a href="#cb421-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="cb422"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb422-1"><a href="#cb422-1" aria-hidden="true"></a><span class="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb422-2"><a href="#cb422-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionJekyllData</span>{true}</span>
+<span id="cb422-3"><a href="#cb422-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataString</span>#1#2{<span class="fu">\gdef\name</span>{#2}}</span>
+<span id="cb422-4"><a href="#cb422-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataNumber</span>#1#2{<span class="fu">\gdef\age</span>{#2}}</span>
+<span id="cb422-5"><a href="#cb422-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererJekyllDataEnd</span>{<span class="co">%</span></span>
+<span id="cb422-6"><a href="#cb422-6" aria-hidden="true"></a>  <span class="fu">\name</span>{} is <span class="fu">\age</span>{} years old.}</span>
+<span id="cb422-7"><a href="#cb422-7" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb422-8"><a href="#cb422-8" aria-hidden="true"></a></span>
+<span id="cb422-9"><a href="#cb422-9" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb422-10"><a href="#cb422-10" aria-hidden="true"></a>---</span>
+<span id="cb422-11"><a href="#cb422-11" aria-hidden="true"></a>name: Jane Doe</span>
+<span id="cb422-12"><a href="#cb422-12" aria-hidden="true"></a>age:  99</span>
+<span id="cb422-13"><a href="#cb422-13" aria-hidden="true"></a>---</span>
+<span id="cb422-14"><a href="#cb422-14" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></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><span class="fu">\stoptext</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">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>
 <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>
@@ -5329,101 +5637,101 @@
 <p>The <code>\markdownRendererHeadingFour</code> macro represents a fourth level heading. The macro receives a single argument that corresponds to the heading text.</p>
 <p>The <code>\markdownRendererHeadingFive</code> macro represents a fifth level heading. The macro receives a single argument that corresponds to the heading text.</p>
 <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 id="plain-tex-example-28" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb401"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb401-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb401-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererInterblockSeparator{}</a>
-<a class="sourceLine" id="cb401-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererHeadingOne{1}</a>
-<a class="sourceLine" id="cb401-4" data-line-number="4"><span class="fu">\def</span>\markdownRendererHeadingTwo{2}</a>
-<a class="sourceLine" id="cb401-5" data-line-number="5"><span class="fu">\def</span>\markdownRendererHeadingThree{3}</a>
-<a class="sourceLine" id="cb401-6" data-line-number="6"><span class="fu">\def</span>\markdownRendererHeadingFour{4}</a>
-<a class="sourceLine" id="cb401-7" data-line-number="7"><span class="fu">\def</span>\markdownRendererHeadingFive{5}</a>
-<a class="sourceLine" id="cb401-8" data-line-number="8"><span class="fu">\def</span>\markdownRendererHeadingSix{6}</a>
-<a class="sourceLine" id="cb401-9" data-line-number="9"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb401-10" data-line-number="10">######</a>
-<a class="sourceLine" id="cb401-11" data-line-number="11">#####</a>
-<a class="sourceLine" id="cb401-12" data-line-number="12">#####</a>
-<a class="sourceLine" id="cb401-13" data-line-number="13">###</a>
-<a class="sourceLine" id="cb401-14" data-line-number="14">######</a>
-<a class="sourceLine" id="cb401-15" data-line-number="15"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb401-16" data-line-number="16"><span class="fu">\bye</span></a></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="fu">\input</span> markdown</span>
+<span id="cb424-2"><a href="#cb424-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb424-3"><a href="#cb424-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingOne</span>{1}</span>
+<span id="cb424-4"><a href="#cb424-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingTwo</span>{2}</span>
+<span id="cb424-5"><a href="#cb424-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingThree</span>{3}</span>
+<span id="cb424-6"><a href="#cb424-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFour</span>{4}</span>
+<span id="cb424-7"><a href="#cb424-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFive</span>{5}</span>
+<span id="cb424-8"><a href="#cb424-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingSix</span>{6}</span>
+<span id="cb424-9"><a href="#cb424-9" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb424-10"><a href="#cb424-10" aria-hidden="true"></a>######</span>
+<span id="cb424-11"><a href="#cb424-11" aria-hidden="true"></a>#####</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>###</span>
+<span id="cb424-14"><a href="#cb424-14" aria-hidden="true"></a>######</span>
+<span id="cb424-15"><a href="#cb424-15" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb424-16"><a href="#cb424-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="cb402"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb402-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<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">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 id="latex-example-47" class="unnumbered"><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="cb403"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb403-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb403-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb403-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb403-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb403-5" data-line-number="5">    interblockSeparator = {},</a>
-<a class="sourceLine" id="cb403-6" data-line-number="6">    headingOne = 1,</a>
-<a class="sourceLine" id="cb403-7" data-line-number="7">    headingTwo = 2,</a>
-<a class="sourceLine" id="cb403-8" data-line-number="8">    headingThree = 3,</a>
-<a class="sourceLine" id="cb403-9" data-line-number="9">    headingFour = 4,</a>
-<a class="sourceLine" id="cb403-10" data-line-number="10">    headingFive = 5,</a>
-<a class="sourceLine" id="cb403-11" data-line-number="11">    headingSix = 6,</a>
-<a class="sourceLine" id="cb403-12" data-line-number="12">  },</a>
-<a class="sourceLine" id="cb403-13" data-line-number="13">}</a>
-<a class="sourceLine" id="cb403-14" data-line-number="14"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb403-15" data-line-number="15"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb403-16" data-line-number="16">######</a>
-<a class="sourceLine" id="cb403-17" data-line-number="17">#####</a>
-<a class="sourceLine" id="cb403-18" data-line-number="18">#####</a>
-<a class="sourceLine" id="cb403-19" data-line-number="19">###</a>
-<a class="sourceLine" id="cb403-20" data-line-number="20">######</a>
-<a class="sourceLine" id="cb403-21" data-line-number="21"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb403-22" data-line-number="22"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb426-2"><a href="#cb426-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb426-3"><a href="#cb426-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb426-4"><a href="#cb426-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb426-5"><a href="#cb426-5" aria-hidden="true"></a>    interblockSeparator = {},</span>
+<span id="cb426-6"><a href="#cb426-6" aria-hidden="true"></a>    headingOne = 1,</span>
+<span id="cb426-7"><a href="#cb426-7" aria-hidden="true"></a>    headingTwo = 2,</span>
+<span id="cb426-8"><a href="#cb426-8" aria-hidden="true"></a>    headingThree = 3,</span>
+<span id="cb426-9"><a href="#cb426-9" aria-hidden="true"></a>    headingFour = 4,</span>
+<span id="cb426-10"><a href="#cb426-10" aria-hidden="true"></a>    headingFive = 5,</span>
+<span id="cb426-11"><a href="#cb426-11" aria-hidden="true"></a>    headingSix = 6,</span>
+<span id="cb426-12"><a href="#cb426-12" aria-hidden="true"></a>  },</span>
+<span id="cb426-13"><a href="#cb426-13" aria-hidden="true"></a>}</span>
+<span id="cb426-14"><a href="#cb426-14" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb426-15"><a href="#cb426-15" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb426-16"><a href="#cb426-16" aria-hidden="true"></a>######</span>
+<span id="cb426-17"><a href="#cb426-17" aria-hidden="true"></a>#####</span>
+<span id="cb426-18"><a href="#cb426-18" aria-hidden="true"></a>#####</span>
+<span id="cb426-19"><a href="#cb426-19" aria-hidden="true"></a>###</span>
+<span id="cb426-20"><a href="#cb426-20" aria-hidden="true"></a>######</span>
+<span id="cb426-21"><a href="#cb426-21" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb426-22"><a href="#cb426-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="cb404"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb404-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></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">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 id="context-example-38" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb405"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb405-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb405-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererInterblockSeparator{}</a>
-<a class="sourceLine" id="cb405-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererHeadingOne{1}</a>
-<a class="sourceLine" id="cb405-4" data-line-number="4"><span class="fu">\def</span>\markdownRendererHeadingTwo{2}</a>
-<a class="sourceLine" id="cb405-5" data-line-number="5"><span class="fu">\def</span>\markdownRendererHeadingThree{3}</a>
-<a class="sourceLine" id="cb405-6" data-line-number="6"><span class="fu">\def</span>\markdownRendererHeadingFour{4}</a>
-<a class="sourceLine" id="cb405-7" data-line-number="7"><span class="fu">\def</span>\markdownRendererHeadingFive{5}</a>
-<a class="sourceLine" id="cb405-8" data-line-number="8"><span class="fu">\def</span>\markdownRendererHeadingSix{6}</a>
-<a class="sourceLine" id="cb405-9" data-line-number="9"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb405-10" data-line-number="10"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb405-11" data-line-number="11">######</a>
-<a class="sourceLine" id="cb405-12" data-line-number="12">#####</a>
-<a class="sourceLine" id="cb405-13" data-line-number="13">#####</a>
-<a class="sourceLine" id="cb405-14" data-line-number="14">###</a>
-<a class="sourceLine" id="cb405-15" data-line-number="15">######</a>
-<a class="sourceLine" id="cb405-16" data-line-number="16"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb405-17" data-line-number="17"><span class="fu">\stoptext</span></a></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="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb428-2"><a href="#cb428-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererInterblockSeparator</span>{}</span>
+<span id="cb428-3"><a href="#cb428-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingOne</span>{1}</span>
+<span id="cb428-4"><a href="#cb428-4" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingTwo</span>{2}</span>
+<span id="cb428-5"><a href="#cb428-5" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingThree</span>{3}</span>
+<span id="cb428-6"><a href="#cb428-6" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFour</span>{4}</span>
+<span id="cb428-7"><a href="#cb428-7" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingFive</span>{5}</span>
+<span id="cb428-8"><a href="#cb428-8" aria-hidden="true"></a><span class="fu">\def\markdownRendererHeadingSix</span>{6}</span>
+<span id="cb428-9"><a href="#cb428-9" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb428-10"><a href="#cb428-10" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb428-11"><a href="#cb428-11" aria-hidden="true"></a>######</span>
+<span id="cb428-12"><a href="#cb428-12" aria-hidden="true"></a>#####</span>
+<span id="cb428-13"><a href="#cb428-13" aria-hidden="true"></a>#####</span>
+<span id="cb428-14"><a href="#cb428-14" aria-hidden="true"></a>###</span>
+<span id="cb428-15"><a href="#cb428-15" aria-hidden="true"></a>######</span>
+<span id="cb428-16"><a href="#cb428-16" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb428-17"><a href="#cb428-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="cb406"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb406-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<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">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 id="horizontal-rule-renderer"><span class="header-section-number">2.3.1.17</span> Horizontal Rule Renderer</h4>
+<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>
 <p>The <code>\markdownRendererHorizontalRule</code> macro represents a horizontal rule. The macro receives no arguments.</p>
-<h5 id="plain-tex-example-29" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb407"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb407-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb407-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererHorizontalRule{\vfil\break}</a>
-<a class="sourceLine" id="cb407-3" data-line-number="3"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb407-4" data-line-number="4">This is the first page.</a>
-<a class="sourceLine" id="cb407-5" data-line-number="5"></a>
-<a class="sourceLine" id="cb407-6" data-line-number="6">***</a>
-<a class="sourceLine" id="cb407-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb407-8" data-line-number="8">This is the second page.</a>
-<a class="sourceLine" id="cb407-9" data-line-number="9"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb407-10" data-line-number="10"><span class="fu">\bye</span></a></code></pre></div>
+<div class="sourceCode" id="cb430"><pre class="sourceCode tex"><code class="sourceCode latex"><span id="cb430-1"><a href="#cb430-1" aria-hidden="true"></a><span class="fu">\input</span> markdown</span>
+<span id="cb430-2"><a href="#cb430-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererHorizontalRule</span>{<span class="fu">\vfil\break</span>}</span>
+<span id="cb430-3"><a href="#cb430-3" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb430-4"><a href="#cb430-4" aria-hidden="true"></a>This is the first page.</span>
+<span id="cb430-5"><a href="#cb430-5" aria-hidden="true"></a></span>
+<span id="cb430-6"><a href="#cb430-6" aria-hidden="true"></a>***</span>
+<span id="cb430-7"><a href="#cb430-7" aria-hidden="true"></a></span>
+<span id="cb430-8"><a href="#cb430-8" aria-hidden="true"></a>This is the second page.</span>
+<span id="cb430-9"><a href="#cb430-9" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb430-10"><a href="#cb430-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="cb408"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb408-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<div class="sourceCode" id="cb431"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb431-1"><a href="#cb431-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>
@@ -5430,26 +5738,26 @@
 <hr />
 <p>This is the second page.</p>
 </blockquote>
-<h5 id="latex-example-48" class="unnumbered"><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="cb409"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb409-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb409-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb409-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb409-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb409-5" data-line-number="5">    horizontalRule = <span class="fu">\newpage</span>,</a>
-<a class="sourceLine" id="cb409-6" data-line-number="6">  },</a>
-<a class="sourceLine" id="cb409-7" data-line-number="7">}</a>
-<a class="sourceLine" id="cb409-8" data-line-number="8"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb409-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb409-10" data-line-number="10">This is the first page.</a>
-<a class="sourceLine" id="cb409-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb409-12" data-line-number="12">***</a>
-<a class="sourceLine" id="cb409-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb409-14" data-line-number="14">This is the second page.</a>
-<a class="sourceLine" id="cb409-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb409-16" data-line-number="16"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb432-2"><a href="#cb432-2" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</span>
+<span id="cb432-3"><a href="#cb432-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb432-4"><a href="#cb432-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb432-5"><a href="#cb432-5" aria-hidden="true"></a>    horizontalRule = <span class="fu">\newpage</span>,</span>
+<span id="cb432-6"><a href="#cb432-6" aria-hidden="true"></a>  },</span>
+<span id="cb432-7"><a href="#cb432-7" aria-hidden="true"></a>}</span>
+<span id="cb432-8"><a href="#cb432-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb432-9"><a href="#cb432-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb432-10"><a href="#cb432-10" aria-hidden="true"></a>This is the first page.</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>
+<span id="cb432-13"><a href="#cb432-13" aria-hidden="true"></a></span>
+<span id="cb432-14"><a href="#cb432-14" aria-hidden="true"></a>This is the second page.</span>
+<span id="cb432-15"><a href="#cb432-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb432-16"><a href="#cb432-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="cb410"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb410-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></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">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>
@@ -5456,21 +5764,21 @@
 <hr />
 <p>This is the second page.</p>
 </blockquote>
-<h5 id="context-example-39" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb411"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb411-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb411-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererHorizontalRule{\page[yes]}</a>
-<a class="sourceLine" id="cb411-3" data-line-number="3"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb411-4" data-line-number="4"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb411-5" data-line-number="5">This is the first page.</a>
-<a class="sourceLine" id="cb411-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb411-7" data-line-number="7">***</a>
-<a class="sourceLine" id="cb411-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb411-9" data-line-number="9">This is the second page.</a>
-<a class="sourceLine" id="cb411-10" data-line-number="10"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb411-11" data-line-number="11"><span class="fu">\stoptext</span></a></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="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb434-2"><a href="#cb434-2" aria-hidden="true"></a><span class="fu">\def\markdownRendererHorizontalRule</span>{<span class="fu">\page</span>[yes]}</span>
+<span id="cb434-3"><a href="#cb434-3" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb434-4"><a href="#cb434-4" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb434-5"><a href="#cb434-5" aria-hidden="true"></a>This is the first page.</span>
+<span id="cb434-6"><a href="#cb434-6" aria-hidden="true"></a></span>
+<span id="cb434-7"><a href="#cb434-7" aria-hidden="true"></a>***</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>This is the second page.</span>
+<span id="cb434-10"><a href="#cb434-10" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb434-11"><a href="#cb434-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="cb412"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb412-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<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">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>
@@ -5477,172 +5785,172 @@
 <hr />
 <p>This is the second page.</p>
 </blockquote>
-<h4 id="footnote-renderer"><span class="header-section-number">2.3.1.18</span> Footnote Renderer</h4>
+<h4 data-number="2.3.1.20" id="footnote-renderer"><span class="header-section-number">2.3.1.20</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 id="plain-tex-example-30" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb413"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb413-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb413-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFootnotes{true}</a>
-<a class="sourceLine" id="cb413-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererFootnote#1{ (and \lowercase{#1})}</a>
-<a class="sourceLine" id="cb413-4" data-line-number="4"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb413-5" data-line-number="5">This is some text[^1] and this is some other text[^2].</a>
-<a class="sourceLine" id="cb413-6" data-line-number="6"></a>
-<a class="sourceLine" id="cb413-7" data-line-number="7"> [^1]: this is a footnote</a>
-<a class="sourceLine" id="cb413-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb413-9" data-line-number="9"> [^2]: this is some other footnote</a>
-<a class="sourceLine" id="cb413-10" data-line-number="10"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb413-11" data-line-number="11"><span class="fu">\bye</span></a></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">\input</span> markdown</span>
+<span id="cb436-2"><a href="#cb436-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFootnotes</span>{true}</span>
+<span id="cb436-3"><a href="#cb436-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererFootnote</span>#1{ (and <span class="fu">\lowercase</span>{#1})}</span>
+<span id="cb436-4"><a href="#cb436-4" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb436-5"><a href="#cb436-5" aria-hidden="true"></a>This is some text[^1] and this is some other text[^2].</span>
+<span id="cb436-6"><a href="#cb436-6" aria-hidden="true"></a></span>
+<span id="cb436-7"><a href="#cb436-7" aria-hidden="true"></a> [^1]: this is a footnote</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> [^2]: this is some other footnote</span>
+<span id="cb436-10"><a href="#cb436-10" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb436-11"><a href="#cb436-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="cb414"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb414-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></code></pre></div>
+<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">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 id="latex-example-49" class="unnumbered"><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="cb415"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb415-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb415-2" data-line-number="2"><span class="bu">\usepackage</span>[footnotes]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb415-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb415-4" data-line-number="4">  renderers = {</a>
-<a class="sourceLine" id="cb415-5" data-line-number="5">    footnote = { (and <span class="fu">\MakeLowercase</span>{#1})},</a>
-<a class="sourceLine" id="cb415-6" data-line-number="6">  },</a>
-<a class="sourceLine" id="cb415-7" data-line-number="7">}</a>
-<a class="sourceLine" id="cb415-8" data-line-number="8"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb415-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb415-10" data-line-number="10">This is some text[^1] and this is some other text[^2].</a>
-<a class="sourceLine" id="cb415-11" data-line-number="11"></a>
-<a class="sourceLine" id="cb415-12" data-line-number="12"> [^1]: this is a footnote</a>
-<a class="sourceLine" id="cb415-13" data-line-number="13"></a>
-<a class="sourceLine" id="cb415-14" data-line-number="14"> [^2]: this is some other footnote</a>
-<a class="sourceLine" id="cb415-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb415-16" data-line-number="16"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb438-2"><a href="#cb438-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[footnotes]{<span class="ex">markdown</span>}</span>
+<span id="cb438-3"><a href="#cb438-3" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb438-4"><a href="#cb438-4" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb438-5"><a href="#cb438-5" aria-hidden="true"></a>    footnote = { (and <span class="fu">\MakeLowercase</span>{#1})},</span>
+<span id="cb438-6"><a href="#cb438-6" aria-hidden="true"></a>  },</span>
+<span id="cb438-7"><a href="#cb438-7" aria-hidden="true"></a>}</span>
+<span id="cb438-8"><a href="#cb438-8" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb438-9"><a href="#cb438-9" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb438-10"><a href="#cb438-10" aria-hidden="true"></a>This is some text[^1] and this is some other text[^2].</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> [^1]: this is a footnote</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> [^2]: this is some other footnote</span>
+<span id="cb438-15"><a href="#cb438-15" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb438-16"><a href="#cb438-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="cb416"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb416-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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">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 id="context-example-40" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb417"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb417-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb417-2" data-line-number="2"><span class="fu">\def</span>\markdownOptionFootnotes{true}</a>
-<a class="sourceLine" id="cb417-3" data-line-number="3"><span class="fu">\def</span>\markdownRendererFootnote#1{ (and \lowercase{#1})}</a>
-<a class="sourceLine" id="cb417-4" data-line-number="4"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb417-5" data-line-number="5"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb417-6" data-line-number="6">This is some text[^1] and this is some other text[^2].</a>
-<a class="sourceLine" id="cb417-7" data-line-number="7"></a>
-<a class="sourceLine" id="cb417-8" data-line-number="8"> [^1]: this is a footnote</a>
-<a class="sourceLine" id="cb417-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb417-10" data-line-number="10"> [^2]: this is some other footnote</a>
-<a class="sourceLine" id="cb417-11" data-line-number="11"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb417-12" data-line-number="12"><span class="fu">\stoptext</span></a></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="fu">\usemodule</span>[t][markdown]</span>
+<span id="cb440-2"><a href="#cb440-2" aria-hidden="true"></a><span class="fu">\def\markdownOptionFootnotes</span>{true}</span>
+<span id="cb440-3"><a href="#cb440-3" aria-hidden="true"></a><span class="fu">\def\markdownRendererFootnote</span>#1{ (and <span class="fu">\lowercase</span>{#1})}</span>
+<span id="cb440-4"><a href="#cb440-4" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb440-5"><a href="#cb440-5" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb440-6"><a href="#cb440-6" aria-hidden="true"></a>This is some text[^1] and this is some other text[^2].</span>
+<span id="cb440-7"><a href="#cb440-7" aria-hidden="true"></a></span>
+<span id="cb440-8"><a href="#cb440-8" aria-hidden="true"></a> [^1]: this is a footnote</span>
+<span id="cb440-9"><a href="#cb440-9" aria-hidden="true"></a></span>
+<span id="cb440-10"><a href="#cb440-10" aria-hidden="true"></a> [^2]: this is some other footnote</span>
+<span id="cb440-11"><a href="#cb440-11" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb440-12"><a href="#cb440-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="cb418"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb418-1" data-line-number="1"><span class="ex">context</span> document.tex</a></code></pre></div>
+<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">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 id="parenthesized-citations-renderer"><span class="header-section-number">2.3.1.19</span> Parenthesized Citations Renderer</h4>
+<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>
 <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 id="latex-example-50" class="unnumbered"><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="cb419"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb419-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb419-2" data-line-number="2"><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb419-3" data-line-number="3"><span class="fu">\newcount\citationsCounter</span></a>
-<a class="sourceLine" id="cb419-4" data-line-number="4"><span class="fu">\newcount\citationsTotal</span></a>
-<a class="sourceLine" id="cb419-5" data-line-number="5"><span class="fu">\makeatletter</span></a>
-<a class="sourceLine" id="cb419-6" data-line-number="6"><span class="fu">\def</span>\citations#1#2#3#4{<span class="co">%</span></a>
-<a class="sourceLine" id="cb419-7" data-line-number="7">  a parenthesized citation \emph{#4}</a>
-<a class="sourceLine" id="cb419-8" data-line-number="8">  \advance\citationsCounter by 1\relax</a>
-<a class="sourceLine" id="cb419-9" data-line-number="9">  \ifx\relax#2\relax</a>
-<a class="sourceLine" id="cb419-10" data-line-number="10">    \ifx\relax#3\relax\else</a>
-<a class="sourceLine" id="cb419-11" data-line-number="11">      with a postfix \emph{#3}<span class="co">%</span></a>
-<a class="sourceLine" id="cb419-12" data-line-number="12">    \fi</a>
-<a class="sourceLine" id="cb419-13" data-line-number="13">  \else</a>
-<a class="sourceLine" id="cb419-14" data-line-number="14">    with a prefix \emph{#2}<span class="co">%</span></a>
-<a class="sourceLine" id="cb419-15" data-line-number="15">    \ifx\relax#3\relax\else</a>
-<a class="sourceLine" id="cb419-16" data-line-number="16">      \ and a postfix \emph{#3}<span class="co">%</span></a>
-<a class="sourceLine" id="cb419-17" data-line-number="17">    \fi</a>
-<a class="sourceLine" id="cb419-18" data-line-number="18">  \fi</a>
-<a class="sourceLine" id="cb419-19" data-line-number="19">  \ifnum\citationsCounter>\citationsTotal\relax</a>
-<a class="sourceLine" id="cb419-20" data-line-number="20">    .<span class="co">%</span></a>
-<a class="sourceLine" id="cb419-21" data-line-number="21">    \expandafter\@gobble</a>
-<a class="sourceLine" id="cb419-22" data-line-number="22">  \else</a>
-<a class="sourceLine" id="cb419-23" data-line-number="23">    , and</a>
-<a class="sourceLine" id="cb419-24" data-line-number="24">  \fi\citations}</a>
-<a class="sourceLine" id="cb419-25" data-line-number="25"><span class="fu">\makeatother</span></a>
-<a class="sourceLine" id="cb419-26" data-line-number="26"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb419-27" data-line-number="27">  renderers = {</a>
-<a class="sourceLine" id="cb419-28" data-line-number="28">    cite = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb419-29" data-line-number="29">      <span class="fu">\citationsCounter</span>=1<span class="co">%</span></a>
-<a class="sourceLine" id="cb419-30" data-line-number="30">      <span class="fu">\citationsTotal</span>=#1<span class="co">%</span></a>
-<a class="sourceLine" id="cb419-31" data-line-number="31">      This is</a>
-<a class="sourceLine" id="cb419-32" data-line-number="32">      <span class="fu">\expandafter\citations</span></a>
-<a class="sourceLine" id="cb419-33" data-line-number="33">    },</a>
-<a class="sourceLine" id="cb419-34" data-line-number="34">  },</a>
-<a class="sourceLine" id="cb419-35" data-line-number="35">}</a>
-<a class="sourceLine" id="cb419-36" data-line-number="36"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb419-37" data-line-number="37"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb419-38" data-line-number="38">[see @abrahams90, pp. 12; @eijkhout91, pp. 34]</a>
-<a class="sourceLine" id="cb419-39" data-line-number="39"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb419-40" data-line-number="40"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb442-2"><a href="#cb442-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</span>
+<span id="cb442-3"><a href="#cb442-3" aria-hidden="true"></a><span class="fu">\newcount\citationsCounter</span></span>
+<span id="cb442-4"><a href="#cb442-4" aria-hidden="true"></a><span class="fu">\newcount\citationsTotal</span></span>
+<span id="cb442-5"><a href="#cb442-5" aria-hidden="true"></a><span class="fu">\makeatletter</span></span>
+<span id="cb442-6"><a href="#cb442-6" aria-hidden="true"></a><span class="fu">\def\citations</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb442-7"><a href="#cb442-7" aria-hidden="true"></a>  a parenthesized citation <span class="fu">\emph</span>{#4}</span>
+<span id="cb442-8"><a href="#cb442-8" aria-hidden="true"></a>  <span class="fu">\advance\citationsCounter</span> by 1<span class="fu">\relax</span></span>
+<span id="cb442-9"><a href="#cb442-9" aria-hidden="true"></a>  <span class="fu">\ifx\relax</span>#2<span class="fu">\relax</span></span>
+<span id="cb442-10"><a href="#cb442-10" aria-hidden="true"></a>    <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
+<span id="cb442-11"><a href="#cb442-11" aria-hidden="true"></a>      with a postfix <span class="fu">\emph</span>{#3}<span class="co">%</span></span>
+<span id="cb442-12"><a href="#cb442-12" aria-hidden="true"></a>    <span class="fu">\fi</span></span>
+<span id="cb442-13"><a href="#cb442-13" aria-hidden="true"></a>  <span class="fu">\else</span></span>
+<span id="cb442-14"><a href="#cb442-14" aria-hidden="true"></a>    with a prefix <span class="fu">\emph</span>{#2}<span class="co">%</span></span>
+<span id="cb442-15"><a href="#cb442-15" aria-hidden="true"></a>    <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
+<span id="cb442-16"><a href="#cb442-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="cb442-17"><a href="#cb442-17" aria-hidden="true"></a>    <span class="fu">\fi</span></span>
+<span id="cb442-18"><a href="#cb442-18" aria-hidden="true"></a>  <span class="fu">\fi</span></span>
+<span id="cb442-19"><a href="#cb442-19" aria-hidden="true"></a>  <span class="fu">\ifnum\citationsCounter</span>><span class="fu">\citationsTotal\relax</span></span>
+<span id="cb442-20"><a href="#cb442-20" aria-hidden="true"></a>    .<span class="co">%</span></span>
+<span id="cb442-21"><a href="#cb442-21" aria-hidden="true"></a>    <span class="fu">\expandafter\@gobble</span></span>
+<span id="cb442-22"><a href="#cb442-22" aria-hidden="true"></a>  <span class="fu">\else</span></span>
+<span id="cb442-23"><a href="#cb442-23" aria-hidden="true"></a>    , and</span>
+<span id="cb442-24"><a href="#cb442-24" aria-hidden="true"></a>  <span class="fu">\fi\citations</span>}</span>
+<span id="cb442-25"><a href="#cb442-25" aria-hidden="true"></a><span class="fu">\makeatother</span></span>
+<span id="cb442-26"><a href="#cb442-26" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb442-27"><a href="#cb442-27" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb442-28"><a href="#cb442-28" aria-hidden="true"></a>    cite = {<span class="co">%</span></span>
+<span id="cb442-29"><a href="#cb442-29" aria-hidden="true"></a>      <span class="fu">\citationsCounter</span>=1<span class="co">%</span></span>
+<span id="cb442-30"><a href="#cb442-30" aria-hidden="true"></a>      <span class="fu">\citationsTotal</span>=#1<span class="co">%</span></span>
+<span id="cb442-31"><a href="#cb442-31" aria-hidden="true"></a>      This is</span>
+<span id="cb442-32"><a href="#cb442-32" aria-hidden="true"></a>      <span class="fu">\expandafter\citations</span></span>
+<span id="cb442-33"><a href="#cb442-33" aria-hidden="true"></a>    },</span>
+<span id="cb442-34"><a href="#cb442-34" aria-hidden="true"></a>  },</span>
+<span id="cb442-35"><a href="#cb442-35" aria-hidden="true"></a>}</span>
+<span id="cb442-36"><a href="#cb442-36" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb442-37"><a href="#cb442-37" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb442-38"><a href="#cb442-38" aria-hidden="true"></a>[see @abrahams90, pp. 12; @eijkhout91, pp. 34]</span>
+<span id="cb442-39"><a href="#cb442-39" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb442-40"><a href="#cb442-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="cb420"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb420-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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">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 id="text-citations-renderer"><span class="header-section-number">2.3.1.20</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 <code>\markdownRendererCite</code> macro.</p>
-<h5 id="latex-example-51" class="unnumbered"><span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> Example</h5>
+<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>
+<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-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="cb421"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb421-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb421-2" data-line-number="2"><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb421-3" data-line-number="3"><span class="fu">\newcount\citationsCounter</span></a>
-<a class="sourceLine" id="cb421-4" data-line-number="4"><span class="fu">\newcount\citationsTotal</span></a>
-<a class="sourceLine" id="cb421-5" data-line-number="5"><span class="fu">\makeatletter</span></a>
-<a class="sourceLine" id="cb421-6" data-line-number="6"><span class="fu">\def</span>\citations#1#2#3#4{<span class="co">%</span></a>
-<a class="sourceLine" id="cb421-7" data-line-number="7">  a text citation \emph{#4}</a>
-<a class="sourceLine" id="cb421-8" data-line-number="8">  \advance\citationsCounter by 1\relax</a>
-<a class="sourceLine" id="cb421-9" data-line-number="9">  \ifx\relax#2\relax</a>
-<a class="sourceLine" id="cb421-10" data-line-number="10">    \ifx\relax#3\relax\else</a>
-<a class="sourceLine" id="cb421-11" data-line-number="11">      with a postfix \emph{#3}<span class="co">%</span></a>
-<a class="sourceLine" id="cb421-12" data-line-number="12">    \fi</a>
-<a class="sourceLine" id="cb421-13" data-line-number="13">  \else</a>
-<a class="sourceLine" id="cb421-14" data-line-number="14">    with a prefix \emph{#2}<span class="co">%</span></a>
-<a class="sourceLine" id="cb421-15" data-line-number="15">    \ifx\relax#3\relax\else</a>
-<a class="sourceLine" id="cb421-16" data-line-number="16">      \ and a postfix \emph{#3}<span class="co">%</span></a>
-<a class="sourceLine" id="cb421-17" data-line-number="17">    \fi</a>
-<a class="sourceLine" id="cb421-18" data-line-number="18">  \fi</a>
-<a class="sourceLine" id="cb421-19" data-line-number="19">  \ifnum\citationsCounter>\citationsTotal\relax</a>
-<a class="sourceLine" id="cb421-20" data-line-number="20">    .<span class="co">%</span></a>
-<a class="sourceLine" id="cb421-21" data-line-number="21">    \expandafter\@gobble</a>
-<a class="sourceLine" id="cb421-22" data-line-number="22">  \else</a>
-<a class="sourceLine" id="cb421-23" data-line-number="23">    , and</a>
-<a class="sourceLine" id="cb421-24" data-line-number="24">  \fi\citations}</a>
-<a class="sourceLine" id="cb421-25" data-line-number="25"><span class="fu">\makeatother</span></a>
-<a class="sourceLine" id="cb421-26" data-line-number="26"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb421-27" data-line-number="27">  renderers = {</a>
-<a class="sourceLine" id="cb421-28" data-line-number="28">    textCite = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb421-29" data-line-number="29">      <span class="fu">\citationsCounter</span>=1<span class="co">%</span></a>
-<a class="sourceLine" id="cb421-30" data-line-number="30">      <span class="fu">\citationsTotal</span>=#1<span class="co">%</span></a>
-<a class="sourceLine" id="cb421-31" data-line-number="31">      This is</a>
-<a class="sourceLine" id="cb421-32" data-line-number="32">      <span class="fu">\expandafter\citations</span></a>
-<a class="sourceLine" id="cb421-33" data-line-number="33">    },</a>
-<a class="sourceLine" id="cb421-34" data-line-number="34">  },</a>
-<a class="sourceLine" id="cb421-35" data-line-number="35">}</a>
-<a class="sourceLine" id="cb421-36" data-line-number="36"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb421-37" data-line-number="37"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb421-38" data-line-number="38">@abrahams90 [pp. 12; also @eijkhout91]</a>
-<a class="sourceLine" id="cb421-39" data-line-number="39"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb421-40" data-line-number="40"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb444-2"><a href="#cb444-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[citations]{<span class="ex">markdown</span>}</span>
+<span id="cb444-3"><a href="#cb444-3" aria-hidden="true"></a><span class="fu">\newcount\citationsCounter</span></span>
+<span id="cb444-4"><a href="#cb444-4" aria-hidden="true"></a><span class="fu">\newcount\citationsTotal</span></span>
+<span id="cb444-5"><a href="#cb444-5" aria-hidden="true"></a><span class="fu">\makeatletter</span></span>
+<span id="cb444-6"><a href="#cb444-6" aria-hidden="true"></a><span class="fu">\def\citations</span>#1#2#3#4{<span class="co">%</span></span>
+<span id="cb444-7"><a href="#cb444-7" aria-hidden="true"></a>  a text citation <span class="fu">\emph</span>{#4}</span>
+<span id="cb444-8"><a href="#cb444-8" aria-hidden="true"></a>  <span class="fu">\advance\citationsCounter</span> by 1<span class="fu">\relax</span></span>
+<span id="cb444-9"><a href="#cb444-9" aria-hidden="true"></a>  <span class="fu">\ifx\relax</span>#2<span class="fu">\relax</span></span>
+<span id="cb444-10"><a href="#cb444-10" aria-hidden="true"></a>    <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
+<span id="cb444-11"><a href="#cb444-11" aria-hidden="true"></a>      with a postfix <span class="fu">\emph</span>{#3}<span class="co">%</span></span>
+<span id="cb444-12"><a href="#cb444-12" aria-hidden="true"></a>    <span class="fu">\fi</span></span>
+<span id="cb444-13"><a href="#cb444-13" aria-hidden="true"></a>  <span class="fu">\else</span></span>
+<span id="cb444-14"><a href="#cb444-14" aria-hidden="true"></a>    with a prefix <span class="fu">\emph</span>{#2}<span class="co">%</span></span>
+<span id="cb444-15"><a href="#cb444-15" aria-hidden="true"></a>    <span class="fu">\ifx\relax</span>#3<span class="fu">\relax\else</span></span>
+<span id="cb444-16"><a href="#cb444-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="cb444-17"><a href="#cb444-17" aria-hidden="true"></a>    <span class="fu">\fi</span></span>
+<span id="cb444-18"><a href="#cb444-18" aria-hidden="true"></a>  <span class="fu">\fi</span></span>
+<span id="cb444-19"><a href="#cb444-19" aria-hidden="true"></a>  <span class="fu">\ifnum\citationsCounter</span>><span class="fu">\citationsTotal\relax</span></span>
+<span id="cb444-20"><a href="#cb444-20" aria-hidden="true"></a>    .<span class="co">%</span></span>
+<span id="cb444-21"><a href="#cb444-21" aria-hidden="true"></a>    <span class="fu">\expandafter\@gobble</span></span>
+<span id="cb444-22"><a href="#cb444-22" aria-hidden="true"></a>  <span class="fu">\else</span></span>
+<span id="cb444-23"><a href="#cb444-23" aria-hidden="true"></a>    , and</span>
+<span id="cb444-24"><a href="#cb444-24" aria-hidden="true"></a>  <span class="fu">\fi\citations</span>}</span>
+<span id="cb444-25"><a href="#cb444-25" aria-hidden="true"></a><span class="fu">\makeatother</span></span>
+<span id="cb444-26"><a href="#cb444-26" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb444-27"><a href="#cb444-27" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb444-28"><a href="#cb444-28" aria-hidden="true"></a>    textCite = {<span class="co">%</span></span>
+<span id="cb444-29"><a href="#cb444-29" aria-hidden="true"></a>      <span class="fu">\citationsCounter</span>=1<span class="co">%</span></span>
+<span id="cb444-30"><a href="#cb444-30" aria-hidden="true"></a>      <span class="fu">\citationsTotal</span>=#1<span class="co">%</span></span>
+<span id="cb444-31"><a href="#cb444-31" aria-hidden="true"></a>      This is</span>
+<span id="cb444-32"><a href="#cb444-32" aria-hidden="true"></a>      <span class="fu">\expandafter\citations</span></span>
+<span id="cb444-33"><a href="#cb444-33" aria-hidden="true"></a>    },</span>
+<span id="cb444-34"><a href="#cb444-34" aria-hidden="true"></a>  },</span>
+<span id="cb444-35"><a href="#cb444-35" aria-hidden="true"></a>}</span>
+<span id="cb444-36"><a href="#cb444-36" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb444-37"><a href="#cb444-37" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb444-38"><a href="#cb444-38" aria-hidden="true"></a>@abrahams90 [pp. 12; also @eijkhout91]</span>
+<span id="cb444-39"><a href="#cb444-39" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb444-40"><a href="#cb444-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="cb422"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb422-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></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">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 id="table-renderer"><span class="header-section-number">2.3.1.21</span> Table Renderer</h4>
+<h4 data-number="2.3.1.23" id="table-renderer"><span class="header-section-number">2.3.1.23</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>
@@ -5650,93 +5958,93 @@
 <li><code>c</code> – The corresponding column is centered.</li>
 <li><code>r</code> – The corresponding column is right-aligned.</li>
 </ul>
-<h5 id="latex-example-52" class="unnumbered"><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="cb423"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb423-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb423-2" data-line-number="2"><span class="bu">\usepackage</span>[pipeTables, tableCaptions]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb423-3" data-line-number="3"><span class="fu">\newcount\rowCounter</span></a>
-<a class="sourceLine" id="cb423-4" data-line-number="4"><span class="fu">\newcount\columnCounter</span></a>
-<a class="sourceLine" id="cb423-5" data-line-number="5"><span class="fu">\makeatletter</span></a>
-<a class="sourceLine" id="cb423-6" data-line-number="6"><span class="fu">\def</span>\processRow#1{<span class="co">%</span></a>
-<a class="sourceLine" id="cb423-7" data-line-number="7">  \columnCounter=1<span class="co">%</span></a>
-<a class="sourceLine" id="cb423-8" data-line-number="8">  \ifnum\rowCounter=0\relax</a>
-<a class="sourceLine" id="cb423-9" data-line-number="9">    As for the alignment,</a>
-<a class="sourceLine" id="cb423-10" data-line-number="10">  \else</a>
-<a class="sourceLine" id="cb423-11" data-line-number="11">    In row \the\rowCounter,</a>
-<a class="sourceLine" id="cb423-12" data-line-number="12">  \fi</a>
-<a class="sourceLine" id="cb423-13" data-line-number="13">  \processColumn#1</a>
-<a class="sourceLine" id="cb423-14" data-line-number="14">  \advance\rowCounter by 1\relax</a>
-<a class="sourceLine" id="cb423-15" data-line-number="15">  \ifnum\rowCounter>\rowTotal\relax</a>
-<a class="sourceLine" id="cb423-16" data-line-number="16">    \expandafter\@gobble</a>
-<a class="sourceLine" id="cb423-17" data-line-number="17">  \fi\processRow}<span class="co">%</span></a>
-<a class="sourceLine" id="cb423-18" data-line-number="18"><span class="fu">\def</span>\processColumn#1{<span class="co">%</span></a>
-<a class="sourceLine" id="cb423-19" data-line-number="19">  column number \the\columnCounter{}</a>
-<a class="sourceLine" id="cb423-20" data-line-number="20">  \ifnum\rowCounter=0\relax</a>
-<a class="sourceLine" id="cb423-21" data-line-number="21">    \if#1d{}has default alignment\fi</a>
-<a class="sourceLine" id="cb423-22" data-line-number="22">    \if#1l{}is left-aligned\fi</a>
-<a class="sourceLine" id="cb423-23" data-line-number="23">    \if#1c{}is centered\fi</a>
-<a class="sourceLine" id="cb423-24" data-line-number="24">    \if#1r{}is right-aligned\fi</a>
-<a class="sourceLine" id="cb423-25" data-line-number="25">  \else</a>
-<a class="sourceLine" id="cb423-26" data-line-number="26">    says \emph{#1}<span class="co">%</span></a>
-<a class="sourceLine" id="cb423-27" data-line-number="27">  \fi</a>
-<a class="sourceLine" id="cb423-28" data-line-number="28">  \advance\columnCounter by 1\relax</a>
-<a class="sourceLine" id="cb423-29" data-line-number="29">  \ifnum\columnCounter<\columnTotal\relax, \fi</a>
-<a class="sourceLine" id="cb423-30" data-line-number="30">  \ifnum\columnCounter=\columnTotal\relax, and \fi</a>
-<a class="sourceLine" id="cb423-31" data-line-number="31">  \ifnum\columnCounter>\columnTotal\relax</a>
-<a class="sourceLine" id="cb423-32" data-line-number="32">    .\expandafter\@gobble</a>
-<a class="sourceLine" id="cb423-33" data-line-number="33">  \fi\processColumn}<span class="co">%</span></a>
-<a class="sourceLine" id="cb423-34" data-line-number="34"><span class="fu">\makeatother</span></a>
-<a class="sourceLine" id="cb423-35" data-line-number="35"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb423-36" data-line-number="36">  renderers = {</a>
-<a class="sourceLine" id="cb423-37" data-line-number="37">    table = {<span class="co">%</span></a>
-<a class="sourceLine" id="cb423-38" data-line-number="38">      This is a table with caption <span class="fu">\emph</span>{#1} that is #3 colums wide</a>
-<a class="sourceLine" id="cb423-39" data-line-number="39">      and #2 rows long.</a>
-<a class="sourceLine" id="cb423-40" data-line-number="40">      <span class="fu">\rowCounter</span>=0<span class="co">%</span></a>
-<a class="sourceLine" id="cb423-41" data-line-number="41">      <span class="fu">\def</span>\rowTotal{#2}<span class="co">%</span></a>
-<a class="sourceLine" id="cb423-42" data-line-number="42">      <span class="fu">\def</span>\columnTotal{#3}<span class="co">%</span></a>
-<a class="sourceLine" id="cb423-43" data-line-number="43">      <span class="fu">\processRow</span></a>
-<a class="sourceLine" id="cb423-44" data-line-number="44">    },</a>
-<a class="sourceLine" id="cb423-45" data-line-number="45">  },</a>
-<a class="sourceLine" id="cb423-46" data-line-number="46">}</a>
-<a class="sourceLine" id="cb423-47" data-line-number="47"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb423-48" data-line-number="48"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb423-49" data-line-number="49">| Right | Left | Default | Center |</a>
-<a class="sourceLine" id="cb423-50" data-line-number="50">|------:|:-----|---------|:------:|</a>
-<a class="sourceLine" id="cb423-51" data-line-number="51">|   12  |  12  |    12   |    12  |</a>
-<a class="sourceLine" id="cb423-52" data-line-number="52">|  123  |  123 |   123   |   123  |</a>
-<a class="sourceLine" id="cb423-53" data-line-number="53">|    1  |    1 |     1   |     1  |</a>
-<a class="sourceLine" id="cb423-54" data-line-number="54"></a>
-<a class="sourceLine" id="cb423-55" data-line-number="55">  : Demonstration of pipe table syntax</a>
-<a class="sourceLine" id="cb423-56" data-line-number="56"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb423-57" data-line-number="57"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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>[pipeTables, tableCaptions]{<span class="ex">markdown</span>}</span>
+<span id="cb446-3"><a href="#cb446-3" aria-hidden="true"></a><span class="fu">\newcount\rowCounter</span></span>
+<span id="cb446-4"><a href="#cb446-4" aria-hidden="true"></a><span class="fu">\newcount\columnCounter</span></span>
+<span id="cb446-5"><a href="#cb446-5" aria-hidden="true"></a><span class="fu">\makeatletter</span></span>
+<span id="cb446-6"><a href="#cb446-6" aria-hidden="true"></a><span class="fu">\def\processRow</span>#1{<span class="co">%</span></span>
+<span id="cb446-7"><a href="#cb446-7" aria-hidden="true"></a>  <span class="fu">\columnCounter</span>=1<span class="co">%</span></span>
+<span id="cb446-8"><a href="#cb446-8" aria-hidden="true"></a>  <span class="fu">\ifnum\rowCounter</span>=0<span class="fu">\relax</span></span>
+<span id="cb446-9"><a href="#cb446-9" aria-hidden="true"></a>    As for the alignment,</span>
+<span id="cb446-10"><a href="#cb446-10" aria-hidden="true"></a>  <span class="fu">\else</span></span>
+<span id="cb446-11"><a href="#cb446-11" aria-hidden="true"></a>    In row <span class="fu">\the\rowCounter</span>,</span>
+<span id="cb446-12"><a href="#cb446-12" aria-hidden="true"></a>  <span class="fu">\fi</span></span>
+<span id="cb446-13"><a href="#cb446-13" aria-hidden="true"></a>  <span class="fu">\processColumn</span>#1</span>
+<span id="cb446-14"><a href="#cb446-14" aria-hidden="true"></a>  <span class="fu">\advance\rowCounter</span> by 1<span class="fu">\relax</span></span>
+<span id="cb446-15"><a href="#cb446-15" aria-hidden="true"></a>  <span class="fu">\ifnum\rowCounter</span>><span class="fu">\rowTotal\relax</span></span>
+<span id="cb446-16"><a href="#cb446-16" aria-hidden="true"></a>    <span class="fu">\expandafter\@gobble</span></span>
+<span id="cb446-17"><a href="#cb446-17" aria-hidden="true"></a>  <span class="fu">\fi\processRow</span>}<span class="co">%</span></span>
+<span id="cb446-18"><a href="#cb446-18" aria-hidden="true"></a><span class="fu">\def\processColumn</span>#1{<span class="co">%</span></span>
+<span id="cb446-19"><a href="#cb446-19" aria-hidden="true"></a>  column number <span class="fu">\the\columnCounter</span>{}</span>
+<span id="cb446-20"><a href="#cb446-20" aria-hidden="true"></a>  <span class="fu">\ifnum\rowCounter</span>=0<span class="fu">\relax</span></span>
+<span id="cb446-21"><a href="#cb446-21" aria-hidden="true"></a>    <span class="fu">\if</span>#1d{}has default alignment<span class="fu">\fi</span></span>
+<span id="cb446-22"><a href="#cb446-22" aria-hidden="true"></a>    <span class="fu">\if</span>#1l{}is left-aligned<span class="fu">\fi</span></span>
+<span id="cb446-23"><a href="#cb446-23" aria-hidden="true"></a>    <span class="fu">\if</span>#1c{}is centered<span class="fu">\fi</span></span>
+<span id="cb446-24"><a href="#cb446-24" aria-hidden="true"></a>    <span class="fu">\if</span>#1r{}is right-aligned<span class="fu">\fi</span></span>
+<span id="cb446-25"><a href="#cb446-25" aria-hidden="true"></a>  <span class="fu">\else</span></span>
+<span id="cb446-26"><a href="#cb446-26" aria-hidden="true"></a>    says <span class="fu">\emph</span>{#1}<span class="co">%</span></span>
+<span id="cb446-27"><a href="#cb446-27" aria-hidden="true"></a>  <span class="fu">\fi</span></span>
+<span id="cb446-28"><a href="#cb446-28" aria-hidden="true"></a>  <span class="fu">\advance\columnCounter</span> by 1<span class="fu">\relax</span></span>
+<span id="cb446-29"><a href="#cb446-29" aria-hidden="true"></a>  <span class="fu">\ifnum\columnCounter</span><<span class="fu">\columnTotal\relax</span>, <span class="fu">\fi</span></span>
+<span id="cb446-30"><a href="#cb446-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="cb446-31"><a href="#cb446-31" aria-hidden="true"></a>  <span class="fu">\ifnum\columnCounter</span>><span class="fu">\columnTotal\relax</span></span>
+<span id="cb446-32"><a href="#cb446-32" aria-hidden="true"></a>    .<span class="fu">\expandafter\@gobble</span></span>
+<span id="cb446-33"><a href="#cb446-33" aria-hidden="true"></a>  <span class="fu">\fi\processColumn</span>}<span class="co">%</span></span>
+<span id="cb446-34"><a href="#cb446-34" aria-hidden="true"></a><span class="fu">\makeatother</span></span>
+<span id="cb446-35"><a href="#cb446-35" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb446-36"><a href="#cb446-36" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb446-37"><a href="#cb446-37" aria-hidden="true"></a>    table = {<span class="co">%</span></span>
+<span id="cb446-38"><a href="#cb446-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="cb446-39"><a href="#cb446-39" aria-hidden="true"></a>      and #2 rows long.</span>
+<span id="cb446-40"><a href="#cb446-40" aria-hidden="true"></a>      <span class="fu">\rowCounter</span>=0<span class="co">%</span></span>
+<span id="cb446-41"><a href="#cb446-41" aria-hidden="true"></a>      <span class="fu">\def\rowTotal</span>{#2}<span class="co">%</span></span>
+<span id="cb446-42"><a href="#cb446-42" aria-hidden="true"></a>      <span class="fu">\def\columnTotal</span>{#3}<span class="co">%</span></span>
+<span id="cb446-43"><a href="#cb446-43" aria-hidden="true"></a>      <span class="fu">\processRow</span></span>
+<span id="cb446-44"><a href="#cb446-44" aria-hidden="true"></a>    },</span>
+<span id="cb446-45"><a href="#cb446-45" aria-hidden="true"></a>  },</span>
+<span id="cb446-46"><a href="#cb446-46" aria-hidden="true"></a>}</span>
+<span id="cb446-47"><a href="#cb446-47" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb446-48"><a href="#cb446-48" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb446-49"><a href="#cb446-49" aria-hidden="true"></a>| Right | Left | Default | Center |</span>
+<span id="cb446-50"><a href="#cb446-50" aria-hidden="true"></a>|------:|:-----|---------|:------:|</span>
+<span id="cb446-51"><a href="#cb446-51" aria-hidden="true"></a>|   12  |  12  |    12   |    12  |</span>
+<span id="cb446-52"><a href="#cb446-52" aria-hidden="true"></a>|  123  |  123 |   123   |   123  |</span>
+<span id="cb446-53"><a href="#cb446-53" aria-hidden="true"></a>|    1  |    1 |     1   |     1  |</span>
+<span id="cb446-54"><a href="#cb446-54" aria-hidden="true"></a></span>
+<span id="cb446-55"><a href="#cb446-55" aria-hidden="true"></a>  : Demonstration of pipe table syntax</span>
+<span id="cb446-56"><a href="#cb446-56" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb446-57"><a href="#cb446-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="cb424"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb424-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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 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 id="inline-html-comment-renderer"><span class="header-section-number">2.3.1.22</span> Inline HTML Comment Renderer</h4>
+<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>
 <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 id="latex-example-53" class="unnumbered"><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="cb425"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb425-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb425-2" data-line-number="2"><span class="bu">\usepackage</span>[html]{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb425-3" data-line-number="3"><span class="bu">\usepackage</span>{<span class="ex">marginnote</span>}</a>
-<a class="sourceLine" id="cb425-4" data-line-number="4"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb425-5" data-line-number="5">  renderers = {</a>
-<a class="sourceLine" id="cb425-6" data-line-number="6">    inlineHtmlComment = {<span class="fu">\marginnote</span>{#1}},</a>
-<a class="sourceLine" id="cb425-7" data-line-number="7">  },</a>
-<a class="sourceLine" id="cb425-8" data-line-number="8">}</a>
-<a class="sourceLine" id="cb425-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb425-10" data-line-number="10"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb425-11" data-line-number="11">A useful use of HTML comments are side notes.</a>
-<a class="sourceLine" id="cb425-12" data-line-number="12"><!-- Side notes are displayed in the horizontal margins next to the relevant</a>
-<a class="sourceLine" id="cb425-13" data-line-number="13">passages, which makes them easier for the reader to find than footnotes. --></a>
-<a class="sourceLine" id="cb425-14" data-line-number="14"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb425-15" data-line-number="15"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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="bu">\documentclass</span>{<span class="ex">article</span>}</span>
+<span id="cb448-2"><a href="#cb448-2" aria-hidden="true"></a><span class="bu">\usepackage</span>[html]{<span class="ex">markdown</span>}</span>
+<span id="cb448-3"><a href="#cb448-3" aria-hidden="true"></a><span class="bu">\usepackage</span>{<span class="ex">marginnote</span>}</span>
+<span id="cb448-4"><a href="#cb448-4" aria-hidden="true"></a><span class="fu">\markdownSetup</span>{</span>
+<span id="cb448-5"><a href="#cb448-5" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb448-6"><a href="#cb448-6" aria-hidden="true"></a>    inlineHtmlComment = {<span class="fu">\marginnote</span>{#1}},</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><span class="kw">\begin</span>{<span class="ex">document</span>}</span>
+<span id="cb448-10"><a href="#cb448-10" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown</span>}</span>
+<span id="cb448-11"><a href="#cb448-11" aria-hidden="true"></a>A useful use of HTML comments are side notes.</span>
+<span id="cb448-12"><a href="#cb448-12" aria-hidden="true"></a><!-- Side notes are displayed in the horizontal margins next to the relevant</span>
+<span id="cb448-13"><a href="#cb448-13" aria-hidden="true"></a>passages, which makes them easier for the reader to find than footnotes. --></span>
+<span id="cb448-14"><a href="#cb448-14" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb448-15"><a href="#cb448-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="cb426"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb426-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a>
-<a class="sourceLine" id="cb426-2" data-line-number="2"><span class="ex">lualatex</span> document.tex</a></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">lualatex</span> document.tex</span>
+<span id="cb449-2"><a href="#cb449-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>
@@ -5745,101 +6053,101 @@
 <blockquote>
 <p>Side notes are displayed in the horizontal margins next to the relevant passages, which makes them easier for the reader to find than footnotes.</p>
 </blockquote>
-<h3 id="token-renderer-prototypes"><span class="header-section-number">2.3.2</span> Token Renderer Prototypes</h3>
+<h3 data-number="2.3.2" id="token-renderer-prototypes"><span class="header-section-number">2.3.2</span> Token Renderer Prototypes</h3>
 <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 id="plain-tex-example-31" class="unnumbered">Plain <span class="tex">T<sub>e</sub>X</span> Example</h5>
+<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="cb427"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb427-1" data-line-number="1"><span class="fu">\input</span> markdown</a>
-<a class="sourceLine" id="cb427-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererTildePrototype{<span class="co">%</span></a>
-<a class="sourceLine" id="cb427-3" data-line-number="3">  Packages can specify token renderer prototypes.<span class="co">%</span></a>
-<a class="sourceLine" id="cb427-4" data-line-number="4">}</a>
-<a class="sourceLine" id="cb427-5" data-line-number="5"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb427-6" data-line-number="6">~</a>
-<a class="sourceLine" id="cb427-7" data-line-number="7"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb427-8" data-line-number="8"></a>
-<a class="sourceLine" id="cb427-9" data-line-number="9"><span class="fu">\def</span>\markdownRendererTilde{<span class="co">%</span></a>
-<a class="sourceLine" id="cb427-10" data-line-number="10">  User-defined token renderers take precedence.<span class="co">%</span></a>
-<a class="sourceLine" id="cb427-11" data-line-number="11">}</a>
-<a class="sourceLine" id="cb427-12" data-line-number="12"><span class="fu">\markdownBegin</span></a>
-<a class="sourceLine" id="cb427-13" data-line-number="13">~</a>
-<a class="sourceLine" id="cb427-14" data-line-number="14"><span class="fu">\markdownEnd</span></a>
-<a class="sourceLine" id="cb427-15" data-line-number="15"><span class="fu">\bye</span></a></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\markdownRendererTildePrototype</span>{<span class="co">%</span></span>
+<span id="cb450-3"><a href="#cb450-3" aria-hidden="true"></a>  Packages can specify token renderer prototypes.<span class="co">%</span></span>
+<span id="cb450-4"><a href="#cb450-4" aria-hidden="true"></a>}</span>
+<span id="cb450-5"><a href="#cb450-5" aria-hidden="true"></a><span class="fu">\markdownBegin</span></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><span class="fu">\markdownEnd</span></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><span class="fu">\def\markdownRendererTilde</span>{<span class="co">%</span></span>
+<span id="cb450-10"><a href="#cb450-10" aria-hidden="true"></a>  User-defined token renderers take precedence.<span class="co">%</span></span>
+<span id="cb450-11"><a href="#cb450-11" aria-hidden="true"></a>}</span>
+<span id="cb450-12"><a href="#cb450-12" aria-hidden="true"></a><span class="fu">\markdownBegin</span></span>
+<span id="cb450-13"><a href="#cb450-13" aria-hidden="true"></a>~</span>
+<span id="cb450-14"><a href="#cb450-14" aria-hidden="true"></a><span class="fu">\markdownEnd</span></span>
+<span id="cb450-15"><a href="#cb450-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="cb428"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb428-1" data-line-number="1"><span class="ex">luatex</span> document.tex</a></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>Packages can specify token renderer prototypes.</p>
 <p>User-defined token renderers take precedence.</p>
 </blockquote>
-<h5 id="latex-example-54" class="unnumbered"><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="cb429"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb429-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">article</span>}</a>
-<a class="sourceLine" id="cb429-2" data-line-number="2"><span class="bu">\usepackage</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb429-3" data-line-number="3"><span class="fu">\markdownSetup</span>{</a>
-<a class="sourceLine" id="cb429-4" data-line-number="4">  rendererPrototypes = {</a>
-<a class="sourceLine" id="cb429-5" data-line-number="5">    tilde = {Packages can specify token renderer prototypes.},</a>
-<a class="sourceLine" id="cb429-6" data-line-number="6">  },</a>
-<a class="sourceLine" id="cb429-7" data-line-number="7">}</a>
-<a class="sourceLine" id="cb429-8" data-line-number="8"><span class="kw">\begin</span>{<span class="ex">document</span>}</a>
-<a class="sourceLine" id="cb429-9" data-line-number="9"><span class="kw">\begin</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb429-10" data-line-number="10">~</a>
-<a class="sourceLine" id="cb429-11" data-line-number="11"><span class="kw">\end</span>{<span class="ex">markdown</span>}</a>
-<a class="sourceLine" id="cb429-12" data-line-number="12"></a>
-<a class="sourceLine" id="cb429-13" data-line-number="13"><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</a>
-<a class="sourceLine" id="cb429-14" data-line-number="14">  renderers = {</a>
-<a class="sourceLine" id="cb429-15" data-line-number="15">    tilde = {User-defined token renderers take precedence.},</a>
-<a class="sourceLine" id="cb429-16" data-line-number="16">  },</a>
-<a class="sourceLine" id="cb429-17" data-line-number="17">}</a>
-<a class="sourceLine" id="cb429-18" data-line-number="18">~</a>
-<a class="sourceLine" id="cb429-19" data-line-number="19"><span class="kw">\end</span>{<span class="ex">markdown*</span>}</a>
-<a class="sourceLine" id="cb429-20" data-line-number="20"><span class="kw">\end</span>{<span class="ex">document</span>}</a></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>{<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>  rendererPrototypes = {</span>
+<span id="cb452-5"><a href="#cb452-5" aria-hidden="true"></a>    tilde = {Packages can specify token renderer prototypes.},</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>~</span>
+<span id="cb452-11"><a href="#cb452-11" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown</span>}</span>
+<span id="cb452-12"><a href="#cb452-12" aria-hidden="true"></a></span>
+<span id="cb452-13"><a href="#cb452-13" aria-hidden="true"></a><span class="kw">\begin</span>{<span class="ex">markdown*</span>}{</span>
+<span id="cb452-14"><a href="#cb452-14" aria-hidden="true"></a>  renderers = {</span>
+<span id="cb452-15"><a href="#cb452-15" aria-hidden="true"></a>    tilde = {User-defined token renderers take precedence.},</span>
+<span id="cb452-16"><a href="#cb452-16" aria-hidden="true"></a>  },</span>
+<span id="cb452-17"><a href="#cb452-17" aria-hidden="true"></a>}</span>
+<span id="cb452-18"><a href="#cb452-18" aria-hidden="true"></a>~</span>
+<span id="cb452-19"><a href="#cb452-19" aria-hidden="true"></a><span class="kw">\end</span>{<span class="ex">markdown*</span>}</span>
+<span id="cb452-20"><a href="#cb452-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="cb430"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb430-1" data-line-number="1"><span class="ex">lualatex</span> document.tex</a></code></pre></div>
+<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>Packages can specify token renderer prototypes.</p>
 <p>User-defined token renderers take precedence.</p>
 </blockquote>
-<h5 id="context-example-41" class="unnumbered">Con<span class="tex">T<sub>e</sub>X</span>t Example</h5>
+<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="cb431"><pre class="sourceCode tex"><code class="sourceCode latex"><a class="sourceLine" id="cb431-1" data-line-number="1"><span class="fu">\usemodule</span>[t][markdown]</a>
-<a class="sourceLine" id="cb431-2" data-line-number="2"><span class="fu">\def</span>\markdownRendererTildePrototype{<span class="co">%</span></a>
-<a class="sourceLine" id="cb431-3" data-line-number="3">  Packages can specify token renderer prototypes.<span class="co">%</span></a>
-<a class="sourceLine" id="cb431-4" data-line-number="4">}</a>
-<a class="sourceLine" id="cb431-5" data-line-number="5"><span class="fu">\starttext</span></a>
-<a class="sourceLine" id="cb431-6" data-line-number="6"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb431-7" data-line-number="7">~</a>
-<a class="sourceLine" id="cb431-8" data-line-number="8"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb431-9" data-line-number="9"></a>
-<a class="sourceLine" id="cb431-10" data-line-number="10"><span class="fu">\def</span>\markdownRendererTilde{<span class="co">%</span></a>
-<a class="sourceLine" id="cb431-11" data-line-number="11">  User-defined token renderers take precedence.<span class="co">%</span></a>
-<a class="sourceLine" id="cb431-12" data-line-number="12">}</a>
-<a class="sourceLine" id="cb431-13" data-line-number="13"><span class="fu">\startmarkdown</span></a>
-<a class="sourceLine" id="cb431-14" data-line-number="14">~</a>
-<a class="sourceLine" id="cb431-15" data-line-number="15"><span class="fu">\stopmarkdown</span></a>
-<a class="sourceLine" id="cb431-16" data-line-number="16"><span class="fu">\stoptext</span></a></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\markdownRendererTildePrototype</span>{<span class="co">%</span></span>
+<span id="cb454-3"><a href="#cb454-3" aria-hidden="true"></a>  Packages can specify token renderer prototypes.<span class="co">%</span></span>
+<span id="cb454-4"><a href="#cb454-4" aria-hidden="true"></a>}</span>
+<span id="cb454-5"><a href="#cb454-5" aria-hidden="true"></a><span class="fu">\starttext</span></span>
+<span id="cb454-6"><a href="#cb454-6" aria-hidden="true"></a><span class="fu">\startmarkdown</span></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><span class="fu">\stopmarkdown</span></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><span class="fu">\def\markdownRendererTilde</span>{<span class="co">%</span></span>
+<span id="cb454-11"><a href="#cb454-11" aria-hidden="true"></a>  User-defined token renderers take precedence.<span class="co">%</span></span>
+<span id="cb454-12"><a href="#cb454-12" aria-hidden="true"></a>}</span>
+<span id="cb454-13"><a href="#cb454-13" aria-hidden="true"></a><span class="fu">\startmarkdown</span></span>
+<span id="cb454-14"><a href="#cb454-14" aria-hidden="true"></a>~</span>
+<span id="cb454-15"><a href="#cb454-15" aria-hidden="true"></a><span class="fu">\stopmarkdown</span></span>
+<span id="cb454-16"><a href="#cb454-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="cb432"><pre class="sourceCode sh"><code class="sourceCode bash"><a class="sourceLine" id="cb432-1" data-line-number="1"><span class="ex">context</span> document.tex</a></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>Packages can specify token renderer prototypes.</p>
 <p>User-defined token renderers take precedence.</p>
 </blockquote>
-<section class="footnotes">
+<section class="footnotes" role="doc-endnotes">
 <hr />
 <ol>
-<li id="fn1"><p>Here is the footnote.<a href="#fnref1" class="footnote-back">↩</a></p></li>
-<li id="fn2"><p>Here’s one with multiple blocks.</p>
+<li id="fn1" role="doc-endnote"><p>Here is the footnote.<a href="#fnref1" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
+<li id="fn2" role="doc-endnote"><p>Here’s one with multiple blocks.</p>
 <p>Subsequent paragraphs are indented to show that they belong to the previous footnote.</p>
 <pre><code>{ some.code }</code></pre>
-<p>The whole paragraph can be indented, or just the first line. In this way, multi-paragraph footnotes work like multi-paragraph list items.<a href="#fnref2" class="footnote-back">↩</a></p></li>
-<li id="fn3"><p>Here is the footnote.<a href="#fnref3" class="footnote-back">↩</a></p></li>
-<li id="fn4"><p>Here’s one with multiple blocks.</p>
+<p>The whole paragraph can be indented, or just the first line. In this way, multi-paragraph footnotes work like multi-paragraph list items.<a href="#fnref2" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
+<li id="fn3" role="doc-endnote"><p>Here is the footnote.<a href="#fnref3" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
+<li id="fn4" role="doc-endnote"><p>Here’s one with multiple blocks.</p>
 <p>Subsequent paragraphs are indented to show that they belong to the previous footnote.</p>
 <pre><code>{ some.code }</code></pre>
-<p>The whole paragraph can be indented, or just the first line. In this way, multi-paragraph footnotes work like multi-paragraph list items.<a href="#fnref4" class="footnote-back">↩</a></p></li>
-<li id="fn5"><p>Inlines notes are easier to write, since you don’t have to pick an identifier and move down to type the note.<a href="#fnref5" class="footnote-back">↩</a></p></li>
-<li id="fn6"><p>Inlines notes are easier to write, since you don’t have to pick an identifier and move down to type the note.<a href="#fnref6" class="footnote-back">↩</a></p></li>
+<p>The whole paragraph can be indented, or just the first line. In this way, multi-paragraph footnotes work like multi-paragraph list items.<a href="#fnref4" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
+<li id="fn5" role="doc-endnote"><p>Inlines notes are easier to write, since you don’t have to pick an identifier and move down to type the note.<a href="#fnref5" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
+<li id="fn6" role="doc-endnote"><p>Inlines notes are easier to write, since you don’t have to pick an identifier and move down to type the note.<a href="#fnref6" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
 </ol>
 </section>
 </body>

Modified: trunk/Master/texmf-dist/doc/generic/markdown/markdown.md
===================================================================
--- trunk/Master/texmf-dist/doc/generic/markdown/markdown.md	2021-10-01 16:30:06 UTC (rev 60666)
+++ trunk/Master/texmf-dist/doc/generic/markdown/markdown.md	2021-10-01 22:00:34 UTC (rev 60667)
@@ -2,7 +2,7 @@
 ---
 title:  Markdown Package User Manual
 author: Vít Novotný
-date:   v\markdownVersion{} (\markdownLastModified{})
+date:   \markdownVersion{} (\markdownLastModified{})
 ---
 
 
@@ -16,7 +16,7 @@
 containing markdown markup. Unlike other convertors, the Markdown package
 does not require any external programs, and makes it easy to redefine how each
 and every markdown element is rendered.  Creative abuse of the markdown
-syntax is encouraged. ;-)
+syntax is encouraged. 😉
 
  [markdown]: https://daringfireball.net/projects/markdown/basics
              (Daring Fireball: Markdown Basics)
@@ -36,11 +36,15 @@
 Requirements
 ------------
 
-The package requires a working \TeX{} distribution. [\TeX{} Live][tl] ≥ 2013 is
-known to work and so are recent installation of [Mik\TeX{}][mik]. If you are
-using a minimal installation of a \TeX{} distribution, please consult the
-[technical documentation][techdoc] for a detailed list of required packages.
+The package requires either [our official Docker image][docker], which contains
+the latest development version of the Markdown package, or a \TeX{}
+distribution: [\TeX{} Live][tl] ≥ 2018 is known to work with the current
+version of the Markdown package and so are recent versions of [Mik\TeX{}][mik].
+If you are using an older, incomplete, or atypical \TeX{} distribution, please
+consult the [technical documentation][techdoc] for a detailed list of
+requirements.
 
+ [docker]: https://hub.docker.com/r/witiko/markdown/tags (witiko/markdown - Docker Image)
  [tl]: https://www.tug.org/texlive/ (TeX Live - TeX Users Group)
  [mik]: https://miktex.org/ (Home - MiKTeXorg)
 
@@ -47,25 +51,23 @@
 Installation
 ------------
 
-The package comes pre-installed with [\TeX{} Live][tl] ≥ 2016 and with recent
-installations of [MikTeX][mik]. Unless you explicitly wish to use the latest
-version of the package, you are encouraged to skip this step.
+If Markdown is not included in your \TeX{} distribution, you will need to
+install it.
 
-To install the package, first download the package from the repository
-using Git:
+First, download the package from the repository using Git:
 ``` sh
 git clone https://github.com/witiko/markdown
 ``````
-Next, enter the directory named `markdown` and interpret the file named
-`markdown.ins` file using a Unicode-aware \TeX{} engine, such as XeTeX or
-LuaTeX:
+Next, enter the directory named `markdown` and run the `make base` command using
+GNU Make:
 ``` sh
 cd markdown
-luatex markdown.ins
+make base
 ``````
 This should produce the following files:
 
  * `markdown.lua`, the Lua module,
+ * `libraries/markdown-tinyyaml.lua`, an external library for reading \acro{yaml},
  * `markdown-cli.lua`, the Lua command-line interface,
  * `markdown.tex`, the plain \TeX{} macro package,
  * `markdown.sty`, the \LaTeX{} package,
@@ -80,16 +82,17 @@
 directory structure. This is generally where the individual files should be
 placed:
 
- * `<TEXMF>/tex/luatex/markdown/markdown.lua`
- * `<TEXMF>/scripts/markdown/markdown-cli.lua`
- * `<TEXMF>/tex/generic/markdown/markdown.tex`
- * `<TEXMF>/tex/latex/markdown/markdown.sty`
- * `<TEXMF>/tex/latex/markdown/markdownthemewitiko_dot.sty`
- * `<TEXMF>/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty`
- * `<TEXMF>/tex/latex/markdown/markdownthemewitiko_tilde.sty`
- * `<TEXMF>/tex/context/third/markdown/t-markdown.tex`
+ * `⟨TEXMF⟩/tex/luatex/markdown/markdown.lua`
+ * `⟨TEXMF⟩/tex/luatex/markdown/markdown-tinyyaml.lua`
+ * `⟨TEXMF⟩/scripts/markdown/markdown-cli.lua`
+ * `⟨TEXMF⟩/tex/generic/markdown/markdown.tex`
+ * `⟨TEXMF⟩/tex/latex/markdown/markdown.sty`
+ * `⟨TEXMF⟩/tex/latex/markdown/markdownthemewitiko_dot.sty`
+ * `⟨TEXMF⟩/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty`
+ * `⟨TEXMF⟩/tex/latex/markdown/markdownthemewitiko_tilde.sty`
+ * `⟨TEXMF⟩/tex/context/third/markdown/t-markdown.tex`
 
-where `<TEXMF>` corresponds to a root of your \TeX{} distribution, such as
+where `⟨TEXMF⟩` corresponds to a root of your \TeX{} distribution, such as
 `/usr/share/texmf` and `~/texmf` on UN\*X systems or
 `C:\Users\`\meta{Your username}`\texmf` on Windows systems. When in doubt,
 consult the manual of your \TeX{} distribution.
@@ -113,6 +116,15 @@
 document in \TeX{}. This will serve as our first hands-on experience with the
 package and also as a reassurance that the package has been correctly installed.
 
+If you are using [our official Docker image][docker], you need to prefix all
+commands in this section with `docker run --rm -v "$PWD"/workdir:/workdir -w
+/workdir witiko/markdown`. For example, instead of `luatex document.tex`, you
+would execute the following command:
+``` sh
+docker run --rm -v "$PWD"/workdir:/workdir -w /workdir witiko/markdown \
+  luatex document.tex
+``````
+
 ### Using Lua
 
 Using a text editor, create a text document named `document.tex` with the
@@ -281,7 +293,7 @@
 Each part will be shown by example, leaving the implementation details to the
 [technical documentation][techdoc].
 
- [techdoc]: http://mirrors.ctan.org/macros/generic/markdown/markdown.pdf
+ [techdoc]: https://mirrors.ctan.org/macros/generic/markdown/markdown.pdf
             (A Markdown Interpreter for \TeX{})
 
 /markdown-interfaces.md

Modified: trunk/Master/texmf-dist/doc/generic/markdown/markdown.pdf
===================================================================
(Binary files differ)

Added: trunk/Master/texmf-dist/doc/generic/markdown/markdown.png
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/generic/markdown/markdown.png
===================================================================
--- trunk/Master/texmf-dist/doc/generic/markdown/markdown.png	2021-10-01 16:30:06 UTC (rev 60666)
+++ trunk/Master/texmf-dist/doc/generic/markdown/markdown.png	2021-10-01 22:00:34 UTC (rev 60667)

Property changes on: trunk/Master/texmf-dist/doc/generic/markdown/markdown.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/latex/markdown/examples/example.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/markdown/examples/example.md	2021-10-01 16:30:06 UTC (rev 60666)
+++ trunk/Master/texmf-dist/doc/latex/markdown/examples/example.md	2021-10-01 22:00:34 UTC (rev 60667)
@@ -1,12 +1,13 @@
-This is an H1
-=============
+# This is an H1
 
-This is an H2
--------------
+## This is an H2
 
 ### This is an H3
+
 #### This is an H4
+
 ##### This is an H5
+
 ###### This is an H6
 
 This is a text paragraph containing an ellipsis ... and followed by a horizontal rule.
@@ -40,46 +41,57 @@
 
 This is a bullet list:
 
-  * The first item of a bullet list
+* The first item of a bullet list
 
-    that spans several paragraphs,
-  * the second item of a bullet list,
-  * the third item of a bullet list.
+  that spans several paragraphs,
+* the second item of a bullet list,
+* the third item of a bullet list.
 
 This is a compact bullet list:
 
-  * The first item of a bullet list,
-  * the second item of a bullet list,
-  * the third item of a bullet list.
+* The first item of a bullet list,
+* the second item of a bullet list,
+* the third item of a bullet list.
 
 This is an ordered list:
 
-  5. The first item of an ordered list
+5. The first item of an ordered list
 
-     that spans several paragraphs,
-  6. the second item of an ordered list,
-  7. the third item of an ordered list.
+   that spans several paragraphs,
+6. the second item of an ordered list,
+7. the third item of an ordered list.
 
 This is an ordered list using hash enumerators:
 
-  #. The first item of an ordered list
+#. The first item of an ordered list
 
-     that spans several paragraphs,
-  #. the second item of an ordered list,
-  #. the third item of an ordered list.
+   that spans several paragraphs,
+#. the second item of an ordered list,
+#. the third item of an ordered list.
 
 This is a compact ordered list:
 
-  5. The first item of an ordered list,
-  6. the second item of an ordered list,
-  7. the third item of an ordered list.
+5. The first item of an ordered list,
+6. the second item of an ordered list,
+7. the third item of an ordered list.
 
 This is a compact ordered list using hash enumerators:
 
-  #. The first item of an ordered list,
-  #. the second item of an ordered list,
-  #. the third item of an ordered list.
+#. The first item of an ordered list,
+#. the second item of an ordered list,
+#. the third item of an ordered list.
 
+This is a task list:
+
+* [ ] Some unfinished task
+* [/] Some half-finished task
+* [X] Some finished task
+* An item of an unordered list
+    #. [ ] Some unfinished subtask
+    #. [.] Some half-finished subtask
+    #. [x] Some finished subtask
+    #. An item of an ordered list
+
 This is a definition list:
 
 Term 1
@@ -86,12 +98,12 @@
 
 :   Definition 1
 
-*Term 2*
+Term 2
 
 :   Definition 2
-    
+
         Some code, part of Definition 2
-    
+
     Third paragraph of Definition 2.
 
 :   Definition 3
@@ -100,7 +112,7 @@
 
 Term 1
 :   Definition 1
-*Term 2*
+Term 2
 :   Definition 2
 :   Definition 3
 

Modified: trunk/Master/texmf-dist/doc/latex/markdown/examples/latex.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/markdown/examples/latex.tex	2021-10-01 16:30:06 UTC (rev 60666)
+++ trunk/Master/texmf-dist/doc/latex/markdown/examples/latex.tex	2021-10-01 22:00:34 UTC (rev 60667)
@@ -20,12 +20,21 @@
   definitionLists,
   footnotes,
   inlineFootnotes,
+  jekyllData,
   smartEllipses,
   fencedCode,
   contentBlocks,
   pipeTables,
   tableCaptions,
+  taskLists,
 ]{markdown}
+\begin{markdown*}{hybrid}
+---
+title:  An Example *Markdown* Document
+author: Vít Novotný
+date:   \today
+---
+\end{markdown*}
 \begin{document}
 % Typeset the document `example.md` by letting the Markdown package handle
 % the conversion internally.

Modified: trunk/Master/texmf-dist/scripts/markdown/markdown-cli.lua
===================================================================
--- trunk/Master/texmf-dist/scripts/markdown/markdown-cli.lua	2021-10-01 16:30:06 UTC (rev 60666)
+++ trunk/Master/texmf-dist/scripts/markdown/markdown-cli.lua	2021-10-01 22:00:34 UTC (rev 60667)
@@ -58,12 +58,12 @@
 -- those in the standard .ins files.
 -- 
 local metadata = {
-    version   = "2.10.1",
+    version   = "2.11.0-0-g4505824",
     comment   = "A module for the conversion from markdown to plain TeX",
     author    = "John MacFarlane, Hans Hagen, Vít Novotný",
     copyright = {"2009-2016 John MacFarlane, Hans Hagen",
                  "2016-2021 Vít Novotný"},
-    license   = "LPPL 1.3"
+    license   = "LPPL 1.3c"
 }
 
 local defaultOptions = {}
@@ -88,6 +88,7 @@
 defaultOptions.html = false
 defaultOptions.hybrid = false
 defaultOptions.inlineFootnotes = false
+defaultOptions.jekyllData = false
 defaultOptions.pipeTables = false
 defaultOptions.preserveTabs = false
 defaultOptions.shiftHeadings = 0
@@ -96,6 +97,7 @@
 defaultOptions.startNumber = true
 defaultOptions.stripIndent = false
 defaultOptions.tableCaptions = false
+defaultOptions.taskLists = false
 defaultOptions.texComments = false
 defaultOptions.tightLists = true
 defaultOptions.underscores = true

Modified: trunk/Master/texmf-dist/source/generic/markdown/markdown.dtx
===================================================================
--- trunk/Master/texmf-dist/source/generic/markdown/markdown.dtx	2021-10-01 16:30:06 UTC (rev 60666)
+++ trunk/Master/texmf-dist/source/generic/markdown/markdown.dtx	2021-10-01 22:00:34 UTC (rev 60667)
@@ -1,12 +1,13 @@
 % \iffalse
+%<@@=markdown>
 %<*driver>
 \documentclass{ltxdockit}
 \usepackage[american]{babel}
-\usepackage{amsmath,btxdockit,doc,fancyvrb,graphicx,hologo,microtype,minted}
+\usepackage{amsmath,btxdockit,doc,fancyvrb,graphicx,hologo,microtype,minted,varioref}
+
+% Set up the style.
 \usepackage{fontspec}
 \defaultfontfeatures[\rmfamily,\sffamily,\ttfamily]{}
-
-% Set up the style.
 \emergencystretch=1em
 \fvset{gobble=0,frame=single}
 \setcounter{secnumdepth}{4}
@@ -30,29 +31,47 @@
 
 % Define some markup.
 \let\pkg\relax % A package name
+\def\inline#1{% Inline code
+  \textcolor{spot}{\text{\texttt{#1}}}}
+\newcommand\acro[1]{% An acronym
+  \textsc{\MakeLowercase{#1}}}
+
+% Set up index.
+\DisableCrossrefs
+\usepackage{makeidx}
+\usepackage[columns=1, totoc]{idxlayout}
+\makeindex
+
 \newcommand\mdef[1]{% A TeX macro definition
+  \index{#1@\cs{#1}|textit}%
   \phantomsection\label{macro:#1}\textcolor{spot}{\cs{#1}}}
-\newcommand\m[1]{% A TeX macro reference
+\newcommand\mref[1]{% A TeX macro reference
+  \index{#1@\cs{#1}}%
   \hyperref[macro:#1]{\textcolor{spot}{\cs{#1}}}}
-\newcommand\envmdef[1]{% A TeX macro definition
-  \phantomsection\label{environment:#1}\t`#1`}
-\newcommand\envm[1]{% A LaTeX environment reference
-  \hyperref[environment:#1]{\t`#1`}}
+
+\newcommand\envmdef[1]{% A LaTeX environment definition
+  \index{#1@\texttt{#1}|textit}%
+  \phantomsection\label{environment:#1}\inline{#1}}
+\newcommand\envmref[1]{% A LaTeX environment reference
+  \index{#1@\texttt{#1}}%
+  \hyperref[environment:#1]{\inline{#1}}}
+
 \newcommand\luamdef[1]{% A Lua object / method definition
-  \phantomsection\label{lua:#1}\t`#1`}
-\newcommand\luam[1]{% A Lua object / method reference
-  \hyperref[lua:#1]{\t`#1`}}
-\def\inline#1{% Inline code
-  \textcolor{spot}{\text{\texttt{#1}}}}
-\def\t`#1`{\inline{#1}}
+  \index{#1@\texttt{#1}|textit}%
+  \phantomsection\label{lua:#1}\inline{#1}}
+\newcommand\luamref[1]{% A Lua object / method reference
+  \index{#1@\texttt{#1}}%
+  \hyperref[lua:#1]{\inline{#1}}}
+
 \newcommand\Optitem[2][]{\penalty -1000\relax % An option item definition
+  \index{#2@\texttt{#2}|textit}%
   \phantomsection\label{opt:#2}\optitem[#1]{#2}}
 \newcommand\Valitem[2][]{\penalty -1000\relax % A value item definition
+  \index{#2@\texttt{#2}}%
   \phantomsection\label{opt:#2}\valitem[#1]{#2}}
 \newcommand\Opt[1]{% An option / value item reference
-  \hyperref[opt:#1]{\t`#1`}}
-\newcommand\acro[1]{% An acronym
-  \textsc{\MakeLowercase{#1}}}
+  \index{#1@\texttt{#1}}%
+  \hyperref[opt:#1]{\inline{#1}}}
 
 % Set up markdown.
 \usepackage[
@@ -62,23 +81,24 @@
   headerAttributes,
   hybrid,
   html,
+  jekyllData,
   stripPercentSigns,
   underscores=false,
   theme=witiko/dot,
   theme=witiko/graphicx/http,
+  theme=witiko/markdown/techdoc,
 ]{markdown}
-\markdownSetup{
-  renderers = {
-    codeSpan = {\inline{#1}},
-    link = {#1\footnote{See \url{#3}.}},
-    headingFour = {%
-      \paragraph{#1}\leavevmode
-      \def\markdownRendererInterblockSeparator{%
-        \let\markdownRendererInterblockSeparator\par
-      }%
-      \noindent
-    },
-  },
+
+% Set up Unicode characters.
+\usepackage{newunicodechar}
+\newunicodechar{☒}{\markdownRendererTickedBox}
+\newunicodechar{⌛}{\markdownRendererHalfTickedBox}
+\newunicodechar{☐}{\markdownRendererUntickedBox}
+\IfFileExists{emoji.sty}{
+  \usepackage{emoji}
+  \newunicodechar{😉}{\emoji{winking-face}}
+}{
+  \newunicodechar{😉}{;-)}
 }
 
 % Set up the catcodes.
@@ -86,94 +106,24 @@
 \catcode`\^^B=8 % When we occasionally need subscripts , we will use `^^B` (STX).
 
 % Set up the title page.
-\titlepage{%
-  title={A Markdown Interpreter for \TeX{}},
-  subtitle={},
-  url={https://github.com/witiko/markdown},
-  author={Vít Novotný},
-  email={witiko at mail.muni.cz},
-  revision=\markdownVersion,
-  date={\today}}
-\hypersetup{%
-  pdftitle={A Markdown Interpreter for \TeX{}},
-  pdfauthor={Vít Novotný}}
+\begin{markdown}
+---
+title:    A Markdown Interpreter for \TeX
+url:      https://github.com/witiko/markdown
+author:   Vít Novotný
+email:    witiko at mail.muni.cz
+revision: \markdownVersion
+date:     \markdownLastModified
+---
+\end{markdown}
 \CodelineIndex
 
+% Set up the figures.
+\usepackage{tikz}
+\usepackage{mathabx,pgf-umlsd,tikz}
+\usetikzlibrary{automata,arrows.meta,positioning,shapes.geometric}
+
 % Set up the bibliography.
-\begin{filecontents}[overwrite,nosearch,noheader]{markdown.bib}
- at book{tantau21,
-  author    = {Till Tantau and Joseph Wright and Vedran Miletić},
-  title     = {The Beamer class},
-  date      = {2021-02-10},
-  url       = {http://mirrors.ctan.org/macros/latex/contrib/beamer/doc/beameruserguide.pdf},
-  urldate   = {2021-02-11}}
- at online{sotkov17,
-  author    = {Sotkov, Anton},
-  title     = {File transclusion syntax for Markdown},
-  date      = {2017-01-19},
-  url       = {https://github.com/iainc/Markdown-Content-Blocks},
-  urldate   = {2018-01-08}}
- at book{luatex17,
-  author    = {{Lua\TeX{} development team}},
-  title     = {Lua\TeX{} reference manual},
-  year      = {2017},
-  month     = {2},
-  url       = {http://www.luatex.org/svn/trunk/manual/luatex.pdf},
-  urldate   = {2018-01-08}}
- at book{latex17,
-  author    = {Braams, Johannes and Carlisle, David and Jeffrey, Alan and
-               Lamport, Leslie and Mittelbach, Frank and Rowley, Chris and
-               Schöpf, Rainer},
-  title     = {The \Hologo{LaTeX2e} Sources},
-  date      = {2017-04-15},
-  url       = {http://mirrors.ctan.org/macros/latex/base/source2e.pdf},
-  urldate   = {2018-01-08}}
- at book{mittelbach17,
-  author    = {Mittelbach, Frank},
-  title     = {The \texttt{doc} and \texttt{shortvrb} Packages},
-  date      = {2017-04-15},
-  url       = {http://mirrors.ctan.org/macros/latex/base/doc.pdf},
-  urldate   = {2018-02-19}}
- at book{poore17,
-  author    = {Poore, Geoffrey M.},
-  title     = {The \texttt{minted} Package},
-  subtitle  = {Highlighted source code in \LaTeX},
-  date      = {2017-07-19},
-  version   = {v2.5},
-  url       = {http://mirrors.ctan.org/macros/latex/contrib/minted/minted.pdf},
-  urldate   = {2020-09-01}}
- at online{novotny15,
-  author    = {Novotný, Vít},
-  year      = {2015},
-  title     = {TeXový interpret jazyka Markdown (markdown.sty)},
-  location  = {Brno, Czech Republic},
-  publisher = {Masaryk University},
-  url       = {https://www.muni.cz/en/research/projects/32984},
-  urldate   = {2018-02-19}}
- at book{ierusalimschy13,
-  author    = {Ierusalimschy, Roberto},
-  year      = {2013},
-  title     = {Programming in Lua},
-  edition   = {3},
-  isbn      = {978-85-903798-5-0},
-  pagetotal = {xviii, 347},
-  location  = {Rio de Janeiro},
-  publisher = {PUC-Rio}}
- at book{knuth86,
-  author    = {Knuth, Donald Ervin},
-  year      = {1986},
-  title     = {The \TeX{}book},
-  edition   = {3},
-  isbn      = {0-201-13447-0},
-  pagetotal = {ix, 479},
-  publisher = {Addison-Wesley}}
- at online{novotny21,
-  author    = {Novotný, Vít},
-  title     = {\Hologo{LaTeX2e} no longer keys packages by pathnames},
-  date      = {2021-02-20},
-  url       = {https://github.com/latex3/latex2e/issues/510},
-  urldate   = {2021-02-21}}
-\end{filecontents}
 \usepackage[
   backend=biber,
   style=numeric,
@@ -183,10 +133,9 @@
 \addbibresource{markdown.bib}
 
 \begin{document}
-\printtitlepage
-\tableofcontents
 \DocInput{markdown.dtx}
-\printbibliography
+\printbibliography[heading=bibintoc]
+\printindex
 \end{document}
 %</driver>
 %<*manual-css>
@@ -542,12 +491,329 @@
 }
 
 %</manual-css>
+%<*techdoc-block-diagram>
+\begingroup
+\ifx\du\undefined\newlength{\du}\fi
+\setlength{\du}{15\unitlength}
+\begin{tikzpicture}
+\pgftransformxscale{1.000000}
+\pgftransformyscale{-1.23800}
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\definecolor{dialinecolor}{rgb}{1.000000, 1.000000, 1.000000}
+\pgfsetfillcolor{dialinecolor}
+\definecolor{dialinecolor}{rgb}{1.000000, 1.000000, 1.000000}
+\pgfsetfillcolor{dialinecolor}
+\fill (4.282853\du,-3.750000\du)--(4.282853\du,-1.850000\du)--(11.971656\du,-1.850000\du)--(11.971656\du,-3.750000\du)--cycle;
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetmiterjoin
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (4.282853\du,-3.750000\du)--(4.282853\du,-1.850000\du)--(11.971656\du,-1.850000\du)--(11.971656\du,-3.750000\du)--cycle;
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\node at (8.127254\du,-2.705000\du){\LaTeX{} layer};
+\definecolor{dialinecolor}{rgb}{1.000000, 1.000000, 1.000000}
+\pgfsetfillcolor{dialinecolor}
+\fill (-5.055135\du,-3.788555\du)--(-5.055135\du,-1.888555\du)--(2.894865\du,-1.888555\du)--(2.894865\du,-3.788555\du)--cycle;
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetmiterjoin
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (-5.055135\du,-3.788555\du)--(-5.055135\du,-1.888555\du)--(2.894865\du,-1.888555\du)--(2.894865\du,-3.788555\du)--cycle;
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\node at (-1.080135\du,-2.743555\du){\Hologo{ConTeXt} layer};
+\definecolor{dialinecolor}{rgb}{1.000000, 1.000000, 1.000000}
+\pgfsetfillcolor{dialinecolor}
+\fill (-8.200000\du,-0.224996\du)--(-8.200000\du,1.675004\du)--(11.870000\du,1.675004\du)--(11.870000\du,-0.224996\du)--cycle;
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetmiterjoin
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (-8.200000\du,-0.224996\du)--(-8.200000\du,1.675004\du)--(11.870000\du,1.675004\du)--(11.870000\du,-0.224996\du)--cycle;
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\node at (1.835000\du,0.820004\du){Plain \TeX{} layer};
+\definecolor{dialinecolor}{rgb}{1.000000, 1.000000, 1.000000}
+\pgfsetfillcolor{dialinecolor}
+\fill (-11.150000\du,3.325006\du)--(-11.150000\du,5.225006\du)--(11.800000\du,5.225006\du)--(11.800000\du,3.325006\du)--cycle;
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetmiterjoin
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (-11.150000\du,3.325006\du)--(-11.150000\du,5.225006\du)--(11.800000\du,5.225006\du)--(11.800000\du,3.325006\du)--cycle;
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\node at (0.325000\du,4.370006\du){Lua layer};
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetbuttcap
+{
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetfillcolor{dialinecolor}
+\pgfsetarrowsstart{stealth}
+\pgfsetarrowsend{stealth}
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (-9.906400\du,-5.181570\du)--(-9.937836\du,3.024193\du);
+}
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetbuttcap
+{
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetfillcolor{dialinecolor}
+\pgfsetarrowsstart{stealth}
+\pgfsetarrowsend{stealth}
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (-6.919693\du,-5.181570\du)--(-6.938734\du,-0.450800\du);
+}
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetbuttcap
+{
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetfillcolor{dialinecolor}
+\pgfsetarrowsstart{stealth}
+\pgfsetarrowsend{stealth}
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (-1.063746\du,-5.175791\du)--(-1.063746\du,-3.975793\du);
+}
+\definecolor{dialinecolor}{rgb}{1.000000, 1.000000, 1.000000}
+\pgfsetfillcolor{dialinecolor}
+\fill (-10.972500\du,-7.267480\du)--(-10.972500\du,-5.367480\du)--(11.977500\du,-5.367480\du)--(11.977500\du,-7.267480\du)--cycle;
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetmiterjoin
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (-10.972500\du,-7.267480\du)--(-10.972500\du,-5.367480\du)--(11.977500\du,-5.367480\du)--(11.977500\du,-7.267480\du)--cycle;
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\node at (0.502500\du,-6.322480\du){User code};
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetbuttcap
+{
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetfillcolor{dialinecolor}
+\pgfsetarrowsstart{stealth}
+\pgfsetarrowsend{stealth}
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (8.149986\du,-5.159541\du)--(8.149986\du,-3.959543\du);
+}
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetbuttcap
+{
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetfillcolor{dialinecolor}
+\pgfsetarrowsstart{stealth}
+\pgfsetarrowsend{stealth}
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (-1.074995\du,-1.634548\du)--(-1.074995\du,-0.434550\du);
+}
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetbuttcap
+{
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetfillcolor{dialinecolor}
+\pgfsetarrowsstart{stealth}
+\pgfsetarrowsend{stealth}
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (8.138736\du,-1.618298\du)--(8.138736\du,-0.418300\du);
+}
+\pgfsetlinewidth{0.040000\du}
+\pgfsetdash{}{0pt}
+\pgfsetdash{}{0pt}
+\pgfsetbuttcap
+{
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetfillcolor{dialinecolor}
+\pgfsetarrowsstart{stealth}
+\pgfsetarrowsend{stealth}
+\definecolor{dialinecolor}{rgb}{0.000000, 0.000000, 0.000000}
+\pgfsetstrokecolor{dialinecolor}
+\draw (1.689638\du,1.881695\du)--(1.689638\du,3.081693\du);
+}
+\end{tikzpicture}
+\endgroup
+%</techdoc-block-diagram>
+%<*techdoc-bibliography>
+ at book{tantau21,
+  author    = {Till Tantau and Joseph Wright and Vedran Miletić},
+  title     = {The Beamer class},
+  date      = {2021-02-10},
+  url       = {https://mirrors.ctan.org/macros/latex/contrib/beamer/doc/beameruserguide.pdf},
+  urldate   = {2021-02-11}}
+ at online{sotkov17,
+  author    = {Sotkov, Anton},
+  title     = {File transclusion syntax for Markdown},
+  date      = {2017-01-19},
+  url       = {https://github.com/iainc/Markdown-Content-Blocks},
+  urldate   = {2018-01-08}}
+ at book{luatex17,
+  author    = {{Lua\TeX{} development team}},
+  title     = {Lua\TeX{} reference manual},
+  year      = {2017},
+  month     = {2},
+  url       = {http://www.luatex.org/svn/trunk/manual/luatex.pdf},
+  urldate   = {2018-01-08}}
+ at book{latex17,
+  author    = {Braams, Johannes and Carlisle, David and Jeffrey, Alan and
+               Lamport, Leslie and Mittelbach, Frank and Rowley, Chris and
+               Schöpf, Rainer},
+  title     = {The \Hologo{LaTeX2e} Sources},
+  date      = {2017-04-15},
+  url       = {https://mirrors.ctan.org/macros/latex/base/source2e.pdf},
+  urldate   = {2018-01-08}}
+ at book{mittelbach17,
+  author    = {Mittelbach, Frank},
+  title     = {The \texttt{doc} and \texttt{shortvrb} Packages},
+  date      = {2017-04-15},
+  url       = {https://mirrors.ctan.org/macros/latex/base/doc.pdf},
+  urldate   = {2018-02-19}}
+ at book{poore17,
+  author    = {Poore, Geoffrey M.},
+  title     = {The \texttt{minted} Package},
+  subtitle  = {Highlighted source code in \LaTeX},
+  date      = {2017-07-19},
+  version   = {v2.5},
+  url       = {https://mirrors.ctan.org/macros/latex/contrib/minted/minted.pdf},
+  urldate   = {2020-09-01}}
+ at online{novotny15,
+  author    = {Novotný, Vít},
+  year      = {2015},
+  title     = {TeXový interpret jazyka Markdown (markdown.sty)},
+  location  = {Brno, Czech Republic},
+  publisher = {Masaryk University},
+  url       = {https://www.muni.cz/en/research/projects/32984},
+  urldate   = {2018-02-19}}
+ at book{ierusalimschy13,
+  author    = {Ierusalimschy, Roberto},
+  year      = {2013},
+  title     = {Programming in Lua},
+  edition   = {3},
+  isbn      = {978-85-903798-5-0},
+  pagetotal = {xviii, 347},
+  location  = {Rio de Janeiro},
+  publisher = {PUC-Rio}}
+ at book{knuth86,
+  author    = {Knuth, Donald Ervin},
+  year      = {1986},
+  title     = {The \TeX{}book},
+  edition   = {3},
+  isbn      = {0-201-13447-0},
+  pagetotal = {ix, 479},
+  publisher = {Addison-Wesley}}
+ at online{novotny21,
+  author    = {Novotný, Vít},
+  title     = {\Hologo{LaTeX2e} no longer keys packages by pathnames},
+  date      = {2021-02-20},
+  url       = {https://github.com/latex3/latex2e/issues/510},
+  urldate   = {2021-02-21}}
+%</techdoc-bibliography>
+%<*latex-themes-witiko-markdown-techdoc>
+\ProvidesPackage{markdownthemewitiko_markdown_techdoc}[2021/09/10]
+\RequirePackage{etoolbox}
+\markdownSetup{
+  renderers = {
+    codeSpan = {\inline{#1}},
+    link = {#1\footnote{See \url{#3}.}},
+    headingFour = {%
+      \paragraph{#1}\leavevmode
+      \def\markdownRendererInterblockSeparator{%
+        \let\markdownRendererInterblockSeparator\par
+      }%
+      \noindent
+    },
+    jekyllDataEnd = {%
+      \AfterEndPreamble{%
+        \printtitlepage
+        \tableofcontents
+        {\def\addcontentsline##1##2##3{}\listoffigures}%
+      }%
+    },
+  },
+}
+\markdownSetupSnippet{options}{
+  renderers = {
+    dlBegin = {\begin{optionlist}},
+    dlItem = {
+      #1
+      \begingroup
+      \markdownSetup{
+        renderers = {
+          dlBegin = {
+            \begingroup
+            \markdownSetup{
+              renderers = {
+                dlItem = {\item[####1]},
+                dlItemEnd = {}}}
+            \begin{valuelist}
+          },
+          dlEnd = {
+            \end{valuelist}
+            \endgroup
+          },
+        },
+      }%
+    },
+    dlItemEnd = {\endgroup},
+    dlEnd = {\end{optionlist}},
+  }
+}
+\RequirePackage{expl3}
+\ExplSyntaxOn
+\keys_define:nn
+  { markdown/jekyllData }
+  {
+    author   .code:n =
+      {
+        \gdef\ltd at title@author   { #1 }
+        \hypersetup{ pdfauthor = { #1 } }
+      },
+    title    .code:n =
+      {
+        \gdef\ltd at title@title    { #1 }
+        \gdef\ltd at title@subtitle {    }
+        \hypersetup{ pdftitle  = { #1 } }
+      },
+    date     .code:n = { \gdef\ltd at title@date     { #1 } },
+    email    .code:n = { \gdef\ltd at title@email    { #1 } },
+    revision .code:n = { \gdef\ltd at title@revision { #1 } },
+    url      .code:n = { \gdef\ltd at title@url      { #1 } },
+  }
+\ExplSyntaxOff
+%</latex-themes-witiko-markdown-techdoc>
 %<*manual>
 
 ---
 title:  Markdown Package User Manual
 author: Vít Novotný
-date:   v\markdownVersion{} (\markdownLastModified{})
+date:   \markdownVersion{} (\markdownLastModified{})
 ---
 
 % \fi
@@ -564,7 +830,7 @@
 containing markdown markup. Unlike other convertors, the Markdown package
 does not require any external programs, and makes it easy to redefine how each
 and every markdown element is rendered.  Creative abuse of the markdown
-syntax is encouraged. ;-)
+syntax is encouraged. 😉
 
  [markdown]: https://daringfireball.net/projects/markdown/basics
              (Daring Fireball: Markdown Basics)
@@ -573,8 +839,8 @@
 
 % This document is a technical documentation for the \pkg{Markdown} package. It
 % consists of three sections. This section introduces the package and outlines
-% its prerequisites. Section \ref{sec:interfaces} describes the interfaces
-% exposed by the package. Section \ref{sec:implementation} describes the
+% its prerequisites. Section \vref{sec:interfaces} describes the interfaces
+% exposed by the package. Section \vref{sec:implementation} describes the
 % implementation of the package. The technical documentation contains only a
 % limited number of tutorials and code examples. You can find more of these in
 % the [user manual.][manual]
@@ -597,12 +863,12 @@
 % \fi
 %  \begin{macrocode}
 local metadata = {
-    version   = "2.10.1",
+    version   = "$(VERSION)",
     comment   = "A module for the conversion from markdown to plain TeX",
     author    = "John MacFarlane, Hans Hagen, Vít Novotný",
     copyright = {"2009-2016 John MacFarlane, Hans Hagen",
                  "2016-2021 Vít Novotný"},
-    license   = "LPPL 1.3"
+    license   = "LPPL 1.3c"
 }
 
 %    \end{macrocode}
@@ -614,33 +880,6 @@
 if not modules then modules = { } end
 modules['markdown'] = metadata
 %    \end{macrocode}
-% \par
-% \begin{markdown}
-%
-% Feedback
-%---------
-% Please use the \pkg{Markdown} project page on
-% [GitHub](https://github.com/witiko/markdown/issues) to report bugs and submit
-% feature requests. If you do not want to report a bug or request a feature but
-% are simply in need of assistance, you might want to consider posting your
-% question on the [\TeX-\LaTeX{} Stack Exchange.](https://tex.stackexchange.com)
-%
-% Acknowledgements
-%-----------------
-% The Lunamark Lua module provides speedy markdown parsing for the package. I
-% would like to thank John Macfarlane, the creator of Lunamark, for releasing
-% Lunamark under a permissive license.
-%
-% Funding by the the Faculty of Informatics at the Masaryk~University
-% in~Brno~[@novotny15] is gratefully acknowledged.
-%
-% The \TeX{} implementation of the package draws inspiration from several
-% sources including the source code of \Hologo{LaTeX2e}, the \pkg{minted}
-% package by Geoffrey M. Poore, which likewise tackles the issue of
-% interfacing with an external interpreter from \TeX{}, the \pkg{filecontents}
-% package by Scott Pakin and others.
-%
-% \end{markdown}
 % \iffalse
 %</lua>
 %<*manual>
@@ -648,11 +887,15 @@
 Requirements
 ------------
 
-The package requires a working \TeX{} distribution. [\TeX{} Live][tl] ≥ 2013 is
-known to work and so are recent installation of [Mik\TeX{}][mik]. If you are
-using a minimal installation of a \TeX{} distribution, please consult the
-[technical documentation][techdoc] for a detailed list of required packages.
+The package requires either [our official Docker image][docker], which contains
+the latest development version of the Markdown package, or a \TeX{}
+distribution: [\TeX{} Live][tl] ≥ 2018 is known to work with the current
+version of the Markdown package and so are recent versions of [Mik\TeX{}][mik].
+If you are using an older, incomplete, or atypical \TeX{} distribution, please
+consult the [technical documentation][techdoc] for a detailed list of
+requirements.
 
+ [docker]: https://hub.docker.com/r/witiko/markdown/tags (witiko/markdown - Docker Image)
  [tl]: https://www.tug.org/texlive/ (TeX Live - TeX Users Group)
  [mik]: https://miktex.org/ (Home - MiKTeXorg)
 
@@ -659,25 +902,23 @@
 Installation
 ------------
 
-The package comes pre-installed with [\TeX{} Live][tl] ≥ 2016 and with recent
-installations of [MikTeX][mik]. Unless you explicitly wish to use the latest
-version of the package, you are encouraged to skip this step.
+If Markdown is not included in your \TeX{} distribution, you will need to
+install it.
 
-To install the package, first download the package from the repository
-using Git:
+First, download the package from the repository using Git:
 ``` sh
 git clone https://github.com/witiko/markdown
 ``````
-Next, enter the directory named `markdown` and interpret the file named
-`markdown.ins` file using a Unicode-aware \TeX{} engine, such as XeTeX or
-LuaTeX:
+Next, enter the directory named `markdown` and run the `make base` command using
+GNU Make:
 ``` sh
 cd markdown
-luatex markdown.ins
+make base
 ``````
 This should produce the following files:
 
  * `markdown.lua`, the Lua module,
+ * `libraries/markdown-tinyyaml.lua`, an external library for reading \acro{yaml},
  * `markdown-cli.lua`, the Lua command-line interface,
  * `markdown.tex`, the plain \TeX{} macro package,
  * `markdown.sty`, the \LaTeX{} package,
@@ -692,16 +933,17 @@
 directory structure. This is generally where the individual files should be
 placed:
 
- * `<TEXMF>/tex/luatex/markdown/markdown.lua`
- * `<TEXMF>/scripts/markdown/markdown-cli.lua`
- * `<TEXMF>/tex/generic/markdown/markdown.tex`
- * `<TEXMF>/tex/latex/markdown/markdown.sty`
- * `<TEXMF>/tex/latex/markdown/markdownthemewitiko_dot.sty`
- * `<TEXMF>/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty`
- * `<TEXMF>/tex/latex/markdown/markdownthemewitiko_tilde.sty`
- * `<TEXMF>/tex/context/third/markdown/t-markdown.tex`
+ * `⟨TEXMF⟩/tex/luatex/markdown/markdown.lua`
+ * `⟨TEXMF⟩/tex/luatex/markdown/markdown-tinyyaml.lua`
+ * `⟨TEXMF⟩/scripts/markdown/markdown-cli.lua`
+ * `⟨TEXMF⟩/tex/generic/markdown/markdown.tex`
+ * `⟨TEXMF⟩/tex/latex/markdown/markdown.sty`
+ * `⟨TEXMF⟩/tex/latex/markdown/markdownthemewitiko_dot.sty`
+ * `⟨TEXMF⟩/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty`
+ * `⟨TEXMF⟩/tex/latex/markdown/markdownthemewitiko_tilde.sty`
+ * `⟨TEXMF⟩/tex/context/third/markdown/t-markdown.tex`
 
-where `<TEXMF>` corresponds to a root of your \TeX{} distribution, such as
+where `⟨TEXMF⟩` corresponds to a root of your \TeX{} distribution, such as
 `/usr/share/texmf` and `~/texmf` on UN\*X systems or
 `C:\Users\`\meta{Your username}`\texmf` on Windows systems. When in doubt,
 consult the manual of your \TeX{} distribution.
@@ -788,8 +1030,15 @@
 % \begin{markdown}
 %
 % All the abovelisted modules are statically linked into the current version of
-% the Lua\TeX{} engine~[@luatex17, Section 3.3].
+% the Lua\TeX{} engine~[@luatex17, Section 3.3]. Beside these, we also carry
+% the following third-party Lua libraries:
 %
+% \pkg{api7/lua-tinyyaml}
+%
+%:    A library that provides a regex-based recursive descent \acro{yaml}
+%     (subset) parser that is used to read \acro{yaml} metadata when the
+%     \Opt{jekyllData} option is enabled.
+%
 % \end{markdown}
 % \iffalse
 %</lua>
@@ -802,17 +1051,17 @@
 % \label{sec:texprerequisites}
 % The plain \TeX{} part of the package requires that the plain \TeX{}
 % format (or its superset) is loaded, all the Lua prerequisites (see
-% Section \ref{sec:luaprerequisites}), and the following Lua module:
+% Section \vref{sec:luaprerequisites}), and the following Lua module:
 %
 % \pkg{Lua File System}
 %
 %:    A library that provides access to the filesystem via \acro{os}-specific
 %     syscalls. It is used by the plain \TeX{} code to create the cache
-%     directory specified by the \m{markdownOptionCacheDir} macro before
+%     directory specified by the \mref{markdownOptionCacheDir} macro before
 %     interfacing with the \pkg{Lunamark} library. \pkg{Lua File System} is
 %     included in all releases of Lua\TeX{} (\TeX Live${}\geq{}2008$).
 %
-%     The plain \TeX{} code makes use of the \luam{isdir} method that was added
+%     The plain \TeX{} code makes use of the \luamref{isdir} method that was added
 %     to the \pkg{Lua File System} library by the Lua\TeX{} engine
 %     developers~[@luatex17, Section 3.2].
 %
@@ -820,12 +1069,12 @@
 % engine~[@luatex17, Section~3.3].
 %
 % Unless you convert markdown documents to \TeX{} manually using the Lua
-% command-line interface (see Section~\ref{sec:lua-cli-interface}), the plain
+% command-line interface (see Section \vref{sec:lua-cli-interface}), the plain
 % \TeX{} part of the package will require that either the Lua\TeX{}
-% \m{directlua} primitive or the shell access file stream 18 is available in
+% \mref{directlua} primitive or the shell access file stream 18 is available in
 % your \TeX{} engine. If only the shell access file stream is available in your
 % \TeX{} engine (as is the case with \hologo{pdfTeX} and \Hologo{XeTeX}) or if
-% you enforce the use of shell using the \m{markdownMode} macro, then unless
+% you enforce the use of shell using the \mref{markdownMode} macro, then unless
 % your \TeX{} engine is globally configured to enable shell access, you will
 % need to provide the `-shell-escape` parameter to your engine when typesetting
 % a document.
@@ -854,14 +1103,14 @@
 % \fi
 % \begin{markdown}
 % a \TeX{} engine that extends \Hologo{eTeX}, all the plain \TeX{}
-% prerequisites (see Section \ref{sec:texprerequisites}), and the following
+% prerequisites (see Section \vref{sec:texprerequisites}), and the following
 % \Hologo{LaTeX2e} packages:
 %
 % \pkg{keyval}
 %
 %:    A package that enables the creation of parameter sets. This package is
-%     used to provide the \m{markdownSetup} macro, the package options
-%     processing, as well as the parameters of the \envm{markdown*} \LaTeX{}
+%     used to provide the \mref{markdownSetup} macro, the package options
+%     processing, as well as the parameters of the \envmref{markdown*} \LaTeX{}
 %     environment.
 %
 % \end{markdown}
@@ -882,29 +1131,28 @@
 % \par
 % \begin{markdown}
 %
-% The following packages are soft prerequisites and will not be loaded
-% if the `plain` package option has been enabled (see Section
-% \ref{sec:latexplain}):
+% The following packages are soft prerequisites. They are only used to provide
+% default token renderer prototypes (see sections
+% \vref{sec:texrendererprototypes} and
+% \vref{sec:latexdefaultrendererprototypes}) or \LaTeX{} themes (see Section
+% \vref{sec:latexthemes}) and will not be loaded if the `plain` package option
+% has been enabled (see Section \vref{sec:latexplain}):
 %
 % \pkg{url}
 %
-%:    A package that provides the \m{url} macro for the typesetting of
-%     \acro{url}s. It is used to provide the default token renderer
-%     prototype (see Section \ref{sec:texrendererprototypes}) for links.
+%:    A package that provides the \mref{url} macro for the typesetting of
+%     links.
 %
 % \pkg{graphicx}
 %
-%:    A package that provides the \m{includegraphics} macro for the typesetting
-%     of images. It is used to provide the corresponding default token renderer
-%     prototype (see Section \ref{sec:texrendererprototypes}).
+%:    A package that provides the \mref{includegraphics} macro for the typesetting
+%     of images.
 %
 % \pkg{paralist}
 %
-%:    A package that provides the \envm{compactitem}, \envm{compactenum}, and
-%     \envm{compactdesc} macros for the typesetting of tight bulleted lists,
-%     ordered lists, and definition lists. It is used to provide the
-%     corresponding default token renderer prototypes (see Section
-%     \ref{sec:texrendererprototypes}).
+%:    A package that provides the \envmref{compactitem}, \envmref{compactenum}, and
+%     \envmref{compactdesc} macros for the typesetting of tight bulleted lists,
+%     ordered lists, and definition lists.
 %
 % \pkg{ifthen}
 %
@@ -911,28 +1159,58 @@
 %:    A package that provides a concise syntax for the inspection of macro
 %     values. It is used to determine whether or not the \pkg{paralist} package
 %     should be loaded based on the user options, in the `witiko/dot` \LaTeX{}
-%     theme (see Section \ref{sec:latexthemes}), and to provide default token
-%     renderer prototypes (see Section \ref{sec:texrendererprototypes}).
+%     theme (see Section \vref{sec:latexthemes}), and to provide default token
+%     renderer prototypes.
 %
 % \pkg{fancyvrb}
 %
-%:    A package that provides the \m{VerbatimInput} macros for the verbatim
-%     inclusion of files containing code. It is used to provide the
-%     corresponding default token renderer prototype (see Section
-%     \ref{sec:texrendererprototypes}).
+%:    A package that provides the \mref{VerbatimInput} macros for the verbatim
+%     inclusion of files containing code.
 %
 % \pkg{csvsimple}
 %
-%:    A package that provides the default token renderer prototype for
-%     iA\,Writer content blocks with the \acro{csv} filename extension (see
-%     Section \ref{sec:texrendererprototypes}).
+%:    A package that provides the \mref{csvautotabular} macro for typesetting
+%     \acro{csv} files in the default renderer prototypes for iA\,Writer
+%     content blocks.
 %
 % \pkg{gobble}
 %
-%:    A package that provides the \m{\@gobblethree} \TeX{} command that
-%     is used in the default renderer prototype for citations (see
-%     Section \ref{sec:texrendererprototypes}).
+%:    A package that provides the \mref{\@gobblethree} \TeX{} command that
+%     is used in the default renderer prototype for citations. The package
+%     is included in \TeX Live${}\geq{}2016$.
 %
+% \pkg{amsmath} and \pkg{amssymb}
+%
+%:    Packages that provide symbols used for drawing ticked and unticked
+%     boxes.
+%
+% \pkg{catchfile}
+%
+%:    A package that catches the contents of a file and puts it in a macro. It
+%     is used in the `witiko/graphicx/http` \LaTeX{} theme, see Section
+%     \vref{sec:latexthemes}.
+%
+% \pkg{grffile}
+%
+%:    A package that extends the name processing of package graphics to support
+%     a larger range of file names in $2006\leq{}$\TeX{} Live${}\leq{}2019$.
+%     Since \TeX{} Live${}\geq{}2020$, the functionality of the package has
+%     been integrated in the \LaTeXe{} kernel. It is used in the `witiko/dot`
+%     and `witiko/graphicx/http` \LaTeX{} themes, see Section
+%     \vref{sec:latexthemes}.
+%
+% \pkg{etoolbox}
+%
+%:    A package that is used to polyfill the general hook management system in
+%     the default renderer prototypes for \acro{yaml} metadata, see Section
+%     \ref{sec:latexyamlmetadata}.
+%
+% \pkg{expl3}
+%
+%:    A package that enables the expl3 language from the \LaTeX3 kernel in
+%     \TeX{} Live${}\leq{}2019$. It is used in the default renderer prototypes
+%     for \acro{yaml} metadata, see Section \ref{sec:latexyamlmetadata}.
+%
 % \end{markdown}
 % \iffalse
 %</latex>
@@ -944,7 +1222,7 @@
 %### \Hologo{ConTeXt} Prerequisites
 % The \Hologo{ConTeXt} part of the package requires that either the Mark II or
 % the Mark IV format is loaded, all the plain \TeX{} prerequisites (see
-% Section \ref{sec:texprerequisites}), and the following \Hologo{ConTeXt}
+% Section \vref{sec:texprerequisites}), and the following \Hologo{ConTeXt}
 % modules:
 %
 % \pkg{m-database}
@@ -951,8 +1229,40 @@
 %
 %:    A module that provides the default token renderer prototype for
 %     iA\,Writer content blocks with the \acro{csv} filename extension (see
-%     Section \ref{sec:texrendererprototypes}).
+%     Section \vref{sec:texrendererprototypes}).
 %
+% Feedback
+%---------
+% Please use the \pkg{Markdown} project page on
+% [GitHub](https://github.com/witiko/markdown/issues) to report bugs and submit
+% feature requests. If you do not want to report a bug or request a feature but
+% are simply in need of assistance, you might want to consider posting your
+% question to the [\TeX-\LaTeX{} Stack Exchange.](https://tex.stackexchange.com)
+% community question answering web site under the `markdown` tag.
+%
+% Acknowledgements
+%-----------------
+% The Lunamark Lua module provides speedy markdown parsing for the package. I
+% would like to thank John Macfarlane, the creator of Lunamark, for releasing
+% Lunamark under a permissive license, which enabled its use in the Markdown
+% package.
+%
+% Extensive user documentation for the Markdown package was kindly written by
+% Lian Tze Lim and published by Overleaf.
+%
+% Funding by the the Faculty of Informatics at the Masaryk~University
+% in~Brno~[@novotny15] is gratefully acknowledged.
+%
+% Support for content slicing (Lua options \Opt{shiftHeadings} and \Opt{slice})
+% and pipe tables (Lua options \Opt{pipeTables} and \Opt{tableCaptions}) was
+% graciously sponsored by David Vins and Omedym.
+%
+% The \TeX{} implementation of the package draws inspiration from several
+% sources including the source code of \Hologo{LaTeX2e}, the \pkg{minted}
+% package by Geoffrey M. Poore, which likewise tackles the issue of
+% interfacing with an external interpreter from \TeX{}, the \pkg{filecontents}
+% package by Scott Pakin and others.
+%
 % Interfaces
 %===========
 % \label{sec:interfaces}
@@ -960,12 +1270,25 @@
 % along with usage notes and examples. It is aimed at the user of the package.
 %
 % Since neither \TeX{} nor Lua provide interfaces as a language construct, the
-% separation to interfaces and implementations is purely abstract. It serves as
-% a means of structuring this documentation and as a promise to the user that
-% if they only access the package through the interface, the future minor
-% versions of the package should remain backwards compatible.
+% separation to interfaces and implementations is a *gentlemen's agreement*. It
+% serves as a means of structuring this documentation and as a promise to the
+% user that if they only access the package through the interface, the future
+% minor versions of the package should remain backwards compatible.
 %
+% Figure \vref{fig:block-diagram} shows the high-level structure of the Markdown
+% package: The translation from markdown to \TeX{} *token renderers* is exposed
+% by the Lua layer. The plain \TeX{} layer exposes the conversion capabilities
+% of Lua as \TeX{} macros. The \LaTeX{} and \Hologo{ConTeXt} layers provide
+% syntactic sugar on top of plain \TeX{} macros. The user can interface with
+% any and all layers.
+%
 % \end{markdown}
+% \begin{figure}
+% \centering
+% \input markdown-figure-block-diagram
+% \caption{A block diagram of the \pkg{Markdown} package}
+% \label{fig:block-diagram}
+% \end{figure}
 % \iffalse
 %</context>
 %<*manual>
@@ -977,6 +1300,15 @@
 document in \TeX{}. This will serve as our first hands-on experience with the
 package and also as a reassurance that the package has been correctly installed.
 
+If you are using [our official Docker image][docker], you need to prefix all
+commands in this section with `docker run --rm -v "$PWD"/workdir:/workdir -w
+/workdir witiko/markdown`. For example, instead of `luatex document.tex`, you
+would execute the following command:
+``` sh
+docker run --rm -v "$PWD"/workdir:/workdir -w /workdir witiko/markdown \
+  luatex document.tex
+``````
+
 ### Using Lua
 
 Using a text editor, create a text document named `document.tex` with the
@@ -1145,7 +1477,7 @@
 Each part will be shown by example, leaving the implementation details to the
 [technical documentation][techdoc].
 
- [techdoc]: http://mirrors.ctan.org/macros/generic/markdown/markdown.pdf
+ [techdoc]: https://mirrors.ctan.org/macros/generic/markdown/markdown.pdf
             (A Markdown Interpreter for \TeX{})
 
 /markdown-interfaces.md
@@ -1191,7 +1523,7 @@
 %
 % The Lua interface provides the conversion from \acro{utf}-\oldstylenums8
 % encoded markdown to plain \TeX{}. This interface is used by the plain \TeX{}
-% implementation (see Section \ref{sec:teximplementation}) and will be of
+% implementation (see Section \vref{sec:teximplementation}) and will be of
 % interest to the developers of other packages and Lua modules.
 %
 % The Lua interface is implemented by the `markdown` Lua module.
@@ -1208,7 +1540,7 @@
 % The Lua interface exposes the \luamdef{new}`(options)` method.  This
 % method creates converter functions that perform the conversion from markdown
 % to plain \TeX{} according to the table `options` that contains options
-% recognized by the Lua interface.  (see Section \ref{sec:luaoptions}). The
+% recognized by the Lua interface.  (see Section \vref{sec:luaoptions}). The
 % `options` parameter is optional; when unspecified, the behaviour will be
 % the same as if `options` were an empty table.
 %
@@ -1402,26 +1734,7 @@
 local defaultOptions = {}
 %    \end{macrocode}
 % \begingroup
-% \markdownSetup{
-%   renderers = {
-%     dlBegin = {\begin{optionlist}},
-%     dlItem = {
-%       #1
-%       \begingroup
-%       \markdownSetup{
-%         renderers = {
-%           dlBegin = {
-%             \begingroup
-%             \markdownSetup{
-%               renderers = {
-%                 dlItem = {\item[####1]},
-%                 dlItemEnd = {}}}
-%             \begin{valuelist}},
-%           dlEnd = {
-%             \end{valuelist}
-%             \endgroup}}}},
-%     dlItemEnd = {\endgroup},
-%     dlEnd = {\end{optionlist}}}}
+% \markdownSetup{snippet=witiko/markdown/techdoc/options}
 % \par
 % \iffalse
 %</lua,lua-cli>
@@ -1608,7 +1921,7 @@
 
      The frozen cache makes it possible to later typeset a plain \TeX{}
      document that contains markdown documents without invoking Lua using
-     the \m{markdownOptionFrozenCache} plain \TeX{} option. As a result, the
+     the \mref{markdownOptionFrozenCache} plain \TeX{} option. As a result, the
      plain \TeX{} document becomes more portable, but further changes in the
      order and the content of markdown documents will not be reflected.
 
@@ -3257,7 +3570,7 @@
 %
 :    The filename of the JSON file that maps filename extensions to
      programming language names in the iA\,Writer content blocks.
-%    See Section~\ref{sec:texcontentblockrenderers} for more information.
+%    See Section \vref{sec:texcontentblockrenderers} for more information.
 
 % \end{markdown}
 % \iffalse
@@ -3698,7 +4011,7 @@
 
      The frozen cache makes it possible to later typeset a plain \TeX{}
      document that contains markdown documents without invoking Lua using
-     the \m{markdownOptionFrozenCache} plain \TeX{} option. As a result, the
+     the \mref{markdownOptionFrozenCache} plain \TeX{} option. As a result, the
      plain \TeX{} document becomes more portable, but further changes in the
      order and the content of markdown documents will not be reflected.
 
@@ -4471,7 +4784,7 @@
 
 #### Option `hybrid`
 
-`hybrid` (default value: `true`)
+`hybrid` (default value: `false`)
 
 % \fi
 % \begin{markdown}
@@ -4759,6 +5072,146 @@
 %</lua,lua-cli>
 %<*manual-options>
 
+#### Option `jekyllData`
+
+`jekyllData` (default value: `false`)
+
+% \fi
+% \begin{markdown}
+%
+% \Optitem[false]{jekyllData}{\opt{true}, \opt{false}}
+%
+:    true
+
+     :  Enable the Pandoc `yaml_metadata_block` syntax extension for entering
+        metadata in \acro{yaml}:
+
+        ~~~~~~ yaml
+        ---
+        title:  'This is the title: it contains a colon'
+        author:
+        - Author One
+        - Author Two
+        keywords: [nothing, nothingness]
+        abstract: |
+          This is the abstract.
+
+          It consists of two paragraphs.
+        ---
+        ~~~~~~~~~~~
+
+:    false
+
+     :  Disable the Pandoc `yaml_metadata_block` syntax extension for entering
+        metadata in \acro{yaml}.
+
+% \end{markdown}
+% \iffalse
+
+##### Plain \TeX{} Example {.unnumbered}
+
+Using a text editor, create a text document named `document.tex` with the
+following content:
+``` tex
+\input markdown
+\def\markdownOptionJekyllData{true}
+\def\markdownRendererJekyllDataString#1#2{\gdef\name{#2}}
+\def\markdownRendererJekyllDataNumber#1#2{\gdef\age{#2}}
+\def\markdownRendererJekyllDataEnd{%
+  \name{} is \age{} years old.}
+\markdownBegin
+---
+name: Jane Doe
+age:  99
+---
+\markdownEnd
+\bye
+```````
+Next, invoke LuaTeX from the terminal:
+``` sh
+luatex document.tex
+``````
+A PDF document named `document.pdf` should be produced and contain the
+following text:
+
+> Jane Doe is 99 years old.
+
+##### \LaTeX{} Example {.unnumbered}
+
+Using a text editor, create a text document named `document.tex` with the
+following content:
+``` tex
+\documentclass{article}
+\usepackage[jekyllData]{markdown}
+\markdownSetup{
+  renderers = {
+    jekyllDataString = {\gdef\name{#2}},
+    jekyllDataNumber = {\gdef\age{#2}},
+    jekyllDataEnd = {\name{} is \age{} years old.},
+  }
+}
+\begin{document}
+
+\begin{markdown}
+---
+name: Jane Doe
+age:  99
+---
+\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:
+
+> Jane Doe is 99 years old.
+
+##### \Hologo{ConTeXt} Example {.unnumbered}
+
+Using a text editor, create a text document named `document.tex` with the
+following content:
+``` tex
+\usemodule[t][markdown]
+\def\markdownOptionJekyllData{true}
+\def\markdownRendererJekyllDataString#1#2{\gdef\name{#2}}
+\def\markdownRendererJekyllDataNumber#1#2{\gdef\age{#2}}
+\def\markdownRendererJekyllDataEnd{%
+  \name{} is \age{} years old.}
+\starttext
+
+\startmarkdown
+---
+name: Jane Doe
+age:  99
+---
+\stopmarkdown
+
+\stoptext
+```````
+Next, invoke LuaTeX from the terminal:
+``` sh
+context document.tex
+``````
+A PDF document named `document.pdf` should be produced and contain the
+following text:
+
+> Jane Doe is 99 years old.
+
+%</manual-options>
+%<*lua,lua-cli>
+% \fi
+%  \begin{macrocode}
+defaultOptions.jekyllData = false
+%    \end{macrocode}
+% \par
+% \iffalse
+%</lua,lua-cli>
+%<*manual-options>
+
 #### Option `pipeTables` {#pipe-tables}
 
 `pipeTables` (default value: `false`)
@@ -5244,7 +5697,7 @@
 :    true
 
      :   Convert any ellipses in the input to the
-         \m{markdownRendererEllipsis} \TeX{} macro.
+         \mref{markdownRendererEllipsis} \TeX{} macro.
 
 :    false
 
@@ -5442,12 +5895,12 @@
 
      :   Make the number in the first item of an ordered lists significant. The
          item numbers will be passed to the
-         \m{markdownRendererOlItemWithNumber} \TeX{} macro.
+         \mref{markdownRendererOlItemWithNumber} \TeX{} macro.
 
 :    false
 
      :   Ignore the numbers in the ordered list items. Each item will only
-         produce a \m{markdownRendererOlItem} \TeX{} macro.
+         produce a \mref{markdownRendererOlItem} \TeX{} macro.
 
 % \end{markdown}
 % \iffalse
@@ -5687,7 +6140,7 @@
 
 :    false
 
-     :  Enable the Pandoc `table_captions` syntax extension.
+     :  Disable the Pandoc `table_captions` syntax extension.
 
 % \end{markdown}
 % \iffalse
@@ -5772,6 +6225,106 @@
 %</lua,lua-cli>
 %<*manual-options>
 
+#### Option `taskLists`
+
+`taskLists` (default value: `false`)
+
+% \fi
+% \begin{markdown}
+%
+% \Optitem[false]{taskLists}{\opt{true}, \opt{false}}
+%
+:    true
+
+     :   Enable the Pandoc `task_lists` syntax extension.
+       
+
+        ``` md
+        - [ ] an unticked task list item
+        - [/] a half-checked task list item
+        - [X] a ticked task list item
+        ``````
+
+:    false
+
+     :  Disable the Pandoc `task_lists` syntax extension.
+
+% \end{markdown}
+% \iffalse
+
+##### \LaTeX{} Example {.unnumbered}
+
+Using a text editor, create a text document named `document.tex` with the
+following content:
+``` tex
+\documentclass{article}
+\usepackage[taskLists]{markdown}
+\markdownSetup{
+  renderers = {
+    untickedBox = No,
+    halfTickedBox = Maybe,
+    tickedBox = Yes,
+  },
+}
+\begin{document}
+\begin{markdown}
+- [ ] you can't.
+- [/] I can?
+- [X] I can!
+\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:
+
+> - No you can't.
+> - Maybe I can?
+> - Yes I can!
+
+##### \Hologo{ConTeXt} Example {.unnumbered}
+
+Using a text editor, create a text document named `document.tex` with the
+following content:
+``` tex
+\usemodule[t][markdown]
+\def\markdownOptionTaskLists{true}
+\def\markdownRendererUntickedBox{No}
+\def\markdownRendererHalftickedBox{Maybe}
+\def\markdownRendererTickedBox{Yes}
+\starttext
+\startmarkdown
+- [ ] you can't.
+- [/] I can?
+- [X] I can!
+\stopmarkdown
+\stoptext
+````````
+Next, invoke LuaTeX from the terminal:
+``` sh
+context document.tex
+`````
+A PDF document named `document.pdf` should be produced and contain the
+following text:
+
+> - No you can't.
+> - Maybe I can?
+> - Yes I can!
+
+%</manual-options>
+%<*lua,lua-cli>
+% \fi
+%  \begin{macrocode}
+defaultOptions.taskLists = false
+%    \end{macrocode}
+% \par
+% \iffalse
+%</lua,lua-cli>
+%<*manual-options>
+
 #### Option `texComments`
 
 `texComments` (default value: `false`)
@@ -5892,10 +6445,10 @@
 
      :   Lists whose bullets do not consist of multiple paragraphs will be
          passed to the
-         \m{markdownRendererOlBeginTight}, \m{markdownRendererOlEndTight},
-         \m{markdownRendererUlBeginTight}, \m{markdownRendererUlEndTight},
-         \m{markdownRendererDlBeginTight}, and
-         \m{markdownRendererDlEndTight} \TeX{} macros.
+         \mref{markdownRendererOlBeginTight}, \mref{markdownRendererOlEndTight},
+         \mref{markdownRendererUlBeginTight}, \mref{markdownRendererUlEndTight},
+         \mref{markdownRendererDlBeginTight}, and
+         \mref{markdownRendererDlEndTight} \TeX{} macros.
 
 :    false
 
@@ -6117,11 +6670,61 @@
 %
 %### Command-Line Interface
 % \label{sec:lua-cli-interface}
-% To provide finer control over the conversion and to simplify debugging, a
-% command-line Lua interface for converting a Markdown document to \TeX{} is
-% also provided.
+% The high-level operation of the Markdown package involves the communication
+% between several programming layers: the plain \TeX{} layer hands markdown
+% documents to the Lua layer. Lua converts the documents to \TeX{}, and hands
+% the converted documents back to plain \TeX{} layer for typesetting, see
+% Figure \vref{fig:sequence-diagram-tex-interface}.
 %
+% This procedure has the advantage of being fully automated. However, it also
+% has several important disadvantages: The converted \TeX{} documents are
+% cached on the file system, taking up increasing amount of space. Unless the
+% \TeX{} engine includes a Lua interpreter, the package also requires shell
+% access, which opens the door for a malicious actor to access the system.
+% Last, but not least, the complexity of the procedure impedes debugging.
+%
+% A solution to the above problems is to decouple the conversion from the
+% typesetting. For this reason, a command-line Lua interface for converting a
+% markdown document to \TeX{} is also provided, see
+% Figure \vref{fig:sequence-diagram-lua-cli}.
+%
 % \end{markdown}
+% \begin{figure}
+% \centering
+% \begin{sequencediagram}
+%   \newthread{user}{User}{}
+%   \newinst[4]{tex}{\TeX{}}{}
+%   \newinst[4]{lua}{Lua}{}
+%   \begin{call}{user}{\footnotesize\cs{jobname.tex}}{tex}{\footnotesize\cs{jobname.pdf}}
+%   \begin{call}{tex}{\footnotesize\cs{jobname.markdown.in}}{lua}{\footnotesize\cs{jobname.markdown.out}}
+%   \end{call}
+%   \begin{call}{tex}{\footnotesize\cs{input}\cs{jobname.markdown.out}}{tex}{}
+%   \end{call}
+%   \end{call}
+% \end{sequencediagram}
+% \caption[A sequence diagram of typesetting a document using the \TeX{}
+%   interface]{A sequence diagram of the Markdown package typesetting a
+%   markdown document using the \TeX{} interface}
+% \label{fig:sequence-diagram-tex-interface}
+% \end{figure}
+% \begin{figure}
+% \centering
+% \begin{sequencediagram}
+%   \newthread{user}{User}{}
+%   \newinst[4]{tex}{\TeX{}}{}
+%   \newinst[4]{lua}{Lua}{}
+%   \begin{call}{user}{\footnotesize$\langle$\textit{document}$\rangle$\texttt{.md}}{lua}{\footnotesize$\langle$\textit{document}$\rangle$\texttt{.tex}}
+%   \end{call}
+%   \begin{call}{user}{\footnotesize\cs{jobname.tex}}{tex}{\footnotesize\cs{jobname.pdf}}
+%   \begin{call}{tex}{\footnotesize\cs{input} $\langle$\textit{document}$\rangle$}{tex}{}
+%   \end{call}
+%   \end{call}
+% \end{sequencediagram}
+% \caption[A sequence diagram of typesetting a document using the Lua CLI]%
+%   {A sequence diagram of the Markdown package typesetting a markdown document
+%   using the Lua command-line interface}
+% \label{fig:sequence-diagram-lua-cli}
+% \end{figure}
 %  \begin{macrocode}
 
 HELP_STRING = [[
@@ -6173,7 +6776,7 @@
 % Unless the `-`{}`-` argument has been specified before, an argument
 % containing the equals sign (`=`) is assumed to be an option specification in
 % a \meta{key}`=`\meta{value} format. The available options are listed in
-% Section~\ref{sec:luaoptions}.
+% Section \vref{sec:luaoptions}.
 % \end{markdown}
 %  \begin{macrocode}
     elseif arg[i]:match("=") then
@@ -6180,7 +6783,7 @@
       key, value = arg[i]:match("(.-)=(.*)")
 %    \end{macrocode}
 % \begin{markdown}
-% The \luam{defaultOptions} table is consulted to identify whether \meta{value}
+% The \luamref{defaultOptions} table is consulted to identify whether \meta{value}
 % should be parsed as a string or as a boolean.
 % \end{markdown}
 %  \begin{macrocode}
@@ -6264,10 +6867,6 @@
 % \input hello
 % ```````
 %
-% This shows another advantage of using the command-line interface compared to
-% using a higher-level \TeX{} interface: it is unnecessary to provide shell
-% access for the \TeX{} engine.
-%
 % \end{markdown}
 % \iffalse
 %</lua-cli>
@@ -6335,13 +6934,13 @@
 %
 % The plain \TeX{} interface provides macros for the typesetting of markdown
 % input from within plain \TeX{}, for setting the Lua interface options (see
-% Section \ref{sec:luaoptions}) used during the conversion from markdown to
+% Section \vref{sec:luaoptions}) used during the conversion from markdown to
 % plain \TeX{} and for changing the way markdown the tokens are rendered.
 %
 % \end{markdown}
 %  \begin{macrocode}
-\def\markdownLastModified{2021/08/31}%
-\def\markdownVersion{2.10.1}%
+\def\markdownLastModified{$(LAST_MODIFIED)}%
+\def\markdownVersion{$(VERSION)}%
 %    \end{macrocode}
 % \par
 % \begin{markdown}
@@ -6352,7 +6951,7 @@
 % \input markdown
 % ```````
 % \noindent It is expected that the special plain \TeX{} characters have the
-% expected category codes, when \m{input}ting the file.
+% expected category codes, when \mref{input}ting the file.
 %
 %### Typesetting Markdown
 % \label{sec:textypesetting}
@@ -6359,8 +6958,8 @@
 % The interface exposes the \mdef{markdownBegin}, \mdef{markdownEnd}, and
 % \mdef{markdownInput} macros.
 %
-% The \m{markdownBegin} macro marks the beginning of a markdown document
-% fragment and the \m{markdownEnd} macro marks its end.
+% The \mref{markdownBegin} macro marks the beginning of a markdown document
+% fragment and the \mref{markdownEnd} macro marks its end.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -6370,24 +6969,24 @@
 % \par
 % \begin{markdown}
 %
-% You may prepend your own code to the \m{markdownBegin} macro and redefine the
-% \m{markdownEnd} macro to produce special effects before and after the
+% You may prepend your own code to the \mref{markdownBegin} macro and redefine the
+% \mref{markdownEnd} macro to produce special effects before and after the
 % markdown block.
 %
 % There are several limitations to the macros you need to be aware of.
-% The first limitation concerns the \m{markdownEnd} macro, which must be
+% The first limitation concerns the \mref{markdownEnd} macro, which must be
 % visible directly from the input line buffer (it may not be produced as a
 % result of input expansion). Otherwise, it will not be recognized as the end
-% of the markdown string. As a corrolary, the \m{markdownEnd} string
+% of the markdown string. As a corrolary, the \mref{markdownEnd} string
 % may not appear anywhere inside the markdown input.
 %
 % Another limitation concerns spaces at the right end of an input line. In
 % markdown, these are used to produce a forced line break. However, any such
 % spaces are removed before the lines enter the input buffer of
-% \TeX{}~[@knuth86, p. 46]. As a corrolary, the \m{markdownBegin} macro also
+% \TeX{}~[@knuth86, p. 46]. As a corrolary, the \mref{markdownBegin} macro also
 % ignores them.
 %
-% The \m{markdownBegin} and \m{markdownEnd} macros will also consume the rest
+% The \mref{markdownBegin} and \mref{markdownEnd} macros will also consume the rest
 % of the lines at which they appear.  In the following example plain \TeX{}
 % code, the characters `c`, `e`, and `f` will not appear in the output.
 %
@@ -6401,11 +7000,11 @@
 % \bye
 % ```````
 %
-% Note that you may also not nest the \m{markdownBegin} and \m{markdownEnd}
+% Note that you may also not nest the \mref{markdownBegin} and \mref{markdownEnd}
 % macros.
 %
 % The following example plain \TeX{} code showcases the usage of the
-% \m{markdownBegin} and \m{markdownEnd} macros:
+% \mref{markdownBegin} and \mref{markdownEnd} macros:
 %
 % ``` tex
 % \input markdown
@@ -6415,7 +7014,7 @@
 % \bye
 % ```````
 %
-% The \m{markdownInput} macro accepts a single parameter containing the
+% The \mref{markdownInput} macro accepts a single parameter containing the
 % filename of a markdown document and expands to the result of the conversion
 % of the input markdown document to plain \TeX{}.
 %
@@ -6427,10 +7026,10 @@
 % \begin{markdown}
 %
 % This macro is not subject to the abovelisted limitations of the
-% \m{markdownBegin} and \m{markdownEnd} macros.
+% \mref{markdownBegin} and \mref{markdownEnd} macros.
 %
 % The following example plain \TeX{} code showcases the usage of the
-% \m{markdownInput} macro:
+% \mref{markdownInput} macro:
 %
 % ``` tex
 % \input markdown
@@ -6443,7 +7042,7 @@
 %
 % The plain \TeX{} options are represented by \TeX{} commands. Some of them map
 % directly to the options recognized by the Lua interface (see
-% Section~\ref{sec:luaoptions}), while some of them are specific to the plain
+% Section \vref{sec:luaoptions}), while some of them are specific to the plain
 % \TeX{} interface.
 %
 % \end{markdown}
@@ -6467,7 +7066,7 @@
 %#### Finalizing and Freezing the Cache
 % The \mdef{markdownOptionFinalizeCache} option corresponds to the Lua
 % interface \Opt{finalizeCache} option, which creates an output file
-% \m{markdownOptionFrozenCacheFileName} (frozen cache) that contains a mapping
+% \mref{markdownOptionFrozenCacheFileName} (frozen cache) that contains a mapping
 % between an enumeration of the markdown documents in the plain \TeX{} document
 % and their auxiliary files cached in the \Opt{cacheDir} directory.
 %
@@ -6486,7 +7085,7 @@
 % \begin{markdown}
 %
 The \mdef{markdownOptionFrozenCache} option uses the mapping previously
-% created by the \m{markdownOptionFinalizeCache} option,
+% created by the \mref{markdownOptionFinalizeCache} option,
 % \iffalse
 created by the Lua interface \Opt{finalizeCache} option,
 % \fi
@@ -6497,18 +7096,18 @@
 
 % The standard usage of the above two options is as follows:
 % \iffalse
-The standard usage of the \Opt{finalizeCache} and \m{markdownOptionFrozenCache}
+The standard usage of the \Opt{finalizeCache} and \mref{markdownOptionFrozenCache}
 options is as follows:
 % \fi
 
 1. Remove the \Opt{cacheDir} cache directory with stale auxiliary cache
    files.
-% 2. Enable the \m{markdownOptionFinalizeCache} option.
+% 2. Enable the \mref{markdownOptionFinalizeCache} option.
 % \iffalse
 2. Enable the \Opt{finalizeCache} option.
 % \fi
 3. Typeset the plain \TeX{} document to populate and finalize the cache.
-4. Enable the \m{markdownOptionFrozenCache} option.
+4. Enable the \mref{markdownOptionFrozenCache} option.
 5. Publish the source code of the plain \TeX{} document and the
    \Opt{cacheDir} directory.
 
@@ -6527,13 +7126,13 @@
 %
 % The \mdef{markdownOptionHelperScriptFileName} macro sets the filename of the
 % helper Lua script file that is created during the conversion from markdown to
-% plain \TeX{} in \TeX{} engines without the \m{directlua} primitive. It
-% defaults to \m{jobname}`.markdown.lua`, where \m{jobname} is the base name
+% plain \TeX{} in \TeX{} engines without the \mref{directlua} primitive. It
+% defaults to \mref{jobname}`.markdown.lua`, where \mref{jobname} is the base name
 % of the document being typeset.
 %
 % The expansion of this macro must not contain quotation marks (`"`) or
 % backslash symbols (`\`). Mind that \TeX{} engines tend to
-% put quotation marks around \m{jobname}, when it contains spaces.
+% put quotation marks around \mref{jobname}, when it contains spaces.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -6544,9 +7143,9 @@
 %
 % The \mdef{markdownOptionInputTempFileName} macro sets the filename of the
 % temporary input file that is created during the conversion from markdown to
-% plain \TeX{} in \m{markdownMode} other than `2`. It defaults to
-% \m{jobname}`.markdown.out`. The same limitations as in the case of the
-% \m{markdownOptionHelperScriptFileName} macro apply here.
+% plain \TeX{} in \mref{markdownMode} other than `2`. It defaults to
+% \mref{jobname}`.markdown.out`. The same limitations as in the case of the
+% \mref{markdownOptionHelperScriptFileName} macro apply here.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -6557,9 +7156,9 @@
 %
 % The \mdef{markdownOptionOutputTempFileName} macro sets the filename of the
 % temporary output file that is created during the conversion from markdown to
-% plain \TeX{} in \m{markdownMode} other than `2`. It defaults to
-% \m{jobname}`.markdown.out`. The same limitations apply here as in the case
-% of the \m{markdownOptionHelperScriptFileName} macro.
+% plain \TeX{} in \mref{markdownMode} other than `2`. It defaults to
+% \mref{jobname}`.markdown.out`. The same limitations apply here as in the case
+% of the \mref{markdownOptionHelperScriptFileName} macro.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -6570,9 +7169,9 @@
 %
 % The \mdef{markdownOptionErrorTempFileName} macro sets the filename of the
 % temporary output file that is created when a Lua error is encountered during
-% the conversion from markdown to plain \TeX{} in \m{markdownMode} other than
-% `2`. It defaults to \m{jobname}`.markdown.err`. The same limitations
-% apply here as in the case of the \m{markdownOptionHelperScriptFileName}
+% the conversion from markdown to plain \TeX{} in \mref{markdownMode} other than
+% `2`. It defaults to \mref{jobname}`.markdown.err`. The same limitations
+% apply here as in the case of the \mref{markdownOptionHelperScriptFileName}
 % macro.
 %
 % \end{markdown}
@@ -6591,7 +7190,7 @@
 % your \TeX{} engine for the package to function correctly. We need this macro
 % to make the Lua implementation aware where it should store the helper files.
 % The same limitations apply here as in the case of the
-% \m{markdownOptionHelperScriptFileName} macro.
+% \mref{markdownOptionHelperScriptFileName} macro.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -6602,10 +7201,10 @@
 %
 % The \mdef{markdownOptionCacheDir} macro corresponds to the Lua interface
 % \Opt{cacheDir} option that sets the path to the directory that will contain
-% the produced cache files. The option defaults to `_markdown_`\m{jobname},
+% the produced cache files. The option defaults to `_markdown_`\mref{jobname},
 % which is a similar naming scheme to the one used by the \pkg{minted} \LaTeX{}
 % package. The same limitations apply here as in the case of the
-% \m{markdownOptionHelperScriptFileName} macro.
+% \mref{markdownOptionHelperScriptFileName} macro.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -6619,7 +7218,7 @@
 % file (frozen cache) that will contain a mapping between an enumeration of the
 % markdown documents in the plain \TeX{} document and their auxiliary cache
 % files. The option defaults to `frozenCache.tex`. The same limitations apply
-% here as in the case of the \m{markdownOptionHelperScriptFileName} macro.
+% here as in the case of the \mref{markdownOptionHelperScriptFileName} macro.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -6695,13 +7294,13 @@
 %
 %#### Lua Interface Options
 % The following macros map directly to the options recognized by the Lua
-% interface (see Section \ref{sec:luaoptions}) and are not processed by the
+% interface (see Section \vref{sec:luaoptions}) and are not processed by the
 % plain \TeX{} implementation, only passed along to Lua. They are undefined, which
 % makes them fall back to the default values provided by the Lua interface.
 %
 % For the macros that correspond to the non-boolean options recognized by the
 % Lua interface, the same limitations apply here in the case of the
-% \m{markdownOptionHelperScriptFileName} macro.
+% \mref{markdownOptionHelperScriptFileName} macro.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -6721,6 +7320,7 @@
 \let\markdownOptionHtml\undefined
 \let\markdownOptionHybrid\undefined
 \let\markdownOptionInlineFootnotes\undefined
+\let\markdownOptionJekyllData\undefined
 \let\markdownOptionPipeTables\undefined
 \let\markdownOptionPreserveTabs\undefined
 \let\markdownOptionShiftHeadings\undefined
@@ -6729,6 +7329,7 @@
 \let\markdownOptionStartNumber\undefined
 \let\markdownOptionStripIndent\undefined
 \let\markdownOptionTableCaptions\undefined
+\let\markdownOptionTaskLists\undefined
 \let\markdownOptionTeXComments\undefined
 \let\markdownOptionTightLists\undefined
 %    \end{macrocode}
@@ -6781,7 +7382,7 @@
 %
 % The \mdef{markdownOptionStripPercentSigns} macro controls whether a percent
 % sign (`%`) at the beginning of a line will be discarded when buffering
-% Markdown input (see Section~\ref{sec:buffering}) or not. Notably, this
+% Markdown input (see Section \vref{sec:buffering}) or not. Notably, this
 % enables the use of markdown when writing \TeX{} package documentation using
 % the \pkg{Doc} \LaTeX{}~package~[@mittelbach17] or similar. The recognized
 % values of the macro are `true` (discard) and `false` (retain). It defaults
@@ -6819,11 +7420,100 @@
 %
 % The following \TeX{} macros may occur inside the output of the
 % converter functions exposed by the Lua interface (see Section
-% \ref{sec:luaconversion}) and represent the parsed markdown tokens. These
+% \vref{sec:luaconversion}) and represent the parsed markdown tokens. These
 % macros are intended to be redefined by the user who is typesetting a
 % document. By default, they point to the corresponding prototypes (see Section
-% \ref{sec:texrendererprototypes}).
+% \vref{sec:texrendererprototypes}).
 
+#### Tickbox Renderers
+The macros named \mdef{markdownRendererTickedBox},
+\mdef{markdownRendererHalfTickedBox}, and \mdef{markdownRendererUntickedBox}
+represent ticked and unticked boxes, respectively. These macros will either be
+produced, when the \Opt{taskLists} option is enabled, or when the Ballot Box
+with X (☒, U+2612), Hourglass (⌛, U+231B) or Ballot Box (☐, U+2610) Unicode
+characters are encountered in the markdown input, respectively.
+
+% \end{markdown}
+%
+% \iffalse
+
+##### \LaTeX{} Example {.unnumbered}
+
+Using a text editor, create a text document named `document.tex` with the
+following content:
+``` tex
+\documentclass{article}
+\usepackage[taskLists]{markdown}
+\markdownSetup{
+  renderers = {
+    untickedBox = No,
+    tickedBox = Yes,
+  },
+}
+\begin{document}
+\begin{markdown}
+- [ ] you can't.
+- [x] I can!
+\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:
+
+> - No you can't.
+> - Yes I can!
+
+##### \Hologo{ConTeXt} Example {.unnumbered}
+
+Using a text editor, create a text document named `document.tex` with the
+following content:
+``` tex
+\usemodule[t][markdown]
+\def\markdownOptionTaskLists{true}
+\def\markdownRendererUntickedBox{No}
+\def\markdownRendererTickedBox{Yes}
+\starttext
+\startmarkdown
+- [ ] you can't.
+- [x] I can!
+\stopmarkdown
+\stoptext
+````````
+Next, invoke LuaTeX from the terminal:
+``` sh
+context document.tex
+`````
+A PDF document named `document.pdf` should be produced and contain the
+following text:
+
+> - No you can't.
+> - Yes I can!
+
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+%  \begin{macrocode}
+\def\markdownRendererTickedBox{%
+  \markdownRendererTickedBoxPrototype}%
+\def\markdownRendererHalfTickedBox{%
+  \markdownRendererHalfTickedBoxPrototype}%
+\def\markdownRendererUntickedBox{%
+  \markdownRendererUntickedBoxPrototype}%
+%    \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.
@@ -7762,7 +8452,7 @@
 
 The \mdef{markdownRendererContentBlockOnlineImage} macro represents an
 iA\,Writer online image content block. The macro receives the same arguments
-as \m{markdownRendererContentBlock}.
+as \mref{markdownRendererContentBlock}.
 
 % \end{markdown}
 %
@@ -9413,7 +10103,30 @@
 % \end{markdown}
 %
 % \iffalse
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+%  \begin{macrocode}
+\def\markdownRendererBlockQuoteBegin{%
+  \markdownRendererBlockQuoteBeginPrototype}%
+%    \end{macrocode}
+% \par
+%
+% \iffalse
+%</tex>
+%<*manual-tokens>
+% \fi
+%
+% \begin{markdown}
 
+The \mdef{markdownRendererBlockQuoteEnd} macro represents the end of a block
+quote. The macro receives no arguments.
+
+% \end{markdown}
+%
+% \iffalse
+
 ##### Plain \TeX{} Example {.unnumbered}
 
 Using a text editor, create a text document named `document.tex` with the
@@ -9531,29 +10244,6 @@
 % \fi
 %
 %  \begin{macrocode}
-\def\markdownRendererBlockQuoteBegin{%
-  \markdownRendererBlockQuoteBeginPrototype}%
-%    \end{macrocode}
-% \par
-%
-% \iffalse
-%</tex>
-%<*manual-tokens>
-% \fi
-%
-% \begin{markdown}
-
-The \mdef{markdownRendererBlockQuoteEnd} macro represents the end of a block
-quote. The macro receives no arguments.
-
-% \end{markdown}
-%
-% \iffalse
-%</manual-tokens>
-%<*tex>
-% \fi
-%
-%  \begin{macrocode}
 \def\markdownRendererBlockQuoteEnd{%
   \markdownRendererBlockQuoteEndPrototype}%
 %    \end{macrocode}
@@ -9695,9 +10385,331 @@
 %</tex>
 %<*manual-tokens>
 % \fi
+% \begin{markdown}
+
+#### YAML Metadata Renderers
+The \mdef{markdownRendererJekyllDataBegin} macro represents the beginning of a
+\acro{yaml} document. This macro will only be produced when the \Opt{jekyllData}
+option is enabled. The macro receives no arguments.
+
+% \end{markdown}
 %
+% \iffalse
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+%  \begin{macrocode}
+\def\markdownRendererJekyllDataBegin{%
+  \markdownRendererJekyllDataBeginPrototype}%
+%    \end{macrocode}
+% \par
+%
+% \iffalse
+%</tex>
+%<*manual-tokens>
+% \fi
+%
 % \begin{markdown}
 
+The \mdef{markdownRendererJekyllDataEnd} macro represents the end of a
+\acro{yaml} document. This macro will only be produced when the
+\Opt{jekyllData} option is enabled. The macro receives no arguments.
+
+% \end{markdown}
+%
+% \iffalse
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+%  \begin{macrocode}
+\def\markdownRendererJekyllDataEnd{%
+  \markdownRendererJekyllDataEndPrototype}%
+%    \end{macrocode}
+% \par
+%
+% \iffalse
+%</tex>
+%<*manual-tokens>
+% \fi
+%
+% \begin{markdown}
+
+The \mdef{markdownRendererJekyllDataMappingBegin} macro represents the
+beginning of a mapping in a \acro{yaml} document. This macro will only be
+produced when the \Opt{jekyllData} option is enabled. The macro receives two
+arguments: the scalar key in the parent structure, cast to a string following
+\acro{yaml} serialization rules, and the number of items in the mapping.
+
+% \end{markdown}
+%
+% \iffalse
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+%  \begin{macrocode}
+\def\markdownRendererJekyllDataMappingBegin{%
+  \markdownRendererJekyllDataMappingBeginPrototype}%
+%    \end{macrocode}
+% \par
+%
+% \iffalse
+%</tex>
+%<*manual-tokens>
+% \fi
+%
+% \begin{markdown}
+
+The \mdef{markdownRendererJekyllDataMappingEnd} macro represents the
+end of a mapping in a \acro{yaml} document. This macro will only be produced
+when the \Opt{jekyllData} option is enabled. The macro receives no arguments.
+
+% \end{markdown}
+%
+% \iffalse
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+%  \begin{macrocode}
+\def\markdownRendererJekyllDataMappingEnd{%
+  \markdownRendererJekyllDataMappingEndPrototype}%
+%    \end{macrocode}
+% \par
+%
+% \iffalse
+%</tex>
+%<*manual-tokens>
+% \fi
+%
+% \begin{markdown}
+
+The \mdef{markdownRendererJekyllDataSequenceBegin} macro represents the
+beginning of a sequence in a \acro{yaml} document. This macro will only be
+produced when the \Opt{jekyllData} option is enabled. The macro receives two
+arguments: the scalar key in the parent structure, cast to a string following
+\acro{yaml} serialization rules, and the number of items in the sequence.
+
+% \end{markdown}
+%
+% \iffalse
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+%  \begin{macrocode}
+\def\markdownRendererJekyllDataSequenceBegin{%
+  \markdownRendererJekyllDataSequenceBeginPrototype}%
+%    \end{macrocode}
+% \par
+%
+% \iffalse
+%</tex>
+%<*manual-tokens>
+% \fi
+%
+% \begin{markdown}
+
+The \mdef{markdownRendererJekyllDataBoolean} macro represents a boolean scalar
+value in a \acro{yaml} document. This macro will only be produced when the
+\Opt{jekyllData} option is enabled. The macro receives two arguments: the
+scalar key in the parent structure, and the scalar value, both cast to a string
+following \acro{yaml} serialization rules.
+
+% \end{markdown}
+%
+% \iffalse
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+%  \begin{macrocode}
+\def\markdownRendererJekyllDataBoolean{%
+  \markdownRendererJekyllDataBooleanPrototype}%
+%    \end{macrocode}
+% \par
+%
+% \iffalse
+%</tex>
+%<*manual-tokens>
+% \fi
+%
+% \begin{markdown}
+
+The \mdef{markdownRendererJekyllDataNumber} macro represents a numeric scalar
+value in a \acro{yaml} document. This macro will only be produced when the
+\Opt{jekyllData} option is enabled. The macro receives two arguments: the
+scalar key in the parent structure, and the scalar value, both cast to a string
+following \acro{yaml} serialization rules.
+
+% \end{markdown}
+%
+% \iffalse
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+%  \begin{macrocode}
+\def\markdownRendererJekyllDataNumber{%
+  \markdownRendererJekyllDataNumberPrototype}%
+%    \end{macrocode}
+% \par
+%
+% \iffalse
+%</tex>
+%<*manual-tokens>
+% \fi
+%
+% \begin{markdown}
+
+The \mdef{markdownRendererJekyllDataString} macro represents a string scalar
+value in a \acro{yaml} document. This macro will only be produced when the
+\Opt{jekyllData} option is enabled. The macro receives two arguments: the
+scalar key in the parent structure, cast to a string following \acro{yaml}
+serialization rules, and the scalar value.
+
+% \end{markdown}
+%
+% \iffalse
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+%  \begin{macrocode}
+\def\markdownRendererJekyllDataString{%
+  \markdownRendererJekyllDataStringPrototype}%
+%    \end{macrocode}
+% \par
+%
+% \iffalse
+%</tex>
+%<*manual-tokens>
+% \fi
+%
+% \begin{markdown}
+
+The \mdef{markdownRendererJekyllDataEmpty} macro represents an empty scalar
+value in a \acro{yaml} document. This macro will only be produced when the
+\Opt{jekyllData} option is enabled. The macro receives one argument: the
+scalar key in the parent structure, cast to a string following \acro{yaml}
+serialization rules.
+
+% \end{markdown}
+%
+% \iffalse
+%</manual-tokens>
+%<*tex>
+% \fi
+%
+%  \begin{macrocode}
+\def\markdownRendererJekyllDataEmpty{%
+  \markdownRendererJekyllDataEmptyPrototype}%
+%    \end{macrocode}
+% \par
+%
+% \iffalse
+%</tex>
+%<*manual-tokens>
+
+##### Plain \TeX{} Example {.unnumbered}
+
+Using a text editor, create a text document named `document.tex` with the
+following content:
+``` tex
+\input markdown
+\def\markdownOptionJekyllData{true}
+\def\markdownRendererJekyllDataString#1#2{\gdef\name{#2}}
+\def\markdownRendererJekyllDataNumber#1#2{\gdef\age{#2}}
+\def\markdownRendererJekyllDataEnd{%
+  \name{} is \age{} years old.}
+\markdownBegin
+---
+name: Jane Doe
+age:  99
+---
+\markdownEnd
+\bye
+```````
+Next, invoke LuaTeX from the terminal:
+``` sh
+luatex document.tex
+``````
+A PDF document named `document.pdf` should be produced and contain the
+following text:
+
+> Jane Doe is 99 years old.
+
+##### \LaTeX{} Example {.unnumbered}
+
+Using a text editor, create a text document named `document.tex` with the
+following content:
+``` tex
+\documentclass{article}
+\usepackage[jekyllData]{markdown}
+\markdownSetup{
+  renderers = {
+    jekyllDataString = {\gdef\name{#2}},
+    jekyllDataNumber = {\gdef\age{#2}},
+    jekyllDataEnd = {\name{} is \age{} years old.},
+  }
+}
+\begin{document}
+
+\begin{markdown}
+---
+name: Jane Doe
+age:  99
+---
+\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:
+
+> Jane Doe is 99 years old.
+
+##### \Hologo{ConTeXt} Example {.unnumbered}
+
+Using a text editor, create a text document named `document.tex` with the
+following content:
+``` tex
+\usemodule[t][markdown]
+\def\markdownOptionJekyllData{true}
+\def\markdownRendererJekyllDataString#1#2{\gdef\name{#2}}
+\def\markdownRendererJekyllDataNumber#1#2{\gdef\age{#2}}
+\def\markdownRendererJekyllDataEnd{%
+  \name{} is \age{} years old.}
+\starttext
+
+\startmarkdown
+---
+name: Jane Doe
+age:  99
+---
+\stopmarkdown
+
+\stoptext
+```````
+Next, invoke LuaTeX from the terminal:
+``` sh
+context document.tex
+``````
+A PDF document named `document.pdf` should be produced and contain the
+following text:
+
+> Jane Doe is 99 years old.
+
+% \fi
+%
+% \begin{markdown}
+
 #### Heading Renderers
 The \mdef{markdownRendererHeadingOne} macro represents a first level heading.
 The macro receives a single argument that corresponds to the heading text.
@@ -10267,7 +11279,7 @@
 The \mdef{markdownRendererTextCite} macro represents a string of one or more
 text citations. This macro will only be produced, when the
 \Opt{citations} option is enabled. The macro receives parameters in the same 
-format as the \m{markdownRendererCite} macro.
+format as the \mref{markdownRendererCite} macro.
 
 % \end{markdown}
 %
@@ -10650,11 +11662,11 @@
 % \begin{markdown}
 %
 % The following \TeX{} macros provide definitions for the token renderers (see
-% Section \ref{sec:texrenderersuser}) that have not been redefined by the
+% Section \vref{sec:texrenderersuser}) that have not been redefined by the
 % user. These macros are intended to be redefined by macro package authors
 % who wish to provide sensible default token renderers. They are also redefined
 % by the \LaTeX{} and \Hologo{ConTeXt} implementations (see sections
-% \ref{sec:lateximplementation} and \ref{sec:contextimplementation}).
+% \vref{sec:lateximplementation} and \vref{sec:contextimplementation}).
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -10706,6 +11718,16 @@
 \def\markdownRendererBlockQuoteEndPrototype{}%
 \def\markdownRendererInputVerbatimPrototype#1{}%
 \def\markdownRendererInputFencedCodePrototype#1#2{}%
+\def\markdownRendererJekyllDataBooleanPrototype#1#2{}%
+\def\markdownRendererJekyllDataEmptyPrototype#1{}%
+\def\markdownRendererJekyllDataNumberPrototype#1#2{}%
+\def\markdownRendererJekyllDataStringPrototype#1#2{}%
+\def\markdownRendererJekyllDataBeginPrototype{}%
+\def\markdownRendererJekyllDataEndPrototype{}%
+\def\markdownRendererJekyllDataSequenceBeginPrototype#1#2{}%
+\def\markdownRendererJekyllDataSequenceEndPrototype{}%
+\def\markdownRendererJekyllDataMappingBeginPrototype#1#2{}%
+\def\markdownRendererJekyllDataMappingEndPrototype{}%
 \def\markdownRendererHeadingOnePrototype#1{}%
 \def\markdownRendererHeadingTwoPrototype#1{}%
 \def\markdownRendererHeadingThreePrototype#1{}%
@@ -10718,6 +11740,9 @@
 \def\markdownRendererTextCitePrototype#1{}%
 \def\markdownRendererTablePrototype#1#2#3{}%
 \def\markdownRendererInlineHtmlCommentPrototype#1{}%
+\def\markdownRendererTickedBoxPrototype{}%
+\def\markdownRendererHalfTickedBoxPrototype{}%
+\def\markdownRendererUntickedBoxPrototype{}%
 %    \end{macrocode}
 % \par
 % \begin{markdown}
@@ -10726,7 +11751,7 @@
 % The \mdef{markdownInfo}, \mdef{markdownWarning}, and \mdef{markdownError}
 % macros perform logging for the Markdown package. Their first argument
 % specifies the text of the info, warning, or error message.
-% The \m{markdownError} macro receives a second argument that provides a help
+% The \mref{markdownError} macro receives a second argument that provides a help
 % text. You may redefine these macros to redirect and process the info,
 % warning, and error messages.
 %
@@ -10745,9 +11770,9 @@
 % \par
 % \begin{markdown}
 %
-% The \mdef{markdownReadAndConvert} macro implements the \m{markdownBegin}
+% The \mdef{markdownReadAndConvert} macro implements the \mref{markdownBegin}
 % macro. The first argument specifies the token sequence that will terminate
-% the markdown input (\m{markdownEnd} in the instance of the \m{markdownBegin}
+% the markdown input (\mref{markdownEnd} in the instance of the \mref{markdownBegin}
 % macro) when the plain \TeX{} special characters have had their category
 % changed to *other*. The second argument specifies the token sequence
 % that will actually be inserted into the document, when the ending token
@@ -10775,7 +11800,7 @@
 % \begin{markdown}
 % The macro is exposed in the interface, so that the user can create their own
 % markdown environments. Due to the way the arguments are passed to Lua (see
-% Section \ref{sec:directlua}), the first argument may not contain the
+% Section \vref{sec:directlua}), the first argument may not contain the
 % string `]]` (regardless of the category code of the bracket symbol (`]`)).
 %
 % The \mdef{markdownMode} macro specifies how the plain \TeX{} implementation
@@ -10783,13 +11808,13 @@
 % as follows:
 %
 % - `0` – Shell escape via the 18 output file stream
-% - `1` – Shell escape via the Lua \luam{os.execute} method
+% - `1` – Shell escape via the Lua \luamref{os.execute} method
 % - `2` – Direct Lua access
 %
 % By defining the macro, the user can coerce the package to use a specific mode.
 % If the user does not define the macro prior to loading the plain \TeX{}
 % implementation, the correct value will be automatically detected. The outcome
-% of changing the value of \m{markdownMode} after the implementation has been
+% of changing the value of \mref{markdownMode} after the implementation has been
 % loaded is undefined.
 %
 % \end{markdown}
@@ -10836,8 +11861,8 @@
 
 The \LaTeX{} interface accepts the same options as the plain \TeX{} interface,
 but now the options are specified as \meta{key}${}={}$\meta{value} pairs and
-they are passed either as package options, in the \m{markdownSetup} command, or
-as parameters for the \envm{markdown*} \LaTeX{} environment.
+they are passed either as package options, in the \mref{markdownSetup} command, or
+as parameters for the \envmref{markdown*} \LaTeX{} environment.
 
 Using a text editor, create a text document named `document.tex` with the
 following content:
@@ -10879,10 +11904,10 @@
 %
 % The \LaTeX{} interface provides \LaTeX{} environments for the typesetting of
 % markdown input from within \LaTeX{}, facilities for setting Lua interface
-% options (see Section \ref{sec:luaoptions}) used during the conversion from
+% options (see Section \vref{sec:luaoptions}) used during the conversion from
 % markdown to plain \TeX{}, and facilities for changing the way markdown tokens
 % are rendered. The rest of the interface is inherited from the plain \TeX{}
-% interface (see Section \ref{sec:texinterface}).
+% interface (see Section \vref{sec:texinterface}).
 %
 % The \LaTeX{} interface is implemented by the `markdown.sty` file, which
 % can be loaded from the \LaTeX{} document preamble as follows:
@@ -10892,10 +11917,10 @@
 % \end{Verbatim}
 % \begin{markdown}
 % where \meta{options} are the \LaTeX{} interface options (see Section
-% \ref{sec:latexoptions}). Note that \meta{options} inside the \m{usepackage}
+% \vref{sec:latexoptions}). Note that \meta{options} inside the \mref{usepackage}
 % macro may not set the `markdownRenderers` (see Section
-% \ref{sec:latexrenderers}) and `markdownRendererPrototypes` (see Section
-% \ref{sec:latexrendererprototypes}) keys. This limitation is due to the way
+% \vref{sec:latexrenderers}) and `markdownRendererPrototypes` (see Section
+% \vref{sec:latexrendererprototypes}) keys. This limitation is due to the way
 % \Hologo{LaTeX2e} parses package options.
 %
 % \end{markdown}
@@ -10904,12 +11929,12 @@
 %
 %### Typesetting Markdown
 % The interface exposes the \envmdef{markdown} and \envmdef{markdown*}
-% \LaTeX{} environments, and redefines the \m{markdownInput} command.
+% \LaTeX{} environments, and redefines the \mref{markdownInput} command.
 %
-% The \envm{markdown} and \envm{markdown*} \LaTeX{} environments are used to
+% The \envmref{markdown} and \envmref{markdown*} \LaTeX{} environments are used to
 % typeset markdown document fragments. The starred version of the
-% \envm{markdown} environment accepts \LaTeX{} interface options (see
-% Section \ref{sec:latexoptions}) as its only argument. These options will
+% \envmref{markdown} environment accepts \LaTeX{} interface options (see
+% Section \vref{sec:latexoptions}) as its only argument. These options will
 % only influence this markdown document fragment.
 %
 % \end{markdown}
@@ -10919,17 +11944,17 @@
 %    \end{macrocode}
 % \markdownBegin
 %
-% You may prepend your own code to the \m{markdown} macro and append your own
-% code to the \m{endmarkdown} macro to produce special effects before and after
-% the \envm{markdown} \LaTeX{} environment (and likewise for the starred
+% You may prepend your own code to the \mref{markdown} macro and append your own
+% code to the \mref{endmarkdown} macro to produce special effects before and after
+% the \envmref{markdown} \LaTeX{} environment (and likewise for the starred
 % version).
 %
-% Note that the \envm{markdown} and \envm{markdown*} \LaTeX{} environments are
-% subject to the same limitations as the \m{markdownBegin} and \m{markdownEnd}
+% Note that the \envmref{markdown} and \envmref{markdown*} \LaTeX{} environments are
+% subject to the same limitations as the \mref{markdownBegin} and \mref{markdownEnd}
 % macros exposed by the plain \TeX{} interface.
 %
 % The following example \LaTeX{} code showcases the usage of the
-% \envm{markdown} and \envm{markdown*} environments:
+% \envmref{markdown} and \envmref{markdown*} environments:
 % ``` tex
 % \documentclass{article}            \documentclass{article}
 % \usepackage{markdown}              \usepackage{markdown}
@@ -10942,16 +11967,16 @@
 % \end{document}                     \end{document}
 % ```````
 %
-% The \m{markdownInput} macro accepts a single mandatory parameter containing
+% The \mref{markdownInput} macro accepts a single mandatory parameter containing
 % the filename of a markdown document and expands to the result of the
 % conversion of the input markdown document to plain \TeX{}.  Unlike the
-% \m{markdownInput} macro provided by the plain \TeX{} interface, this macro
-% also accepts \LaTeX{} interface options (see Section \ref{sec:latexoptions})
+% \mref{markdownInput} macro provided by the plain \TeX{} interface, this macro
+% also accepts \LaTeX{} interface options (see Section \vref{sec:latexoptions})
 % as its optional argument. These options will only influnce this markdown
 % document.
 %
 % The following example \LaTeX{} code showcases the usage of the
-% \m{markdownInput} macro:
+% \mref{markdownInput} macro:
 % ``` tex
 % \documentclass{article}
 % \usepackage{markdown}
@@ -10970,18 +11995,18 @@
 % part is optional, and \meta{key} will be interpreted as \meta{key}`=true`
 % if the `=`\meta{value} part has been omitted.
 %
-% Except for the `plain` option described in Section \ref{sec:latexplain}, and
-% the \LaTeX{} themes described in Section \ref{sec:latexthemes}, and the
-% \LaTeX{} setup snippets described in Section \ref{sec:latexsetupsnippets},
+% Except for the `plain` option described in Section \vref{sec:latexplain}, and
+% the \LaTeX{} themes described in Section \vref{sec:latexthemes}, and the
+% \LaTeX{} setup snippets described in Section \vref{sec:latexsetupsnippets},
 % \LaTeX{} options map directly to the options recognized by the plain
-% \TeX{} interface (see Section \ref{sec:texoptions}) and to the markdown token
+% \TeX{} interface (see Section \vref{sec:texoptions}) and to the markdown token
 % renderers and their prototypes recognized by the plain \TeX{} interface (see
-% Sections \ref{sec:texrenderersuser} and \ref{sec:texrendererprototypes}).
+% Sections \vref{sec:texrenderersuser} and \vref{sec:texrendererprototypes}).
 %
 % The \LaTeX{} options may be specified when loading the \LaTeX{} package, when
-% using the \envm{markdown*} \LaTeX{} environment or the \m{markdownInput}
-% macro (see Section \ref{sec:latexinterface}), or via the \mdef{markdownSetup}
-% macro. The \m{markdownSetup} macro receives the options to set up as its only
+% using the \envmref{markdown*} \LaTeX{} environment or the \mref{markdownInput}
+% macro (see Section \vref{sec:latexinterface}), or via the \mdef{markdownSetup}
+% macro. The \mref{markdownSetup} macro receives the options to set up as its only
 % argument:
 %
 % \markdownEnd
@@ -10992,7 +12017,7 @@
 % \begin{markdown}
 %
 % We may also store \LaTeX{} options as *setup snippets* and invoke them later
-% using the \mdef{markdownSetupSnippet} macro. The \m{markdownSetupSnippet}
+% using the \mdef{markdownSetupSnippet} macro. The \mref{markdownSetupSnippet}
 % macro receives two arguments: the name of the setup snippet and the options
 % to store:
 %
@@ -11014,8 +12039,8 @@
 %    \end{macrocode}
 % \begin{markdown}
 %
-% See Section \ref{sec:latexthemes} for information on interactions between
-% setup snippets and \LaTeX{} themes. See Section \ref{sec:latexsetupsnippets}
+% See Section \vref{sec:latexthemes} for information on interactions between
+% setup snippets and \LaTeX{} themes. See Section \vref{sec:latexsetupsnippets}
 % for information about invoking the stored setup snippets.
 %
 % \end{markdown}
@@ -11040,8 +12065,8 @@
 renderers and renderer prototypes ourselves, the default definitions will bring
 no benefit to us. Using the `plain` package option, we can keep the default
 definitions from the plain \TeX{} implementation (see Section
-\ref{sec:textokenrendererprototypes}) and prevent the soft \LaTeX{}
-prerequisites in Section \ref{sec:latexprerequisites} from being loaded:
+\vref{sec:textokenrendererprototypes}) and prevent the soft \LaTeX{}
+prerequisites in Section \vref{sec:latexprerequisites} from being loaded:
 
 ``` tex
 \usepackage[plain]{markdown}
@@ -11084,7 +12109,7 @@
 % (\texttt{_}), the theme name is a value that is *qualified* and contains no
 % underscores, and a value is qualified if and only if it contains at least one
 % forward slash. Themes are inspired by the Beamer \LaTeX{} package, which
-% provides similar functionality with its \m{usetheme} macro [@tantau21,
+% provides similar functionality with its \mref{usetheme} macro [@tantau21,
 % Section 15.1].
 %
 % Theme names must be qualified to minimize naming conflicts between different
@@ -11103,7 +12128,7 @@
 % package named `markdownthemewitiko_beamer_MU.sty`.
 %
 % If the \LaTeX{} option with key `theme` is (repeatedly) specified in the
-% \m{usepackage} macro, the loading of the theme(s) will be postponed in
+% \mref{usepackage} macro, the loading of the theme(s) will be postponed in
 % first-in-first-out order until after the Markdown \LaTeX{} package has been
 % loaded. Otherwise, the theme(s) will be loaded immediately. For example,
 % there is a theme named `witiko/dot`, which typesets fenced code blocks with
@@ -11163,7 +12188,7 @@
 % \begin{markdown}
 %
 % The \LaTeX{} themes have a useful synergy with the setup snippets (see
-% Section \ref{sec:latexoptions}): To make it less likely that different
+% Section \vref{sec:latexoptions}): To make it less likely that different
 % themes will define setup snippets with the same name, we will prepend
 % \meta{theme name}`/` before the snippet name and use the result as the
 % snippet name. For example, if the `witiko/dot` theme defines the `product`
@@ -11239,7 +12264,7 @@
 %    \end{document}
 %    ````````
 %    Typesetting the above document produces the output shown in
-%    Figure~\ref{fig:witiko/dot}.
+%    Figure \vref{fig:witiko/dot}.
 %    ``` dot Various formats of mathemathical formulae \label{fig:witiko/dot}
 %    digraph tree {
 %      margin = 0;
@@ -11266,7 +12291,7 @@
 %    ```
      The theme requires a Unix-like operating system with GNU Diffutils and
      Graphviz installed. The theme also requires shell access unless the
-     \m{markdownOptionFrozenCache} plain \TeX{} option is enabled.
+     \mref{markdownOptionFrozenCache} plain \TeX{} option is enabled.
 
 % \markdownEnd
 % \iffalse
@@ -11347,19 +12372,19 @@
 %    \usepackage[theme=witiko/graphicx/http]{markdown}
 %    \begin{document}
 %    \begin{markdown}
-%    ![img](https://github.com/witiko/markdown/raw/master/banner.png
+%    ![img](https://github.com/witiko/markdown/raw/main/markdown.png
 %           "The banner of the Markdown package")
 %    \end{markdown}
 %    \end{document}
 %    ```````
 %    Typesetting the above document produces the output shown in
-%    Figure~\ref{fig:witiko/graphicx/http}.
-%    ![img](https://github.com/witiko/markdown/raw/master/banner.png
+%    Figure \vref{fig:witiko/graphicx/http}.
+%    ![img](https://github.com/witiko/markdown/raw/main/markdown.png
 %           "The banner of the Markdown package \label{fig:witiko/graphicx/http}")
      The theme requires the \pkg{catchfile} \LaTeX{} package and a Unix-like
      operating system with GNU Coreutils `md5sum` and either GNU Wget or cURL
      installed. The theme also requires shell access unless the
-     \m{markdownOptionFrozenCache} plain \TeX{} option is enabled.
+     \mref{markdownOptionFrozenCache} plain \TeX{} option is enabled.
 
 % \markdownEnd
 % \iffalse
@@ -11373,7 +12398,7 @@
 \usepackage[theme=witiko/graphicx/http]{markdown}
 \begin{document}
 \begin{markdown}
-![img](https://github.com/witiko/markdown/raw/master/banner.png
+![img](https://github.com/witiko/markdown/raw/main/markdown.png
        "The banner of the Markdown package")
 \end{markdown}
 \end{document}
@@ -11385,7 +12410,7 @@
 A PDF document named `document.pdf` should be produced and contain the
 following image:
 
-> ![img](https://github.com/witiko/markdown/raw/master/banner.png
+> ![img](https://github.com/witiko/markdown/raw/main/markdown.png
 >        "The banner of the Markdown package")
 
 %</manual-options>
@@ -11393,7 +12418,6 @@
 % \fi
 %  \begin{macrocode}
 \ProvidesPackage{markdownthemewitiko_graphicx_http}[2021/03/22]%
-\RequirePackage{catchfile}
 %    \end{macrocode}
 % \iffalse
 %</latex-themes-witiko-graphicx-http>
@@ -11456,7 +12480,7 @@
 % \par
 % \begin{markdown}
 %
-% Please, see Section~\ref{sec:latexthemesimplementation} for implementation
+% Please, see Section \vref{sec:latexthemesimplementation} for implementation
 % details of the example themes.
 
 #### \LaTeX{} setup snippets
@@ -11520,7 +12544,7 @@
 
 %#### Plain \TeX{} Interface Options
 % The following options map directly to the option macros exposed by the plain
-% \TeX{} interface (see Section \ref{sec:texoptions}).
+% \TeX{} interface (see Section \vref{sec:texoptions}).
 %
 % \markdownEnd
 % \iffalse
@@ -11564,6 +12588,8 @@
   \def\markdownOptionFootnotes{#1}}%
 \define at key{markdownOptions}{fencedCode}[true]{%
   \def\markdownOptionFencedCode{#1}}%
+\define at key{markdownOptions}{jekyllData}[true]{%
+  \def\markdownOptionJekyllData{#1}}%
 \define at key{markdownOptions}{hashEnumerators}[true]{%
   \def\markdownOptionHashEnumerators{#1}}%
 \define at key{markdownOptions}{headerAttributes}[true]{%
@@ -11590,6 +12616,8 @@
   \def\markdownOptionStripIndent{#1}}%
 \define at key{markdownOptions}{tableCaptions}[true]{%
   \def\markdownOptionTableCaptions{#1}}%
+\define at key{markdownOptions}{taskLists}[true]{%
+  \def\markdownOptionTaskLists{#1}}%
 \define at key{markdownOptions}{texComments}[true]{%
   \def\markdownOptionTeXComments{#1}}%
 \define at key{markdownOptions}{tightLists}[true]{%
@@ -11602,7 +12630,7 @@
 % \par
 % \begin{markdown}
 %
-% The \m{markdownOptionFinalizeCache} and \m{markdownOptionFrozenCache} plain
+% The \mref{markdownOptionFinalizeCache} and \mref{markdownOptionFrozenCache} plain
 % \TeX{} options are exposed through \LaTeX{} options with keys `finalizeCache`
 % and `frozenCache`.
 %
@@ -11640,8 +12668,8 @@
 % \begin{markdown}
 %
 % The following example \LaTeX{} code showcases a possible configuration of
-% plain \TeX{} interface options \m{markdownOptionHybrid},
-% \m{markdownOptionSmartEllipses}, and \m{markdownOptionCacheDir}.
+% plain \TeX{} interface options \mref{markdownOptionHybrid},
+% \mref{markdownOptionSmartEllipses}, and \mref{markdownOptionCacheDir}.
 % ``` tex
 % \markdownSetup{
 %   hybrid,
@@ -11656,7 +12684,7 @@
 % The \LaTeX{} interface recognizes an option with the `renderers` key,
 % whose value must be a list of options that map directly to the markdown token
 % renderer macros exposed by the plain \TeX{} interface (see Section
-% \ref{sec:texrenderersuser}).
+% \vref{sec:texrenderersuser}).
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -11756,6 +12784,26 @@
   \renewcommand\markdownRendererInputVerbatim[1]{#1}}%
 \define at key{markdownRenderers}{inputFencedCode}{%
   \renewcommand\markdownRendererInputFencedCode[2]{#1}}%
+\define at key{markdownRenderers}{jekyllDataBoolean}{%
+  \renewcommand\markdownRendererJekyllDataBoolean[2]{#1}}%
+\define at key{markdownRenderers}{jekyllDataEmpty}{%
+  \renewcommand\markdownRendererJekyllDataEmpty[1]{#1}}%
+\define at key{markdownRenderers}{jekyllDataNumber}{%
+  \renewcommand\markdownRendererJekyllDataNumber[2]{#1}}%
+\define at key{markdownRenderers}{jekyllDataString}{%
+  \renewcommand\markdownRendererJekyllDataString[2]{#1}}%
+\define at key{markdownRenderers}{jekyllDataBegin}{%
+  \renewcommand\markdownRendererJekyllDataBegin{#1}}%
+\define at key{markdownRenderers}{jekyllDataEnd}{%
+  \renewcommand\markdownRendererJekyllDataEnd{#1}}%
+\define at key{markdownRenderers}{jekyllDataSequenceBegin}{%
+  \renewcommand\markdownRendererJekyllDataSequenceBegin[2]{#1}}%
+\define at key{markdownRenderers}{jekyllDataSequenceEnd}{%
+  \renewcommand\markdownRendererJekyllDataSequenceEnd{#1}}%
+\define at key{markdownRenderers}{jekyllDataMappingBegin}{%
+  \renewcommand\markdownRendererJekyllDataMappingBegin[2]{#1}}%
+\define at key{markdownRenderers}{jekyllDataMappingEnd}{%
+  \renewcommand\markdownRendererJekyllDataMappingEnd{#1}}%
 \define at key{markdownRenderers}{headingOne}{%
   \renewcommand\markdownRendererHeadingOne[1]{#1}}%
 \define at key{markdownRenderers}{headingTwo}{%
@@ -11780,12 +12828,18 @@
   \renewcommand\markdownRendererTable[3]{#1}}%
 \define at key{markdownRenderers}{inlineHtmlComment}{%
   \renewcommand\markdownRendererInlineHtmlComment[1]{#1}}%
+\define at key{markdownRenderers}{tickedBox}{%
+  \renewcommand\markdownRendererTickedBox{#1}}%
+\define at key{markdownRenderers}{halfTickedBox}{%
+  \renewcommand\markdownRendererHalfTickedBox{#1}}%
+\define at key{markdownRenderers}{untickedBox}{%
+  \renewcommand\markdownRendererUntickedBox{#1}}%
 %    \end{macrocode}
 % \par
 % \begin{markdown}
 %
 % The following example \LaTeX{} code showcases a possible configuration of the
-% \m{markdownRendererLink} and \m{markdownRendererEmphasis} markdown token
+% \mref{markdownRendererLink} and \mref{markdownRendererEmphasis} markdown token
 % renderers.
 % ``` tex
 % \markdownSetup{
@@ -11801,7 +12855,7 @@
 % The \LaTeX{} interface recognizes an option with the `rendererPrototypes`
 % key, whose value must be a list of options that map directly to the markdown
 % token renderer prototype macros exposed by the plain \TeX{} interface (see
-% Section \ref{sec:texrendererprototypes}).
+% Section \vref{sec:texrendererprototypes}).
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -11901,6 +12955,26 @@
   \renewcommand\markdownRendererInputVerbatimPrototype[1]{#1}}%
 \define at key{markdownRendererPrototypes}{inputFencedCode}{%
   \renewcommand\markdownRendererInputFencedCodePrototype[2]{#1}}%
+\define at key{markdownRendererPrototypes}{jekyllDataBoolean}{%
+  \renewcommand\markdownRendererJekyllDataBooleanPrototype[2]{#1}}%
+\define at key{markdownRendererPrototypes}{jekyllDataEmpty}{%
+  \renewcommand\markdownRendererJekyllDataEmptyPrototype[1]{#1}}%
+\define at key{markdownRendererPrototypes}{jekyllDataNumber}{%
+  \renewcommand\markdownRendererJekyllDataNumberPrototype[2]{#1}}%
+\define at key{markdownRendererPrototypes}{jekyllDataString}{%
+  \renewcommand\markdownRendererJekyllDataStringPrototype[2]{#1}}%
+\define at key{markdownRendererPrototypes}{jekyllDataBegin}{%
+  \renewcommand\markdownRendererJekyllDataBeginPrototype{#1}}%
+\define at key{markdownRendererPrototypes}{jekyllDataEnd}{%
+  \renewcommand\markdownRendererJekyllDataEndPrototype{#1}}%
+\define at key{markdownRendererPrototypes}{jekyllDataSequenceBegin}{%
+  \renewcommand\markdownRendererJekyllDataSequenceBeginPrototype[2]{#1}}%
+\define at key{markdownRendererPrototypes}{jekyllDataSequenceEnd}{%
+  \renewcommand\markdownRendererJekyllDataSequenceEndPrototype{#1}}%
+\define at key{markdownRendererPrototypes}{jekyllDataMappingBegin}{%
+  \renewcommand\markdownRendererJekyllDataMappingBeginPrototype[2]{#1}}%
+\define at key{markdownRendererPrototypes}{jekyllDataMappingEnd}{%
+  \renewcommand\markdownRendererJekyllDataMappingEndPrototype{#1}}%
 \define at key{markdownRendererPrototypes}{headingOne}{%
   \renewcommand\markdownRendererHeadingOnePrototype[1]{#1}}%
 \define at key{markdownRendererPrototypes}{headingTwo}{%
@@ -11925,12 +12999,18 @@
   \renewcommand\markdownRendererTablePrototype[3]{#1}}%
 \define at key{markdownRendererPrototypes}{inlineHtmlComment}{%
   \renewcommand\markdownRendererInlineHtmlCommentPrototype[1]{#1}}%
+\define at key{markdownRendererPrototypes}{tickedBox}{%
+  \renewcommand\markdownRendererTickedBoxPrototype{#1}}%
+\define at key{markdownRendererPrototypes}{halfTickedBox}{%
+  \renewcommand\markdownRendererHalfTickedBoxPrototype{#1}}%
+\define at key{markdownRendererPrototypes}{untickedBox}{%
+  \renewcommand\markdownRendererUntickedBoxPrototype{#1}}%
 %    \end{macrocode}
 % \par
 % \begin{markdown}
 %
 % The following example \LaTeX{} code showcases a possible configuration of the
-% \m{markdownRendererImagePrototype} and \m{markdownRendererCodeSpanPrototype}
+% \mref{markdownRendererImagePrototype} and \mref{markdownRendererCodeSpanPrototype}
 % markdown token renderer prototypes.
 % ``` tex
 % \markdownSetup{
@@ -12003,7 +13083,7 @@
 % The \Hologo{ConTeXt} interface provides a start-stop macro pair for the
 % typesetting of markdown input from within \Hologo{ConTeXt}. The rest of the
 % interface is inherited from the plain \TeX{} interface (see Section
-% \ref{sec:texinterface}).
+% \vref{sec:texinterface}).
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -12020,7 +13100,7 @@
 % \usemodule[t][markdown]
 % ```````
 % \noindent It is expected that the special plain \TeX{} characters have the
-% expected category codes, when \m{input}ting the file.
+% expected category codes, when \mref{input}ting the file.
 %
 %### Typesetting Markdown
 % The interface exposes the \mdef{startmarkdown} and \mdef{stopmarkdown} macro
@@ -12034,16 +13114,16 @@
 % \par
 % \begin{markdown}
 %
-% You may prepend your own code to the \m{startmarkdown} macro and redefine the
-% \m{stopmarkdown} macro to produce special effects before and after the
+% You may prepend your own code to the \mref{startmarkdown} macro and redefine the
+% \mref{stopmarkdown} macro to produce special effects before and after the
 % markdown block.
 %
-% Note that the \m{startmarkdown} and \m{stopmarkdown} macros
-% are subject to the same limitations as the \m{markdownBegin} and
-% \m{markdownEnd} macros exposed by the plain \TeX{} interface.
+% Note that the \mref{startmarkdown} and \mref{stopmarkdown} macros
+% are subject to the same limitations as the \mref{markdownBegin} and
+% \mref{markdownEnd} macros exposed by the plain \TeX{} interface.
 %
 % The following example \Hologo{ConTeXt} code showcases the usage of the
-% \m{startmarkdown} and \m{stopmarkdown} macros:
+% \mref{startmarkdown} and \mref{stopmarkdown} macros:
 % ``` tex
 % \usemodule[t][markdown]
 % \starttext
@@ -12057,13 +13137,22 @@
 %===============
 % \label{sec:implementation}
 % This part of the documentation describes the implementation of the interfaces
-% exposed by the package (see Section \ref{sec:interfaces}) and is aimed at the
+% exposed by the package (see Section \vref{sec:interfaces}) and is aimed at the
 % developers of the package, as well as the curious users.
 %
+% Figure \vref{fig:block-diagram} shows the high-level structure of the Markdown
+% package: The translation from markdown to \TeX{} *token renderers* is
+% performed by the Lua layer. The plain \TeX{} layer provides default
+% definitions for the token renderers. The \LaTeX{} and \Hologo{ConTeXt} layers
+% correct idiosyncrasies of the respective \TeX{} formats, and provide
+% format-specific default definitions for the token renderers.
+%
+% \end{markdown}
 % \iffalse
 %</context>
 %<*lua>
 % \fi
+% \begin{markdown}
 %
 % Lua Implementation
 %-------------------
@@ -12075,7 +13164,7 @@
 % other formats, such as DocBook, Groff, or \acro{HTML}. These were stripped
 % from the module and the remaining markdown reader and plain \TeX{} writer
 % were hidden behind the converter functions exposed by the Lua interface (see
-% Section \ref{sec:luainterface}).
+% Section \vref{sec:luainterface}).
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -12234,7 +13323,7 @@
 %
 % The \luamdef{util.rope_to_string} method converts a rope `rope` to a
 % string and returns it. For the definition of a rope, see the definition of
-% the \luam{util.walk} method.
+% the \luamref{util.walk} method.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -12248,7 +13337,7 @@
 % \begin{markdown}
 %
 % The \luamdef{util.rope_last} method retrieves the last item in a rope. For
-% the definition of a rope, see the definition of the \luam{util.walk} method.
+% the definition of a rope, see the definition of the \luamref{util.walk} method.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -14480,7 +15569,7 @@
 %
 %### Plain \TeX{} Writer
 % \label{sec:texwriter}
-% This section documents the \luam{writer} object, which implements the
+% This section documents the \luamref{writer} object, which implements the
 % routines for producing the \TeX{} output. The object is an amalgamate of the
 % generic, \TeX{}, \LaTeX{} writer objects that were located in the
 % `lunamark/writer/generic.lua`, `lunamark/writer/tex.lua`, and
@@ -14487,9 +15576,9 @@
 % `lunamark/writer/latex.lua` files in the Lunamark Lua module.
 %
 % Although not specified in the Lua interface (see Section
-% \ref{sec:luainterface}), the \luam{writer} object is exported, so that the
+% \vref{sec:luainterface}), the \luamref{writer} object is exported, so that the
 % curious user could easily tinker with the methods of the objects produced by
-% the \luam{writer.new} method described below. The user should be aware,
+% the \luamref{writer.new} method described below. The user should be aware,
 % however, that the implementation may change in a future revision.
 %
 % \end{markdown}
@@ -14501,10 +15590,10 @@
 %
 % The \luamdef{writer.new} method creates and returns a new \TeX{} writer
 % object associated with the Lua interface options (see Section
-% \ref{sec:luaoptions}) `options`. When `options` are unspecified, it is
+% \vref{sec:luaoptions}) `options`. When `options` are unspecified, it is
 % assumed that an empty table was passed to the method.
 %
-% The objects produced by the \luam{writer.new} method expose instance methods
+% The objects produced by the \luamref{writer.new} method expose instance methods
 % and variables of their own. As a convention, I will refer to these
 % \meta{member}s as `writer->`\meta{member}. All member variables are
 % immutable unless explicitly stated otherwise.
@@ -14518,7 +15607,7 @@
 % \par
 % \begin{markdown}
 %
-% Make the `options` table inherit from the \luam{defaultOptions} table.
+% Make the `options` table inherit from the \luamref{defaultOptions} table.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -14530,7 +15619,7 @@
 %
 % Parse the \Opt{slice} option and define \luamdef{writer->slice\_begin}
 % \luamdef{writer->slice\_end}, and \luamdef{writer->is\_writing}. The
-% \luam{writer->is\_writing} member variable is mutable.
+% \luamref{writer->is\_writing} member variable is mutable.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -14681,29 +15770,12 @@
 % \par
 % \begin{markdown}
 %
-% Define a table \luamdef{escaped_chars} containing the mapping from special
-% plain \TeX{} characters (including the active pipe character (`|`) of
-% \Hologo{ConTeXt}) to their escaped variants. Define tables
-% \luamdef{escaped_uri_chars}, \luamdef{escaped_citation_chars}, and
-% \luamdef{escaped_minimal_strings} containing the mapping from special plain
-% characters and character strings that need to be escaped even in content
-% that will not be typeset.
+% Define tables \luamdef{escaped_uri_chars}, \luamdef{escaped_citation_chars},
+% and \luamdef{escaped_minimal_strings} containing the mapping from special
+% plain characters and character strings that always need to be escaped.
 %
 % \end{markdown}
 %  \begin{macrocode}
-  local escaped_chars = {
-     ["{"] = "\\markdownRendererLeftBrace{}",
-     ["}"] = "\\markdownRendererRightBrace{}",
-     ["$"] = "\\markdownRendererDollarSign{}",
-     ["%"] = "\\markdownRendererPercentSign{}",
-     ["&"] = "\\markdownRendererAmpersand{}",
-     ["_"] = "\\markdownRendererUnderscore{}",
-     ["#"] = "\\markdownRendererHash{}",
-     ["^"] = "\\markdownRendererCircumflex{}",
-     ["\\"] = "\\markdownRendererBackslash{}",
-     ["~"] = "\\markdownRendererTilde{}",
-     ["|"] = "\\markdownRendererPipe{}",
-   }
    local escaped_uri_chars = {
      ["{"] = "\\markdownRendererLeftBrace{}",
      ["}"] = "\\markdownRendererRightBrace{}",
@@ -14714,27 +15786,54 @@
      ["{"] = "\\markdownRendererLeftBrace{}",
      ["}"] = "\\markdownRendererRightBrace{}",
      ["%"] = "\\markdownRendererPercentSign{}",
+     ["\\"] = "\\markdownRendererBackslash{}",
      ["#"] = "\\markdownRendererHash{}",
-     ["\\"] = "\\markdownRendererBackslash{}",
    }
    local escaped_minimal_strings = {
      ["^^"] = "\\markdownRendererCircumflex\\markdownRendererCircumflex ",
+     ["☒"] = "\\markdownRendererTickedBox{}",
+     ["⌛"] = "\\markdownRendererHalfTickedBox{}",
+     ["☐"] = "\\markdownRendererUntickedBox{}",
    }
 %    \end{macrocode}
 % \par
 % \begin{markdown}
 %
-% Use the \luam{escaped_chars}, \luam{escaped_uri_chars},
-% \luam{escaped_citation_chars}, and \luam{escaped_minimal_strings} tables
-% to create the \luamdef{escape}, \luamdef{escape_citation}, and
-% \luamdef{escape_uri} escaper functions.
+% Define a table \luamdef{escaped_chars} containing the mapping from special
+% plain \TeX{} characters (including the active pipe character (`|`) of
+% \Hologo{ConTeXt}) that need to be escaped for typeset content.
 %
 % \end{markdown}
 %  \begin{macrocode}
-  local escape = util.escaper(escaped_chars)
+  local escaped_chars = {
+     ["{"] = "\\markdownRendererLeftBrace{}",
+     ["}"] = "\\markdownRendererRightBrace{}",
+     ["%"] = "\\markdownRendererPercentSign{}",
+     ["\\"] = "\\markdownRendererBackslash{}",
+     ["#"] = "\\markdownRendererHash{}",
+     ["$"] = "\\markdownRendererDollarSign{}",
+     ["&"] = "\\markdownRendererAmpersand{}",
+     ["_"] = "\\markdownRendererUnderscore{}",
+     ["^"] = "\\markdownRendererCircumflex{}",
+     ["~"] = "\\markdownRendererTilde{}",
+     ["|"] = "\\markdownRendererPipe{}",
+   }
+%    \end{macrocode}
+% \par
+% \begin{markdown}
+%
+% Use the \luamref{escaped_chars}, \luamref{escaped_uri_chars},
+% \luamref{escaped_citation_chars}, and \luamref{escaped_minimal_strings} tables
+% to create the \luamdef{escape}, \luamdef{escape_citation},
+% \luamdef{escape_uri}, and \luamdef{escape_minimal} escaper functions.
+%
+% \end{markdown}
+%  \begin{macrocode}
+  local escape = util.escaper(escaped_chars, escaped_minimal_strings)
   local escape_citation = util.escaper(escaped_citation_chars,
     escaped_minimal_strings)
   local escape_uri = util.escaper(escaped_uri_chars, escaped_minimal_strings)
+  local escape_minimal = util.escaper({}, escaped_minimal_strings)
 %    \end{macrocode}
 % \par
 % \begin{markdown}
@@ -14744,15 +15843,15 @@
 % function that will transform an input citation name `c` to the output format,
 % and \luamdef{writer->uri} as a function that will transform an input
 % \acro{uri} `u` to the output format. If the \Opt{hybrid} option is enabled,
-% use identity functions. Otherwise, use the \luam{escape},
-% \luam{escape_citation}, and \luam{escape_uri} functions.
+% use the \luamref{escape_minimal}. Otherwise, use the \luamref{escape},
+% \luamref{escape_citation}, and \luamref{escape_uri} functions.
 %
 % \end{markdown}
 %  \begin{macrocode}
   if options.hybrid then
-    self.string = function(s) return s end
-    self.citation = function(c) return c end
-    self.uri = function(u) return u end
+    self.string = escape_minimal
+    self.citation = escape_minimal
+    self.uri = escape_minimal
   else
     self.string = escape
     self.citation = escape_citation
@@ -14763,8 +15862,8 @@
 % \begin{markdown}
 %
 % Define \luamdef{writer->escape} as a function that will transform an input
-% plain text span to the output format. Unlike the \luam{writer->string}
-% function, \luam{writer->escape} always uses the \luam{escape} function,
+% plain text span to the output format. Unlike the \luamref{writer->string}
+% function, \luamref{writer->escape} always uses the \luamref{escape} function,
 % even when the \Opt{hybrid} option is enabled.
 %
 % \end{markdown}
@@ -14851,9 +15950,9 @@
 % \begin{markdown}
 %
 % The \luamdef{languages_json} table maps programming language filename
-% extensions to fence infostrings. All \luam{options.contentBlocksLanguageMap}
+% extensions to fence infostrings. All `options.`\luamref{contentBlocksLanguageMap}
 % files located by the KPathSea library are loaded into a chain of tables.
-% \luam{languages_json} corresponds to the first table and is chained with
+% \luamref{languages_json} corresponds to the first table and is chained with
 % the rest via Lua metatables.
 %
 % \end{markdown}
@@ -14866,7 +15965,7 @@
 % \begin{markdown}
 %
 % If the KPathSea library is unavailable, perhaps because we are using
-% LuaMeta\TeX, we will only locate the \luam{options.contentBlocksLanguageMap}
+% LuaMeta\TeX, we will only locate the `options.`\luamref{contentBlocksLanguageMap}
 % in the current working directory:
 %
 % \end{markdown}
@@ -15066,6 +16165,24 @@
 % \par
 % \begin{markdown}
 %
+% Define \luamdef{writer->tickbox} as a function that will transform a
+% number `f` to the output format.
+%
+% \end{markdown}
+%  \begin{macrocode}
+  function self.tickbox(f)
+    if f == 1.0 then
+      return "☒ "
+    elseif f == 0.0 then
+      return "☐ "
+    else
+      return "⌛ "
+    end
+  end
+%    \end{macrocode}
+% \par
+% \begin{markdown}
+%
 % Define \luamdef{writer->strong} as a function that will transform a strongly
 % emphasized span `s` of input text to the output format.
 %
@@ -15123,9 +16240,104 @@
 % \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.
+% All scalar keys and values encountered in the table will be cast to a string
+% following \acro{yaml} serialization rules. String values will also be
+% transformed using the function `t`.
+%
+% \end{markdown}
+%  \begin{macrocode}
+  function self.jekyllData(d, t, p)
+    if not self.is_writing then return "" end
+
+    local buf = {}
+
+    local keys = {}
+    for k, _ in pairs(d) do
+      table.insert(keys, k)
+    end
+    table.sort(keys)
+
+    if not p then
+      table.insert(buf, "\\markdownRendererJekyllDataBegin")
+    end
+
+    if #d > 0 then
+        table.insert(buf, "\\markdownRendererJekyllDataSequenceBegin{")
+        table.insert(buf, self.uri(p or "null"))
+        table.insert(buf, "}{")
+        table.insert(buf, #keys)
+        table.insert(buf, "}")
+    else
+        table.insert(buf, "\\markdownRendererJekyllDataMappingBegin{")
+        table.insert(buf, self.uri(p or "null"))
+        table.insert(buf, "}{")
+        table.insert(buf, #keys)
+        table.insert(buf, "}")
+    end
+
+    for _, k in ipairs(keys) do
+      local v = d[k]
+      local typ = type(v)
+      k = tostring(k or "null")
+      if typ == "table" and next(v) ~= nil then
+        table.insert(
+          buf,
+          self.jekyllData(v, t, k)
+        )
+      else
+        k = self.uri(k)
+        v = tostring(v)
+        if typ == "boolean" then
+          table.insert(buf, "\\markdownRendererJekyllDataBoolean{")
+          table.insert(buf, k)
+          table.insert(buf, "}{")
+          table.insert(buf, v)
+          table.insert(buf, "}")
+        elseif typ == "number" then
+          table.insert(buf, "\\markdownRendererJekyllDataNumber{")
+          table.insert(buf, k)
+          table.insert(buf, "}{")
+          table.insert(buf, v)
+          table.insert(buf, "}")
+        elseif typ == "string" then
+          table.insert(buf, "\\markdownRendererJekyllDataString{")
+          table.insert(buf, k)
+          table.insert(buf, "}{")
+          table.insert(buf, t(v))
+          table.insert(buf, "}")
+        elseif typ == "table" then
+          table.insert(buf, "\\markdownRendererJekyllDataEmpty{")
+          table.insert(buf, k)
+          table.insert(buf, "}")
+        else
+          error(format("Unexpected type %s for value of " ..
+                       "YAML key %s", typ, k))
+        end
+      end
+    end
+
+    if #d > 0 then
+      table.insert(buf, "\\markdownRendererJekyllDataSequenceEnd")
+    else
+      table.insert(buf, "\\markdownRendererJekyllDataMappingEnd")
+    end
+
+    if not p then
+      table.insert(buf, "\\markdownRendererJekyllDataEnd")
+    end
+
+    return buf
+  end
+%    \end{macrocode}
+% \par
+% \begin{markdown}
+%
 % Define \luamdef{writer->active\_headings} as a stack of identifiers
 % of the headings that are currently active. The
-% \luam{writer->active\_headings} member variable is mutable.
+% \luamref{writer->active\_headings} member variable is mutable.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -15271,8 +16483,8 @@
 % \end{markdown}
 %  \begin{macrocode}
   function self.set_state(s)
-    previous_state = self.get_state()
-    for key, value in pairs(state) do
+    local previous_state = self.get_state()
+    for key, value in pairs(s) do
       self[key] = value
     end
     return previous_state
@@ -15283,14 +16495,14 @@
 %
 % Define \luamdef{writer->defer_call} as a function that will encapsulate the
 % input function `f`, so that `f` is called with the state of the writer at the
-% time of calling \luam{writer->defer_call}.
+% time of calling \luamref{writer->defer_call}.
 %
 % \end{markdown}
 %  \begin{macrocode}
   function self.defer_call(f)
-    state = self.get_state()
+    local previous_state = self.get_state()
     return function(...)
-      state = self.set_state(state)
+      local state = self.set_state(previous_state)
       local return_value = f(...)
       self.set_state(state)
       return return_value
@@ -15305,7 +16517,7 @@
 %
 %### Parsers
 % The \luamdef{parsers} hash table stores \acro{peg} patterns that are
-% static and can be reused between different \luam{reader} objects.
+% static and can be reused between different \luamref{reader} objects.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -15403,7 +16615,47 @@
                                * (parsers.newline * parsers.optionalspace)^-1
 parsers.line                   = parsers.linechar^0 * parsers.newline
 parsers.nonemptyline           = parsers.line - parsers.blankline
-
+%    \end{macrocode}
+% \begin{figure}
+% \hspace*{-0.1\textwidth}
+% \begin{minipage}{1.2\textwidth}
+% \centering
+% \begin{tikzpicture}[shorten >=1pt, line width=0.1mm, >={Stealth[length=2mm]}, node distance=4.5cm, on grid, auto]
+% \node[state, initial by diamond, accepting] (noop) {initial};
+% \node[state] (odd_backslash) [above right=of noop] {odd backslash};
+% \node[state] (even_backslash) [below right=of odd_backslash] {even backslash};
+% \node[state] (comment) [below=of noop] {comment};
+% \node[state] (leading_spaces) [below=of even_backslash, align=center] {leading tabs\\and spaces};
+% \node[state] (blank_line) [below right=of comment] {blank line};
+% \path[->]
+% (noop) edge [in=150, out=180, loop] node [align=center, yshift=-0.75cm] {match [$^\wedge$\textbackslash\%]\\capture \textbackslash$\!^{2k}$\meta{match}\\reset $k$} ()
+%        edge [bend right=10] node [below right=-0.2cm] {match \textbackslash} (odd_backslash)
+%        edge [bend left=30] node [left, align=center] {match \%\\capture \textbackslash$\!^k$\\reset $k$} (comment)
+% (comment) edge [in=305, out=325, loop] node [xshift=-1.2cm] {match [$^\wedge$$\drsh$]} ()
+%           edge [bend left=10] node {match $\drsh$} (leading_spaces)
+% (leading_spaces) edge [loop below] node {match [\textvisiblespace$\rightleftarrows$]} ()
+%                  edge [bend right=90] node [right] {match \textbackslash} (odd_backslash)
+%                  edge [bend left=10] node {match \%} (comment)
+%                  edge [bend right=10] node {$\epsilon$} (blank_line)
+%                  edge [bend left=10] node [align=center, right=0.3cm] {match [$^\wedge$\textvisiblespace$\rightleftarrows$$\drsh$\textbackslash\%]\\capture \meta{match}} (noop)
+% (blank_line) edge [loop below] node {match [\textvisiblespace$\rightleftarrows$]} ()
+%              edge [bend left=90] node [align=center, below=1.2cm] {match $\drsh$\\ capture $\drsh\drsh$} (noop)
+% (odd_backslash) edge [bend right=10] node [align=center, xshift=-0.3cm, yshift=0.2cm] {match \textbackslash\\increment $k$} (even_backslash)
+%                 edge [bend right=10] node [align=center, above left=-0.3cm, xshift=0.1cm] {match [$^\wedge$\textbackslash]\\for \%, capture \textbackslash$\!^k$\%\\for [$^\wedge$\%], capture \textbackslash$\!^{2k+1}$\meta{match}\\reset $k$} (noop)
+% (even_backslash) edge [bend left=10] node {$\epsilon$} (noop);
+% \end{tikzpicture}
+% \caption{A pushdown automaton that recognizes \TeX{} comments}
+% \label{fig:commented_line}
+% \end{minipage}
+% \end{figure}
+% \begin{markdown}
+%
+% The \luamdef{parsers.commented_line}`^1` parser recognizes the regular
+% language of \TeX{} comments, see an equivalent finite automaton in Figure
+% \vref{fig:commented_line}.
+%
+% \end{markdown}
+%  \begin{macrocode}
 parsers.commented_line_letter  = parsers.linechar
                                + parsers.newline
                                - parsers.backslash
@@ -15442,7 +16694,9 @@
                                    + parsers.percent  -- comment
                                    * parsers.line
                                    * parsers.optionalspace)  -- leading tabs and spaces
-                                 + C(parsers.newline))
+                                 + #(parsers.newline)
+                                 * Cb("backslashes")
+                                 * C(parsers.newline))
 
 parsers.chunk                  = parsers.line * (parsers.optionallyindentedline
                                                 - parsers.blankline)^0
@@ -15490,6 +16744,16 @@
                  + parsers.space * parsers.space * parsers.space
                                  * parsers.bulletchar * #parsers.spacing
                  )
+
+local function tickbox(interior)
+  return parsers.optionalspace * parsers.lbracket
+       * interior * parsers.rbracket * parsers.spacechar^1
+end
+
+parsers.ticked_box = tickbox(S("xX")) * Cc(1.0)
+parsers.halfticked_box = tickbox(S("./")) * Cc(0.5)
+parsers.unticked_box = tickbox(parsers.spacechar^1) * Cc(0.0)
+
 %    \end{macrocode}
 % \par
 % \begin{markdown}
@@ -16052,6 +17316,11 @@
                      * Cs(parsers.fencedline(parsers.backtick)^0)
                      * parsers.fencetail(parsers.backtick)
 
+parsers.JekyllFencedCode
+                     = parsers.fencehead(parsers.dash)
+                     * Cs(parsers.fencedline(parsers.dash)^0)
+                     * parsers.fencetail(parsers.dash)
+
 parsers.lineof = function(c)
     return (parsers.leader * (P(c) * parsers.optionalspace)^3
            * (parsers.newline * parsers.blankline^1
@@ -16114,24 +17383,24 @@
 %
 %### Markdown Reader
 % \label{sec:markdownreader}
-% This section documents the \luam{reader} object, which implements the
+% This section documents the \luamref{reader} object, which implements the
 % routines for parsing the markdown input. The object corresponds to the
 % markdown reader object that was located in the
 % `lunamark/reader/markdown.lua` file in the Lunamark Lua module.
 %
 % Although not specified in the Lua interface (see Section
-% \ref{sec:luainterface}), the \luam{reader} object is exported, so that the
+% \vref{sec:luainterface}), the \luamref{reader} object is exported, so that the
 % curious user could easily tinker with the methods of the objects produced by
-% the \luam{reader.new} method described below. The user should be aware,
+% the \luamref{reader.new} method described below. The user should be aware,
 % however, that the implementation may change in a future revision.
 %
 % The \luamdef{reader.new} method creates and returns a new \TeX{} reader
 % object associated with the Lua interface options (see Section
-% \ref{sec:luaoptions}) `options` and with a writer object `writer`. When
+% \vref{sec:luaoptions}) `options` and with a writer object `writer`. When
 % `options` are unspecified, it is assumed that an empty table was passed to
 % the method.
 %
-% The objects produced by the \luam{reader.new} method expose instance methods
+% The objects produced by the \luamref{reader.new} method expose instance methods
 % and variables of their own. As a convention, I will refer to these
 % \meta{member}s as `reader->`\meta{member}.
 %
@@ -16145,7 +17414,7 @@
 % \par
 % \begin{markdown}
 %
-% Make the `options` table inherit from the \luam{defaultOptions} table.
+% Make the `options` table inherit from the \luamref{defaultOptions} table.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -16206,9 +17475,9 @@
 % \par
 % \begin{markdown}
 %
-% The \luamdef{larsers} (as in ``local \luam{parsers}'') hash table stores
+% The \luamdef{larsers} (as in ``local \luamref{parsers}'') hash table stores
 % \acro{peg} patterns that depend on the received `options`, which impedes
-% their reuse between different \luam{reader} objects.
+% their reuse between different \luamref{reader} objects.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -16274,7 +17543,7 @@
       end
     end
   end
-    
+
   local parse_blocks
     = create_parser("parse_blocks",
                     function()
@@ -16728,6 +17997,19 @@
                                                     expandtabs(code))
                          end
 
+  larsers.JekyllData   = P("---")
+                       * parsers.blankline / 0
+                       * #(-parsers.blankline)  -- if followed by blank, it's an hrule
+                       * C((parsers.line - P("---") - P("..."))^0)
+                       * (P("---") + P("..."))
+                       / function(text)
+                           local tinyyaml = require("markdown-tinyyaml")
+                           data = tinyyaml.parse(text)
+                           return writer.jekyllData(data, function(s)
+                             return parse_blocks(s)
+                           end, nil)
+                         end
+
   larsers.Blockquote   = Cs(larsers.blockquote_body^1)
                        / parse_blocks_toplevel / writer.blockquote
 
@@ -16769,6 +18051,15 @@
 %  \begin{macrocode}
   larsers.starter = parsers.bullet + larsers.enumerator
 
+  if options.taskLists then
+    larsers.tickbox = ( parsers.ticked_box
+                      + parsers.halfticked_box
+                      + parsers.unticked_box
+                      ) / writer.tickbox
+  else
+     larsers.tickbox = parsers.fail
+  end
+
   -- we use \001 as a separator between a tight list item and a
   -- nested list under it.
   larsers.NestedList            = Cs((parsers.optionallyindentedline
@@ -16786,7 +18077,7 @@
 
   larsers.TightListItem = function(starter)
       return -larsers.HorizontalRule
-             * (Cs(starter / "" * larsers.ListBlock * larsers.NestedList^-1)
+             * (Cs(starter / "" * larsers.tickbox^-1 * larsers.ListBlock * larsers.NestedList^-1)
                / parse_blocks)
              * -(parsers.blanklines * parsers.indent)
   end
@@ -16793,7 +18084,7 @@
 
   larsers.LooseListItem = function(starter)
       return -larsers.HorizontalRule
-             * Cs( starter / "" * larsers.ListBlock * Cc("\n")
+             * Cs( starter / "" * larsers.tickbox^-1 * larsers.ListBlock * Cc("\n")
                * (larsers.NestedList + larsers.ListContinuationBlock^0)
                * (parsers.blanklines / "\n\n")
                ) / parse_blocks
@@ -16944,7 +18235,10 @@
 
       Blank                 = larsers.Blank,
 
+      JekyllData            = larsers.JekyllData,
+
       Block                 = V("ContentBlock")
+                            + V("JekyllData")
                             + V("Blockquote")
                             + V("PipeTable")
                             + V("Verbatim")
@@ -17068,8 +18362,8 @@
     syntax.InlineNote = parsers.fail
   end
 
-  if not options.smartEllipses then
-    syntax.Smart = parsers.fail
+  if not options.jekyllData then
+    syntax.JekyllData = parsers.fail
   end
 
   if options.preserveTabs then
@@ -17080,6 +18374,10 @@
     syntax.PipeTable = parsers.fail
   end
 
+  if not options.smartEllipses then
+    syntax.Smart = parsers.fail
+  end
+
   local blocks_toplevel_t = util.table_copy(syntax)
   blocks_toplevel_t.Paragraph = larsers.ToplevelParagraph
   larsers.blocks_toplevel = Ct(blocks_toplevel_t)
@@ -17126,7 +18424,7 @@
 % \begin{markdown}
 % When determining the name of the cache file, create salt for the hashing
 % function out of the package version and the passed options recognized by the
-% Lua interface (see Section \ref{sec:luaoptions}). The \Opt{cacheDir} option
+% Lua interface (see Section \vref{sec:luaoptions}). The \Opt{cacheDir} option
 % is disregarded.
 % \end{markdown}
 %  \begin{macrocode}
@@ -17142,7 +18440,7 @@
 %    \end{macrocode}
 % \begin{markdown}
 % Produce the cache file and transform its filename to plain \TeX{} output
-% via the \luam{writer->pack} method.
+% via the \luamref{writer->pack} method.
 % \end{markdown}
 %  \begin{macrocode}
     local name = util.cache(options.cacheDir, input, salt, function(input)
@@ -17180,9 +18478,9 @@
 % \begin{markdown}
 %
 %### Conversion from Markdown to Plain \TeX{}
-% The \luam{new} method returns the \luam{reader->convert} function of a reader
+% The \luamref{new} method returns the \luamref{reader->convert} function of a reader
 % object associated with the Lua interface options (see Section
-% \ref{sec:luaoptions}) `options` and with a writer object associated with
+% \vref{sec:luaoptions}) `options` and with a writer object associated with
 % `options`.
 %
 % \end{markdown}
@@ -17205,7 +18503,7 @@
 %### Command-Line Implementation
 % \label{sec:lua-cli-implementation}
 % The command-line implementation provides the actual conversion routine for
-% the command-line interface described in Section~\ref{sec:lua-cli-interface}.
+% the command-line interface described in Section~\vref{sec:lua-cli-interface}.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -17276,7 +18574,7 @@
 % The plain \TeX{} implementation provides macros for the interfacing between
 % \TeX{} and Lua and for the buffering of input text. These macros are then
 % used to implement the macros for the conversion from markdown to plain \TeX{}
-% exposed by the plain \TeX{} interface (see Section \ref{sec:texinterface}).
+% exposed by the plain \TeX{} interface (see Section \vref{sec:texinterface}).
 %
 %### Logging Facilities
 % \label{sec:texinterfacelogging}
@@ -17302,12 +18600,12 @@
 %
 %### Finalizing and Freezing the Cache
 %
-% When the \m{markdownOptionFinalizeCache} option is enabled, then the
+% When the \mref{markdownOptionFinalizeCache} option is enabled, then the
 % \mdef{markdownFrozenCacheCounter} counter is used to enumerate the markdown
 % documents using the Lua interface \Opt{frozenCacheCounter} option.
 %
-% When the \m{markdownOptionFrozenCache} option is enabled, then the
-% \m{markdownFrozenCacheCounter} counter is used to render markdown documents
+% When the \mref{markdownOptionFrozenCache} option is enabled, then the
+% \mref{markdownFrozenCacheCounter} counter is used to render markdown documents
 % from the frozen cache without invoking Lua.
 %
 % \end{markdown}
@@ -17386,6 +18684,9 @@
 \def\markdownRendererFootnotePrototype#1{#1}%
 \def\markdownRendererCitePrototype#1{}%
 \def\markdownRendererTextCitePrototype#1{}%
+\def\markdownRendererTickedBoxPrototype{[X]}%
+\def\markdownRendererHalfTickedBoxPrototype{[/]}%
+\def\markdownRendererUntickedBoxPrototype{[ ]}%
 %    \end{macrocode}
 % \par
 % \begin{markdown}
@@ -17392,8 +18693,8 @@
 %
 %### Lua Snippets
 % The \mdef{markdownLuaOptions} macro expands to a Lua table that
-% contains the plain \TeX{} options (see Section \ref{sec:texoptions}) in a
-% format recognized by Lua (see Section \ref{sec:luaoptions}).
+% contains the plain \TeX{} options (see Section \vref{sec:texoptions}) in a
+% format recognized by Lua (see Section \vref{sec:luaoptions}).
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -17456,6 +18757,9 @@
 \ifx\markdownOptionInlineFootnotes\undefined\else
   inlineFootnotes = \markdownOptionInlineFootnotes,
 \fi
+\ifx\markdownOptionJekyllData\undefined\else
+  jekyllData = \markdownOptionJekyllData,
+\fi
 \ifx\markdownOptionPipeTables\undefined\else
   pipeTables = \markdownOptionPipeTables,
 \fi
@@ -17480,6 +18784,9 @@
 \ifx\markdownOptionTableCaptions\undefined\else
   tableCaptions = \markdownOptionTableCaptions,
 \fi
+\ifx\markdownOptionTaskLists\undefined\else
+  taskLists = \markdownOptionTaskLists,
+\fi
 \ifx\markdownOptionTeXComments\undefined\else
   texComments = \markdownOptionTeXComments,
 \fi
@@ -17496,7 +18803,7 @@
 %
 % The \mdef{markdownPrepare} macro contains the Lua code that is executed prior
 % to any conversion from markdown to plain \TeX{}. It exposes the
-% \luam{convert} function for the use by any further Lua code.
+% \luamref{convert} function for the use by any further Lua code.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -17503,7 +18810,7 @@
 \def\markdownPrepare{%
 %    \end{macrocode}
 % \begin{markdown}
-% First, ensure that the \m{markdownOptionCacheDir} directory exists.
+% First, ensure that the \mref{markdownOptionCacheDir} directory exists.
 % \end{markdown}
 %  \begin{macrocode}
   local lfs = require("lfs")
@@ -17515,7 +18822,7 @@
 % \begin{markdown}
 % Next, load the `markdown` module and create a converter function using
 % the plain \TeX{} options, which were serialized to a Lua table via the
-% \m{markdownLuaOptions} macro.
+% \mref{markdownLuaOptions} macro.
 % \end{markdown}
 %  \begin{macrocode}
   local md = require("markdown")
@@ -17569,8 +18876,8 @@
 % \par
 % \begin{markdown}
 %
-% The \m{markdownReadAndConvert} macro is largely a rewrite of the
-% \Hologo{LaTeX2e} \m{filecontents} macro to plain \TeX{}.
+% The \mref{markdownReadAndConvert} macro is largely a rewrite of the
+% \Hologo{LaTeX2e} \mref{filecontents} macro to plain \TeX{}.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -17582,7 +18889,7 @@
 % backslash as an ordinary character inside the macro definition.  Likewise,
 % swap the character codes of the percent sign (`%`) and the ampersand (`@`),
 % so that we can remove percent signs from the beginning of lines when
-% \m{markdownOptionStripPercentSigns} is enabled.
+% \mref{markdownOptionStripPercentSigns} is enabled.
 % \end{markdown}
 %  \begin{macrocode}
   \catcode`\^^M=13%
@@ -17596,7 +18903,7 @@
 %    \end{macrocode}
 % \begin{markdown}
 % If we are not reading markdown documents from the frozen cache,
-% open the \m{markdownOptionInputTempFileName} file for writing.
+% open the \mref{markdownOptionInputTempFileName} file for writing.
 % \end{markdown}
 %  \begin{macrocode}
     |markdownIfOption{FrozenCache}{}{@
@@ -17621,7 +18928,7 @@
 % \begin{markdown}
 % The \mdef{markdownReadAndConvertStripPercentSigns} macro will process the
 % individual lines of output, stipping away leading percent signs (`%`) when
-% \m{markdownOptionStripPercentSigns} is enabled.
+% \mref{markdownOptionStripPercentSigns} is enabled.
 % Notice the use of the comments (`@`) to ensure that the entire macro is at
 % a single line and therefore no (active) newline symbols
 % (`^^M`) are produced.
@@ -17657,7 +18964,7 @@
 % \begin{markdown}
 % If we are not reading markdown documents from the frozen cache and the ending
 % token sequence does not appear in the line, store the line in the
-% \m{markdownOptionInputTempFileName} file.
+% \mref{markdownOptionInputTempFileName} file.
 % If we are reading markdown documents from the frozen cache and the
 % ending token sequence does not appear in the line, gobble the line.
 % \end{markdown}
@@ -17670,10 +18977,10 @@
 %    \end{macrocode}
 % \begin{markdown}
 % When the ending token sequence appears in the line, make the next newline
-% character close the \m{markdownOptionInputTempFileName} file, return the
+% character close the \mref{markdownOptionInputTempFileName} file, return the
 % character categories back to the former state, convert the
-% \m{markdownOptionInputTempFileName} file from markdown to plain \TeX{},
-% \m{input} the result of the conversion, and expand the ending control
+% \mref{markdownOptionInputTempFileName} file from markdown to plain \TeX{},
+% \mref{input} the result of the conversion, and expand the ending control
 % sequence.
 % \end{markdown}
 %  \begin{macrocode}
@@ -17707,7 +19014,7 @@
 % \begin{markdown}
 % Make the newline character active at expansion time and make it consume the
 % rest of the line on expansion. Throw away the rest of the first line and
-% pass the second line to the \m{markdownReadAndConvertProcessLine} macro.
+% pass the second line to the \mref{markdownReadAndConvertProcessLine} macro.
 % \end{markdown}
 %  \begin{macrocode}
     |catcode`|^^M=13@
@@ -17730,10 +19037,10 @@
 % \label{sec:luabridge}
 % The following \TeX{} code is intended for \TeX{} engines that do not provide
 % direct access to Lua, but expose the shell of the operating system. This
-% corresponds to the \m{markdownMode} values of `0` and `1`.
+% corresponds to the \mref{markdownMode} values of `0` and `1`.
 %
-% The \m{markdownLuaExecute} macro defined here and in Section
-% \ref{sec:directlua} are meant to be indistinguishable to the remaining code.
+% The \mref{markdownLuaExecute} macro defined here and in Section
+% \vref{sec:directlua} are meant to be indistinguishable to the remaining code.
 %
 % The package assumes that although the user is not using the Lua\TeX{} engine,
 % their \TeX{} distribution contains it, and uses shell access to produce and
@@ -17756,10 +19063,10 @@
 % whether the shell access is enabled (`1`), disabled (`0`), or restricted
 % (`2`).
 %
-% Inherit the value of the the \m{pdfshellescape} (Lua\TeX{}, \Hologo{pdfTeX})
-% or the \m{shellescape} (\Hologo{XeTeX}) commands. If neither of these
+% Inherit the value of the the \mref{pdfshellescape} (Lua\TeX{}, \Hologo{pdfTeX})
+% or the \mref{shellescape} (\Hologo{XeTeX}) commands. If neither of these
 % commands is defined and Lua is available, attempt to access the
-% \luam{status.shell_escape} configuration item.
+% \luamref{status.shell_escape} configuration item.
 %
 % If you cannot detect, whether the shell access is enabled, act as if it were.
 %
@@ -17785,7 +19092,7 @@
 %
 % The \mdef{markdownExecuteDirect} macro executes the code it has received as
 % its first argument by writing it to the output file stream 18, if Lua is
-% unavailable, or by using the Lua \luam{os.execute} method otherwise.
+% unavailable, or by using the Lua \luamref{os.execute} method otherwise.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -17800,8 +19107,8 @@
 % \begin{markdown}
 %
 % The \mdef{markdownExecute} macro is a wrapper on top of
-% \m{markdownExecuteDirect} that checks the value of
-% \m{markdownExecuteShellEscape} and prints an error message if the shell is
+% \mref{markdownExecuteDirect} that checks the value of
+% \mref{markdownExecuteShellEscape} and prints an error message if the shell is
 % inaccessible.
 %
 % \end{markdown}
@@ -17820,8 +19127,8 @@
 %
 % The \mdef{markdownLuaExecute} macro executes the Lua code it has received as
 % its first argument. The Lua code may not directly interact with the \TeX{}
-% engine, but it can use the \luam{print} function in the same manner it
-% would use the \luam{tex.print} method.
+% engine, but it can use the \luamref{print} function in the same manner it
+% would use the \luamref{tex.print} method.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -17837,7 +19144,7 @@
   |gdef|markdownLuaExecute#1{%
 %    \end{macrocode}
 % \begin{markdown}
-% Create the file \m{markdownOptionHelperScriptFileName} and fill it with the
+% Create the file \mref{markdownOptionHelperScriptFileName} and fill it with the
 % input Lua code prepended with \pkg{kpathsea} initialization, so that Lua
 % modules from the \TeX{} distribution are available.
 % \end{markdown}
@@ -17854,7 +19161,7 @@
       end)
 %    \end{macrocode}
 % \begin{markdown}
-% If there was an error, use the file \m{markdownOptionErrorTempFileName} to
+% If there was an error, use the file \mref{markdownOptionErrorTempFileName} to
 % store the error message.
 % \end{markdown}
 %  \begin{macrocode}
@@ -17874,9 +19181,9 @@
     |immediate|closeout|markdownOutputFileStream
 %    \end{macrocode}
 % \begin{markdown}
-% Execute the generated \m{markdownOptionHelperScriptFileName} Lua script using
+% Execute the generated \mref{markdownOptionHelperScriptFileName} Lua script using
 % the \TeX{}Lua binary and store the output in the
-% \m{markdownOptionOutputTempFileName} file.
+% \mref{markdownOptionOutputTempFileName} file.
 % \end{markdown}
 %  \begin{macrocode}
     |markdownInfo{Executing a helper Lua script from the file
@@ -17888,7 +19195,7 @@
       /|markdownOptionOutputTempFileName"}%
 %    \end{macrocode}
 % \begin{markdown}
-% \m{input} the generated \m{markdownOptionOutputTempFileName} file.
+% \mref{input} the generated \mref{markdownOptionOutputTempFileName} file.
 % \end{markdown}
 %  \begin{macrocode}
     |input|markdownOptionOutputTempFileName|relax}%
@@ -17900,9 +19207,9 @@
 %### Direct Lua Access
 % \label{sec:directlua}
 % The following \TeX{} code is intended for \TeX{} engines that provide
-% direct access to Lua (Lua\TeX{}). The macro \m{markdownLuaExecute} defined
-% here and in Section \ref{sec:luabridge} are meant to be indistinguishable to
-% the remaining code. This corresponds to the \m{markdownMode} value of `2`.
+% direct access to Lua (Lua\TeX{}). The macro \mref{markdownLuaExecute} defined
+% here and in Section \vref{sec:luabridge} are meant to be indistinguishable to
+% the remaining code. This corresponds to the \mref{markdownMode} value of `2`.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -17912,10 +19219,10 @@
 % \par
 % \begin{markdown}
 %
-% The direct Lua access version of the \m{markdownLuaExecute} macro is defined
-% in terms of the \m{directlua} primitive. The \luam{print} function is set as
-% an alias to the \m{tex.print} method in order to mimic the behaviour of the
-% \m{markdownLuaExecute} definition from Section \ref{sec:luabridge},
+% The direct Lua access version of the \mref{markdownLuaExecute} macro is defined
+% in terms of the \mref{directlua} primitive. The \luamref{print} function is set as
+% an alias to the \mref{tex.print} method in order to mimic the behaviour of the
+% \mref{markdownLuaExecute} definition from Section \vref{sec:luabridge},
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -17927,8 +19234,8 @@
 %
 %### Typesetting Markdown
 %
-% The \m{markdownInput} macro uses an implementation of the
-% \m{markdownLuaExecute} macro to convert the contents of the file whose
+% The \mref{markdownInput} macro uses an implementation of the
+% \mref{markdownLuaExecute} macro to convert the contents of the file whose
 % filename it has received as its single argument from markdown to plain
 % \TeX{}.
 %
@@ -17957,7 +19264,7 @@
 % \begin{markdown}
 % If we are reading from the frozen cache, input it, expand the corresponding
 % `\markdownFrozenCache`\meta{number} macro, and increment
-% \m{markdownFrozenCacheCounter}.
+% \mref{markdownFrozenCacheCounter}.
 % \end{markdown}
 %  \begin{macrocode}
     |markdownIfOption{FrozenCache}{%
@@ -17998,7 +19305,7 @@
 %    \end{macrocode}
 % \begin{markdown}
 % If we are finalizing the frozen cache, increment
-% \m{markdownFrozenCacheCounter}.
+% \mref{markdownFrozenCacheCounter}.
 % \end{markdown}
 %  \begin{macrocode}
       |markdownIfOption{FinalizeCache}{%
@@ -18025,8 +19332,8 @@
 % existing plain \TeX{} implementation.
 %
 % The \LaTeX{} implementation redefines the plain \TeX{} logging macros (see
-% Section \ref{sec:texinterfacelogging}) to use the \LaTeX{} \m{PackageInfo},
-% \m{PackageWarning}, and \m{PackageError} macros.
+% Section \vref{sec:texinterfacelogging}) to use the \LaTeX{} \mref{PackageInfo},
+% \mref{PackageWarning}, and \mref{PackageError} macros.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -18043,8 +19350,8 @@
 %
 %### Logging Facilities
 % The \LaTeX{} implementation redefines the plain \TeX{} logging macros (see
-% Section \ref{sec:texinterfacelogging}) to use the \LaTeX{} \m{PackageInfo},
-% \m{PackageWarning}, and \m{PackageError} macros.
+% Section \vref{sec:texinterfacelogging}) to use the \LaTeX{} \mref{PackageInfo},
+% \mref{PackageWarning}, and \mref{PackageError} macros.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -18054,9 +19361,9 @@
 %
 %### Typesetting Markdown
 % The \mdef{markdownInputPlainTeX} macro is used to store the original plain
-% \TeX{} implementation of the \m{markdownInput} macro. The \m{markdownInput}
+% \TeX{} implementation of the \mref{markdownInput} macro. The \mref{markdownInput}
 % is then redefined to accept an optional argument with options recognized by
-% the \LaTeX{} interface (see Section \ref{sec:latexoptions}).
+% the \LaTeX{} interface (see Section \vref{sec:latexoptions}).
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -18070,8 +19377,8 @@
 % \par
 % \begin{markdown}
 %
-% The \envm{markdown}, and \envm{markdown*} \LaTeX{} environments are
-% implemented using the \m{markdownReadAndConvert} macro.
+% The \envmref{markdown}, and \envmref{markdown*} \LaTeX{} environments are
+% implemented using the \mref{markdownReadAndConvert} macro.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -18103,7 +19410,7 @@
 % \begin{markdown}
 %
 %### Options
-% The supplied package options are processed using the \m{markdownSetup} macro.
+% The supplied package options are processed using the \mref{markdownSetup} macro.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -18144,6 +19451,15 @@
 %    \end{macrocode}
 % \begin{markdown}
 %
+% We load the \pkg{ifthen} and \pkg{grffile} packages, see also
+% Section~\ref{sec:latexprerequisites}:
+%
+% \end{markdown}
+%  \begin{macrocode}
+\RequirePackage{ifthen,grffile}
+%    \end{macrocode}
+% \begin{markdown}
+%
 % We store the previous definition of the fenced code token renderer prototype:
 %
 % \end{markdown}
@@ -18155,12 +19471,11 @@
 %
 % If the infostring starts with `dot …`, we redefine the fenced code block
 % token renderer prototype, so that it typesets the code block via Graphviz
-% tools if and only if the \m{markdownOptionFrozenCache} plain \TeX{} option is
+% tools if and only if the \mref{markdownOptionFrozenCache} plain \TeX{} option is
 % disabled and the code block has not been previously typeset:
 %
 % \end{markdown}
 %  \begin{macrocode}
-\RequirePackage{ifthen}
 \renewcommand\markdownRendererInputFencedCode[2]{%
   \def\next##1 ##2\relax{%
     \ifthenelse{\equal{##1}{dot}}{%
@@ -18210,8 +19525,17 @@
 %    \end{macrocode}
 % \begin{markdown}
 %
-% We define the \m{markdown at witiko@graphicx at http@counter} counter to enumerate
-% the images for caching and the \m{markdown at witiko@graphicx at http@filename}
+% We load the \pkg{catchfile} and \pkg{grffile} packages, see also
+% Section~\ref{sec:latexprerequisites}:
+%
+% \end{markdown}
+%  \begin{macrocode}
+\RequirePackage{catchfile,grffile}
+%    \end{macrocode}
+% \begin{markdown}
+%
+% We define the \mref{markdown at witiko@graphicx at http@counter} counter to enumerate
+% the images for caching and the \mref{markdown at witiko@graphicx at http@filename}
 % command, which will store the pathname of the file containing the pathname
 % of the downloaded image file.
 %
@@ -18225,7 +19549,7 @@
 %    \end{macrocode}
 % \begin{markdown}
 %
-% We define the \m{markdown at witiko@graphicx at http@download} command, which will
+% We define the \mref{markdown at witiko@graphicx at http@download} command, which will
 % receive two arguments that correspond to the URL of the online image and to
 % the pathname, where the online image should be downloaded. The command will
 % produce a shell command that tries to downloads the online image to the
@@ -18261,7 +19585,7 @@
 % \begin{markdown}
 %
 % The image will be downloaded only if the image URL has the http or https
-% protocols and the \m{markdownOptionFrozenCache} plain \TeX{} option is disabled:
+% protocols and the \mref{markdownOptionFrozenCache} plain \TeX{} option is disabled:
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -18272,7 +19596,7 @@
 %    \end{macrocode}
 % \begin{markdown}
 %
-% The image will be downloaded to the pathname \m{markdownOptionCacheDir}<!--
+% The image will be downloaded to the pathname \mref{markdownOptionCacheDir}<!--
 % -->`/`\meta{the MD5 digest of the image URL}`.`\meta{the suffix of the
 % image URL}:
 %
@@ -18313,7 +19637,7 @@
 %
 % \end{markdown}
 %  \begin{macrocode}
-    \CatchFileDef{\filename}{\filename}{}^^A
+    \CatchFileDef{\filename}{\filename}{\endlinechar=-1}^^A
     \markdown at witiko@graphicx at http@oldRendererImagePrototype^^A
       {#1}{#2}{\filename}{#4}^^A
   \endgroup
@@ -18342,8 +19666,9 @@
 % \begin{markdown}
 %
 %### Token Renderer Prototypes
+% \label{sec:latexdefaultrendererprototypes}
 % The following configuration should be considered placeholder. If the `plain`
-% package option has been enabled (see Section \ref{sec:latexplain}), none of
+% package option has been enabled (see Section \vref{sec:latexplain}), none of
 % it will take effect.
 % \end{markdown}
 %  \begin{macrocode}
@@ -18350,24 +19675,24 @@
 \ifmarkdownLaTeXPlain\else
 %    \end{macrocode}
 % \par
-% \begin{markdown}
-%
-% If the \m{markdownOptionTightLists} macro expands to `false`, do not load
+% \begin{markdown}%
+% If the \mref{markdownOptionTightLists} macro expands to `false`, do not load
 % the \pkg{paralist} package. This is necessary for \Hologo{LaTeX2e} document
 % classes that do not play nice with \pkg{paralist}, such as \pkg{beamer}.
-% If the \m{markdownOptionTightLists} is undefined and the \pkg{beamer}
+% If the \mref{markdownOptionTightLists} is undefined and the \pkg{beamer}
 % document class is in use, then do not load the \pkg{paralist} package either.
 %
 % \end{markdown}
 %  \begin{macrocode}
 \RequirePackage{ifthen}
-\@ifundefined{markdownOptionTightLists}{%
+
+\ifx\markdownOptionTightLists\undefined
   \@ifclassloaded{beamer}{}{%
     \RequirePackage{paralist}}%
-}{%
+\else
   \ifthenelse{\equal{\markdownOptionTightLists}{false}}{}{%
     \RequirePackage{paralist}}%
-}%
+\fi
 %    \end{macrocode}
 % \par
 % \begin{markdown}
@@ -18395,6 +19720,8 @@
     olEndTight = {\markdownRendererOlEnd},
     dlBeginTight = {\markdownRendererDlBegin},
     dlEndTight = {\markdownRendererDlEnd}}}}
+\RequirePackage{amsmath}
+\RequirePackage{amssymb}
 \RequirePackage{csvsimple}
 \RequirePackage{fancyvrb}
 \RequirePackage{graphicx}
@@ -18431,7 +19758,6 @@
       \label{fig:#1}%
     \end{figure}},
   ulBegin = {\begin{itemize}},
-  ulItem = {\item{}},
   ulEnd = {\end{itemize}},
   olBegin = {\begin{enumerate}},
   olItem = {\item{}},
@@ -18441,6 +19767,9 @@
   dlItem = {\item[#1]},
   dlEnd = {\end{description}},
   emphasis = {\emph{#1}},
+  tickedBox = {$\boxtimes$},
+  halfTickedBox = {$\boxdot$},
+  untickedBox = {$\square$},
   blockQuoteBegin = {\begin{quotation}},
   blockQuoteEnd = {\end{quotation}},
   inputVerbatim = {\VerbatimInput{#1}},
@@ -18517,9 +19846,46 @@
 % \par
 % \begin{markdown}
 %
-% There is a basic implementation for citations that uses the \LaTeX{} \m{cite}
-% macro. There are also implementations that use the \pkg{natbib} \m{citep},
-% and \m{citet} macros, and the Bib\LaTeX{} \m{autocites} and \m{textcites}
+%#### Tickboxes
+% If the \Opt{taskLists} option is enabled, we will hide bullets in unordered
+% list items with tickboxes.
+%
+% \end{markdown}
+%  \begin{macrocode}
+\markdownSetup{
+  rendererPrototypes = {
+    ulItem = {%
+      \futurelet\markdownLaTeXCheckbox\markdownLaTeXUlItem
+    },
+  },
+}
+\def\markdownLaTeXUlItem{%
+  \ifx\markdownLaTeXCheckbox\markdownRendererTickedBox
+    \item[\markdownLaTeXCheckbox]%
+    \expandafter\@gobble
+  \else
+    \ifx\markdownLaTeXCheckbox\markdownRendererHalfTickedBox
+      \item[\markdownLaTeXCheckbox]%
+      \expandafter\expandafter\expandafter\@gobble
+    \else
+      \ifx\markdownLaTeXCheckbox\markdownRendererUntickedBox
+        \item[\markdownLaTeXCheckbox]%
+        \expandafter\expandafter\expandafter\expandafter
+          \expandafter\expandafter\expandafter\@gobble
+      \else
+        \item{}%
+      \fi
+    \fi
+  \fi
+}
+%    \end{macrocode}
+% \par
+% \begin{markdown}
+%
+%#### Citations
+% Here is a basic implementation for citations that uses the \LaTeX{} \mref{cite}
+% macro. There are also implementations that use the \pkg{natbib} \mref{citep},
+% and \mref{citet} macros, and the Bib\LaTeX{} \mref{autocites} and \mref{textcites}
 % macros. These implementations will be used, when the respective packages are
 % loaded.
 %
@@ -18748,6 +20114,7 @@
 % \par
 % \begin{markdown}
 %
+%#### Links
 % Before consuming the parameters for the hyperlink renderer, we change the
 % category code of the hash sign (`#`) to other, so that it cannot be
 % mistaken for a parameter character. After the hyperlink has been typeset,
@@ -18768,7 +20135,8 @@
 % \par
 % \begin{markdown}
 %
-% There is a basic implementation of tables. If the \pkg{booktabs} package is
+%#### Tables
+% Here is a basic implementation of tables. If the \pkg{booktabs} package is
 % loaded, then it is used to produce horizontal lines.
 %
 % \end{markdown}
@@ -18854,10 +20222,312 @@
 % \par
 % \begin{markdown}
 %
+%#### YAML Metadata
+% \label{sec:latexyamlmetadata}
+% To parse the \acro{yaml} metadata we will use the expl3 language from the
+% \LaTeX3 kernel.
+%
+% \end{markdown}
+%  \begin{macrocode}
+\RequirePackage{expl3}
+\ExplSyntaxOn
+%    \end{macrocode}
+% \par
+% \begin{markdown}
+%
+% To keep track of the current type of structure we inhabit when we are
+% traversing a \acro{yaml} document, we will maintain the
+% \mdef{g_\@\@_jekyll_data_datatypes_seq} stack. At every step of the traversal,
+% the stack will contain one of the following constants at any position $p$:
+%
+% \mdef{c_\@\@_jekyll_data_sequence_tl}
+%
+%:    The currently traversed branch of the \acro{yaml} document contains a sequence
+%     at depth $p$.
+%
+% \mdef{c_\@\@_jekyll_data_mapping_tl}
+%
+%:    The currently traversed branch of the \acro{yaml} document contains a mapping
+%     at depth $p$.
+%
+% \mdef{c_\@\@_jekyll_data_scalar_tl}
+%
+%:    The currently traversed branch of the \acro{yaml} document contains a scalar
+%     value at depth $p$.
+%
+% \end{markdown}
+%  \begin{macrocode}
+\seq_new:N   \g_@@_jekyll_data_datatypes_seq
+\tl_const:Nn \c_@@_jekyll_data_sequence_tl   { sequence }
+\tl_const:Nn \c_@@_jekyll_data_mapping_tl    { mapping  }
+\tl_const:Nn \c_@@_jekyll_data_scalar_tl     { scalar   }
+%    \end{macrocode}
+% \par
+% \begin{markdown}
+%
+% To keep track of our current place when we are traversing a \acro{yaml}
+% document, we will maintain the
+% \mdef{g_\@\@_jekyll_data_wildcard_absolute_address_seq} stack of keys using
+% the \mdef{markdown_jekyll_data_push_address_segment:n} macro.
+%
+% \end{markdown}
+%  \begin{macrocode}
+\seq_new:N \g_@@_jekyll_data_wildcard_absolute_address_seq
+\cs_new:Nn \markdown_jekyll_data_push_address_segment:n
+  {
+    \seq_if_empty:NF
+      \g_@@_jekyll_data_datatypes_seq
+      {
+        \seq_get_right:NN
+          \g_@@_jekyll_data_datatypes_seq
+          \l_tmpa_tl
+%    \end{macrocode}
+% \begin{markdown}
+%
+% If we are currently in a sequence, we will put an asterisk (`*`) instead of
+% a key into \mref{g_\@\@_jekyll_data_wildcard_absolute_address_seq} to make
+% it represent a *wildcard*. Keeping a wildcard instead of a precise address
+% makes it easy for the users to react to *any* item of a sequence regardless
+% of how many there are, which can often be useful.
+%
+% \end{markdown}
+%  \begin{macrocode}
+      \tl_if_eq:NNTF
+        \l_tmpa_tl
+        \c_@@_jekyll_data_sequence_tl
+        {
+          \seq_put_right:Nn
+            \g_@@_jekyll_data_wildcard_absolute_address_seq
+            { *  }
+        }
+        {
+          \seq_put_right:Nn
+            \g_@@_jekyll_data_wildcard_absolute_address_seq
+            { #1 }
+        }
+      }
+  }
+%    \end{macrocode}
+% \par
+% \begin{markdown}
+%
+% Out of \mref{g_\@\@_jekyll_data_wildcard_absolute_address_seq}, we will
+% construct the following two token lists:
+%
+% \mdef{g_\@\@_jekyll_data_wildcard_absolute_address_tl}
+%
+%:    An *absolute wildcard*: The wildcard from the root of the document
+%     prefixed with a slash (`/`) with individual keys and asterisks also
+%     delimited by slashes. Allows the users to react to complex
+%     context-sensitive structures with ease.
+%
+%:    For example, the `name` key in the following \acro{yaml} document
+%     would correspond to the `/*/person/name` absolute wildcard:
+%     ``` yaml
+%     [{person: {name: Elon, surname: Musk}}]
+%     ```
+%
+% \mdef{g_\@\@_jekyll_data_wildcard_relative_address_tl}
+%
+%:    A *relative wildcard*: The rightmost segment of the wildcard. Allows the
+%     users to react to simple context-free structures.
+%
+%:    For example, the `name` key in the following \acro{yaml} document
+%     would correspond to the `name` relative wildcard:
+%     ``` yaml
+%     [{person: {name: Elon, surname: Musk}}]
+%     ```
+%
+% We will construct \mref{g_\@\@_jekyll_data_wildcard_absolute_address_tl}
+% using the \mdef{markdown_jekyll_data_concatenate_address:NN} macro and
+% we will construct both token lists using the
+% \mdef{markdown_jekyll_data_update_address_tls:} macro.
+%
+% \end{markdown}
+%  \begin{macrocode}
+\tl_new:N  \g_@@_jekyll_data_wildcard_absolute_address_tl
+\tl_new:N  \g_@@_jekyll_data_wildcard_relative_address_tl
+\cs_new:Nn \markdown_jekyll_data_concatenate_address:NN
+  {
+    \seq_pop_left:NN #1 \l_tmpa_tl
+    \tl_set:Nx #2 { / \seq_use:Nn #1 { / } }
+    \seq_put_left:NV #1 \l_tmpa_tl
+  }
+\cs_new:Nn \markdown_jekyll_data_update_address_tls:
+  {
+    \markdown_jekyll_data_concatenate_address:NN
+      \g_@@_jekyll_data_wildcard_absolute_address_seq
+      \g_@@_jekyll_data_wildcard_absolute_address_tl
+    \seq_get_right:NN
+      \g_@@_jekyll_data_wildcard_absolute_address_seq
+      \g_@@_jekyll_data_wildcard_relative_address_tl
+  }
+%    \end{macrocode}
+% \par
+% \begin{markdown}
+%
+% To make sure that the stacks and token lists stay in sync, we will use the
+% \mdef{markdown_jekyll_data_push:nN} and \mdef{markdown_jekyll_data_pop:}
+% macros.
+%
+% \end{markdown}
+%  \begin{macrocode}
+\cs_new:Nn \markdown_jekyll_data_push:nN
+  {
+    \markdown_jekyll_data_push_address_segment:n
+      { #1 }
+    \seq_put_right:NV
+     \g_@@_jekyll_data_datatypes_seq
+     #2
+    \markdown_jekyll_data_update_address_tls:
+  }
+\cs_new:Nn \markdown_jekyll_data_pop:
+  {
+    \seq_pop_right:NN
+      \g_@@_jekyll_data_wildcard_absolute_address_seq
+      \l_tmpa_tl
+    \seq_pop_right:NN
+      \g_@@_jekyll_data_datatypes_seq
+      \l_tmpa_tl
+    \markdown_jekyll_data_update_address_tls:
+  }
+%    \end{macrocode}
+% \par
+% \begin{markdown}
+%
+% To interface with the user, we use `markdown/jekyllData` key--values from the
+% l3keys module of the \LaTeX3 kernel. The default setup will invoke the
+% \mref{title}, \mref{author}, and \mref{date} macros when scalar values for
+% keys that correspond to the `title`, `author`, and `date` relative wildcards
+% are encountered, respectively.
+%
+% \end{markdown}
+%  \begin{macrocode}
+\keys_define:nn
+  { markdown/jekyllData }
+  {
+    author  .code:n = { \author{#1} },
+    date    .code:n = { \date{#1}   },
+    title   .code:n = { \title{#1}  },
+  }
+%    \end{macrocode}
+% \begin{markdown}
+%
+% To set a single key--value, we will use the
+% \mdef{markdown_jekyll_data_set_keyval:Nn} macro, ignoring unknown keys.
+% To set key--values for both absolute and relative wildcards, we will use the
+% \mdef{markdown_jekyll_data_set_keyvals:nn} macro.
+%
+% \end{markdown}
+%  \begin{macrocode}
+\cs_new:Nn \markdown_jekyll_data_set_keyval:nn
+  {
+    \keys_set_known:nn
+      { markdown/jekyllData }
+      { { #1 } = { #2 } }
+  }
+\cs_generate_variant:Nn
+  \markdown_jekyll_data_set_keyval:nn
+  { Vn }
+\cs_new:Nn \markdown_jekyll_data_set_keyvals:nn
+  {
+    \markdown_jekyll_data_push:nN
+      { #1 }
+      \c_@@_jekyll_data_scalar_tl
+    \markdown_jekyll_data_set_keyval:Vn
+      \g_@@_jekyll_data_wildcard_absolute_address_tl
+      { #2 }
+    \markdown_jekyll_data_set_keyval:Vn
+      \g_@@_jekyll_data_wildcard_relative_address_tl
+      { #2 }
+    \markdown_jekyll_data_pop:
+  }
+%    \end{macrocode}
+% \par
+% \begin{markdown}
+%
+% Finally, we will register our macros as token renderer prototypes
+% to be able to react to the traversal of a \acro{yaml} document.
+%
+% \end{markdown}
+%  \begin{macrocode}
+\markdownSetup{
+  rendererPrototypes = {
+    jekyllDataSequenceBegin = {
+      \markdown_jekyll_data_push:nN
+        { #1 }
+        \c_@@_jekyll_data_sequence_tl
+    },
+    jekyllDataMappingBegin = {
+      \markdown_jekyll_data_push:nN
+        { #1 }
+        \c_@@_jekyll_data_mapping_tl
+    },
+    jekyllDataSequenceEnd = {
+      \markdown_jekyll_data_pop:
+    },
+    jekyllDataMappingEnd = {
+      \markdown_jekyll_data_pop:
+    },
+    jekyllDataBoolean = {
+      \markdown_jekyll_data_set_keyvals:nn
+        { #1 }
+        { #2 }
+    },
+    jekyllDataEmpty = { },
+    jekyllDataNumber = {
+      \markdown_jekyll_data_set_keyvals:nn
+        { #1 }
+        { #2 }
+    },
+    jekyllDataString = {
+      \markdown_jekyll_data_set_keyvals:nn
+        { #1 }
+        { #2 }
+    },
+%    \end{macrocode}
+% \begin{markdown}
+%
+% To complement the default setup of our key--values, we will use
+% the \mref{maketitle} macro to typeset the title page of a document
+% at the end of \acro{yaml} metadata. If we are in the preamble, we will wait
+% macro until after the beginning of the document. Otherwise, we will use
+% the \mref{maketitle} macro straight away.
+%
+% \end{markdown}
+%  \begin{macrocode}
+  },
+}
+\providecommand\IfFormatAtLeastTF{\@ifl at t@r\fmtversion}
+\markdownSetup{
+  rendererPrototypes = {
+    jekyllDataEnd = {
+      \IfFormatAtLeastTF
+        { 2020-10-01 }
+        { \AddToHook{begindocument/end}{\maketitle} }
+        {
+          \ifx\@onlypreamble\@notprerr
+            % We are in the document
+            \maketitle
+          \else
+            % We are in the preamble
+            \RequirePackage{etoolbox}
+            \AfterEndPreamble{\maketitle}
+          \fi
+        }
+    },
+  },
+}
+
+\ExplSyntaxOff
+%    \end{macrocode}
+% \par
+% \begin{markdown}
+%
 %### Miscellanea
 % When buffering user input, we should disable the bytes with the high bit set,
 % since these are made active by the \pkg{inputenc} package. We will do this by
-% redefining the \m{markdownMakeOther} macro accordingly. The code is courtesy
+% redefining the \mref{markdownMakeOther} macro accordingly. The code is courtesy
 % of Scott Pakin, the creator of the \pkg{filecontents} package.
 %
 % \end{markdown}
@@ -18887,8 +20557,8 @@
 % after supplying the missing plain \TeX{} macros.
 %
 % The \Hologo{ConTeXt} implementation redefines the plain \TeX{} logging macros
-% (see Section \ref{sec:texinterfacelogging}) to use the \Hologo{ConTeXt}
-% \m{writestatus} macro.
+% (see Section \vref{sec:texinterfacelogging}) to use the \Hologo{ConTeXt}
+% \mref{writestatus} macro.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -18902,8 +20572,8 @@
 % \begin{markdown}
 %
 % When buffering user input, we should disable the bytes with the high bit set,
-% since these are made active by the \m{enableregime} macro. We will do this
-% by redefining the \m{markdownMakeOther} macro accordingly. The code is
+% since these are made active by the \mref{enableregime} macro. We will do this
+% by redefining the \mref{markdownMakeOther} macro accordingly. The code is
 % courtesy of Scott Pakin, the creator of the \pkg{filecontents} \LaTeX{}
 % package.
 %
@@ -18930,8 +20600,8 @@
 % \begin{markdown}
 %
 %### Typesetting Markdown
-% The \m{startmarkdown} and \m{stopmarkdown} macros are implemented using the
-% \m{markdownReadAndConvert} macro.
+% The \mref{startmarkdown} and \mref{stopmarkdown} macros are implemented using the
+% \mref{markdownReadAndConvert} macro.
 %
 % \end{markdown}
 %  \begin{macrocode}
@@ -19041,7 +20711,7 @@
 % \begin{markdown}
 %
 % The code fence infostring is used as a name from the \Hologo{ConTeXt}
-% \m{definetyping} macro. This allows the user to set up code highlighting
+% \mref{definetyping} macro. This allows the user to set up code highlighting
 % mapping as follows:
 % ````` tex
 % % Map the `TEX` syntax highlighter to the `latex` infostring.
@@ -19147,6 +20817,9 @@
   \ifnum\markdownConTeXtColumnCounter<\markdownConTeXtColumnTotal\relax\else
     \expandafter\gobbleoneargument
   \fi\markdownConTeXtRenderTableCell}
+\def\markdownRendererTickedBox{$\boxtimes$}
+\def\markdownRendererHalfTickedBox{$\boxdot$}
+\def\markdownRendererUntickedBox{$\square$}
 %    \end{macrocode}
 % \iffalse
 %</context>

Modified: trunk/Master/texmf-dist/source/generic/markdown/markdown.ins
===================================================================
--- trunk/Master/texmf-dist/source/generic/markdown/markdown.ins	2021-10-01 16:30:06 UTC (rev 60666)
+++ trunk/Master/texmf-dist/source/generic/markdown/markdown.ins	2021-10-01 22:00:34 UTC (rev 60667)
@@ -1,18 +1,26 @@
-\input docstrip.tex
-\generate{\usepreamble\luapreamble\usepostamble\luapostamble
-          \file{markdown.lua}{\from{markdown.dtx}{lua}}
-          \file{markdown-cli.lua}{\from{markdown.dtx}{lua-cli}}
-          \usepreamble\texpreamble\usepostamble\texpostamble
-          \file{markdown.tex}{\from{markdown.dtx}{tex}}
-          \file{markdown.sty}{\from{markdown.dtx}{latex}}
-          \file{t-markdown.tex}{\from{markdown.dtx}{context}}
-          \file{markdownthemewitiko_dot.sty}{\from{markdown.dtx}{latex-themes-witiko-dot}}
-          \file{markdownthemewitiko_graphicx_http.sty}{\from{markdown.dtx}{latex-themes-witiko-graphicx-http}}
-          \file{markdownthemewitiko_tilde.sty}{\from{markdown.dtx}{latex-themes-witiko-tilde}}
-          \usepreamble\empty\usepostamble\empty
-          \file{markdown.md}{\from{markdown.dtx}{manual}}
-          \file{markdown-interfaces.md}{\from{markdown.dtx}{manual-interfaces}}
-          \file{markdown-options.md}{\from{markdown.dtx}{manual-options}}
-          \file{markdown-tokens.md}{\from{markdown.dtx}{manual-tokens}}
-          \file{markdown.css}{\from{markdown.dtx}{manual-css}}}
+\input l3docstrip.tex
+\generate{
+  \usepreamble\luapreamble
+  \usepostamble\luapostamble
+    \file{markdown.lua}{\from{markdown.dtx}{lua}}
+    \file{markdown-cli.lua}{\from{markdown.dtx}{lua-cli}}
+  \usepreamble\texpreamble
+  \usepostamble\texpostamble
+    \file{markdown.tex}{\from{markdown.dtx}{tex}}
+    \file{markdown.sty}{\from{markdown.dtx}{latex}}
+    \file{t-markdown.tex}{\from{markdown.dtx}{context}}
+    \file{markdownthemewitiko_dot.sty}{\from{markdown.dtx}{latex-themes-witiko-dot}}
+    \file{markdownthemewitiko_graphicx_http.sty}{\from{markdown.dtx}{latex-themes-witiko-graphicx-http}}
+    \file{markdownthemewitiko_tilde.sty}{\from{markdown.dtx}{latex-themes-witiko-tilde}}
+    \file{markdownthemewitiko_markdown_techdoc.sty}{\from{markdown.dtx}{latex-themes-witiko-markdown-techdoc}}
+  \usepreamble\empty
+  \usepostamble\empty
+    \file{markdown.md}{\from{markdown.dtx}{manual}}
+    \file{markdown-interfaces.md}{\from{markdown.dtx}{manual-interfaces}}
+    \file{markdown-options.md}{\from{markdown.dtx}{manual-options}}
+    \file{markdown-tokens.md}{\from{markdown.dtx}{manual-tokens}}
+    \file{markdown.css}{\from{markdown.dtx}{manual-css}}
+    \file{markdown-figure-block-diagram.tex}{\from{markdown.dtx}{techdoc-block-diagram}}
+    \file{markdown.bib}{\from{markdown.dtx}{techdoc-bibliography}}
+}
 \endbatchfile

Modified: trunk/Master/texmf-dist/tex/context/third/markdown/t-markdown.tex
===================================================================
--- trunk/Master/texmf-dist/tex/context/third/markdown/t-markdown.tex	2021-10-01 16:30:06 UTC (rev 60666)

@@ Diff output truncated at 1234567 characters. @@


More information about the tex-live-commits mailing list.