Skip to content

Commit 8dd0860

Browse files
committed
docs: convert README from org-mode to markdown
Hatchling doesn't recognize .org format and fails to build. Use markdown for better PyPI compatibility.
1 parent 6ae7dea commit 8dd0860

2 files changed

Lines changed: 42 additions & 44 deletions

File tree

Lines changed: 41 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,108 +1,106 @@
1-
#+TITLE: doc2anki
2-
#+AUTHOR: SOV710
3-
#+EMAIL: chris916911179@outlook.com
1+
# doc2anki
42

5-
* 概述
3+
## 概述
64

75
doc2anki 将知识库文档转换为 Anki 学习卡片。
86

97
通过大语言模型从 Markdown 或 Org-mode 文件中提取知识点,生成符合间隔重复学习规律的记忆卡片。
108

11-
* 环境要求
9+
## 环境要求
1210

1311
- Python 3.12 或更高版本
1412
- 支持 OpenAI API 格式的语言模型服务
1513

16-
* 安装
14+
## 安装
1715

18-
#+begin_src sh
16+
```sh
1917
uv sync
20-
#+end_src
18+
```
2119

22-
* 配置
20+
## 配置
2321

24-
在项目根目录创建 =ai_providers.toml= 文件,配置语言模型提供商:
22+
在项目根目录创建 `ai_providers.toml` 文件,配置语言模型提供商:
2523

26-
#+begin_src toml
24+
```toml
2725
[provider_name]
2826
enable = true
2927
auth_type = "env"
3028
api_key_env = "YOUR_API_KEY_ENV_VAR"
3129
default_base_url = "https://api.example.com/v1"
3230
default_model = "model-name"
33-
#+end_src
31+
```
3432

3533
支持三种认证方式:
36-
- =direct=: 凭据直接写在配置文件中
37-
- =env=: 从环境变量读取
38-
- =dotenv=: 从 .env 文件加载
34+
- `direct`: 凭据直接写在配置文件中
35+
- `env`: 从环境变量读取
36+
- `dotenv`: 从 .env 文件加载
3937

40-
* 使用
38+
## 使用
4139

42-
** 查看可用的模型提供商
40+
### 查看可用的模型提供商
4341

44-
#+begin_src sh
42+
```sh
4543
doc2anki list
46-
#+end_src
44+
```
4745

48-
** 验证配置
46+
### 验证配置
4947

50-
#+begin_src sh
48+
```sh
5149
doc2anki validate
5250
doc2anki validate -p provider_name
53-
#+end_src
51+
```
5452

55-
** 生成卡片
53+
### 生成卡片
5654

57-
#+begin_src sh
55+
```sh
5856
doc2anki generate input.md -p provider_name -o output.apkg
59-
#+end_src
57+
```
6058

6159
处理整个目录:
6260

63-
#+begin_src sh
61+
```sh
6462
doc2anki generate docs/ -p provider_name -o knowledge.apkg
65-
#+end_src
63+
```
6664

6765
常用选项:
68-
- =--max-tokens=: 每个文本块的最大 token 数量 (默认 3000)
69-
- =--deck-depth=: 从文件路径生成卡片组层级的深度 (默认 2)
70-
- =--extra-tags=: 添加额外标签,用逗号分隔
71-
- =--dry-run=: 仅解析和分块,不调用语言模型
72-
- =--verbose=: 显示详细输出
66+
- `--max-tokens`: 每个文本块的最大 token 数量 (默认 3000)
67+
- `--deck-depth`: 从文件路径生成卡片组层级的深度 (默认 2)
68+
- `--extra-tags`: 添加额外标签,用逗号分隔
69+
- `--dry-run`: 仅解析和分块,不调用语言模型
70+
- `--verbose`: 显示详细输出
7371

74-
* 文档格式
72+
## 文档格式
7573

76-
** 全局上下文块
74+
### 全局上下文块
7775

7876
在文档开头定义领域术语,供语言模型生成卡片时参考。
7977

8078
Markdown 格式:
8179

82-
#+begin_src markdown
80+
````markdown
8381
```context
8482
- TCP: "传输控制协议"
8583
- HTTP: "超文本传输协议"
8684
```
87-
#+end_src
85+
````
8886

8987
Org-mode 格式:
9088

91-
#+begin_src org
89+
```org
9290
#+BEGIN_CONTEXT
9391
- TCP: "传输控制协议"
9492
- HTTP: "超文本传输协议"
9593
#+END_CONTEXT
96-
#+end_src
94+
```
9795

98-
** 文件路径与卡片组织
96+
### 文件路径与卡片组织
9997

10098
文件路径自动转换为 Anki 卡片组层级和标签。
10199

102-
例如: =computing/network/tcp_ip.md=
103-
- 卡片组: =computing::network= (深度为 2)
104-
- 标签: =computing=, =network=, =tcp_ip=
100+
例如: `computing/network/tcp_ip.md`
101+
- 卡片组: `computing::network` (深度为 2)
102+
- 标签: `computing`, `network`, `tcp_ip`
105103

106-
* 许可证
104+
## 许可证
107105

108106
MIT License

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
name = "doc2anki"
33
version = "0.1.0"
44
description = "Convert knowledge base documents to Anki flashcards"
5-
readme = "README.org"
5+
readme = "README.md"
66
requires-python = ">=3.12"
77
authors = [{ name = "SOV710", email = "chris916911179@outlook.com" }]
88
dependencies = [

0 commit comments

Comments
 (0)