看板 Markdown 映射说明
周计划看板 · Markdown 映射说明
看板数据统一存放在 content/kanban/(一个 .md 文件 = 一个自然周,或单日「上午 / 下午 / 晚上」时段看板)。
Zola 构建时将原始 Markdown 内嵌到页面,规则引擎直接解析,无需 static/ 副本。
文件命名
| 规则 | 示例 |
|---|---|
默认以 week_start 日期命名 | 2026-06-16.md(对应 6.16 – 6.22) |
单日 + 时段:week_start_时段,保证同一天多张 1 天看板文件名唯一 | 2026-08-11_上午.md / 2026-08-11_下午.md / 2026-08-11_晚上.md |
| 路径 | content/kanban/2026-06-16.md |
Front Matter(页面元数据)
+++
title = "6.16 – 6.22 周计划"
description = "列表页摘要,可选"
date = 2026-06-16
template = "kanban.html"
[extra]
week_start = "2026-06-16"
week_end = "2026-06-22"
core_tasks = "本周核心任务一句话"
stats = { total = 8, done = 3, todo = 3, doing = 2 }
+++| 字段 | 说明 |
|---|---|
week_start / week_end | 顶格时间约束:必须优先设置;跨度 1 ~ 14 天(默认新建 = 今日到今日);修改已有看板时 week_start 锁定不可编辑,week_end 最大为开始 +13 天;全部卡片的 @start / @due 必须落在该区间内(GUI 编辑器校验并限制日期选择) |
period | 时段:上午 / 下午 / 晚上(仅单天看板参与文件名,保证同日多看板唯一) |
core_tasks | 列表卡片展示的核心任务 |
board_bg | 看板背景(预置色名或 #RRGGBB / gradient(...),Trello 风格) |
favorite | true / false,看板标题旁星标收藏(需保存生效) |
stats | 进度统计(按列名自动计算) |
结构映射
| Markdown | 看板元素 |
|---|---|
# 列表名 | 一列(待办 / 进行中 / 已完成 / 资源 / 目标) |
## 卡片标题 | 一张卡片,归属上方最近的 # 列表 |
列顺序 = 文件中 # 出现顺序。
卡片顺序 = 各列内 ## 出现顺序。
列表级可选指令(写在 # 列名 之后、第一张卡片之前):
| 指令 | 语法 | 看板表现 |
|---|---|---|
| 列内排序 | @sort manual / due / priority / title / checklist | 明细页按该规则排序显示(默认 manual) |
| 排序方向 | @sort-order asc / desc | 升序(默认)/ 降序 |
卡片属性 · 规则引擎指令
指令单独占一行,写在 ## 标题 之后、正文之前。以 @ 开头,大小写不敏感。
| 指令 | 语法 | 看板表现 |
|---|---|---|
| 截止日期 | @due 2026-06-20 | 卡片底部截止图标 + 日期 |
| 开始日期 | @start 2026-06-16 | 卡片底部开始图标 + 日期 |
| 重要等级 | @priority 4 或 @importance 4 | 1–5 星(淡黄色,满星填充) |
| 目标类型 | @goal complete / @goal risk | 目标看板:完成效果(淡蓝)/ 未完成后果(灰爆) |
| 颜色标签 | @labels red, blue 或 @label green | 明细页顶栏色条(权重 n);列表页不显示 |
| 顶栏色 | @top red 或 @top orange | 明细页卡片顶部粗色条(Trello 顶栏) |
| 封面尺寸 | @cover half / @cover full | 半封面(默认)= 顶部色条;全封面 = 整卡背景着色(浅色自动深字) |
| 完成状态 | @done 或 @complete | 卡片正面打勾、标题划线、截止徽标变绿(Trello “标记完成”) |
| 置顶 | @pin 或 @置顶 | 同一列表可多卡片置顶;置顶卡片优先显示,卡片带 📌 徽标 |
| 背景封面色 | @bg orange 或 @bg #FFE0B2 | 卡片封面:半封面 = 顶部色条;配合 @cover full = 整卡背景着色 |
| 顶栏色 | @top red 或 @top #E53935 | 卡片顶部细色条(Trello 顶栏) |
| 勾选框 | - [ ] 未完成 / - [x] 已完成 | 卡片内 checklist |
预置标签色名
red · orange · yellow · green · blue · purple · pink · sky · lime · black
也支持 #RGB / #RRGGBB 十六进制。
描述正文
除 @ 指令与 checkbox 行以外的 Markdown(段落、列表、加粗等)→ 卡片描述区。
完整示例
# 待办
## 规则引擎文档
@due 2026-06-18
@labels blue, green
@top purple
- [ ] 编写 kanban-rules.js
- [ ] 补充映射说明
完成 **Markdown ↔ 看板** 双向转换说明。
# 进行中
## 看板 UI
@bg #FFF3E0
@top orange
@due 2026-06-20
- [x] Trello 列布局
- [ ] 拖拽交互
# 已完成
## 需求梳理
@labels green
- [x] 对齐 article / nanolog 结构编辑方式
| 状态 | 行为 |
|---|---|
| 锁定(默认) | 不可拖拽;隐藏 ReDeplog / Edit Post / 映射说明 |
| 解锁 | 仅在 week_start~week_end 窗口内可切换;可拖拽卡片跨列(本地预览) |
| 保存 | 点击 Edit Post:先将当前看板按映射规则序列化写入 content/kanban/_edit-buffer.md(缓冲),再覆盖 content/kanban/<周>.md;无 Token 时复制到剪贴板并在 Codeberg 编辑器粘贴 |
| 超期 | 截止日 week_end 当日 23:00(站点 zola.toml → extra.timezone)之后永久只读,无法解锁 |
看板详情页(Trello 对齐)
明细页 UI 全盘参考 Trello 重构:
| 区域 | 行为 |
|---|---|
| 看板头部 | 返回链接 · 标题 · 收藏星标(extra.favorite)· 开始/截止/剩余天数/进度/星级 元信息行 |
| 背景 | 由 extra.board_bg 控制;菜单 → 背景 可快速切换 12 种预置渐变(需保存生效) |
| 工具栏 | 锁定 / 筛选(快捷键 F)/ 菜单 / GUI 编辑 / Edit Post / ReDeplog / 映射说明 |
| 筛选 | 关键词 + 标签 + 截止状态(已逾期/即将到期/无截止)+ 最低优先级 + 隐藏已完成;列计数显示 可见/总数 |
| 列 | 头部 = 列名 + 计数 + ⋯ 菜单(添加卡片 / 排序 / 重命名 / 删除列);解锁后可拖拽列头调整顺序 |
| 卡片正面 | 标签药丸(带文字)· 封面(@bg + @cover)· 完成圆圈(@due 时显示,切换 @done)· 置顶 📌 徽标(@pin)· 徽标行(描述/开始/截止/清单进度/优先级) |
| 截止徽标 | 按 Trello 色义:灰色(未到)· 黄(今天/即将到期)· 红(逾期)· 粉(逾期超 1 天)· 绿(已完成) |
| 菜单抽屉 | 关于此看板(进度条)· 背景色板 · 搜索卡片(回车进入筛选)· 更多(GUI 编辑 / 保存 / ReDeplog / 映射说明) |
| 快捷添加 | 解锁后每列底部「+ 添加卡片」、看板右侧「+ 添加列表」,回车即插入(保存走 Edit Post) |
以上所有本地修改都会提示“有未保存的本地修改”,统一通过 Edit Post 序列化保存。
GUI 编辑器(新建 / 修改看板)
除了直接编写 Markdown,看板提供 GUI 方式生成 / 修改:按「看板图标 / 指令的可选值」用下拉框或手动输入设置,自动生成 Markdown。
布局(Trello 风格:画布 + 检查器)
- 左侧画布:实时渲染当前看板(背景、列、卡片封面/标签/徽标),点击列或卡片即可选中编辑;底部/右侧可「添加列表」「添加卡片」。
- 右侧检查器:根据选中对象切换编辑面板:
- 未选中(看板):周起止(顶格时间:先设置;1–14 天;新建默认今日;修改时开始锁定) / 时段 period(单天唯一性) / 核心任务 / 标题 / 描述 / 星级 / 收藏 / 看板背景色板;
- 选中列表:列名 /
@sort排序 /@sort-order方向 / 添加卡片 / 上移下移 / 删除列 / 卡片列表; - 选中卡片:标题 / 开始 / 截止(新建时默认按创建时间=今日填充,可编辑但限制在周起止区间内)/ 优先级 / 目标 / 封面(
@bg+@cover)/ 顶栏色 / 标签 / 完成@done/ 置顶@pin/ 勾选清单 / 描述。
- Markdown 预览:底部可折叠,输入时实时更新。
入口
| 位置 | 按钮 | 模式 |
|---|---|---|
列表页 /kanban/ 页头 | + 新建看板(管理员可见;Mac-Chrome 浏览器也可见) | 新建:默认 今日 → 今日(单天,按当前时间预选 上午/下午/晚上)+ 六列(待办 / 进行中 / 已完成 / 进度 / 资源 / 目标) |
| 列表页每张周卡片 | ✎ 编辑(管理员可见) | 修改:读取该周已有 Markdown 载入表单 |
| 明细页工具栏(解锁后) | GUI 编辑 | 修改:读取当前看板载入表单 |
字段与指令对应(每个“图标“的可选值)
| 表单字段 | 生成指令 | 输入方式 |
|---|---|---|
| 开始日期 | @start YYYY-MM-DD | 日期下拉(默认按创建时间=今日填充,限 [week_start, week_end]) |
| 截止日期 | @due YYYY-MM-DD | 日期下拉(默认按创建时间=今日填充,限 [week_start, week_end]) |
| 重要等级 | @priority 1–5 | 下拉(1–5 星 / 无) |
| 目标类型 | @goal complete / risk | 下拉(完成效果 / 未完成后果 / 无) |
| 颜色标签 | @labels red, blue, … | 预设色块多选 + 手输自定义(#RRGGBB 或颜色名,逗号分隔) |
| 背景封面色 | @bg | 预设色名下拉 + 自定义色值手输 + 实时色块(Trello 封面) |
| 封面尺寸 | @cover | 下拉(默认半封面 / 全封面) |
| 顶栏色 | @top | 预设色名下拉 + 自定义色值手输 + 实时色块 |
| 完成状态 | @done | 复选框 |
| 置顶 | @pin | 卡片面板「置顶 / 解除置顶」按钮;同一列表可多卡片置顶 |
| 勾选清单 | - [ ] / - [x] | 逐行添加:勾选状态 + 文本 |
| 描述正文 | 其余 Markdown | 多行文本 |
| 列 | # 列名 + @sort / @sort-order | 画布添加/删除 + 检查器列名/排序 |
| 周起止 / 核心任务 / 星级 | Front Matter | 日期 / 文本 / 下拉 |
| 看板背景 / 收藏 | Front Matter | 背景色板 / 复选框 |
| 时段 period | Front Matter(单天命名) | 下拉:无 / 上午 / 下午 / 晚上 |
默认新建布局
待办 进行中 已完成 进度 ← 主流程列(竖向一排)
资源 目标 ← 底部并排一行- 进度列:从
week_start到week_end每一天生成一张卡片(标题如07-13 周一),每张默认含一条勾选清单「记录当日完成内容」(可勾选 / 划线); - 修改顶格时间且进度列仍为自动生成样式(标题匹配
MM-DD 周X)时,编辑器会自动重排天数; - 置顶:置顶卡片始终显示在同列表顶部(多个可同时置顶),卡片正面带 📌 徽标;解锁模式下每张卡片都有「📌 置顶 / 📌 置顶中」切换按钮,点击即置顶/取消置顶;GUI 编辑器卡片面板同样提供按钮。
生成 → 剪贴板 → 创建 / 修改流程
- 填写表单,右侧 Markdown 预览实时更新(也可点「仅复制 Markdown」)。
- 点 生成并复制到剪贴板:
- 自动将序列化后的 Markdown 复制到剪贴板;
- 弹出操作流程提示,明确区分 创建 还是 修改:
- 创建(
content/kanban/<周>.md不存在):打开 Codeberg 新建文件 → 粘贴 → 保存提交 → ReDeplog 部署 → 刷新列表; - 修改(文件已存在 / 编辑已有看板):打开 Codeberg 覆盖文件 → 全选替换 → 保存提交 → ReDeplog 部署 → 刷新列表。
- 创建(
- 若浏览器已保存
kanbanToken,可点 用 Token 直接同步到仓库(文件不存在走 POST 创建,存在走 PUT 覆盖),再打开 ReDeplog 部署。
相关文件
| 文件 | 作用 |
|---|---|
templates/partials/kanban_editor.html | 编辑器模态框(列表页 / 明细页共用) |
static/js/kanban-editor.js | 表单生成、字段映射、序列化、剪贴板复制、流程提示、Token 同步 |
列表页进度色
仅「待办 / 进行中 / 已完成」三列参与进度;「资源 / 目标」不参与。
背景色规则
| 条件 | 卡片背景 |
|---|---|
todo > 3 | 全红 #FFEBEE |
done == total 且 total > 0 | 浅绿 #E8F5E9 |
| 其余 | 按加权进度百分比渐变(红 → 黄 → 绿) |
加权进度公式
以 50% 为基准,逐卡片累加(标签数 n 为权重,无标签时 n = 1):
| 所在列 | 单项贡献 |
|---|---|
| 待办 | −10% × n |
| 进行中 | +5% × n |
| 已完成 | +15% × n |
例:进行中列卡片有 2 个 @labels → +5% × 2 = +10%。
结果 clamp 至 0–100%,写入 front matter stats.progress_pct。
列表页标题显示 core_tasks(非日期);元信息行含开始 / 截止 / 剩余天数 / 星级(importance 字段,1–5)。
相关文件
| 文件 | 作用 |
|---|---|
content/kanban/ | 看板 Markdown 唯一维护目录 |
static/js/kanban-rules.js | 解析 / 序列化规则引擎 |
static/js/kanban-board.js | 看板 UI、锁定、拖拽、Edit Post 缓冲写入 |
static/js/kanban-list.js | 列表页剩余天数、动态刷新进度 |
static/js/kanban-editor.js | GUI 编辑器:表单生成、剪贴板复制、创建 / 修改流程提示 |
templates/partials/kanban_editor.html | 编辑器模态框 |
content/kanban/_edit-buffer.md | Edit Post 前的 Markdown 缓冲文件 |
templates/kanban.html | 周计划明细(Trello 风格) |
templates/kanban_list.html | 周计划列表 |
示例看板:content/kanban/2026-06-16.md