视图
视图是 你自己定义的任务列表。你写一条筛选条件,符合条件的任务就会自动出现在这个视图里。
不想自己写规则?
把这份给 AI 看的规则文档发给任意 AI 助手(ChatGPT、Claude、Gemini 都行),用自然语言告诉它你想看什么样的任务,它会直接给你写好规则,复制进 Rule 框即可:
适合用来保存内置列表覆盖不到的清单,比如:
- 所有打了
work标签、并且已经过期的任务 - 收件箱里既没打标签、也没排时间的任务
- 「阅读」区域下被搁置很久的内容
在哪里找到
视图在 桌面端侧边栏 下方的 Views(视图) 区块,点击右侧的 + 就能新建一个视图。
创建一个视图
- 在侧边栏的 Views(视图) 区块点击 +。
- 在页面顶部给视图取一个名字。
- 打开右侧详情面板,在 Rule(规则) 框里写筛选条件。
- 写完后列表会自动出现匹配的任务。
如果规则留空,主区域会显示一份 「起步规则」清单,点一下就能直接填进去 —— 不会写规则也能直接用。
侧边栏里的视图可以拖动排序;不想要了,用详情面板的 ⋯ 菜单删除即可。
写规则
规则用来描述「什么样的任务应该出现在这个视图里」。每个任务用 item 表示,你只要写出对它的判断条件即可。
例如:
item.status === 'created' && item.tags.includes('work')意思就是:状态是「未完成」、并且带有 work 标签 的任务。
可以用的字段
| 字段 | 表示的含义 |
|---|---|
item.title | 任务标题 |
item.notes | 备注 |
item.status | 状态:'created' 未完成 / 'completed' 已完成 / 'canceled' 已取消 |
item.tags | 标签列表 |
item.startDate | 开始日期(没设置时为 null) |
item.dueDate | 截止日期(没设置时为 null) |
item.completionAt | 完成时间(未完成时为 null) |
item.createdAt | 创建时间 |
item.parent | 所属位置:'inbox' 收件箱 / 'project' 项目 / 'area' 区域 / 'heading' 项目标题 / 'task' 子任务 |
item.projectTitle | 所属项目的名字 |
item.areaTitle | 所属区域的名字 |
可以用的关键词
写日期相关的规则会用到这几个内置词:
| 关键词 | 表示 |
|---|---|
TODAY | 今天 |
DAY | 一天的长度(用来写「7 天后」这类条件) |
SOMEDAY | 「Someday」—— 任务被搁置到「以后某天」 |
可以用的写法
| 写法 | 用来做什么 |
|---|---|
===、!== | 等于、不等于 |
>、>=、<、<= | 比较大小(日期、时间) |
&&、||、! | 且、或、非 |
item.tags.includes('x') | 标签里包含 x |
item.title.includes('x') | 标题里包含 x |
item.tags.length | 标签的数量 |
... === null | 判断某个日期字段是不是「没设置」 |
不会写也没关系:在规则文档面板里挑一个起步规则点一下就能填进去,再照葫芦画瓢改一改即可。
起步规则速查
| 想要看到的任务 | 规则 |
|---|---|
| 未完成的 | item.status === 'created' |
| 已完成的 | item.status === 'completed' |
| 在收件箱 | item.parent === 'inbox' |
| 现在可以做(Anytime) | item.status === 'created' && (item.startDate === null || item.startDate <= TODAY) |
| 搁置到 Someday | item.startDate === SOMEDAY |
| 已经过期 | item.dueDate !== null && item.dueDate < TODAY |
| 7 天内到期 | item.dueDate !== null && item.dueDate < TODAY + 7 * DAY |
打了 work 标签 | item.tags.includes('work') |
| 属于某个项目 | item.parent === 'project' |
几个实用例子
工作相关、3 天内要交的任务
item.tags.includes('work') &&
item.status === 'created' &&
item.dueDate !== null &&
item.dueDate < TODAY + 3 * DAY收件箱里没打标签、也没排时间 —— 该整理一下了
item.parent === 'inbox' && item.tags.length === 0 && item.startDate === null「阅读」区域里的所有任务
item.areaTitle === 'Reading'最近 30 天完成的任务
item.status === 'completed' &&
item.completionAt !== null &&
item.completionAt > TODAY - 30 * DAY进入视图后,列表是「冻结」的
视图的任务列表 在你打开它的那一刻就固定下来,之后只有重新打开该视图或修改规则才会重新匹配。
也就是说:如果你在视图里勾选完成了某个任务、或者改了它的日期,让它不再符合规则,这个任务依然会留在当前列表里,直到你离开再回来。
这是有意为之 —— 这样你刚做完的任务不会在眼前突然消失,看起来更稳定。
规则写错了怎么办
如果规则写错了(比如括号没闭合、引用了不存在的字段),详情面板会在 Rule 框下方显示一条提示,告诉你哪里出了问题;主区域会回到起步规则文档,等你修好再继续。
视图存在哪里
视图和你的任务保存在同一个加密数据库里。Pro 和 Lifetime 用户的视图会随着云同步在设备间共享;免费版(仅本地)则只保留在创建它的那台设备上。
旧版本应用打开新视图
如果某个视图是用更新版本的应用创建的,旧版本会拒绝打开和编辑它,并提示你升级应用 —— 这是为了避免新字段或写法被悄悄丢失。