名称: obsidian-markdown 描述: 创建和编辑 Obsidian 风味的 Markdown,支持 wikilinks、embeds、callouts、properties 等 Obsidian 特定语法。适用于在 Obsidian 中处理 .md 文件,或当用户提到 wikilinks、callouts、frontmatter、tags、embeds 或 Obsidian 笔记时使用。
Obsidian 风味 Markdown 技能
这个技能使 Claude Code 能够创建和编辑有效的 Obsidian 风味 Markdown,包括所有 Obsidian 特定的语法扩展。
概述
Obsidian 使用多种 Markdown 风味的组合:
- CommonMark
- GitHub 风味 Markdown
- LaTeX 用于数学公式
- Obsidian 特定扩展(wikilinks、callouts、embeds 等)
基本格式化
段落和换行
这是一个段落。
这是另一个段落(空白行之间创建独立的段落)。
对于段落内的换行,在末尾添加两个空格
或使用 Shift+Enter。
标题
# 标题 1
## 标题 2
### 标题 3
#### 标题 4
##### 标题 5
###### 标题 6
文本格式化
| 样式 | 语法 | 示例 | 输出 |
|---|---|---|---|
| 粗体 | **文本** 或 __文本__ |
**粗体** |
粗体 |
| 斜体 | *文本* 或 _文本_ |
*斜体* |
斜体 |
| 粗体 + 斜体 | ***文本*** |
***两者*** |
两者 |
| 删除线 | ~~文本~~ |
~~删除线~~ |
|
| 高亮 | ==文本== |
==高亮== |
==高亮== |
| 内联代码 | `代码` |
`代码` |
代码 |
转义格式化
使用反斜杠转义特殊字符:
\*这不会是斜体\*
\#这不会是标题
1\. 这不会是列表项
常见需要转义的字符:\*, \_, \#, \`, \|, \~
内部链接(Wikilinks)
基本链接
[[笔记名称]]
[[笔记名称.md]]
[[笔记名称|显示文本]]
链接到标题
[[笔记名称#标题]]
[[笔记名称#标题|自定义文本]]
[[#同一笔记中的标题]]
[[##搜索保险库中的所有标题]]
链接到块
[[笔记名称#^块-id]]
[[笔记名称#^块-id|自定义文本]]
通过添加 ^块-id 在段落末尾定义块 ID:
这是一个可以链接到的段落。 ^我的块-id
对于列表和引用,在单独行添加块 ID:
> 这是一个引用
> 有多行
^引用-id
搜索链接
[[##标题]] 搜索包含“标题”的标题
[[^^块]] 搜索包含“块”的块
Markdown 风格链接
[显示文本](笔记%20名称.md)
[显示文本](笔记%20名称.md#标题)
[显示文本](https://example.com)
[笔记](obsidian://open?vault=保险库名称&file=笔记.md)
注意:在 Markdown 链接中,空格必须 URL 编码为 %20。
嵌入
嵌入笔记
![[笔记名称]]
![[笔记名称#标题]]
![[笔记名称#^块-id]]
嵌入图像
![[图像.png]]
![[图像.png|640x480]] 宽度 x 高度
![[图像.png|300]] 仅宽度(保持宽高比)
外部图像


嵌入音频
![[音频.mp3]]
![[音频.ogg]]
嵌入 PDF
![[文档.pdf]]
![[文档.pdf#page=3]]
![[文档.pdf#height=400]]
嵌入列表
![[笔记#^列表-id]]
其中列表已用块 ID 定义:
- 项目 1
- 项目 2
- 项目 3
^列表-id
嵌入搜索结果
```query
tag:#项目 status:完成
```
Callouts
基本 Callout
> [!note]
> 这是一个 note callout。
> [!info] 自定义标题
> 这个 callout 有自定义标题。
> [!tip] 仅标题
可折叠 Callouts
> [!faq]- 默认折叠
> 此内容在展开前隐藏。
> [!faq]+ 默认展开
> 此内容可见但可折叠。
嵌套 Callouts
> [!question] 外部 callout
> > [!note] 内部 callout
> > 嵌套内容
支持的 Callout 类型
| 类型 | 别名 | 描述 |
|---|---|---|
note |
- | 蓝色,铅笔图标 |
abstract |
summary, tldr |
青色,剪贴板图标 |
info |
- | 蓝色,信息图标 |
todo |
- | 蓝色,复选框图标 |
tip |
hint, important |
青色,火焰图标 |
success |
check, done |
绿色,勾选图标 |
question |
help, faq |
黄色,问号图标 |
warning |
caution, attention |
橙色,警告图标 |
failure |
fail, missing |
红色,X 图标 |
danger |
error |
红色,闪电图标 |
bug |
- | 红色,虫子图标 |
example |
- | 紫色,列表图标 |
quote |
cite |
灰色,引用图标 |
自定义 Callouts(CSS)
.callout[data-callout="自定义类型"] {
--callout-color: 255, 0, 0;
--callout-icon: lucide-alert-circle;
}
列表
无序列表
- 项目 1
- 项目 2
- 嵌套项目
- 另一个嵌套
- 项目 3
* 星号也有效
+ 或加号
有序列表
1. 第一项
2. 第二项
1. 嵌套编号
2. 另一个嵌套
3. 第三项
1) 替代语法
2) 带括号
任务列表
- [ ] 未完成任务
- [x] 已完成任务
- [ ] 带子任务的任务
- [ ] 子任务 1
- [x] 子任务 2
引用
> 这是一个块引用。
> 它可以跨多行。
>
> 并包含多个段落。
>
> > 嵌套引用也有效。
代码
内联代码
使用 `反引号` 表示内联代码。
使用双反引号表示 ``带 ` 反引号的代码``。
代码块
```
纯代码块
```
```javascript
// 语法高亮代码块
function hello() {
console.log("Hello, world!");
}
```
```python
# Python 示例
def greet(name):
print(f"Hello, {name}!")
```
嵌套代码块
为外层块使用更多反引号或波浪线:
````markdown
这是如何创建代码块:
```js
console.log("Hello")
```
````
表格
| 表头 1 | 表头 2 | 表头 3 |
|----------|----------|----------|
| 单元格 1 | 单元格 2 | 单元格 3 |
| 单元格 4 | 单元格 5 | 单元格 6 |
对齐
| 左对齐 | 居中 | 右对齐 |
|:---------|:--------:|---------:|
| 左对齐 | 居中 | 右对齐 |
在表格中使用管道符
用反斜杠转义管道符:
| 列 1 | 列 2 |
|----------|----------|
| [[链接\|显示]] | ![[图像\|100]] |
数学(LaTeX)
内联数学
这是内联数学:$e^{i\pi} + 1 = 0$
块数学
$$
\begin{vmatrix}
a & b \\
c & d
\end{vmatrix} = ad - bc
$$
常见数学语法
$x^2$ 上标
$x_i$ 下标
$\frac{a}{b}$ 分数
$\sqrt{x}$ 平方根
$\sum_{i=1}^{n}$ 求和
$\int_a^b$ 积分
$\alpha, \beta$ 希腊字母
图表(Mermaid)
```mermaid
graph TD
A[开始] --> B{决策}
B -->|是| C[做这个]
B -->|否| D[做那个]
C --> E[结束]
D --> E
```
序列图
```mermaid
sequenceDiagram
Alice->>Bob: Hello Bob
Bob-->>Alice: Hi Alice
```
在图表中链接
```mermaid
graph TD
A[生物学]
B[化学]
A --> B
class A,B internal-link;
```
脚注
这个句子有一个脚注[^1]。
[^1]: 这是脚注内容。
你也可以使用命名脚注[^note]。
[^note]: 命名脚注仍然显示为数字。
内联脚注也支持。^[这是一个内联脚注。]
注释
这是可见的 %%但这是隐藏的%% 文本。
%%
这个整个块是隐藏的。
它在阅读视图中不会出现。
%%
水平规则
---
***
___
- - -
* * *
属性(Frontmatter)
属性在笔记开头使用 YAML frontmatter:
---
title: 我的笔记标题
date: 2024-01-15
tags:
- 项目
- 重要
aliases:
- 我的笔记
- 替代名称
cssclasses:
- 自定义类
status: in-progress
rating: 4.5
completed: false
due: 2024-02-01T14:30:00
---
属性类型
| 类型 | 示例 |
|---|---|
| 文本 | title: 我的标题 |
| 数字 | rating: 4.5 |
| 复选框 | completed: true |
| 日期 | date: 2024-01-15 |
| 日期和时间 | due: 2024-01-15T14:30:00 |
| 列表 | tags: [一, 二] 或 YAML 列表 |
| 链接 | related: "[[其他笔记]]" |
默认属性
tags- 笔记标签aliases- 笔记的替代名称cssclasses- 应用于笔记的 CSS 类
标签
#标签
#嵌套/标签
#带连字符的标签
#带下划线的标签
在 frontmatter 中:
---
tags:
- 标签1
- 嵌套/标签2
---
标签可以包含:
- 字母(任何语言)
- 数字(不能作为第一个字符)
- 下划线
_ - 连字符
- - 正斜杠
/(用于嵌套)
HTML 内容
Obsidian 支持在 Markdown 中使用 HTML:
<div class="自定义容器">
<span style="color: red;">彩色文本</span>
</div>
<details>
<summary>点击展开</summary>
隐藏内容在此。
</details>
<kbd>Ctrl</kbd> + <kbd>C</kbd>
完整示例
---
title: 项目 Alpha
date: 2024-01-15
tags:
- 项目
- 活跃
status: in-progress
priority: high
---
# 项目 Alpha
## 概述
这个项目旨在使用现代技术 [[改进工作流程]]。
> [!important] 关键截止日期
> 第一个里程碑在 ==1 月 30 日== 到期。
## 任务
- [x] 初始规划
- [x] 资源分配
- [ ] 开发阶段
- [ ] 后端实现
- [ ] 前端设计
- [ ] 测试
- [ ] 部署
## 技术说明
主要算法使用排序公式 $O(n \log n)$。
```python
def process_data(items):
return sorted(items, key=lambda x: x.priority)
```
## 架构
```mermaid
graph LR
A[输入] --> B[处理]
B --> C[输出]
B --> D[缓存]
```
## 相关文档
- ![[会议笔记 2024-01-10#决策]]
- [[预算分配|预算]]
- [[团队成员]]
## 参考文献
更多详情,请参见官方文档[^1]。
[^1]: https://example.com/docs
%%
内部笔记:
- 周五与团队审查
- 考虑替代方法
%%