Commit Graph

121 Commits

Author SHA1 Message Date
Timothée Mazzucotelli b3c1d91ed8 refactor: use our markdown subclasses
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-04-28 12:34:15 +00:00
Martin Donath 5178689c7a chore: fix ty warning
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-27 09:35:01 +02:00
Martin Donath 5fd8871c6a fix: revert change in search processor (regression)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-26 17:01:37 +02:00
Martin Donath 99d53f68c2 feature: add collectors to extract references for link validation
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-25 15:13:54 +02:00
Martin Donath 98720928cc refactor: subclass Markdown processors to extend functionality
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
Co-authored-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-04-25 13:42:39 +02:00
Timothée Mazzucotelli 72ba12236b fix: sanitize nested metadata (#582)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-04-25 11:26:28 +00:00
Timothée Mazzucotelli dfb73ff1f3 chore: switch to ty
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-04-24 17:14:04 +00:00
squidfunk 2fb663e1fd fix: text adjacent to image included in link to open image in lightbox (#579)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-24 16:04:53 +02:00
squidfunk dc32baf98f fix: anchor links preserved in table of content section titles (#578)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-24 14:16:11 +02:00
squidfunk fdeb0616cd refactor: use identical name for tree- and postprocessor
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-24 13:58:01 +02:00
squidfunk 127648e743 fix: attributes not applied to lightbox images
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-24 13:55:20 +02:00
Timothée Mazzucotelli 76945357dc feature: installable theme extensions (#511)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
Co-authored-by: squidfunk <martin.donath@squidfunk.com>
2026-04-24 13:37:59 +02:00
Timothée Mazzucotelli 46b03e5d7c chore: add spacing in markdown example
This also makes the markup for lists compliant with Python-Markdown (required blank line before).

Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-04-24 09:25:59 +00:00
Martin Donath 676bfe2041 chore: fix mypy linter error
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-23 16:35:17 +02:00
Martin Donath 64f3f33b72 fix: relative links in raw HTML not correctly resolved (#258)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-23 15:16:41 +02:00
Martin Donath 87abb2abef fix: remove img attributes moved to parent in GLightboxExtension
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-23 14:00:36 +02:00
squidfunk f7531afbf6 fix: images in raw HTML are double-processed by GLightboxExtension
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-23 13:36:05 +02:00
squidfunk 1d8dc83135 fix: ensure None attributes are not added by GlightboxExtension
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-23 13:35:34 +02:00
squidfunk 7c977a855a refactor: move GLightbox extension to regular Postprocessor
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-23 13:19:46 +02:00
Martin Donath 5519730eea feature: render section title with markup in table of contents
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-23 12:14:42 +02:00
squidfunk db8518dc3a feature: add plugin compatibility shim for glightbox
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-23 11:58:00 +02:00
squidfunk 5c1f3817df chore: fix import order
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-23 11:41:00 +02:00
squidfunk 057da7c2c7 feature: add support for image galleries using glightbox (#290)
Co-authored-by: Timothée Mazzucotelli <dev@pawamoy.fr>
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-23 11:36:13 +02:00
squidfunk 98a8e73833 docs: unify wording in comments
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-23 11:29:47 +02:00
Martin Donath 8f5f584b9a feature: update configuration parser to TOML v1.1.0
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-18 17:17:59 +02:00
Florian Scheuner 670834fb04 fix: inhibit instant previews on footnote backrefs
Signed-off-by: Florian Scheuner <github@florian-scheuner.de>
2026-04-18 11:43:52 +02:00
Timothée Mazzucotelli 7076f8d4b3 fix: update README.html links to index.html links when directory URLs aren't set (#531)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-04-15 09:55:35 +00:00
Timothée Mazzucotelli 3593ecc44d chore: remove unused import
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-04-15 09:49:15 +00:00
Alexander Voss bb58c5d5e2 fix: out of date help message (#524)
Signed-off-by: alexvoss <alex@corealization.com>
2026-04-13 18:32:20 -04:00
my1e5 20d94ade33 refactor: update GitHub workflows to Node 24 (#522)
Signed-off-by: my1e5 <10064103+my1e5@users.noreply.github.com>
2026-04-13 16:45:18 +02:00
Martin Donath 9bff25ac68 fix: add missing configuration for default Markdown Extensions
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-09 13:35:35 +02:00
Martin Donath 6871d33339 feature: add default Markdown Extensions to bootstrapped zensical.toml
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-04-08 14:48:45 +02:00
Timothée Mazzucotelli 24be9abba9 fix: support pymdownx blocks tab extension's slugify function (#483)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-03-31 18:10:24 +00:00
Martin Donath 77a08d987f feature: add support for mike
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-03-28 12:35:07 +01:00
Timothée Mazzucotelli 25e8c5390b fix: validate docs-directory and custom-theme-directory (#475)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-03-27 16:06:53 +01:00
Timothée Mazzucotelli c1860cab1e fix: leave absolute links untouched (#466)
We match MkDocs' behavior by leaving absolute links untouched (no scheme, no netloc but starting with /). We do not prepend the configured site URL to these links, as users might rely on this behavior.

Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-03-24 12:42:24 +01:00
Alexander Voss 5196cdbf54 fix: invalid setup of MathJax in bootstrapped zensical.toml
Signed-off-by: alexvoss <alex@corealization.com>
2026-03-19 15:14:37 +01:00
Woody 7514e32295 fix: replace codecs.open, deprecated in Python 3.14 (#429)
Signed-off-by: kwag93 <kwag93@naver.com>
2026-03-11 08:13:15 +01:00
Pratyush Sharma 6c911cafc9 fix: watch auto-appended pymdownx.snippets files for changes (#148)
Signed-off-by: Pratyush Sharma <56130065+pratyush618@users.noreply.github.com>
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
Co-authored-by: squidfunk <martin.donath@squidfunk.com>
2026-03-10 17:00:28 +01:00
Ryan Luu ea57e0ba33 chore: fix typos in zensical.toml
Signed-off-by: Ryan Luu <ryan.luu@ryanluu.dev>
2026-03-06 11:31:26 +01:00
Timothée Mazzucotelli bf930dd84b fix: hash plugins config to trigger page rebuilds (#387)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-02-26 14:12:17 +01:00
Martin Donath b93d630c0a fix: clarify examples in bootstrapped zensical.toml (#394)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-02-26 12:58:30 +01:00
Timothée Mazzucotelli 798da3350a fix: ignore virtual environments in mkdocstrings sources (#391)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-02-24 16:09:55 +01:00
Timothée Mazzucotelli 10b5162aa6 fix: lazy import mkdocstrings (#360)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-02-11 22:09:10 +01:00
Timothée Mazzucotelli e33c972e03 fix: don't watch mkdocstrings-configured path if it's the root directory
This is a follow-up of commit 6e3d5ef64b which was actually incomplete. Since a/ is relative to a/, we also have to check that a path configured through mkdocstrings-python's  option isn't the project root itself.

Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-02-11 16:26:36 +01:00
Timothée Mazzucotelli e32ab15b1f feature: support autorefs plugin
This change brings support for using autorefs without mkdocstrings.

In order to support that, we incorporate Zensical-related code from mkdocstrings within our code base, for better control (and much more elegant logic).

Before, mkdocstrings would expose a Markdown extension as "mkdocstrings", that Zensical would add (as a string) to its configured Markdown extensions list when detecting the plugin. Now, Zensical instantiates the extension itself (which simplifies things a lot since we don't have to synchronize releases -and therefore code!- of Zensical and mkdocstrings).

Instead of having several possible sources for autorefs data (mkdocstrings and autorefs itself), we use a global data store that both autorefs and mkdocstrings reuse to register data. Zensical can simply retrieve this data when ready, with a call_method0 Pyo3 call (like before).

We instantiate the autorefs Markdown extension ourselves too, while mocking the classes used by mkdocstrings (autorefs plugin, MkDocs pages) to provide the same interface. What's nice about this is that we can now set the current page being rendered in autorefs without having to inject a dummy Markdown processor (that would before just act as a data store, for mkdocstrings to retrieve the current page and set it on the autorefs plugin instance). Since we control the (mocked) plugin, we can easily change its current page attribute.

This change effectively decouples Zensical from mkdocstrings, which means users upgrading Zensical don't even have to upgrade mkdocstrings.

Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-02-10 21:35:20 +01:00
Timothée Mazzucotelli e233f9f7d4 fix: fail early if mkdocstrings is enabled but not installed (#338)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-02-10 12:27:54 +01:00
Timothée Mazzucotelli 7e6ef17382 fix: create previews when target is current page (#330)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-02-04 15:35:50 +01:00
Tyrone Meijn 6643eb922f fix: invalid links to content actions in bootstrapped zensical.toml
Signed-off-by: Tyrone Meijn <tyrone_meijn@outlook.com>
2026-02-01 14:52:54 +01:00
Jens 5e58e169be docs: improve comment on tooltips in boostrapped zensical.toml
Signed-off-by: Jens <64728985+Jens-Unsinn@users.noreply.github.com>
2026-02-01 11:34:11 +01:00