1. 概述

本文描述了将 Obsidian 笔记导入 Anki 卡组的方法。

2. 背景

Obsidian 是很流行的个人笔记知识库工具,编写 Markdown 格式的笔记很方便。有官方同步功能,也可以自己用云盘同步。

Anki 是很流行的基于记忆曲线的记忆卡工具,自带官方多端免费云同步,可在电脑或手机上学习。但是用桌面版添加和编辑卡片操作效率比较低。

因此产生了一个需求,用 Obsidian 编辑 Markdown 后,导入到 Anki 卡组,形成学习卡片。

3. 安装软件本体

3.1. 安装 Obsidian

从 Obsidian 官方网站 下载并安装 Windows 版本的 Obsidian。

3.2. 安装 Anki

从 Anki 官方网站 下载并安装 Windows 版本的 Anki。

4. 安装插件

4.1. 安装 Anki 插件 AnkiConnect

AnkiConnect 是将 Anki 的 API 接口开放到本地 WebServer 的插件。

在 Anki 官网可以搜索到该插件的主页AnkiConnect。不过不需要从主页安装,只需要找到那个Code:2055492159。

  1. 打开 Anki 桌面版本,
  2. 主菜单 -> 工具 -> 插件,打开插件窗口
  3. 右上角点击 获取插件,打开安装插件对话框
  4. 将上面的 code,即2055492159,点击 确定。
  5. 重启 Anki 。
  6. 用浏览器打开http://127.0.0.1:8765/,如果能看到{"apiVersion": "AnkiConnect v.6"}说明插件已经安装成功。

4.2. 安装 Obsidian 插件 Obsidian_to_Anki

Obsidian_to_Anki 插件是一款 Obsidian 的第三方插件,能将 Markdown 笔记转化成 Anki 需要的格式并发送给 Anki,还能自动去重。

  1. 打开 Obsidian 的 Windows 桌面版,点击齿轮图标(设置)。
  2. 左侧:设置 -> 第三方插件 -> 社区插件市场 -> 浏览,打开社区插件市场(可能比较慢,但不用翻墙)。
  3. 输入 Obsidian_to_Anki,能看到 Export to Anki(备注里说是Previously known as Obsidian_to_Anki)。
  4. 选择这个插件,点击 安装 即可。
  5. 安装完成后,重启 Obsidian。
  6. 设置 -> 选项 -> 第三方插件,右下方 已安装插件 确认多了 Obsidian_to_Anki 并确保已激活。
  7. 在 Obsidian 主界面的左侧,在 快速切换、 关系图谱 等按钮的旁边,能看到多了个按钮,形状是 Anki 的 LOGO。

5. 设置插件

5.1. 设置 Anki 插件 AnkiConnect

参考Obsidian_to_Anki`的github页面。

  1. 打开 Anki 桌面版本。
  2. 主菜单 -> 工具 -> 插件,打开插件窗口。
  3. 左边选中 AnkiConnect,右下角点击 插件设置。
  4. 将弹出的对话框内容改成下面这样:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
{
    "apiKey": null,
    "apiLogPath": null,
    "ignoreOriginList": [],
    "webBindAddress": "127.0.0.1",
    "webBindPort": 8765,
    "webCorsOrigin": "http://localhost",
    "webCorsOriginList": [
        "http://localhost",
        "app://obsidian.md"
    ]
}

5.2. 设置 Obsidian 插件 Obsidian_to_Anki

  1. 打开 Obsidian 桌面版,点击齿轮图标(设置)。
  2. 左侧底部:第三方插件 -> Obsidian_to_Anki。
  3. 右侧中部找到 Defaults 一栏下的 Deck,输入要将卡牌导入到哪个 Anki 卡组。比如输入 软考高项。
  4. 右侧顶部找到 Note Type Table,点击展开设置窗口。
  5. 在 Basic 一栏的 Custom Regexp 输入 ^#+(.+)\n*((?:\n(?:^[^\n#].{0,2}$|^[^\n#].{3}(?<!<!--).*))+) 的内容。
  6. 在Cloze一栏的Custom Regexp输入((?:.+\n)*(?:.*{.*)(?:\n(?:^.{1,3}$|^.{4}(?<!<!--).*))*)。
  7. 随便点击输入框之外的地方,就会自动保存。
  8. 重启 Obsidian 。

6. 使用

6.1. 创建 Markdown 并导入 Anki

打开 Anki Windows桌面版。

打开 Obsidian Windows桌面版,随意创建一个 Markdown 文件,输入下面的内容:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
## 2026年软考高项在哪天考试?
5月23日。

# 软考高项考试科目基本知识

## 软考高项有几个科目?
3个科目。

## 软考高项论文的做答时长?
2小时。

## 软考高项的各科分数?
每科75分,及格分45分。三科都一样。

软考高项的考试科目是:
{{c1::综合知识}}
{{c2::案例分析}}
{{c3::论文}}

然后点击 Obsidian 主窗口左边的 Anki 图标(注释是Obsidian_to_Anki - Scan Vault)。

会看到 Anki 的窗口里已经多了一个软考高项的卡组,里面有7个卡片,分别是4张Basic的,和3张Cloze的。

另外,会看到 Obsidian 里刚才创建的 Markdown 笔记每一项后面都多了一条类似<!--ID: 1778290898460-->的内容,这应该是为了防止 Markdown 的内容被多次重复导入 Anki 。

6.2. 修改已经导入的卡片

在 Anki 的 浏览 界面里可以删除已经导入的卡片。

在 Obsidian 的 Markdown 里,删掉类似 <!--ID: 1778290898460--> 的内容,就能在下次扫描时让这一段重新导入到 Anki 了。

ENJOY STUDYING!