嵌入语法
嵌入(Embed)是 Obsidian 的强大功能,允许你在当前笔记中直接显示其他笔记或其部分内容,无需复制粘贴。嵌入的内容是动态的——当源内容变化时,嵌入内容自动更新。
基本语法
嵌入使用 ! 前缀加双方括号:
| 语法 | 说明 |
|---|---|
![[笔记名]] | 嵌入整个笔记 |
![[笔记名#标题]] | 嵌入特定标题下的内容 |
![[笔记名#^块ID]] | 嵌入特定块 |
![[图片名.png]] | 嵌入图片 |
![[文件名.pdf]] | 嵌入 PDF |
嵌入 vs 链接
[[笔记名]]— 链接:点击跳转,不显示内容![[笔记名]]— 嵌入:直接在当前位置显示内容
嵌入笔记
嵌入整个笔记
markdown
![[项目计划]]这会将「项目计划」笔记的完整内容嵌入到当前位置。
嵌入笔记中的标题
markdown
![[项目计划#时间线]]只嵌入「项目计划」笔记中「时间线」标题下的内容(包括子标题)。
嵌入笔记中的标题区间
嵌入从某个标题到下一个同级标题之间的内容:
markdown
![[项目计划#时间线#风险分析]]嵌入范围
当嵌入标题时,会包含该标题及其所有子标题的内容,直到遇到同级或更高级别的标题为止。
嵌入块
块是笔记中最小的可引用单元,通常是一个段落、列表项或代码块。
引用块
- 在源笔记中,为要引用的块添加块 ID:
markdown
这是要引用的内容。 ^block-id- 在目标笔记中嵌入:
markdown
![[源笔记#^block-id]]块 ID 规则
- 以
^开头 - 只能包含字母、数字和连字符
- 必须在段落末尾,与内容之间用空格分隔
- 建议使用有意义的 ID,如
^definition-1
自动生成块 ID
Obsidian 可以自动为段落生成块 ID:
- 在源笔记阅读模式下,将鼠标悬停在段落旁
- 点击出现的链接图标
- Obsidian 自动生成块 ID 并复制嵌入语法
嵌入图片
基本嵌入
markdown
![[screenshot.png]]调整大小
markdown
![[screenshot.png|300]] <!-- 宽度 300px -->
![[screenshot.png|300x200]] <!-- 宽 300 高 200 -->添加标题
markdown
![[screenshot.png|界面截图]]| 后的文字会作为图片的替代文本和标题。
语法解析
![[file|参数]] 中 | 后的参数解析规则:
- 纯数字 → 图片宽度
- 数字x数字 → 宽×高
- 其他文字 → 替代文本/标题
嵌入音频和视频
markdown
![[recording.mp3]] <!-- 嵌入音频 -->
![[demo.mp4]] <!-- 嵌入视频 -->嵌入后会在笔记中显示播放器控件。
嵌入 PDF
markdown
![[paper.pdf]] <!-- 嵌入整个 PDF -->
![[paper.pdf#page=3]] <!-- 嵌入 PDF 第 3 页 -->实用模式
知识卡片嵌入
创建原子化的知识笔记,然后在 MOC 或索引页中嵌入:
markdown
# Python 学习 MOC
## 基础概念
![[Python-变量与数据类型#核心要点]]
![[Python-流程控制#常用模式]]日报嵌入周报
markdown
# 本周总结
## 周一
![[2024-01-15#今日完成]]
## 周二
![[2024-01-16#今日完成]]项目仪表板
markdown
# 项目仪表板
## 进度概览
![[项目A#进度]]
![[项目B#进度]]
## 待办事项
![[项目A#待办]]
![[项目B#待办]]文献笔记引用
markdown
# 研究综述
## 核心观点
![[论文A#主要发现]]
![[论文B#主要发现]]
## 对比分析
两篇论文在方法论上的差异...嵌入与 Dataview 配合
嵌入可以与 Dataview 查询结果配合使用,但 Dataview 的 INCLUDE 语法是另一种嵌入方式:
dataview
TABLE WITHOUT ID
file.link AS "笔记",
status AS "状态"
FROM "项目"
WHERE status = "进行中"性能考虑
大量嵌入的影响
- 每个嵌入都会加载源笔记内容,大量嵌入可能导致渲染变慢
- 嵌入深度嵌套(嵌入包含嵌入)会增加处理时间
- 建议单篇笔记中嵌入不超过 20 个
优化建议
- 使用标题嵌入而非整个笔记嵌入,减少加载量
- 避免循环嵌入(A 嵌入 B,B 又嵌入 A)
- 长内容用链接,短内容用嵌入
- 配合折叠 Callout 隐藏嵌入内容:
markdown
> [!note]- 详细内容
> ![[长篇笔记#详细说明]]常见问题
嵌入显示"未找到笔记"?
- 检查笔记名称是否正确(区分大小写)
- 确认笔记在当前仓库中存在
- 如果有同名笔记,需要使用完整路径:
![[文件夹/笔记名]]
嵌入内容不更新?
- 嵌入内容是动态的,修改源笔记后嵌入内容会自动更新
- 如果阅读模式没有刷新,切换到编辑模式再切回来
嵌入中的链接可以点击吗?
可以。嵌入内容中的所有链接、标签等都可以正常交互。
可以嵌入外部网页吗?
Obsidian 原生不支持嵌入外部网页。但可以通过以下方式:
- 使用 iframe 插件
- 使用 Custom Frames 插件
- 导入网页内容后嵌入笔记
相关资源
- Markdown 语法 — 基础语法参考
- 反向链接 — 链接与关联
- 笔记组织方法 — 笔记组织策略
- MOC 笔记法 — 内容地图组织法