Vít Starý Novotný submitted an update to the
markdown
package.
Version number: 3.9.0-0-g4f1abe21 2024-11-21 License type: lppl1.3c
Summary description: Converting and rendering markdown documents inside TeX
Announcement text: ----------------------------------------------------------------------
Development:
- Convert built-in LaTeX themes `witiko/dot` and `witiko/graphicx/http` into plain TeX themes. (#514, #522, #529)
This allows these themes to be used in formats such as plain TeX and ConTeXt as well.
Refactoring:
- Remove dependencies on `ifthen`, `gobble`, and `catchfile`. (#514, #522, #529)
- Store small built-in LaTeX themes `witiko/dot`, `witiko/graphicx/http`, and `witiko/tilde` in expl3 props in files `markdown.tex` and `markdown.sty`. (#514, #522, #529)
This simplifies the distribution and installation of these themes, which were previously located in individual `.tex` and `.sty` files.
The built-in plain TeX, LaTeX, and ConTeXt themes `witiko/markdown/defaults` are still distributed in individual files. This is because inlining these themes in files `markdown.tex`, `markdown.sty`, and `t-markdown.tex` would make it more difficult for users to copy and modify these themes without delaying updates to the Markdown package itself. Furthermore, these themes are large and storing/executing them from an expl3 prop would make it more difficult to determine the line numbers when errors occur.
Fixes:
- Protect renderers and renderer prototypes. (#465, #506)
After this change, default renderers and renderer prototypes as well as renderers and renderers and prototypes defined using the keys `renderers` and `rendererPrototypes` of the command `markdownSetup` are protected, which is usually preferable for typesetting.
New keys `unprotectedRenderers` and `unprotectedRendererPrototypes` were also added to the command `markdownSetup`. These keys define unprotected renderers and renderer prototypes, respectively, which are easier to expand and may be preferable for programming.
Defaults:
- Define default LaTeX renderer prototypes for table identifiers. (#525, suggested by @machitgarha, #528)
This establishes a reliable method for authors to reference tables within Markdown:
``` tex documentclass{article} usepackage[ pipe_tables, table_attributes, table_captions, relative_references, ]{markdown} egin{document} egin{markdown}
| Right | *Left* | Default | Center | |------:|:-------|-------------|:------:| | 12 | 12 | 12 | 12 | | 123 | 123 | **123** | 123 | | 1 | 1 | 1 | 1 |
: Demonstration of *pipe table* syntax with the caption spreading over multiple lines. {#identifier .class-name key=value}
Demonstration of a *relative reference*: See Table <#identifier>.
end{markdown} end{document} ```
- Define default LaTeX renderer prototypes for bracketed spans. (discussed with @MacLotsen at TUG 2024 and with @TeXhackse at matrix.org, #528)
This establishes a reliable method for authors to reference the last LaTeX counter that has been incremented in e.g. ordered lists.
``` tex documentclass{article} usepackage[ bracketed_spans, relative_references, start_number = false, ]{markdown} egin{document} egin{markdown}
Demonstration of *bracketed spans* syntax:
1. First item 2. [Second item]{#second-item} 3. Third item
Demonstration of a *relative reference*: See item <#second-item>.
end{markdown} end{document} ```
- Use package LuaXML in default LaTeX renderer prototypes for content blocks, raw blocks, and inline raw spans. (#469, #532, co-authored by @michal-h21)
This allows authors to render HTML fragments in their LaTeX documents:
`````` tex documentclass{article} usepackage[content_blocks, raw_attribute]{markdown} egin{filecontents}[overwrite, nosearch, noheader]{example_input.html} <b>foo</b> <i>bar</i> end{filecontents} egin{document} egin{markdown}
Raw text span: `<b>foo</b> <i>bar</i>`{=html}
Raw code block:
``` {=html} <b>foo</b> <i>bar</i> ```
Content block:
/example_input.html
end{markdown} end{document} ``````
Deprecation:
- Remove support for TeX Live 2022. (da85e015, 8f2d25c7)
This change also removes the Lua module `markdown-tinyyaml`, which has been scheduled for removal ever since the Lua module `tinyyaml` was uploaded to CTAN in TeX Live 2023.
----------------------------------------------------------------------
This package is located at https://mirrors.ctan.org/macros/generic/markdown
More information is at https://www.ctan.org/pkg/markdown
------------------------------------------------------------------------
Thanks for the upload.
For the CTAN Team Erik Braun
------------------------------------------------------------------------
CTAN is run entirely by volunteers and supported by TeX user groups. Please join a user group or donate to one, see https://ctan.org/lugs