布局与界面分区
一个标准页面包含六个主要功能分区:
- 菜单栏 (Menubar):全局站点链接的整宽顶部导航栏。
- 页头 (Header):常驻的辅助栏,包含页面标题与实用按钮。
- 侧边栏 (Sidebar):主导航树,通常位于左侧。
- 内容区 (Content Area):中央的 Markdown 渲染区域,包含面包屑。
- 目录 (TOC):当前页面右侧的标题导航。
- 页脚 (Footer):底部区域,用于版权、品牌与全站链接。
全局组件配置
引擎采用模块化的布局系统。在 docmd.config.json 的 layout 部分配置大多数界面分区。
菜单栏 (Menubar)
菜单栏提供高层级的导航层。它支持品牌标题、普通链接以及嵌套下拉。
- 位置:固定在
top,或内嵌于header中。 - 文档:schema 与样式请参阅 菜单栏配置。
页面页头 (Header)
页头显示页面标题、面包屑与实用菜单。
- 控制:通过
layout.header全局启用或禁用页头。通过layout.breadcrumbs切换面包屑。 - 局部覆盖:在 页面 Frontmatter 中使用
hideTitle: true可在局部隐藏标题区。
复制小部件
面包屑栏包含两个复制按钮。一个复制页面的原始 Markdown,另一个复制包含 URL、标题与描述的结构化上下文块。便于粘贴到 AI 对话窗口或支持工单中。
在 docmd.config.json 的 theme.copyWidgets 下配置这些按钮:
docmd.config.json
{
"theme": {
"copyWidgets": {
"enabled": true,
"raw": true,
"context": true
}
}
}
enabled:设为false完全禁用该栏。raw:设为false隐藏"复制 Markdown"按钮。context:设为false隐藏"复制上下文"按钮。
实用菜单(选项菜单)
optionsMenu 将核心实用工具(全局搜索、主题切换、赞助链接)归为一组。
docmd.config.json
{
"layout": {
"optionsMenu": {
"position": "header",
"components": {
"search": true,
"themeSwitch": true,
"sponsor": "https://github.com/sponsors/mgks"
}
}
}
}
自动回退
若所选位置对应的容器被禁用,引擎会将选项菜单移至 sidebar-top。这能保证实用工具始终可访问。
侧边栏与导航
侧边栏是主导航树。其结构可在配置或外部 JSON 文件中定义。
- 行为:支持动画、可折叠分组以及自动路径保留。
- 文档:请参阅 导航配置。
页脚 (Footer)
引擎为站点页脚提供 minimal(简约)与 complete(完整)两种布局。
docmd.config.json
{
"layout": {
"footer": {
"style": "complete",
"description": "Documentation built with docmd.",
"branding": true,
"columns": [
{
"title": "Community",
"links": [
{ "text": "GitHub", "url": "https://github.com/docmd-io/docmd" }
]
}
]
}
}
}
界面分层
将菜单栏用于全局链接,将侧边栏用于文档结构。这种分层让真人读者与爬虫都能预测导航。