plaintasks 高效管理依赖严格语法规范:任务行须顶格以- [ ]等开头;需手动设语法为plain tasks;@due和@priority格式必须精确(如@due(2024-06-15)、@priority(h)),否则失效。

PlainTasks 插件本身不提供“高效待办管理”的魔法,它只是把 Markdown 风格的待办语法(@done、@due、@priority 等)解析成可点击、可折叠、可排序的列表。真正高效的起点,是理解它怎么读你的文本、怎么响应快捷键、以及哪些写法会直接失效。
PlainTasks 怎么识别任务行?不是所有带 - [ ] 的行都算任务
它只认以 - [ ]、- [x]、- [X] 开头的行,且前面**不能有空格或制表符**(即必须顶格)。缩进过的行会被忽略,哪怕内容完全一样。
-
- [ ] 买咖啡→ ✅ 被识别为待办 -
- [ ] 买咖啡→ ❌ 缩进 2 空格,PlainTasks 完全无视 -
# 今日计划→ ❌ 标题行,不参与任务逻辑,但可用作分组 -
- [ ] 买咖啡 @due(2024-06-15) @priority(H)→ ✅ 支持复合标记,顺序不限
常见错误:用 Tab 缩进整理结构,结果任务全部“消失”。解决办法:用空行分组,不用缩进。
为什么按 Ctrl+Shift+P 找不到 PlainTasks: Toggle?
插件安装后不会自动激活——它依赖文件语法高亮。PlainTasks 只在当前视图语法设为 Plain tasks 时才生效。默认新建文件是 Plain Text,必须手动切换:
- 菜单栏 →
View→Syntax→Plain tasks - 或快捷键
Ctrl+Shift+P→ 输入Set Syntax: Plain tasks→ 回车 - 更省事:把
.txt或.md文件关联为Plain tasks(右键文件 →Open with Sublime Text→ 再右键 →Set Syntax → Plain tasks)
没切对语法,所有快捷键(包括 Ctrl+Enter 添加新任务、Ctrl+Shift+T 切换完成)全部失灵,但界面毫无提示。
@due 和 @priority 的格式错一点就失效
PlainTasks 对时间与优先级格式极其严格,不接受模糊写法:
-
@due(2024-06-15)→ ✅ 正确(ISO 格式,年-月-日) -
@due(15/06/2024)→ ❌ 不识别,连带整行任务失去排序能力 -
@priority(H)→ ✅ 高优先级(H/M/L,大小写敏感) -
@priority(high)→ ❌ 失效,不会标红,也不会影响排序 -
@due(2024-06-15) @priority(H) @project(work)→ ✅ 自定义标签如@project可用于过滤,但需配合插件命令使用
过滤功能(如 PlainTasks: Filter by @project(work))只有在语法正确前提下才可用;格式出错,过滤器返回空结果,容易误判为“没匹配到”,其实是解析失败。
PlainTasks 的“高效”取决于你写的时候是否克制——不用花哨语法,不靠缩进组织,不混用日期格式。它不校验、不提醒、不容错,写错就是看不见、排不了、滤不出。











