This also makes the markup for lists compliant with Python-Markdown (required blank line before).
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
This version adds the missing update of the user interface that should've been included with 0.0.35.
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
## Summary
This version adds native support for [GLightbox], a JavaScript lightbox library to add zoom and gallery features to images. Images can be automatically annotated with the new `glightbox` Markdown extension. Add the following to `zensical.toml`:
``` toml
[project.markdown_extensions.zensical.extensions.glightbox]
```
> [!NOTE]
>
> In order to integrate with configuration in `mkdocs.yml`, where [GLightbox] is implemented as a plugin, a compatibility shim is included, so no re-configuration is necessary if you're already using the plugin. Note that our extension is more efficient and faster than the plugin, as it does not re-parse the entire HTML of each page, but instead uses Python Markdown's native extension API.
### HTML in the table of contents
Additionally, __section titles in the table of contents will now render with HTML markup__, so you can use emojis and other inline features in section titles and have them render correctly in the table of contents. In Material for MkDocs, this functionality was implemented with the `typeset` plugin. Zensical now supports this natively.
### Relative links in raw HTML
Relative links in raw HTML are now correctly resolved. Initially, we carried over the link processing and resolution logic from MkDocs, which does not support relative links in raw HTML to this day. We implemented a Python Markdown postprocessor, to ensure that relative links in raw HTML are handled as well.
[GLightbox]: https://biati-digital.github.io/glightbox/
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
## Summary
This version ships support for usage of TOML v1.1.0 in `zensical.toml`, which allows new lines in inline tables. Thus, configuration files can now be made more readable, especially when they contain long lists of items. For example:
__Prior to this version__
``` toml
palette = [
{ scheme = "default", toggle = { icon = "lucide/sun", name = "Switch to dark mode" } },
{ scheme = "slate", toggle = { icon = "lucide/moon", name = "Switch to light mode" } },
]
```
__With this version__
``` toml
palette = [
{
scheme = "default",
toggle = {
icon = "lucide/sun",
name = "Switch to dark mode"
}
},
{
scheme = "slate",
toggle = {
icon = "lucide/moon",
name = "Switch to light mode"
}
},
]
```
Additionally, Markdown pages with snippets are now rebuilt when snippets are updated, and an issue with breadcrumbs was fixed when the top-level `index.md` was not at the root of `nav` defined explicitly.
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
## Summary
This version updates our official [Docker image] to be based on Alpine Linux for better compatibility and ease of use. It also adds all recommended Markdown Extensions to the generated `zensical.toml` file when bootstrapping a project with `zensical new`, ensuring a smoother setup experience. Additionally, the [user interface] is updated to [v0.0.13], which includes two bug fixes for anchor links in the table of contents.
[Docker image]: https://hub.docker.com/r/zensical/zensical
[user interface]: https://github.com/zensical/ui
[v0.0.13]: https://github.com/zensical/ui/releases/tag/v0.0.13
Signed-off-by: squidfunk <martin.donath@squidfunk.com>