Skip to content

Commit 079e0ca

Browse files
committed
文档更新
1 parent fb804fb commit 079e0ca

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+3503
-29
lines changed

PROJECT_PLAN_YARN.md

Lines changed: 139 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
## 🌙 项目概述
44

55
**项目名称**: Goldfish Scheme 文档网站
6-
**技术栈**: VitePress + TypeScript + ESLint + Prettier
6+
**技术栈**: VitePress + TypeScript + Tailwind CSS v4 + ESLint + Prettier
77
**包管理器**: Yarn 1.22.22
88
**目标**: 为 [MoganLab/goldfish](https://github.com/MoganLab/goldfish)
99
创建一个现代化、易用的文档网站
@@ -18,24 +18,74 @@
1818
- [x] ESLint + Prettier 配置
1919
- [x] Yarn 包管理器配置
2020
- [x] 脚本绑定优化
21-
22-
### 阶段 2: 文档架构
23-
24-
- [ ] 设计文档导航结构
25-
- [ ] 创建指南部分
26-
- [ ] 搭建 API 文档框架
27-
28-
### 阶段 3: 内容编写
21+
- [x] GitHub Pages 自动化部署
22+
23+
### 阶段 2: 文档架构 🟡
24+
25+
- [ ] **导航结构设计**
26+
- [x] 顶部导航(NavBar)
27+
- [ ] 侧边栏导航(Sidebar.vue)
28+
- [x] 页脚信息(Footer.vue)
29+
- [ ] 文档目录组件(Toc.vue)
30+
- [ ] **自定义主题完善**
31+
- [x] 基础布局(Layout.vue)
32+
- [x] 导航栏(NavBar.vue)
33+
- [x] 页脚(Footer.vue)
34+
- [ ] 侧边栏组件(Sidebar.vue)
35+
- [ ] 文档目录组件(Toc.vue)
36+
- [ ] 深色/浅色模式切换
37+
- [ ] **页面模板**
38+
- [x] 首页模板(home: true)
39+
- [ ] 文档页模板
40+
- [ ] 全宽页面模板(可选)
41+
42+
### 阶段 3: 内容编写 🔴
2943

3044
- [ ] 编写快速开始指南
3145
- [ ] 编写 API 文档
3246
- [ ] 编写标准库文档
3347

34-
### 阶段 4: 高级功能
35-
36-
- [ ] 搜索功能
37-
- [ ] 多语言支持
38-
- [ ] 自动化部署
48+
### 阶段 4: 高级功能 🔴
49+
50+
- [ ] **搜索功能**
51+
- [ ] 配置本地搜索
52+
- [ ] 自定义搜索 UI(可选)
53+
- [ ] **多语言支持 (i18n)**
54+
- [ ] 配置多语言目录结构
55+
- [ ] 配置语言切换器
56+
- [ ] 中文内容 (zh) - 🟢 当前开发
57+
- [ ] 英文内容 (en) - 🔴 预留
58+
- [ ] 日语内容 (ja) - 🔴 预留
59+
- [ ] 法语内容 (fr) - 🔴 预留
60+
- [ ] 俄语内容 (ru) - 🔴 预留
61+
- [ ] **Tailwind CSS v4 集成**
62+
- [ ] 配置 Tailwind CSS v4
63+
- [ ] 设计系统/组件库
64+
- [ ] 响应式布局优化
65+
- [ ] 深色模式支持
66+
- [ ] **自动化部署**
67+
- [x] GitHub Actions 配置
68+
- [x] GitHub Pages 部署
69+
70+
### 阶段 5: Playground 🔴
71+
72+
- [ ] **技术调研**
73+
- [ ] 确认 Goldfish Scheme 构建方式
74+
- [ ] 选择 WASM 编译方案
75+
- [ ] 评估性能需求
76+
- [ ] **WASM 编译**
77+
- [ ] 配置编译环境
78+
- [ ] 编译 Goldfish 为 WASM
79+
- [ ] 导出 JavaScript API
80+
- [ ] **Playground 组件**
81+
- [ ] 代码编辑器(Monaco/CodeMirror)
82+
- [ ] 运行按钮与交互
83+
- [ ] 结果输出显示
84+
- [ ] 错误处理与提示
85+
- [ ] **功能增强**
86+
- [ ] 预设示例代码
87+
- [ ] 代码分享功能
88+
- [ ] 多文件支持(可选)
3989

4090
---
4191

@@ -48,10 +98,34 @@ case-lambda/
4898
├── docs/ # 文档内容
4999
│ ├── .vitepress/ # VitePress 配置
50100
│ │ ├── config.mts # 主配置 (TypeScript)
101+
│ │ ├── config/ # 多语言配置
102+
│ │ │ ├── shared.ts # 共享配置
103+
│ │ │ ├── zh.ts # 中文配置
104+
│ │ │ ├── en.ts # 英文配置(预留)
105+
│ │ │ ├── ja.ts # 日语配置(预留)
106+
│ │ │ ├── fr.ts # 法语配置(预留)
107+
│ │ │ └── ru.ts # 俄语配置(预留)
108+
│ │ ├── theme/ # 自定义主题
109+
│ │ │ ├── Layout.vue
110+
│ │ │ ├── components/
111+
│ │ │ │ ├── NavBar.vue
112+
│ │ │ │ ├── Footer.vue
113+
│ │ │ │ ├── Sidebar.vue # 待实现
114+
│ │ │ │ └── Toc.vue # 待实现
115+
│ │ │ └── style.css # Tailwind CSS 入口
51116
│ │ └── env.d.ts # 类型声明
52-
│ ├── guide/ # 指南文档
53-
│ ├── api/ # API 文档
54-
│ └── examples/ # 示例
117+
│ ├── zh/ # 中文内容(默认)
118+
│ │ ├── index.md
119+
│ │ └── guide/
120+
│ │ └── getting-started.md
121+
│ ├── en/ # 英文内容(预留)
122+
│ │ └── index.md
123+
│ ├── ja/ # 日语内容(预留)
124+
│ │ └── index.md
125+
│ ├── fr/ # 法语内容(预留)
126+
│ │ └── index.md
127+
│ └── ru/ # 俄语内容(预留)
128+
│ └── index.md
55129
├── package.json # 项目配置
56130
├── tsconfig.json # TypeScript 配置
57131
├── eslint.config.js # ESLint 配置
@@ -137,6 +211,7 @@ yarn install
137211
- 自动修复未使用变量(忽略 `_` 前缀)
138212
- Vue 组件命名宽松
139213
- 代码风格统一
214+
- 禁用与 Prettier 冲突的 Vue 格式规则
140215

141216
### Prettier (prettier.config.js)
142217

@@ -145,6 +220,38 @@ yarn install
145220
- 支持 Vue、Markdown、JSON 格式化
146221
- 不同文件类型的覆盖配置
147222

223+
### Tailwind CSS v4 (待配置)
224+
225+
- 使用 CSS-first 配置方式
226+
- 与 VitePress 集成
227+
- 支持深色模式
228+
- 自定义设计系统
229+
230+
---
231+
232+
## 🌐 多语言支持
233+
234+
### 语言优先级
235+
236+
| 优先级 | 语言 | 代码 | 状态 |
237+
| ------ | ---- | ---- | ----------- |
238+
| P0 | 中文 | zh | 🟢 当前开发 |
239+
| P1 | 英文 | en | 🔴 预留 |
240+
| P2 | 日语 | ja | 🔴 预留 |
241+
| P2 | 法语 | fr | 🔴 预留 |
242+
| P2 | 俄语 | ru | 🔴 预留 |
243+
244+
### 多语言目录结构
245+
246+
```
247+
docs/
248+
├── zh/ # 中文内容(默认)
249+
├── en/ # 英文内容(预留)
250+
├── ja/ # 日语内容(预留)
251+
├── fr/ # 法语内容(预留)
252+
└── ru/ # 俄语内容(预留)
253+
```
254+
148255
---
149256

150257
## 📋 依赖管理
@@ -162,6 +269,14 @@ yarn install
162269
}
163270
```
164271

272+
### 计划添加
273+
274+
```json
275+
{
276+
"tailwindcss": "^4.0.0"
277+
}
278+
```
279+
165280
### 版本控制
166281

167282
- `package.json` 使用 `^` 允许小版本更新
@@ -233,12 +348,13 @@ yarn eslint --print-config eslint.config.js
233348

234349
## 📅 开发计划
235350

236-
| 阶段 | 任务 | 状态 |
237-
| ----- | -------- | --------- |
238-
| 阶段1 | 基础配置 | ✅ 完成 |
239-
| 阶段2 | 文档架构 | 🟡 进行中 |
240-
| 阶段3 | 内容编写 | 🔴 待开始 |
241-
| 阶段4 | 高级功能 | 🔴 待开始 |
351+
| 阶段 | 任务 | 状态 |
352+
| ----- | ---------- | --------- |
353+
| 阶段1 | 基础配置 | ✅ 完成 |
354+
| 阶段2 | 文档架构 | 🟡 进行中 |
355+
| 阶段3 | 内容编写 | 🔴 待开始 |
356+
| 阶段4 | 高级功能 | 🔴 待开始 |
357+
| 阶段5 | Playground | 🔴 待调研 |
242358

243359
---
244360

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
- AI 编程友好
1010
- 小巧且快速
1111

12-
<img src="GoldfishScheme-logo.png" alt="示例图片" style="width: 360pt;">
12+
<img src="./docs/public/GoldfishScheme-logo.png" alt="示例图片" style="width: 360pt;">
1313

1414
## 以简为美
1515

README_ZH.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
- AI 编程友好
1010
- 小巧且快速
1111

12-
<img src="GoldfishScheme-logo.png" alt="示例图片" style="width: 360pt;">
12+
<img src="./docs/public/GoldfishScheme-logo.png" alt="示例图片" style="width: 360pt;">
1313

1414
## 以简为美
1515

docs/.vitepress/config.mts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ import { defineConfig } from 'vitepress'
44
export default defineConfig({
55
title: 'Goldfish Scheme',
66
description: '让 Scheme 和 Python 一样易用且实用',
7-
7+
88
// 构建输出目录 (docs/dist/)
99
outDir: './dist',
10-
10+
1111
// 基础配置 (GitHub Pages 项目站点需要设置子路径)
1212
base: '/case-lambda/',
13-
13+
1414
// 清理 URL
1515
cleanUrls: true,
1616
})

docs/api/index.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# API 文档
2+
3+
Goldfish Scheme 提供了丰富的 API,分为三个主要部分:
4+
5+
## Liii 库
6+
7+
Goldfish Scheme 的扩展库,提供类似 Python 的实用功能。
8+
9+
- [基础库](./liii/) - `(liii base)`, `(liii error)`, `(liii check)`
10+
- [数据结构](./liii/) - `(liii list)`, `(liii vector)`, `(liii string)`,
11+
`(liii hash-table)`
12+
- [系统与 IO](./liii/) - `(liii sys)`, `(liii os)`, `(liii path)`
13+
- [网络与数据](./liii/) - `(liii http)`, `(liii json)`, `(liii uuid)`
14+
- [函数式编程](./liii/) - `(liii case)`, `(liii option)`, `(liii either)`,
15+
`(liii range)`
16+
17+
## SRFI
18+
19+
Scheme Request for Implementation 标准实现。
20+
21+
- [SRFI-1](./srfi/) - List 库
22+
- [SRFI-8](./srfi/) - Receive
23+
- [SRFI-9](./srfi/) - Records
24+
- [SRFI-13](./srfi/) - String 库
25+
- [SRFI-16](./srfi/) - Case-lambda
26+
- [更多...](./srfi/)
27+
28+
## R7RS 标准
29+
30+
R7RS-small 标准库。
31+
32+
- [(scheme base)](./scheme/) - 基础库
33+
- [(scheme case-lambda)](./scheme/) - Case-lambda
34+
- [(scheme char)](./scheme/) - 字符库
35+
- [(scheme file)](./scheme/) - 文件操作
36+
- [(scheme time)](./scheme/) - 时间库

docs/api/liii/base.md

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
# (liii base)
2+
3+
基础例程库,扩展了 R7RS `(scheme base)`
4+
5+
## 导入
6+
7+
```scheme
8+
(import (liii base))
9+
```
10+
11+
## 函数
12+
13+
### 比较操作
14+
15+
#### `==`
16+
17+
数值相等比较。
18+
19+
```scheme
20+
(== 1 1) ; => #t
21+
(== 1 1.0) ; => #t
22+
```
23+
24+
#### `!=`
25+
26+
数值不等比较。
27+
28+
```scheme
29+
(!= 1 2) ; => #t
30+
(!= 1 1) ; => #f
31+
```
32+
33+
### 函数操作
34+
35+
#### `compose`
36+
37+
函数组合。
38+
39+
```scheme
40+
((compose square add1) 5) ; => 36
41+
```
42+
43+
#### `identity`
44+
45+
恒等函数。
46+
47+
```scheme
48+
(identity 42) ; => 42
49+
```
50+
51+
#### `any?`
52+
53+
总是返回 `#t` 的谓词。
54+
55+
```scheme
56+
(any? 'foo) ; => #t
57+
(any? 123) ; => #t
58+
```
59+
60+
### 列表操作
61+
62+
#### `loose-car`
63+
64+
安全的 `car`,空列表返回空列表。
65+
66+
```scheme
67+
(loose-car '(1 2 3)) ; => 1
68+
(loose-car '()) ; => ()
69+
```
70+
71+
#### `loose-cdr`
72+
73+
安全的 `cdr`,空列表返回空列表。
74+
75+
```scheme
76+
(loose-cdr '(1 2 3)) ; => (2 3)
77+
(loose-cdr '()) ; ()
78+
```
79+
80+
###
81+
82+
#### `typed-lambda`
83+
84+
带类型检查的 lambda。
85+
86+
```scheme
87+
((typed-lambda ((n integer?))
88+
(* n n)) 5) ; => 25
89+
90+
((typed-lambda ((n integer?))
91+
(* n n)) "foo") ; => error: type-error
92+
```
93+
94+
## R7RS 基础
95+
96+
同时导出 R7RS `(scheme base)` 的所有绑定:
97+
98+
- 定义: `define`, `lambda`, `case`, `cond`, `if`
99+
- 数值: `+`, `-`, `*`, `/`, `abs`, `square`, `max`, `min`
100+
- 列表: `cons`, `car`, `cdr`, `list`, `map`, `append`
101+
- 等等...

0 commit comments

Comments
 (0)