* chore: release blog for Hextra v0.12 * Add v0.12 blog translations and proofreading updates * Merge main into plan-release-v0.12.0 and update build script versions * Update build environment versions in netlify.toml to HUGO 0.156.0, GO 1.26.0, and NODE 24.13.1 * chore: update banner messages in multiple languages to reflect the release of Hextra **v0.12** in hugo.yaml * docs(blog): align v0.12 tabs example with image (Photos/Music/Videos) * docs(blog): fix page context menu wording (dropdown, not right-click) * docs(hugo): update version link from v0.9 to v0.11 in menu
218 lines
7.4 KiB
Markdown
218 lines
7.4 KiB
Markdown
---
|
||
title: "Hextra v0.12"
|
||
date: 2026-02-20
|
||
authors:
|
||
- name: imfing
|
||
link: https://github.com/imfing
|
||
image: https://github.com/imfing.png
|
||
tags:
|
||
- Release
|
||
---
|
||
|
||
Hextra v0.12.0 带来了丰富的新功能,包括页面上下文菜单、图片缩放、全新设计的标签页等,同时提供全面的 WCAG 2.2 AA 无障碍改进和大量错误修复。
|
||
|
||
<!--more-->
|
||
|
||
## 升级指南
|
||
|
||
对大多数站点而言没有破坏性变更。使用 [Hugo Modules](https://gohugo.io/hugo-modules/use-modules/) 更新:
|
||
|
||
```bash
|
||
hugo mod get -u github.com/imfing/hextra
|
||
```
|
||
|
||
## 亮点
|
||
|
||
- 页面上下文菜单,可复制/查看 Markdown 源码
|
||
- 全新设计的标签页短代码,支持单独命名和图标
|
||
- Markdown 图片点击缩放
|
||
- GoatCounter 分析支持
|
||
- 桌面端隐藏主侧边栏选项
|
||
- 通过 GitInfo 显示最后修改作者
|
||
- 禁用上一篇/下一篇导航选项
|
||
- 内置归档页面,按时间顺序列出博客文章
|
||
- 术语表短代码和布局
|
||
- 从 llms.txt 中排除页面/章节
|
||
- 移动端侧边栏排序和标签与 `menu.main` 对齐
|
||
- 通过 CSS 变量覆盖支持稳定的内容宽度
|
||
- 全面的 WCAG 2.2 AA 无障碍改进
|
||
|
||
## 新功能
|
||
|
||
### 页面上下文菜单
|
||
|
||

|
||
|
||
页面上下文菜单提供下拉按钮,可将页面内容复制为 Markdown 或查看原始 Markdown 源码。随着越来越多用户将文档输入生成式 AI 工具,快速获取干净的 Markdown 变得越来越有用。通过模板变量(`{url}`、`{title}`、`{markdownUrl}`)添加自定义链接,可以在菜单中直接集成“询问 AI”快捷方式或其他功能。
|
||
|
||
要使用“以 Markdown 查看”和 `{markdownUrl}` 功能,请在站点配置中启用 Markdown 输出格式:
|
||
|
||
```yaml {filename="hugo.yaml"}
|
||
outputs:
|
||
page: [html, markdown]
|
||
section: [html, rss, markdown]
|
||
```
|
||
|
||
然后配置页面上下文菜单:
|
||
|
||
```yaml {filename="hugo.yaml"}
|
||
params:
|
||
page:
|
||
contextMenu:
|
||
enable: true
|
||
links:
|
||
- name: "Ask AI"
|
||
url: "https://example.com?content={markdownUrl}"
|
||
icon: "sparkles"
|
||
```
|
||
|
||
### 标签页重设计与图标支持
|
||
|
||
[标签页短代码]({{% relref "docs/guide/shortcodes/tabs" %}})经过重新设计。现在可以直接在每个 `tab` 短代码上设置标签名称,可选的 `icon` 参数可在标签文字前显示图标。之前的语法仍然支持。
|
||
|
||
```md
|
||
{{</* tabs */>}}
|
||
{{</* tab name="Photos" icon="photograph" */>}}管理和整理您的照片库。{{</* /tab */>}}
|
||
{{</* tab name="Music" icon="music-note" */>}}浏览和播放您喜爱的曲目。{{</* /tab */>}}
|
||
{{</* tab name="Videos" icon="film" */>}}观看和串流视频内容。{{</* /tab */>}}
|
||
{{</* /tabs */>}}
|
||
```
|
||
|
||

|
||
|
||
### 图片缩放
|
||
|
||
通过新的配置选项,启用 Markdown 图片的点击缩放功能,基于 [medium-zoom](https://github.com/francoischalifour/medium-zoom) 实现。
|
||
|
||
```yaml {filename="hugo.yaml"}
|
||
params:
|
||
imageZoom: true
|
||
```
|
||
|
||
### GoatCounter 分析
|
||
|
||
在现有的 Google Analytics、Umami 和 Matomo 集成之外,新增 [GoatCounter](https://www.goatcounter.com/) 分析的内置支持。
|
||
|
||
### 隐藏主侧边栏
|
||
|
||
新的 Front Matter 参数允许在桌面端隐藏主侧边栏,使内容页面获得全宽显示。
|
||
|
||
```yaml {filename="content/my-page.md"}
|
||
---
|
||
title: My Page
|
||
sidebar:
|
||
hide: true
|
||
---
|
||
```
|
||
|
||
### 最后修改作者
|
||
|
||
使用 Hugo 的 GitInfo 功能,在"最后更新"日期旁显示最后提交的作者。
|
||
|
||
```yaml {filename="hugo.yaml"}
|
||
params:
|
||
displayUpdatedAuthor: true
|
||
```
|
||
|
||

|
||
|
||
### 禁用上一篇/下一篇导航
|
||
|
||
在站点范围内禁用上一篇/下一篇导航按钮:
|
||
|
||
```yaml {filename="hugo.yaml"}
|
||
params:
|
||
page:
|
||
displayPagination: false
|
||
```
|
||
|
||
### LLMs.txt 排除
|
||
|
||
通过在 Front Matter 中设置 `llms: false`,将单个页面或整个章节从 `llms.txt` 输出中排除。
|
||
|
||
```yaml {filename="content/private-page.md"}
|
||
---
|
||
title: "Private Page"
|
||
llms: false
|
||
---
|
||
```
|
||
|
||
### 归档页面
|
||
|
||
新的内置 `archives` 布局按年份分组,以时间线形式展示博客文章,每篇文章标题后内联显示标签。
|
||
|
||
```yaml {filename="content/archives/_index.md"}
|
||
---
|
||
title: Archives
|
||
layout: archives
|
||
---
|
||
```
|
||
|
||

|
||
|
||
### 术语表
|
||
|
||
站点级[术语表]({{% relref "docs/guide/shortcodes/term" %}}),提供专用列表页面和用于内联定义的 `term` 短代码。
|
||
|
||
## 无障碍
|
||
|
||
全面的 WCAG 2.2 AA 无障碍改进 (#924):
|
||
|
||
- 所有页面添加跳转到内容链接和 ARIA 地标角色
|
||
- 所有交互组件(主题切换、标签页、侧边栏、文件树、下拉菜单、搜索、菜单)添加 ARIA 属性
|
||
- 标签页和主题切换的键盘导航(方向键、Enter、Escape)
|
||
- 支持 `prefers-reduced-motion` 和全局 `focus-visible` 样式
|
||
- 15 个新的 i18n 无障碍键,在全部 21 个语言环境中提供完整翻译
|
||
- 将所有硬编码的英文 `aria-label` 字符串替换为 i18n 查找
|
||
|
||
## 使用体验优化
|
||
|
||
- 改进表格可读性样式
|
||
- 标题支持 Markdown 属性
|
||
- 多语言章节着陆页的活动链接检测改进
|
||
- 卡片短代码支持可选的图片 `alt` 参数
|
||
- OpenGraph 元数据支持页面资源包图片
|
||
- 内容宽度默认保持一致,支持通过 CSS 变量覆盖自定义布局
|
||
|
||
## 修复
|
||
|
||
- 修复 render-link 中 `relref` 基础前缀重复问题
|
||
- 修复嵌套在步骤中的标签页渲染
|
||
- 移动端侧边栏排序和标签与 `menu.main` 对齐
|
||
- 侧边栏中遵循 `search.enable` 设置
|
||
- 移动端下拉菜单中遵循 `toc` 页面参数
|
||
- 增强 FlexSearch 匹配高亮和安全的 DOM 操作
|
||
- 修复卡片副标题定位
|
||
- 处理子路径部署中 OG 图片路径的前导斜杠
|
||
- 修复 FlexSearch 返回结果页数少于预期的问题
|
||
- 将 Umami 分析的默认文件改为 `script.js`
|
||
- 修复 Hugo v0.156.0+ 的 RSS 作者查找 (`.Site.Params.Author`)
|
||
|
||
## 文档与 i18n
|
||
|
||
- 添加意大利语本地化
|
||
- 链接 KaTeX 文档
|
||
- 将 details 短代码文档更新为尖括号语法
|
||
|
||
## 贡献者
|
||
|
||
此版本由 11 位新贡献者共同参与完成:
|
||
|
||
- [@ghac101](https://github.com/ghac101) - Umami 分析修复、禁用上一篇/下一篇导航
|
||
- [@pmarrapese](https://github.com/pmarrapese) - 标题 Markdown 属性支持
|
||
- [@Bubbler-4](https://github.com/Bubbler-4) - details 短代码文档
|
||
- [@bloovis](https://github.com/bloovis) - FlexSearch 结果计数修复
|
||
- [@AntoninPvr](https://github.com/AntoninPvr) - 卡片副标题定位修复
|
||
- [@illia-v](https://github.com/illia-v) - 移动端目录和搜索切换修复
|
||
- [@gallochri](https://github.com/gallochri) - 意大利语本地化
|
||
- [@MatheusFlausino](https://github.com/MatheusFlausino) - LLMs.txt 排除
|
||
- [@daniseijo](https://github.com/daniseijo) - 最后修改作者功能
|
||
- [@confusedkernel](https://github.com/confusedkernel) - 归档页面
|
||
- [@Fenyutanchan](https://github.com/Fenyutanchan) - Hugo v0.156.0 RSS 作者兼容性修复
|
||
|
||
同时感谢回归贡献者 [@KStocky](https://github.com/KStocky)、[@ldez](https://github.com/ldez)、[@kowyo](https://github.com/kowyo)、[@torbjornbp](https://github.com/torbjornbp)、[@yuri1969](https://github.com/yuri1969) 和 [@PrintN](https://github.com/PrintN) 的持续贡献。
|
||
|
||
---
|
||
|
||
**完整变更日志**: https://github.com/imfing/hextra/compare/v0.11.1...v0.12.0
|