Obsidian QuickAdd Capture- 速记完整使用教程
本教程适用于 Capture- 速记——一款基于 QuickAdd 插件的批量任务快速录入工具,可帮助你在 Obsidian 中用最少的操作,将多条待办任务以带时间戳的标注块(Callout)格式,一次性追加到指定笔记的末尾。
目录
- 什么是 Capture- 速记
- 应用场景与核心优势
- 前提条件与必要插件
- 安装与配置 QuickAdd 插件
- 添加并配置 Capture- 速记
- 激活闪电按钮与绑定快捷键
- 实际使用演示
- 输出效果示例
- 修改目标笔记路径
- 常见问题排查
- 进阶用法与个性化调整
- 与其他插件的联动方式
- 适用版本与平台说明
1. 什么是 Capture- 速记
在日常笔记工作中,我们经常需要迅速记录若干条待办任务——例如开会时临时想到的几件事、读书时产生的几个行动项,或者睡前浮现的几个想法。如果每次都要手动打开笔记、找到合适的位置再逐条排版,效率极低,也容易打断当下的工作状态。
Capture- 速记 正是为此而生。它通过 QuickAdd 插件的 Capture 功能,结合内嵌 JavaScript 脚本(Inline Script),实现了以下工作流:
- 触发一次命令(或按下一个快捷键)
- 弹出输入框,依次输入多条任务,每条单独确认
- 所有任务自动整合为一个带有当前日期与时间的
[!todo]标注块 - 以任务列表(
- [ ])格式整体追加到指定笔记的末尾 - 无需打开该笔记,也无需进行任何排版操作
每次触发都会生成一个独立的标注块,方便按时间回溯当时记录了什么。
2. 应用场景与核心优势
2.1 典型应用场景
场景一:会议中快速记录行动项
开会时不必打断思路去整理格式,只需触发命令,连续输入多条行动项,全部以统一的带时间戳格式存入速记笔记。
场景二:随时捕获零散想法
读书、播客、散步时突然冒出的待办事项,无需切换到特定笔记,一键完成录入,不打断当前工作状态。
场景三:睡前清空工作记忆
在结束一天工作前,快速将所有待处理事项批量录入,保持 ” 清空大脑 ” 的 GTD 习惯。
场景四:多任务项目管理
为不同项目设置多个 Capture- 速记实例,每个指向不同的目标笔记,实现按项目分类的快速任务录入。
2.2 核心优势
与手动记录和其他捕获方案相比,Capture- 速记具备以下优势:
零切换摩擦:无需打开、切换或搜索目标笔记,触发即录入,录入后自动返回当前工作界面。
批量录入:一次触发可连续输入任意数量的任务,所有任务归并为同一个带时间戳的标注块,便于事后追溯。
自包含设计:不依赖 Dataview、Templater、CustomJS 等其他插件,代码完全内嵌在 QuickAdd 配置中,迁移和分享极为简便。
可回溯的时间记录:每次触发生成一个独立的时间戳标注块,形成自然的时序记录流,方便回顾某个时间点的工作状态。
兼容 Obsidian Tasks 插件:生成的 - [ ] 格式任务可被 Obsidian Tasks 插件识别,支持全库任务查询与过滤(详见第 12 节)。
3. 前提条件与必要插件
在使用本工具之前,需要确认以下环境已就绪。
3.1 Obsidian 版本要求
建议使用 Obsidian 1.11.4 及以上版本。
💡 QuickAdd 2.0 版本起将最低 Obsidian 版本要求提升至 1.11.4,以支持 SecretStorage API 等新特性。如果你的 Obsidian 版本较旧,建议先升级。
本工具使用了 moment() 函数处理时间,该函数由 Obsidian 内置提供,无需额外安装任何依赖。在 Windows、macOS、Linux 桌面端以及 iOS/Android 移动端均可使用,行为一致。
3.2 必须安装的插件:QuickAdd
本工具唯一的依赖插件是 QuickAdd,由开发者 Christian B. B. Houmann(chhoumann)创建并维护。
QuickAdd 是 Obsidian 社区最受欢迎的工作流自动化插件之一,提供四种核心功能类型:
Template(模板):基于预设模板快速创建新笔记,支持动态变量和 Obsidian 模板语法。
Capture(捕获):将内容快速追加到已有笔记的指定位置,支持文件末尾、开头、特定标题下方等多种写入位置。
Macro(宏):将多个操作链式组合成一键工作流,支持完整的 JavaScript 编程能力,可调用 Obsidian API 和外部服务。
Multi(多项):用于分组管理前三种类型,方便构建多层级的命令菜单。
本工具使用的是 Capture 类型,并在 Capture 的 “Capture format” 字段中内嵌了一段 JavaScript 脚本(即 QuickAdd 的 Inline Script 功能),以实现多条任务的批量输入与格式化逻辑。
⚠️ 注意:本工具不依赖 Dataview、Templater、CustomJS 或任何其他插件,代码完全自包含。
3.3 目标笔记无需提前创建
脚本内置了文件不存在时自动创建的逻辑。只要 QuickAdd 配置正确,首次触发时会自动在指定路径新建笔记,同时也会自动创建所需的上级文件夹。
4. 安装与配置 QuickAdd 插件
第一步:安装 QuickAdd 插件
- 打开 Obsidian,点击左下角的设置齿轮图标(⚙️)
- 在左侧菜单中选择第三方插件(Community plugins)
- 如果提示 ” 受限模式已开启 “,点击关闭受限模式按钮(此操作允许安装社区插件)
- 点击浏览按钮,打开社区插件市场
- 在搜索框中输入
QuickAdd - 找到由 chhoumann 开发的 QuickAdd 插件,点击安装
- 安装完成后,点击启用
💡 手动安装(网络受限时):如果无法访问社区插件市场,可前往 GitHub Releases 页面(https://github.com/chhoumann/quickadd/releases)下载最新版本的
main.js、manifest.json、styles.css,将这三个文件放入 Vault 的.obsidian/plugins/quickadd/目录中,然后在 Obsidian 第三方插件列表中重新扫描并启用。
第二步:确认 QuickAdd 插件已启用
安装完成后,在设置 → 第三方插件的已安装插件列表中,确认 QuickAdd 旁边的开关处于蓝色/高亮(开启)状态。
进入 QuickAdd 配置界面的方式有两种:
方式 A:设置 → 第三方插件列表 → 点击 QuickAdd 右侧的齿轮图标(⚙️)
方式 B:设置 → 左侧插件列表中直接点击 QuickAdd
两种方式均会进入 QuickAdd 的主设置界面,界面顶部是已添加的 Choice 列表,底部是添加新 Choice 的名称输入框和类型下拉菜单。
5. 添加并配置 Capture- 速记
第一步:新建一个 Capture 类型的 Choice
- 进入 QuickAdd 设置界面(见上节)
- 在页面底部找到 “Name” 输入框,输入名称:
Capture-速记
💡 名称可自由命名,但建议保留
Capture-前缀以便区分类型,同时与后续说明保持一致。
- 在名称输入框右侧的下拉菜单中,选择类型为
Capture - 点击右侧的
Add Choice按钮
添加成功后,Capture-速记 会出现在 Choice 列表中。
第二步:进入 Capture 详细配置
点击列表中 Capture-速记 右侧的齿轮图标(⚙️),进入该 Choice 的详细配置页面。配置页面分为以下几个区域,需要依次设置。
第三步:配置 Location(目标位置)
找到 “Capture To” 区域:
- 确认 “Capture to active file” 选项处于关闭状态(默认关闭即可)
- 在下方的文件路径输入框中,输入:
速记/速记笔记.md
⚠️ 注意(特定设置) 上方路径
速记/速记笔记.md为示例库的具体配置,并非通用默认值。该路径与脚本代码中的TARGET变量绑定,两处必须完全一致,请根据自身库结构进行替换。
路径格式说明:此路径为相对于 Vault 根目录的相对路径,路径中请始终使用正斜杠 /,不要使用反斜杠 \。
| 项目 | 示例特定值 | 通用写法 / 替换建议 |
|---|---|---|
| 目标文件夹 | 速记/ | 替换为你自己希望存放速记文件的文件夹路径 |
| 目标文件名 | 速记笔记.md | 替换为你希望用于收集速记内容的笔记文件名 |
| 完整路径示例 | 速记/速记笔记.md | 如 工作/速记.md、Inbox/Tasks.md、日记/速记收集箱.md 等 |
💡 如需修改路径,请参考本教程第 9 节的详细说明,同时修改此处路径和脚本中的
TARGET变量,两处必须保持一致。
💡 Capture To 字段的其他用法(QuickAdd 高级特性):
- 填写文件夹路径(不含文件名):触发时 QuickAdd 会弹出该文件夹内的文件选择器,让你动态选择目标文件
- 填写
/:打开全库文件选择器- 填写标签名(如
#project):QuickAdd 会列出所有带该标签的文件供选择- 本工具填写的是固定文件路径,以实现无弹窗的完全自动化录入
第四步:配置 Position(写入位置)
找到 “Write position” 选项,在右侧下拉菜单中选择:
Bottom of file
即追加到文件末尾,每次运行都将新内容附加在已有内容之后。
💡 Write Position 其他可选值说明:
选项 说明 Top of file 追加到文件开头 Bottom of file 追加到文件末尾(本工具使用此选项) After line 追加到指定文本行之后(需配合 Insert After 字段) At cursor 插入到当前光标位置(仅当目标文件已打开时有效) 本工具选择
Bottom of file,使每次新的速记块以时间顺序累积在文件末尾,形成流水账式的记录流。
第五步:配置 Content(捕获格式 / 内嵌脚本)
- 找到 “Capture format” 选项,将其右侧的复选框切换为开启(勾选状态)
- 勾选后,下方会出现一个多行文本输入框
- 将本文附录中的完整代码(包括开头的三个反引号和
js quickadd标识符,以及末尾的三个反引号)完整粘贴到该输入框中
📎 获取完整代码
- 为了提升阅读体验,完整代码已放置于本文末尾附录部分,可直接前往复制使用。
- 关注微信公众号:Obsidianist,回复关键词:Capture-速记,后台即会自动回复完整代码文件下载地址,下载后直接将文件导入 Obsidian,按教程配置即可使用。
⚠️ 务必注意:代码块的语言标识符必须是
js quickadd(含空格),而不是javascript或js。这是 QuickAdd Inline Script 的专用标识符,只有正确填写才能让 QuickAdd 将其作为脚本执行,而非普通的代码片段插入文本。
什么是 Inline Script?
QuickAdd 的 Capture format 字段通常用于填写静态模板文本,支持 {{DATE}}、{{VALUE}} 等格式变量。但当你在 Capture format 中嵌入一个以 js quickadd 为语言标识的代码块时,QuickAdd 会在执行 Capture 前先运行这段脚本,并将脚本的返回值(return 语句)作为实际捕获的内容。
这意味着,Inline Script 可以执行任意 JavaScript 逻辑——包括弹出多个输入框、操作 Obsidian Vault API、动态生成格式化内容,最终将结果写入目标笔记。本工具正是基于这一机制实现了批量任务录入功能。
第六步:其他选项保持默认
以下选项无需改动,保持默认状态即可:
| 选项 | 建议状态 | 说明 |
|---|---|---|
| Create file if it doesn’t exist | ✅ 建议开启 | 脚本已内置创建逻辑,该选项作为额外保障,二者均可 |
| Task | ❌ 关闭 | 脚本已自行格式化任务列表,无需 QuickAdd 额外处理 |
| Append link | ❌ 关闭 | 无需在当前活动笔记中插入跳转链接 |
| Insert after | ❌ 关闭 | 本工具使用文件末尾写入,无需指定插入位置 |
配置完成后,点击页面右上角或以任意方式退出配置页面,设置会自动保存。
6. 激活闪电按钮与绑定快捷键
第一步:点亮闪电按钮(必须)
回到 QuickAdd 主设置界面,找到 Capture-速记 所在的行,注意行右侧有一个 ⚡ 闪电图标按钮。
⚠️ 这一步至关重要,必须将闪电按钮点亮(高亮/激活状态),否则该 Choice 不会出现在 Obsidian 命令面板中,也无法绑定快捷键。
点击闪电按钮,使其从灰色变为高亮(通常是黄色或主题强调色),即表示激活成功。激活后,QuickAdd 会自动在 Obsidian 的命令面板中注册一条名为 QuickAdd: Capture-速记 的命令。
第二步:绑定快捷键(推荐)
为了实现真正的 ” 零摩擦 ” 速记,建议为该命令绑定一个专属快捷键:
- 打开设置 → 快捷键(Hotkeys)
- 在搜索框中输入
Capture-速记,找到QuickAdd: Capture-速记 - 点击右侧的
+按钮,按下你希望使用的按键组合
💡 推荐快捷键参考:
Ctrl+Shift+T(Windows/Linux)或Cmd+Shift+T(macOS)。建议选择一个不与现有命令冲突的组合键。在绑定前可以先按下目标快捷键,Obsidian 会提示该组合键是否已被其他命令占用。
- 按下快捷键后,Obsidian 自动保存绑定,无需额外确认
7. 实际使用演示
配置完成后,以下是完整的使用流程。
触发方式(两选一)
快捷键:直接按下你绑定的快捷键(推荐,最快捷),无需切换任何界面。
命令面板:按 Ctrl+P(Windows/Linux)或 Cmd+P(macOS)打开命令面板,搜索并选择 QuickAdd: Capture-速记。
输入任务的完整流程
第 1 步:触发命令后,弹出第一个输入框,标题提示为:
输入第 1 个任务(留空点 OK 提交 / Cancel 取消)
第 2 步:输入第一条任务内容,例如 回复 Alice 的邮件,然后点击 OK(或按 Enter 键)
第 3 步:弹出第二个输入框,提示变为:
输入第 2 个任务(留空点 OK 提交 / Cancel 取消)
继续输入第二条任务,例如 准备周五的会议材料,点击 OK
第 4 步:如此循环,直到所有任务输入完毕。当不再有新任务时,有两种方式结束输入:
方式 A(提交):在输入框中不输入任何内容,直接点击 OK 或按 Enter——脚本识别为 ” 输入完毕,立即写入 ”
方式 B(取消):点击 Cancel 或按 Esc——脚本识别为 ” 中止操作,不写入任何内容 ”
第 5 步:提交成功后,屏幕右上角会弹出通知:
✅ 已成功添加 2 个任务!
整个过程无需打开目标笔记,完成后你仍停留在当前工作界面。
8. 输出效果示例
假设你在 2026-04-22 的 14:30:05 时触发了 Capture- 速记,并依次输入了以下三条任务:
回复 Alice 的邮件准备周五的会议材料更新项目进度文档
脚本会在目标笔记的末尾追加以下内容:
> [!todo]+ 2026-04-22 14:30:05
>
> - [ ] 回复 Alice 的邮件
> - [ ] 准备周五的会议材料
> - [ ] 更新项目进度文档在 Obsidian 的阅读视图中,这段内容会渲染为一个带有日期时间标题的 Todo 标注块(Callout),其中每条任务都是可勾选的复选框。标注块标题中的 + 符号表示该 Callout 默认展开(可折叠),方便在内容积累后折叠查看。
如果你在同一天再次触发,第二次的内容会以空行分隔,追加在第一次内容的下方,形成按时间排列的速记记录流:
> [!todo]+ 2026-04-22 14:30:05
>
> - [ ] 回复 Alice 的邮件
> - [ ] 准备周五的会议材料
> - [ ] 更新项目进度文档
> [!todo]+ 2026-04-22 19:47:22
>
> - [ ] 买明天早上的咖啡豆
> - [ ] 查一下周末天气9. 修改目标笔记路径
默认情况下,本工具将内容记录到 速记/速记笔记.md。如果你希望记录到其他笔记,需要同时修改两处,缺一不可。
⚠️ 注意(特定设置) 以下内容描述的是将示例路径
速记/速记笔记.md替换为自定义路径的完整操作,该路径并非通用默认值,请根据自身库结构自行决定目标路径。
修改位置一:QuickAdd Capture 配置中的文件路径
- 进入 QuickAdd 设置,点击
Capture-速记右侧的 ⚙️ 齿轮图标 - 在 “Capture To” 的文件路径输入框中,将
速记/速记笔记.md替换为你的目标路径
修改位置二:脚本代码中的 TARGET 变量
- 在 Capture format 的代码输入框中,找到代码的第一行:
const TARGET = "速记/速记笔记.md";- 将引号内的内容替换为与上方完全相同的目标路径
⚠️ 这两处路径必须保持一致,否则 QuickAdd 配置指向的路径与脚本实际写入的路径不同,可能导致创建重复文件或写入失败等意外行为。
如何获取笔记的正确相对路径
在 Obsidian 左侧的文件列表中:
- 右键点击你希望记录内容的目标笔记
- 选择复制路径
- 在弹出的子菜单中,选择基于库的相对路径(Vault-relative path)
复制到的路径即为你需要填入两处的值。
修改示例
假设你希望将速记内容记录到 工作/日志/工作日志.md,则修改如下:
修改位置一(Capture To 输入框):
工作/日志/工作日志.md
修改位置二(脚本第一行):
const TARGET = "工作/日志/工作日志.md";两处路径一致,修改即完成。
10. 常见问题排查
触发命令后提示 “No file found” 或找不到文件
原因:Capture 配置中的文件路径填写有误,或路径中包含了不存在的父文件夹且未启用自动创建。
解决方法:
- 检查 QuickAdd 配置的 Capture To 路径是否与脚本中的
TARGET变量完全一致 - 确认路径使用的是正斜杠
/,而非反斜杠\ - 在 Capture 配置中确认 “Create file if it doesn’t exist” 选项已开启
命令面板中找不到 QuickAdd: Capture-速记
原因:闪电按钮未激活。
解决方法:
- 进入 QuickAdd 设置
- 找到
Capture-速记所在行,点击行右侧的 ⚡ 闪电按钮,使其高亮 - 重新打开命令面板搜索,即可找到该命令
输入任务后没有任何反应,也没有通知弹出
原因:Capture format 中的代码未正确粘贴,或代码块标识符有误。
解决方法:
- 进入
Capture-速记的配置页面,检查 Capture format 的代码输入框 - 确认代码以
```js quickadd开头,以```结尾(注意不要有多余字符或空格) - 确认 “Capture format” 旁边的复选框处于勾选状态
- 如果仍然无效,尝试将代码完整删除后重新粘贴
直接点击 Cancel 后,之前已输入的任务全部丢失
这是预期行为。点击 Cancel 会立即中止整个脚本,之前输入的所有任务不会被保存。如需提交,请在最后一条任务输入完毕后,在空输入框中点击 OK,而非点击 Cancel。
想在现有笔记的特定章节下追加,而非末尾
当前脚本固定写入文件末尾。如需写入特定章节(如某个标题下方),需要修改脚本逻辑,并配合 QuickAdd 的 “Insert After” 功能进行扩展(详见第 11.3 节进阶用法)。
移动端(iOS/Android)触发后弹出输入框,但键盘遮挡了按钮
原因:Obsidian 移动端的弹出模态框在软键盘弹起时可能被遮挡。
解决方法:
- 输入内容后,使用键盘上的 ” 完成 ” 或 ” 换行 ” 键代替点击 OK 按钮
- 或者在输入前轻触页面空白处临时收起键盘,再点击 OK
速记笔记内容越来越多,文件加载变慢
建议:当速记笔记内容积累较多后,可以定期将已完成的任务块归档到月度或周度笔记中,保持速记文件轻量。也可以参考第 11.4 节的进阶建议,设置多个速记目标文件。
11. 进阶用法与个性化调整
11.1 修改时间戳格式
脚本中时间戳的格式由以下两行控制:
const date = moment().format("YYYY-MM-DD");
const time = moment().format("HH:mm:ss");moment().format() 使用 Moment.js 的格式化语法(Obsidian 内置)。常见格式参数如下:
| 格式符 | 含义 | 示例 |
|---|---|---|
YYYY | 四位年份 | 2026 |
MM | 两位月份 | 04 |
DD | 两位日期 | 22 |
HH | 24 小时制小时 | 14 |
hh | 12 小时制小时 | 02 |
mm | 分钟 | 30 |
ss | 秒 | 05 |
dddd | 星期全称(英文) | Wednesday |
ddd | 星期缩写(英文) | Wed |
示例:将时间戳改为仅显示日期和小时分钟
const date = moment().format("YYYY-MM-DD");
const time = moment().format("HH:mm");输出效果:> [!todo]+ 2026-04-22 14:30
示例:将时间戳改为中文日期格式
const date = moment().format("YYYY年MM月DD日");
const time = moment().format("HH:mm");输出效果:> [!todo]+ 2026年04月22日 14:30
11.2 修改 Callout 类型
脚本默认生成 [!todo] 类型的 Callout。Obsidian 内置支持多种 Callout 类型,你可以根据用途替换:
| Callout 类型 | 显示颜色/图标 | 适用场景 |
|---|---|---|
[!todo] | 蓝色 / 待办图标 | 任务录入(默认) |
[!note] | 蓝色 / 笔记图标 | 随手笔记 |
[!warning] | 橙色 / 警告图标 | 重要提醒 |
[!question] | 紫色 / 问号图标 | 待解决问题 |
[!tip] | 绿色 / 提示图标 | 灵感记录 |
💡 以上均为 Obsidian 原生内置 Callout 类型,无需额外插件即可使用。如果你安装了支持自定义 Callout 的主题或 CSS 片段,也可以填入自定义类型名称(如
[!idea]),但需确认该类型在你的库中已被定义,否则会降级为默认样式。
修改方法:将脚本中 const block = … 行的 [!todo] 替换为目标类型,例如:
const block = `> [!tip]+ ${date} ${time}\n` + tasks.map(t => `> - [ ] ${t}`).join("\n");11.3 修改为指定标题下方写入
如果你希望将速记内容追加到目标笔记某个固定标题(如 ## 待办事项)下方,而非文件末尾,需要同时调整两处:
第一步:在 QuickAdd Capture 配置中,将 “Write position” 改为 After line,并在随即出现的 “Insert After” 输入框中填入目标标题的精确文本,例如:
## 待办事项
勾选 “Create line if not found” 选项,这样当目标标题不存在时,QuickAdd 会自动创建该标题行,避免写入失败。
第二步:由于写入位置已由 QuickAdd 的 After line 机制接管,你可以将脚本末尾的文件操作逻辑(vault.read / vault.modify 部分)简化为只返回格式化后的内容字符串,让 QuickAdd 负责实际写入:
return block + "\n";💡 这是一个进阶修改,需要对脚本逻辑有一定了解。建议先熟练掌握基础用法后再尝试。
Insert After还支持 ” 如果标题不存在则自动创建 ” 的选项(Create line if not found),非常适合日记类场景。
11.4 设置多个速记实例(按项目分类)
你可以在 QuickAdd 中创建多个 Capture Choice,分别指向不同的目标文件,用于区分不同项目或情境的任务录入:
Capture-速记-工作→工作/工作速记.mdCapture-速记-个人→个人/个人速记.mdCapture-速记-读书→读书/读书摘记.md
每个实例均可绑定独立快捷键,实现一键按场景录入。
11.5 使用 QuickAdd Packages 分享配置
QuickAdd 2.0 版本引入了 Packages 功能,允许将完整的 Choice 配置(包括内嵌脚本)打包为 .quickadd.json 文件,方便在不同 Vault 之间迁移,或与他人分享自己的工作流配置。未来若本工具提供官方 Package 文件,可直接通过 QuickAdd 的 ” 导入 ” 功能一键完成配置,无需手动粘贴代码。
11.6 在输入任务时添加优先级标签
可以在任务名称末尾添加优先级标识(如 🔼 高优先级),与 Obsidian Tasks 插件的优先级语法配合使用:
回复 Alice 的邮件 🔼
Tasks 插件支持的优先级 Emoji:🔺(最高)、⏫(高)、🔼(中)、🔽(低)、⏬(最低)
12. 与其他插件的联动方式
12.1 与 Obsidian Tasks 插件联动
Tasks 插件(obsidian-tasks-group/obsidian-tasks)是 Obsidian 中功能最完善的任务管理插件,支持跨笔记任务查询、截止日期、优先级、重复任务等特性。
Capture- 速记生成的 - [ ] 任务内容 格式,与 Tasks 插件完全兼容。你可以在任意笔记中创建 Tasks 查询代码块,从速记笔记中筛选出未完成的任务:
```tasks
not done
path includes 速记/速记笔记
```💡 说明(按需调整):上方查询中的路径
速记/速记笔记为示例值,请替换为你实际使用的速记笔记路径(无需.md后缀)。
这样,速记笔记成为任务的 ” 收集箱 “,而 Tasks 插件负责汇总展示,两者分工明确。
此外,Tasks 插件支持在 Callout 内部识别任务,因此 [!todo] 块中的 - [ ] 条目同样会被纳入 Tasks 的全局查询范围。
12.2 与 Dataview 插件联动
Dataview 插件支持使用 DQL(Dataview Query Language)查询任务。配合 Capture- 速记生成的任务列表,可以构建自定义任务仪表板:
```dataview
TASK
FROM "速记"
WHERE !completed
SORT file.mtime DESC
```💡 说明(按需调整):上方查询中的
"速记"为示例文件夹名称,请替换为你实际存放速记文件的文件夹路径。
此查询会显示该文件夹下所有笔记中未完成的任务,并按文件修改时间降序排列。
12.3 与 Periodic Notes / Daily Notes 联动
如果你有每日笔记(Daily Notes)或周期性笔记(Periodic Notes)工作流,可以将 Capture- 速记的目标文件设置为当日笔记的路径。由于每日笔记的路径包含日期变量,需要对脚本中的 TARGET 变量进行动态计算:
const TARGET = `日记/${moment().format("YYYY-MM-DD")}.md`;同时,Capture To 字段也需要填写对应的动态格式语法(QuickAdd 支持 {{DATE:YYYY-MM-DD}} 格式变量):
日记/{{DATE:YYYY-MM-DD}}.md
💡 说明(按需调整):上方示例中的文件夹
日记/及日期格式均为示例值,请替换为你实际使用的每日笔记存放路径和命名格式,确保两处保持一致。
这样每次触发都会自动写入当天的日记文件。
12.4 与 Canvas 联动
QuickAdd 最新版本支持将 Capture 内容写入 .canvas 文件中的指定文本卡片节点。如果你使用 Obsidian Canvas 构建项目看板,可以将速记任务直接写入对应的 Canvas 卡片中。此功能需要在 Capture 配置中选择目标 Canvas 文件并指定节点。
12.5 与 Templater 插件的注意事项
如果你的 Vault 同时安装了 Templater 插件,需要注意:当 Capture 目标文件包含 <% … %> 格式的 Templater 语法时,QuickAdd 新版本(2.x)已做改进,Capture 操作不会触发目标文件中已有的 Templater 代码块,避免了误执行问题。但如果你在速记笔记的模板头部有 Templater 语法,建议保持该文件内容为纯 Markdown,以免产生意外行为。
13. 适用版本与平台说明
| 环境 | 最低要求 | 说明 |
|---|---|---|
| Obsidian | 1.11.4 | QuickAdd 2.0+ 要求的最低版本 |
| QuickAdd 插件 | 建议使用最新版 | 本教程基于 QuickAdd 2.x 版本,旧版本(1.x)界面可能略有差异,但核心配置逻辑一致 |
| 操作系统 | 不限 | Windows、macOS、Linux 桌面端均可使用 |
| 移动端 | iOS、Android | 支持,但需注意软键盘可能遮挡弹出框按钮(见第 10 节常见问题) |
| 网络连接 | 不需要 | 脚本完全本地运行,无需联网 |
💡 版本说明:QuickAdd 在 2.0.0 版本(2025 年 8 月发布)进行了重要重构,包括:独立 Macro 重构为内嵌 MacroChoice、AI 提供商密钥改为安全存储、Capture 确认通知等。如果你使用的是 1.x 版本,建议升级,以获得更好的稳定性和新特性支持。
附录
Capture- 速记的完整代码
用途说明:以下代码为 Capture- 速记的完整代码,需粘贴至 QuickAdd Capture 配置的 Capture format 输入框中。脚本执行时会循环弹出输入框收集多条任务,最终将其格式化为带时间戳的 [!todo] Callout 块,追加到 TARGET 变量指定的目标笔记末尾。若目标文件不存在,脚本会自动创建。
⚠️ 使用方法:将下方代码块(包含开头的三个反引号和
js quickadd标识符,以及末尾的三个反引号)完整复制,粘贴到 QuickAdd Capture 配置的 Capture format 输入框中。同时,将代码第一行的TARGET路径修改为你自己的目标笔记路径,并确保与 Capture To 字段中的路径完全一致。
```js quickadd
const TARGET = "速记/速记笔记.md";
const date = moment().format("YYYY-MM-DD");
const time = moment().format("HH:mm:ss");
const tasks = [];
while (true) {
const input = await this.quickAddApi.inputPrompt(
`输入第 ${tasks.length + 1} 个任务(留空点 OK 提交 / Cancel 取消)`
);
if (input === null) break;
if (input.trim() === "") break;
tasks.push(input.trim());
}
if (!tasks.length) {
new Notice("⚠️ 未输入任何任务,已取消。");
return "";
}
const block = `> [!todo]+ ${date} ${time}\n` + tasks.map(t => `> - [ ] ${t}`).join("\n");
const file = this.app.vault.getAbstractFileByPath(TARGET);
if (!file) {
await this.app.vault.create(TARGET, block);
} else {
const existing = (await this.app.vault.read(file)).trimEnd();
await this.app.vault.modify(file, existing + (existing ? "\n\n" : "") + block);
}
new Notice(`✅ 已成功添加 ${tasks.length} 个任务!`);
return "";
```
📎 获取完整代码
- 以上即为完整代码,可直接复制使用。
- 关注微信公众号:Obsidianist,回复关键词:Capture-速记,后台即会自动回复完整代码文件下载地址,下载后直接将文件导入 Obsidian,按教程配置即可使用。