QuickAdd 插件详解
简介
QuickAdd 是 Obsidian 社区最受欢迎的效率插件之一,它提供了强大的快速捕获、模板应用和宏自动化功能。通过 QuickAdd,你可以:
- 一键创建带有模板的笔记
- 快速捕获想法到指定位置
- 自动化复杂的重复性工作流
- 创建自定义命令链
安装与配置
安装插件
- 打开「设置 → 第三方插件」
- 关闭「安全模式」
- 点击「浏览」搜索「QuickAdd」
- 点击「安装」并「启用」
基本配置
打开「设置 → 第三方插件 → QuickAdd」:
yaml
主要设置:
- Choices: 选择项管理
- Capture: 捕获设置
- Template: 模板设置
- Macro: 宏设置
- Multi: 多重选择核心功能
1. Capture(快速捕获)
Capture 用于快速添加内容到现有笔记。
创建 Capture 选择
- 点击「Manage Choices」
- 输入名称,选择类型为「Capture」
- 点击「Add」
- 配置捕获选项
Capture 配置选项
yaml
捕获设置:
Capture to: 目标文件路径
- 可使用 {{DATE}} 等变量
- 支持动态路径如 "日记/{{DATE}}.md"
Insert after: 插入位置
- 可指定标题后插入
- 支持 "## 今日记录"
Insert at section: 区段插入
- 在特定区段添加内容
Capture format: 捕获格式
- 自定义插入内容的格式示例:快速添加待办
yaml
配置:
名称: 添加待办
Capture to: "待办清单.md"
Insert after: "## 进行中"
Capture format: "- [ ] {{VALUE}} {{DATE:YYYY-MM-DD HH:mm}}"使用时:
- 打开命令面板
Ctrl/Cmd + P - 输入「添加待办」
- 输入待办内容
- 自动添加到指定位置
2. Template(模板创建)
Template 用于基于模板创建新笔记。
创建 Template 选择
- 点击「Manage Choices」
- 输入名称,选择类型为「Template」
- 选择模板文件
- 配置创建选项
Template 配置选项
yaml
模板设置:
Template Path: 模板文件路径
- 如 "模板/读书笔记.md"
File Name Format: 文件名格式
- 支持变量如 {{DATE}}-{{VALUE}}
Folder: 创建位置
- 新笔记保存的文件夹
Open: 是否自动打开
- 创建后自动打开新笔记示例:创建读书笔记
模板文件 模板/读书笔记.md:
markdown
---
title: {{NAME}}
author:
status: 阅读中
created: {{DATE:YYYY-MM-DD}}
tags:
- 读书笔记
---
# {{NAME}}
## 基本信息
- **作者**:
- **出版年份**:
- **阅读日期**:{{DATE:YYYY-MM-DD}}
## 主要内容
## 精彩摘录
## 个人思考
## 行动项配置:
yaml
名称: 新建读书笔记
类型: Template
模板: 模板/读书笔记.md
文件夹: 读书笔记
文件名: {{DATE:YYYY-MM-DD}}-{{VALUE}}3. Macro(宏自动化)
Macro 是 QuickAdd 最强大的功能,可以串联多个操作。
创建 Macro
- 点击「Manage Choices」
- 输入名称,选择类型为「Macro」
- 点击配置按钮进入编辑
Macro 可用操作
yaml
操作类型:
内置操作:
- Template: 创建模板笔记
- Capture: 捕获内容
- Choice: 执行其他选择
用户脚本:
- 运行 JavaScript 脚本
- 自定义逻辑处理
等待操作:
- 等待用户输入
- 等待指定时间示例:每日笔记工作流
创建 Macro 「每日启动」:
yaml
步骤:
1. Template - 创建/打开今日日记
2. Capture - 添加今日日期标题
3. Template - 插入每日模板
4. Capture - 加载昨日未完成任务配置详情:
1. Template
- 模板: 模板/日记.md
- 文件名: {{DATE:YYYY-MM-DD}}
- 文件夹: 日记
2. Capture
- 目标: 日记/{{DATE:YYYY-MM-DD}}.md
- 格式: ## {{DATE:dddd}} 今日计划
3. User Script (可选)
- 获取昨日未完成任务4. Multi(多重选择)
Multi 允许组合多个选择为一个菜单。
创建 Multi
- 点击「Manage Choices」
- 输入名称,选择类型为「Multi」
- 添加子选择项
示例:快速添加菜单
yaml
名称: 快速添加
类型: Multi
包含选择:
- 添加待办
- 新建读书笔记
- 新建会议记录
- 捕获想法使用时弹出选择菜单,快速执行所需操作。
内置变量
日期时间变量
markdown
{{DATE}} - 当前日期 (YYYY-MM-DD)
{{DATE:YYYY-MM-DD HH:mm}} - 自定义格式
{{TIME}} - 当前时间
{{VDATE:变量名, 格式}} - 带名称的日期变量文件变量
markdown
{{FILE_NAME}} - 当前文件名
{{FOLDER_NAME}} - 当前文件夹名
{{FILE_PATH}} - 当前文件路径用户输入变量
markdown
{{VALUE}} - 用户输入值
{{NAME}} - 名称输入
{{VALUE:提示文本}} - 带提示的输入选择变量
markdown
{{VALUE:选项1,选项2,选项3}} - 单选下拉
{{MVALUE:选项1,选项2,选项3}} - 多选下拉高级技巧
1. 条件判断
使用 JavaScript 脚本实现条件逻辑:
javascript
// 在 Macro 中添加用户脚本
module.exports = async (params) => {
const { quickAddApi } = params;
// 获取用户选择
const choice = await quickAddApi.suggester(
['工作', '学习', '生活'],
['work', 'study', 'life']
);
// 根据选择返回不同路径
return choice;
};2. 链式操作
创建复杂的工作流:
yaml
工作流示例:
1. 用户选择笔记类型
2. 根据类型加载对应模板
3. 填充自动数据(日期、标签)
4. 添加到相应文件夹
5. 打开并定位光标3. 与其他插件配合
配合 Dataview
markdown
<!-- 模板中使用 Dataview 查询 -->
## 本周任务
```dataview
TASK FROM "任务"
WHERE file.day >= date({{DATE:YYYY-MM-DD}}) - dur(7 days)配合 Templater
QuickAdd 可以调用 Templater 的函数:
javascript
// 在 Macro 脚本中
const templater = app.plugins.plugins['templater-obsidian'];
await templater.templater.append_template_to_file(template, file);4. 快捷键绑定
为常用的 QuickAdd 命令设置快捷键:
- 打开「设置 → 快捷键」
- 搜索 QuickAdd 相关命令
- 设置快捷键组合
建议快捷键:
yaml
建议快捷键:
QuickAdd: 快速添加: Ctrl/Cmd + Q
QuickAdd: 捕获想法: Ctrl/Cmd + Shift + N
QuickAdd: 新建读书笔记: Ctrl/Cmd + Shift + B实用示例集合
示例一:快速捕获想法
yaml
名称: 💡 捕获想法
类型: Capture
配置:
目标: 收件箱.md
格式: |
## {{DATE:YYYY-MM-DD HH:mm}}
{{VALUE}}
插入位置: 文件末尾示例二:新建会议记录
模板 模板/会议记录.md:
markdown
---
title: {{VALUE:会议主题}}
date: {{DATE:YYYY-MM-DD HH:mm}}
type: 会议记录
attendees: {{VALUE:参会人员}}
---
# {{VALUE:会议主题}}
## 会议信息
- **时间**:{{DATE:YYYY-MM-DD HH:mm}}
- **参会人员**:{{VALUE:参会人员}}
## 议程
## 讨论内容
## 决议事项
- [ ]
## 后续行动示例三:项目状态更新
javascript
// Macro 用户脚本
module.exports = async (params) => {
const { app, quickAddApi } = params;
// 选择项目
const projects = app.vault.getMarkdownFiles()
.filter(f => f.path.includes('项目/'));
const selectedProject = await quickAddApi.suggester(
projects.map(f => f.basename),
projects
);
// 输入状态
const status = await quickAddApi.inputPrompt('输入状态更新');
// 添加到项目笔记
const content = `\n## {{DATE:YYYY-MM-DD}} 状态更新\n${status}\n`;
return { file: selectedProject, content };
};示例四:周报生成
yaml
名称: 生成周报
类型: Macro
步骤:
1. 创建周报文件
2. 收集本周完成的任务
3. 收集本周创建的笔记
4. 生成报告内容配置备份与迁移
导出配置
QuickAdd 配置存储在:
仓库/.obsidian/plugins/quickadd/data.json备份此文件可保留所有配置。
分享配置
可以导出单个 Choice:
- 在 Choice 设置中点击「...」
- 选择「Export」
- 复制 JSON 配置
导入配置:
- 点击「Import」
- 粘贴 JSON 配置
- 确认导入
常见问题
变量不生效?
检查变量格式:
markdown
✅ 正确: {{DATE}}, {{VALUE}}
❌ 错误: {DATE}, {{date}}, {VALUE}模板路径错误?
确保使用相对路径:
yaml
✅ 正确: 模板/读书笔记.md
❌ 错误: /模板/读书笔记.md宏脚本报错?
检查 JavaScript 语法:
javascript
// 使用 async/await 处理异步操作
module.exports = async (params) => {
// 代码
};相关插件
| 插件 | 用途 |
|---|---|
| Templater | 更强大的模板功能 |
| Dataview | 数据查询展示 |
| Calendar | 日历集成 |
| Periodic Notes | 周期性笔记 |