Coding-Flashcards 自制牌组教程:手把手教你用 Markdown 编写 Anki 闪卡
Coding-Flashcards 自制牌组教程手把手教你用 Markdown 编写 Anki 闪卡【免费下载链接】Coding-FlashcardsOver 1000 flashcards to learn Rust, SQLite, Lua, C, Godot, or Wolfram Language from first principles. Written in markdown with script to convert them to Anki decks or PDF files.项目地址: https://gitcode.com/gh_mirrors/ru/Coding-FlashcardsCoding-Flashcards 是一个收录了超过 1000 张编程闪卡的开源项目覆盖 Rust、SQLite、Lua、C、Godot 和 Wolfram Language 六大主题全部用 Markdown 编写再通过脚本一键转换为 Anki 牌组.apkg或 PDF 文件。本文是一份面向初学者的自制牌组教程手把手教你读懂它的 Markdown 闪卡格式并自己动手编写、转换属于你的 Anki 闪卡。Coding-Flashcards 的牌组源码结构先看看仓库里每种语言的目录你会发现结构高度统一一个 cards.md 存放全部闪卡内容一个 makefile 负责构建个别语言还配有images/图片目录和source/示例源码。以 Rust 为例rust/cards.md 有超过一万行内含几百张闪卡SQLite 的 sqlite/cards.md、Lua 的 lua/cards.md 也都是同样的组织方式。想自制牌组只需仿照这个结构新建一个目录和 cards.md 即可。Markdown 闪卡的通用编写格式打开任意一个 cards.md你会发现格式极其简单只用三种元素就能写出一张标准闪卡文件开头的 YAML 头部用---包住name字段声明牌组名称---分隔线把一张张卡片隔开. . .标记把卡片正面问题和背面答案分开下面是简化后的完整牌组骨架--- name: Rust Flashcards ---How do you create an infinite loop? . . . loop { … }How do you exit a loop forcibly? . . . break;name会作为 Anki 中的牌组名Deck Name显示---之间的每一段就是一张独立闪卡。读懂这个格式你已经掌握了编写 Anki 闪卡 90% 的语法。用 . . . 分隔闪卡正面与背面. . .是 Anki-panky 转换脚本识别正反面的关键它之前的内容是卡片正面问题之后是背面答案。复习时 Anki 先展示问题点击“显示答案”后才会露出. . .下方的部分这正是闪卡的核心交互。你也可以在答案里写多行内容、加列表甚至引用比如 sqlite/cards.md 中就有带多条命令的答案示例格式和普通 Markdown 完全一致没有任何额外限制。在 Anki 闪卡中嵌入代码块与图片编程闪卡离不开代码。cards.md 直接用 Markdown 代码块写代码转换后 Anki 中会自动渲染支持语法高亮。上面这张截图来自仓库自带的 rust/cards.md可以看到match语句的关键字、字符串都有颜色区分。图片同样可以直接嵌入。比如 rust/cards.md 中讲解 Rust 引用与String内存布局时就插入了这张示意图图片的写法与普通 Markdown 一致描述配合{width50%}还能控制显示宽度。Wolfram Language 的牌组 wolfram-language/cards.md 里也有类似的图片卡片示例。一条命令将 Markdown 转换成 Anki 牌组写好自己的 cards.md 后转换依赖一个叫 anki-panky 的命令行工具它能把 Markdown 直接打包成 Anki 可导入的.apkg文件。转换命令非常简单cd rust anki-panky cards.md执行后会生成 cards.apkg 对应的牌组文件在 Anki 客户端里“导入牌组”即可开始复习。如果你想在卡片底部显示牌组名方便多牌组混排时辨认项目还准备了带名称的构建目标。一键构建完整牌组流程仓库用 Makefile 把整个过程封装成了统一命令无需记忆复杂的 anki-panky 参数。每个语言目录下的 makefile 都引入了公共的 common.mk提供三个常用目标make cards.apkg生成不带牌组名的 Anki 牌组make cards-with-name.apkg生成带牌组名的 Anki 牌组make cards.pdf生成可打印的 PDF 复习册在仓库根目录执行make build会依次构建全部六种语言的牌组执行make build-combined还会把所有语言合并成一个大牌组 cards-combined.apkg 和一份总 PDF。这意味着你几乎不用写任何脚本就能从 Markdown 闪卡一路得到完整的 Anki 学习资源。把 Markdown 闪卡转成 PDF 复习册除了 AnkiCoding-Flashcards 还支持把同一份 Markdown 闪卡渲染成 PDF。它借助 pandoc 配合 LaTeX 引擎 tectonic将每张卡片排版成适合屏幕或打印的版式。如果你想离线复习、或者不喜欢电子卡片的形式这条路径同样零成本cd sqlite make cards.pdf生成的 PDF 与 Anki 牌组共享同一份 Markdown 源文件改一处、两处生效维护成本极低。获取全部牌组源码开始自制想直接使用现成的 1000 多张闪卡或者参考它们的写法来自制牌组克隆仓库即可git clone https://gitcode.com/gh_mirrors/ru/Coding-Flashcards克隆后进入任意语言目录打开 cards.md 照着改你就是闪卡作者了。用 Markdown 编写 Anki 闪卡的优点在于纯文本易读、可版本管理、可自动生成还能和你的代码笔记放在一起维护。现在就去克隆仓库动手写第一张属于你自己的闪卡吧【免费下载链接】Coding-FlashcardsOver 1000 flashcards to learn Rust, SQLite, Lua, C, Godot, or Wolfram Language from first principles. Written in markdown with script to convert them to Anki decks or PDF files.项目地址: https://gitcode.com/gh_mirrors/ru/Coding-Flashcards创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考