这是我的一个小项目,在 Github 上开源。
这里复制了一份中文版本的 README,更多信息请到仓库中查看。
Introduction
AnkiImporter 能将你的 markdown 语法文本导入到 Anki 中。
简单而强大的小工具。
导入 Anki 的轮子已经被造了一车了,但 AnkiImporter 能让你耳目一新。
遵循极简主义,AnkiImporter 采用自然语法,让你在流畅书写卡片的同时,免于纠结排版格式的问题。
特色:
- 通过 AnkiConnect 直接导入 Anki
- 导出为
apkg
文件 - 可读性佳的语法
- 支持 Markdown 渲染
- 支持 Html 语法
- 跨平台
- 发布二进制文件,免于安装 Python 环境
- 常用的内置 Note 类型
- 问答
- 完形填空
- 选择题(单选、多选)
- 列表完形填空
- 表格完形填空
- 易于拓展
使用这个工具,你无需牺牲原文档的可读性,就能与 Anki 对接。
这里是一个小例子:
|
|
安装
安装 AnkiConnect
安装 AnkiConnect 拓展.
Code:2055492159
详细流程见 anki-connect repo.
安装 Python
安装最新版的 Python.
如果用二进制版本,跳过此步。
下载脚本
方法一(不推荐):直接下载本仓库的 src
文件夹。随后执行 pip install -r src/requirements.txt
补全依赖。
方法二(推荐):在 Releases 中下载二进制版本,不需要 Python 环境,开箱即用。
导入测试牌组
这一步的意义在于,将几个内置的 Note 类型导入到 Anki 中。
它会创建一个名为 Export
的牌组,还有一个名为 #Export
的标签。
所有导入的卡片默认都会进入 Export
牌组中,加上 #Export
的标签。随后你可以在 Anki 中批量更改它们。
通过命令行参数,你可以指定导入的卡片所属的牌组、标签。例如: ./AnkiImporter test.md --tags tag1 tag2 --deck targetDeck
下载测试牌组 并导入。
现在安装完成了。
使用方法
这是一个命令行工具。
Windows 系统下, 打开 cmd
或者任意你喜欢的终端,执行:
{yourpath}\AnkiImporter.exe {yourfile}
如果用源码,执行:
python -m {yourpath}\src {yourfile}
其余平台同理。
更多用法, 输入 .\AnkiImporter -h
之类的东西查看。
导出为 apkg 文件
如果你想导出为 apkg 文件,使用 -o filename
参数。
例如从 test2.md
生成 test.apkg
,输入:
|
|
笔记结构
被导入的笔记必须遵从一定的语法结构,才能被脚本识别。
一个「块」被识别为一个笔记,块是用两个换行符分割的内容块,下面有个例子帮助你更好地理解:
值得注意的是,Html 语法是支持的。
|
|
笔记类型
问答
Anki 中最基础的类型。 两行及以上的块,如果没有被识别为别的类型,最终会被识别为问答类型。
|
|
完形填空
另一个基础类型。
任何块中,第一行含有 **加粗文本**
就会被识别为完形填空。
|
|
选择题
选 A 还是选 B…这是个问题。
这不是 Anki 内置的类型,但因为比较常用,被内置在本项目中。 我导入了一个 Monokaicloze 的修改版本来实现这个功能。
任何块,如果第二行以 A
开头,就会被识别为一个选择题。
|
|
列表完形填空
列表会被识别为完形填空。
|
|
表格完形填空
表格也会被识别为完形填空。
|
|
更多例子, 见 tests.
Credit
License
采用 GPL v3 协议开源。 License is available here.