Martin Donath
cdee1e8bc7
fix: disabling link validation doesn't disable link and reference collection ( #659 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-15 11:38:52 +02:00
Martin Donath
7a5d97abe0
Merge pull request #680 from zensical/fix/validation-edge-cases
...
harden link validation
2026-05-15 11:27:35 +02:00
squidfunk
4355dad3ce
fix: harden link validation for files with CRLF line endings
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-15 11:23:45 +02:00
squidfunk
a418c6bd3c
fix: link validation doesn't ignore fenced code blocks when \r is present
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-15 11:05:07 +02:00
squidfunk
b31dd1472c
fix: $ at end of line breaks link validation ( #659 )
...
fix: `$` at end of line breaks link validation
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-15 10:41:12 +02:00
Timothée Mazzucotelli
17c67a2f62
fix: remove abbreviations from table of contents ( #669 )
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-14 11:30:12 +00:00
Timothée Mazzucotelli
6eb2f4d942
fix: reserve theme name zensical
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-14 11:29:53 +00:00
Timothée Mazzucotelli
a5a864178c
fix: only wait for config update after a first successful build ( #670 )
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-13 09:45:21 +00:00
Martin Donath
820755463d
fix: don't consider [] and [][] link references ( #663 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-12 09:51:22 +02:00
Martin Donath
c338b270b5
fix: two backticks with no closing run trip up link parser ( #663 ) ( #665 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-12 09:43:32 +02:00
Timothée Mazzucotelli
5ef9ee4ee3
chore: use beautifulsoup and lxml to check HTML in tests
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-10 17:50:03 +00:00
Timothée Mazzucotelli
65931820ba
chore: incorporate autorefs
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-10 15:20:44 +00:00
Timothée Mazzucotelli
d707aa9e48
fix: prevent reload loop by de-duplicating watched theme files ( #655 )
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-10 11:19:55 +00:00
Timothée Mazzucotelli
53f593f50e
refactor: avoid mutating configurations list
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-10 10:55:45 +00:00
Timothée Mazzucotelli
a77087a455
refactor: reorganize config module
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-09 15:26:15 +00:00
Martin Donath
84adc6f290
chore: release v0.0.41
...
## Summary
This version adds support for [integrating tabular data] as Markdown tables, covering the functionality of the [mkdocs-table-reader-plugin], as well as the [`watch`][watch] option to automatically rebuild on changes in unmonitored files. Table reading is implemented as part of [macros], which we shipped in [0.0.40]. You can now embed CSV and other file formats with:
```
{{ read_csv("data/team.csv") }}
```
Additionally, the stability of link [validation] has been drastically improved, reducing the rate for false positives. We're working on support for validating links using [autorefs], which we'll provide in one of the next versions.
[integrating tabular data]: https://zensical.org/docs/setup/extensions/macros/#reading-tabular-data
[mkdocs-table-reader-plugin]: https://pypi.org/project/mkdocs-table-reader-plugin/
[macros]: https://zensical.org/docs/setup/extensions/macros/
[0.0.40]: https://github.com/zensical/zensical/releases/tag/v0.0.40
[validation]: https://zensical.org/docs/setup/validation/
[watch]: https://zensical.org/docs/setup/basics/#watch
[autorefs]: https://mkdocstrings.github.io/autorefs/
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
v0.0.41
2026-05-09 16:29:39 +02:00
Martin Donath
9e466fc2c1
fix: update ui to v0.0.17
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-09 16:13:32 +02:00
Timothée Mazzucotelli
d24ea24a44
feature: support table reader functionality
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-09 12:54:10 +00:00
Timothée Mazzucotelli
67b6ef106c
refactor: make extensions consistent
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-09 12:53:36 +00:00
Martin Donath
bf26d1be5e
refactor: implement parser for link validation
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-09 14:28:08 +02:00
Timothée Mazzucotelli
ee64247c31
chore: setup reusable fixtures for extensions testing ( #645 )
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-07 11:52:47 +00:00
Timothée Mazzucotelli
2cbb33d2f2
feature: support watch option ( #643 )
...
Watched paths trigger a full rebuild when modified.
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-07 10:52:38 +00:00
Timothée Mazzucotelli
bee1c3f7ea
fix: give higher priority than superfences to macros preprocessor ( #638 )
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-05 21:41:00 +00:00
Martin Donath
bc3e017c30
chore: release v0.0.40
...
## Summary
This version adds support for [macros], covering the functionality of the `mkdocs-macros-plugin`. Macros allow you to define custom variables and functions that can be used in your Markdown files, making it easier to manage and reuse content across your documentation.
We've implemented macros support as a Python Markdown extension, since it's essentially a Markdown preprocessor that doesn't need to be aware of the rest of Zensical's rendering process, except for the current page and configuration. The benefit is that it can now also be used in Python docstrings to build API documentation with [mkdocstrings].
[macros]: https://zensical.org/docs/setup/extensions/macros/
[mkdocstrings]: https://mkdocstrings.github.io
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
v0.0.40
2026-05-04 17:49:13 +02:00
Martin Donath
bdc3471b79
fix: update ui to v0.0.16
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-04 17:46:43 +02:00
Martin Donath
36b5131574
feature: exclude macros blocks from link validation
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-04 16:45:06 +02:00
Timothée Mazzucotelli
f7fe088a37
feature: support macros plugin
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-04 14:40:04 +00:00
Timothée Mazzucotelli
91090e9917
refactor: combine file watching for extensions
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-04 12:05:41 +00:00
Timothée Mazzucotelli
91a9f85d77
chore: fix import in test file
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-04 11:02:50 +00:00
Timothée Mazzucotelli
b2fdc788d4
refactor: pass rendering context into preprocessor
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-04 09:55:15 +00:00
Timothée Mazzucotelli
c23fb92789
chore: setup pytest and initial markdown extension testing
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-04 09:32:24 +00:00
Martin Donath
296eb2414a
Merge pull request #622 from zensical/fix/link-validation-windows
...
fix: link validation exclusions on Windows ignoring `\r` (#615 )
2026-05-04 09:04:33 +02:00
Timothée Mazzucotelli
e0c6700c33
chore: set concise output for Ruff
...
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr >
2026-05-03 21:27:44 +00:00
squidfunk
4be2374fbe
fix: link validation doesn't catch end of MathJax when \r present ( #615 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-03 19:13:58 +02:00
squidfunk
c6cffec95f
fix: link validation exclusions don't catch \r\n line feeds
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-03 19:01:03 +02:00
squidfunk
6efe0a3bcc
fix: link validation exclusions require empty line after code block ( #618 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-03 18:55:05 +02:00
Martin Donath
645bbe881a
fix: clear site directory contents instead of removing it ( #621 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-03 16:46:58 +02:00
squidfunk
814d2e9edf
fix: link validation yields false positives on Windows ( #616 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-03 12:39:09 +02:00
Martin Donath and takeshiD
b229bac9ad
fix: zensical serve returns 404 after suspend ( #574 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
Co-authored-by: takeshiD <goriponikeike55@gmail.com >
2026-05-01 20:08:37 +02:00
Martin Donath
b5492cef2e
fix: shim for mkdocs-glightbox fails when only defaults are set ( #611 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-01 19:32:54 +02:00
Martin Donath
0291ad5360
chore: release v0.0.39
...
## Summary
This version fixes several bugs related to link validation and lightbox configuration.
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
v0.0.39
2026-05-01 18:24:15 +02:00
Martin Donath
fe42fc4dde
fix: shim for MkDocs validation syntax overrides Zensical's ( #607 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-01 18:18:35 +02:00
Martin Donath
89d99bafaf
Merge pull request #597 from zensical/fix/validation-text-fragment
...
fix: anchor not extracted from combined anchor-text-fragment
2026-05-01 18:02:52 +02:00
Martin Donath
273dd2313a
fix: auto-themed gallery takes precedence over explicit grouping
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-01 17:37:02 +02:00
Martin Donath
b693a2fe4b
Fix glightbox captions ( #605 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-01 13:46:55 +02:00
squidfunk
dfc74bf921
chore: fix ty warning
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-01 13:39:22 +02:00
squidfunk
3e27d6954b
refactor: move glightbox config options to dataclass
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-01 13:36:14 +02:00
squidfunk
8ed39039ce
chore: disable ruff's N802 globally
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-01 13:27:06 +02:00
squidfunk
c050add8a0
fix: error when setting caption_position on glightbox extension ( #604 )
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-01 13:12:13 +02:00
squidfunk
699d3be0f6
fix: add Python backtrace on Markdown rendering error
...
Signed-off-by: squidfunk <martin.donath@squidfunk.com >
2026-05-01 13:09:24 +02:00