第 2.1.1 节

任务管理 Plus

2026-03-26

任务管理 Plus 适合需要集中管理任务,并希望按日期、优先级、地点或标签进行筛选的用户。本章将依次介绍任务格式、快速编辑、检索规则、周期循环和到点提醒。

格式说明

任务管理 Plus 可以全局检索并展示散落在笔记空间中的任务。为任务添加约定格式的属性后,即可使用更丰富的筛选、循环和提醒功能。

- [ ] 任务名 ❗❗❗❗ ⌛2025-07-05 📅2025-07-07 🔁每天 ⏰11:57 📍西安 #标签
为什么采用这种格式

这种任务结构的灵感来自 obsidian-tasks。它直观、易于编辑,而且所有数据都保存在笔记正文中。

主页插件不会把任务迁移到专有数据库中。以后即使停用插件,原有任务内容也不会受到影响。

该任务结构包括以下几个部分:

符号含义支持参数举例
……任务名任意文字需位于复选框后、属性前 并确保不会出现下列属性符号
优先级❗ 至 ❗❗❗❗,共四级紧要程度❗、❗❗、❗❗❗、❗❗❗❗
开始日期YYYY-MM-DD⌛2025-07-05
📅截止日期YYYY-MM-DD📅2025-07-07
🔁周期循环每天、每周、每月、每年;每 N 天、每 N 周、每 N 月、每 N 年🔁每天、🔁每周、🔁每月 🔁每2天、🔁每3周、🔁每6月
提醒时间hh:mm 或 YYYY-MM-DD hh:mm⏰11:57、⏰2025-07-07 18:30
📍地点任意文字📍西安、📍西安交通大学兴庆校区
#……#标签任意文字#讨论#、#科研#

这些属性可以全部使用,也可以只使用其中一部分,或完全不添加。例如:

- [ ] 部分属性任务 📅2025-07-07 ⏰11:57 📍西安 #标签
- [ ] 空属性任务

快速任务编辑

手动输入全部属性容易出错,因此插件提供了任务编辑器。在文档中将光标放到目标内容块,然后从右键菜单打开:

从文档右键菜单打开任务编辑器
从文档右键菜单打开任务编辑器

从 v2.4.1 开始,可以在插件设置中控制是否启用任务编辑器,默认开启:

任务编辑器启用设置
任务编辑器启用设置
开启后右键菜单
开启后右键菜单

任务编辑器会自动读取光标所在内容块:

  • 如果内容块已经包含任务属性,编辑器会自动识别并回填;
  • 如果内容块为空,或只是普通文字,编辑器会将现有文字作为任务名称。

完成属性编辑并保存后,原内容块会更新为标准任务格式:

任务编辑器生成的任务内容
任务编辑器生成的任务内容

任务检索与筛选

在任务管理 Plus 组件的设置菜单中,可以配置需要检索和显示的任务:

任务管理 Plus 组件设置
任务管理 Plus 组件设置
任务管理 Plus 组件显示效果
任务管理 Plus 组件显示效果

组件提供两种检索方式:

  • 内置检索方法:适合常见的日期和状态筛选;
  • 自定义筛选语句:适合组合多个条件进行精细筛选。

通过“自定义筛选条件”开关可以在两种方式之间切换。

内置检索方法

组件内置了多种常用检索方式,如果已经满足需求,可以直接选择:

任务管理 Plus 内置检索方式
任务管理 Plus 内置检索方式

其中,“今天任务”和“明天任务”的判断规则如下:

  • 今天任务
    • 今天在开始日期之后截止日期之前
    • 若只有开始日期,则今天在开始日期之后的任何一天都是
    • 若只有截止日期,则今天在截止日期之前的任何一天都是
    • 若都没有,则不显示
  • 明天任务与今天任务的逻辑相同,只是把判断时间点改为明天。

自定义筛选语句

需要组合多个条件时,可以使用自定义筛选语句。每行填写一个条件,同一组条件会共同生效。

示例一:筛选截止日期为今天、优先级为 ❗❗❗❗ 的未完成任务。

not done
deadline today
priority 4

示例二:筛选明天之前截止、地点为西安的已完成任务。

done
deadline before tomorrow
location 西安

下面是可用的筛选语句。

任务状态

not done    // 未完成任务
done        // 已完成任务

日期

start        // 有开始日期的任务
not start        // 没有开始日期的任务(v2.3.1 新增)
start date        // 开始日期为 date 的任务
start before date    // 开始日期在 date 之前的任务
start after date    // 开始日期在 date 之后的任务

deadline    // 有截止日期的任务
not deadline    // 没有截止日期的任务(v2.3.1 新增)
deadline date    // 截止日期为 date 的任务
deadline before date    // 截止日期在 date 之前的任务
deadline after date    // 截止日期在 date 之后的任务

// 以上的 date 均可以是:today、tomorrow、nextweek、nextmonth 以及具体时间 YYYY-MM-DD

优先级

priority        // 有优先级的任务
not priority        // 没有优先级的任务(v2.3.1 新增)
priority [number]    // 优先级为 [number] 的任务

// [number] 可以是:1、2、3、4,或者任意组合(逗号隔开):1,2、1,3、1,3,4

周期循环

recurrence        // 有循环的任务
not recurrence        // 没有循环的任务(v2.3.1 新增)
recurrence type    // 循环类型为 type 的任务

// type 可以是:everyday、everyweek、everymonth、everyyear、every N day、every N month、every N year

地点

location        // 有地点的任务
not location        // 没有地点的任务(v2.3.1 新增)
location 地点    // 具体地点

标签

tag        // 有标签的任务
not tag        // 没有标签的任务(v2.3.1 新增)
tag 标签1,标签2,……    // 具体筛选标签

提醒

reminder    // 有提醒的任务
not reminder    // 没有提醒的任务(v2.3.1 新增)

任务名称

name include 关键字    // 任务名中包含该关键字的任务
name 完整任务名    // 完整匹配任务名

笔记本

notebook 笔记本Id1,笔记本id2,……    // 通过笔记本 ID 检索任务

文档路径

path include 关键字    // 所处文档路径包含关键字的任务
path 完整路径    // 筛选完整路径下的任务

// 如:/科研/计划

其他高级功能

周期循环

任务带有“🔁”属性时,可以按照指定周期自动循环。以下面的每日任务为例:

- [ ] 我的任务 ⌛2025-07-05 📅2025-07-05 🔁每天

这条任务的循环周期为每天。初始日期为 7 月 5 日,到了 7 月 6 日后,任务会自动更新为:

- [ ] 我的任务 ⌛2025-07-05 📅2025-07-06 🔁每天

也就是说,插件会把截止日期推进到当天,并将任务恢复为未完成状态。

如果任务没有截止日期、只有开始日期,插件会在新的循环周期把已完成任务恢复为未完成。

循环判断基点

存在截止日期时,插件以截止日期作为循环判断的基点。其他循环方式的处理逻辑相同,只是间隔时间不同。

插件只会刷新已经被组件检索到的任务。建议单独创建一个组件展示已完成或过期任务,确保它们在进入下一个循环周期时能够自动更新。

到点提醒

若任务中带有属性“⏰”则会在设定的时间进行系统级提醒,如 Windows 系统会在右下角弹窗提醒并伴有提示音:

任务到点后的系统通知
任务到点后的系统通知

提醒时间支持以下两种写法:

  1. 完整日期和时间:例如 ⏰2025-07-05 17:04,插件会在指定日期和时间提醒一次。
  2. 只有时间:例如 ⏰17:04,提醒日期根据任务属性决定:
    • 有截止日期:在截止日期当天 17:04 提醒一次;
    • 只有开始日期:从开始日期起,每天 17:04 提醒一次。