

























This release contains two security hardening fixes:
--permission flag with the permissions defined in security.node.permissions. This means that you need Node >= 22 installed and that css.TailwindCSS now requires that the Tailwind CSS CLI must be installed as a Node.js package. The standalone executable is no longer supportedBut there are some notable new features, as well:
A practical example in css.Build would be to have something like this in hugo.toml:
[params.style] primary = "#000000" background = "#ffffff" [params.style.dark] primary = "#ffffff" background = "#000000"
And in the stylesheet:
@import "hugo:vars"; @import "hugo:vars/dark" (prefers-color-scheme: dark); :root { color-scheme: light dark; }
The permalinks configuration is now much more flexible (the old setup still works). It uses the same target matchers as in the cascade config, meaning you can now do:
permalinks: - target: kind: page path: "/books/**" pattern: /books/:year/:slug/ - target: kind: section path: "/{books,books/**}" pattern: /libros/:sections[1:] - target: kind: page pattern: /other/:slug/
The above example isn't great, but it at least shows the gist of it.
What we had before was e.g. content/mypost.en.md which told Hugo that the content files was in English. With the new setup you could also name the file content/mypost._language_en_.md. This alone doesn't sound very useful, but this allows you to use more prefixes:
| Prefix | Description | Relevant for |
|---|---|---|
| language_ | Language | Content and layout files. |
| role_ | Role | Content and layout files. |
| version_ | Version | Content and layout files. |
| outputformat_ | Output format | Layout files. |
| mediatype_ | Media type | Layout files. |
| kind_ | Page kind | Layout files. |
| layout_ | Layout | Layout files. |
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。