Obsidian 重复任务完整指南
TaskForge 支持两种重复任务格式:Markdown 和 TaskNotes,分别适合不同的工作流。本指南介绍两者的工作原理、主要区别,以及各自适用的场景。
为什么 TaskForge 支持两种重复格式?
TaskForge 提供两种重复任务的写法,各自适合不同的场景:
Markdown 格式
适合日记和项目文件中的简单重复任务。用自然语言书写,完成后会生成新的任务实例,适合需要保留历史记录的任务。
TaskNotes 格式
适合每个文件一个任务的细致重复工作流。在 YAML frontmatter 中用 RRULE 格式书写,并在 complete_instances 数组中记录每次完成。适合需要丰富元数据和固定排期的任务。
一目了然:主要差异
| 功能 | Markdown | TaskNotes |
|---|---|---|
| 配置 | 自然语言加 🔁 表情符号 | YAML frontmatter 中的 RRULE 格式 |
| 完成跟踪 | 状态更改为“已完成” | complete_instances 数组(状态不变) |
| 实例创建 | 完成时创建新任务 | 就地更新(同一任务) |
| 基准日期 | 自动确定(截止日期 > 计划日期 > 开始日期) | 始终使用计划日期 |
| 截止日期偏移 | 不保留 | 保留(默认开启) |
| 取消完成时 | 状态改回(新实例保留) | 从 complete_instances 中移除,回滚日期 |
| COUNT 限制 | 🔢 表情符号加数字或位置/总数 | RRULE 中的 COUNT 参数 |
| 最适合 | 简单重复任务,可见历史记录 | 详细工作流程,丰富元数据 |
如何开始使用重复任务模板?
Markdown 格式
使用自然语言直接在 Markdown 文件中添加重复任务:
- [ ] Review weekly goals 🔁 every Monday 📅 2025-11-10 - [ ] Water plants 🔁 every 3 days ⏳ 2025-11-10 - [ ] Pay rent 🔁 every month on the 1st 📅 2025-12-01 - [ ] Backup files 🔁 every week when done 🛫 2025-11-10 - [ ] Team standup 🔁 every weekday 📅 2025-11-10 - [ ] Quarterly review 🔁 every 3 months 🔢 4 📅 2025-12-01
TaskNotes 格式
为细致的重复工作流创建“每个文件一个任务”的笔记,字段写在 YAML frontmatter 中:
--- title: 回顾每周目标 status: todo scheduled: 2025-11-10 due: 2025-11-10 17:00 recurrence: FREQ=WEEKLY;BYDAY=MO tags: - 工作 - 回顾 complete_instances: [] --- ## 备注 回顾所有进行中项目的进度。
刚接触 TaskNotes?查看我们的 TaskNotes 集成指南 ,了解“每个文件一个任务”的格式和 YAML frontmatter 的基础知识。
TaskForge 中的重复是怎么运作的?
无论哪种格式,都要先弄清 TaskForge 如何计算下一次重复。关键概念是基准日期:完成重复任务时,向后推进的就是这个日期。
Markdown:自动确定基准日期
Markdown 任务按以下先后顺序自动确定基准日期:
先后顺序:截止日期 > 计划日期 > 开始日期
有截止日期就以截止日期为基准,否则用计划日期;只有两者都没有时,才用开始日期。
TaskNotes:始终使用计划日期
TaskNotes 重复任务始终以计划日期为基准计算重复。不管其他日期字段怎么设,行为都一致、可预期。
TaskNotes 重复任务必须设置计划日期。完成任务时,TaskForge 会把完成日期加入 complete_instances 数组,从计划日期算出下一次重复,并把计划日期更新为下一个尚未完成的日期。
完成跟踪
两种格式记录完成情况的方式截然不同。
Markdown:完成时创建新实例
完成一个 Markdown 重复任务时,原任务的状态会变为“已完成”,同时在文件中原任务之后插入一个新的任务实例,日期为下一次重复的日期。
文件里会留下已完成任务的记录,方便长期跟踪进度。
TaskNotes:完成实例数组
完成一个 TaskNotes 重复任务时,完成日期会加入 complete_instances 数组,状态字段始终不变,计划日期则推进到下一个尚未完成的日期。第一次完成时,DTSTART 会自动加入重复规则。
只保留一个任务文件,完整的历史记录都在 complete_instances 数组里。状态始终不变,所以任务会一直留在你的待办清单中。
何时使用哪种格式
以下情况适合用 Markdown:
- 你希望在文件里直接看到已完成任务的历史
- 你更喜欢自然语言而不是 RRULE 语法
- 你需要按完成日期重复
- 你的任务写在日记或项目文件里
以下情况适合用 TaskNotes:
- 你希望一个任务文件就保存完整历史
- 你需要丰富的元数据
- 你希望自动维护截止日期偏移
- 你更喜欢每个文件一个任务的组织方式
TaskForge 支持哪些重复模式?
TaskForge 在 Markdown 和 TaskNotes 两种格式中都支持多种重复规则。不管是简单的每日习惯,还是复杂的排期规则,总有一种适合你的工作流。
每日模式
每日重复适用于每天或每隔几天重复的任务。你可以设置每天、每 N 天(比如每 3 天)或每个工作日重复。“每个工作日”会跳过周六和周日,特别适合工作上的例行事务。
每周模式
每周重复可以让任务在一周中的特定几天重复。你可以设为每周、每 N 周、每周一,或组合多天,比如每周一、三、五。也可以任意组合星期几,完全贴合你的日程。
每月模式
每月重复让你精确控制任务在每月哪一天重复。可选每月、每 N 个月、特定日期(如 1 日或 15 日)、每月最后一天、相对的星期几(如第二个周二),或多个日期(如 1 日和 15 日)。
每年模式
每年模式适用于年度日程和回顾。你可以设置任务每年、每 N 年或在特定月份重复。非常适合年度回顾、生日提醒或季节性任务。
基于完成的模式
按完成日期重复时,下一次的日期从你实际完成任务的那天算起,而不是从原来的截止日期算起。在 Markdown 格式中使用“when done”或“after completion”等短语。如果两次之间的间隔比固定日程更重要,这种方式特别有用,比如上次更换滤芯后,每 90 天再换一次。
次数限制和结束日期
你可以设置次数,限制任务重复多少次。在 Markdown 格式中,用计数表情符号加数字设定总次数;在 TaskNotes 中,用 RRULE 里的 COUNT 参数。你还可以设置结束日期,让任务在某个日期之后不再重复。这些选项适合有时限的项目,或只需要做固定次数的任务。
第 N 个星期几
对于落在每月相对某一天的任务,TaskForge 支持“第 N 个星期几”规则。你可以把任务安排在每月的第一个周一、最后一个周五、第二个周二,或任何类似的组合。这种规则常用于重复的会议、月度回顾,或者任何按月内位置而不是固定日期安排的日程。
想了解更多?
看看这些相关指南,进一步用好 TaskForge:
两种格式底层共用同一个重复引擎,所以不管选哪种,排期方式都一样。你也不会被任何一种格式绑定:同一个仓库里可以混用两种格式,需求变了也能在两者之间迁移。 查看全部重复功能 或 在帮助中心获取设置支持.
相关文章
- 主屏幕上的 TaskNotes 在小组件里查看任务,随手勾掉。有日期的任务到期时,提醒会让你及时想起它。两者用的都是你仓库里的 TaskNotes。 阅读更多
- TaskNotes 集成指南 每个任务一个文件,字段写在 YAML frontmatter 中,在 Obsidian 里记录更详细的任务信息。 阅读更多
- Obsidian GTD 完整指南 借助 TaskForge,在 Obsidian 中实践 GTD(Getting Things Done)方法。 阅读更多
- Obsidian Tasks 插件完整指南 掌握 Obsidian Tasks 插件语法:日期、优先级、重复任务和筛选器。 阅读更多