claude-code-workflow 6.3.24 → 6.3.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/commands/issue/discover-by-prompt.md +764 -0
- package/.claude/skills/text-formatter/SKILL.md +196 -0
- package/.claude/skills/text-formatter/phases/01-input-collection.md +111 -0
- package/.claude/skills/text-formatter/phases/02-content-analysis.md +248 -0
- package/.claude/skills/text-formatter/phases/03-format-transform.md +245 -0
- package/.claude/skills/text-formatter/phases/04-output-preview.md +183 -0
- package/.claude/skills/text-formatter/specs/callout-types.md +293 -0
- package/.claude/skills/text-formatter/specs/element-mapping.md +226 -0
- package/.claude/skills/text-formatter/specs/format-rules.md +273 -0
- package/.claude/skills/text-formatter/templates/bbcode-template.md +350 -0
- package/ccw/dist/core/routes/help-routes.d.ts.map +1 -1
- package/ccw/dist/core/routes/help-routes.js +43 -7
- package/ccw/dist/core/routes/help-routes.js.map +1 -1
- package/ccw/dist/core/routes/litellm-api-routes.d.ts.map +1 -1
- package/ccw/dist/core/routes/litellm-api-routes.js +31 -5
- package/ccw/dist/core/routes/litellm-api-routes.js.map +1 -1
- package/ccw/dist/core/routes/memory-routes.d.ts.map +1 -1
- package/ccw/dist/core/routes/memory-routes.js +73 -0
- package/ccw/dist/core/routes/memory-routes.js.map +1 -1
- package/ccw/dist/core/routes/status-routes.d.ts.map +1 -1
- package/ccw/dist/core/routes/status-routes.js +36 -4
- package/ccw/dist/core/routes/status-routes.js.map +1 -1
- package/ccw/dist/core/server.d.ts.map +1 -1
- package/ccw/dist/core/server.js +58 -0
- package/ccw/dist/core/server.js.map +1 -1
- package/ccw/dist/core/services/api-key-tester.d.ts.map +1 -1
- package/ccw/dist/core/services/api-key-tester.js +8 -3
- package/ccw/dist/core/services/api-key-tester.js.map +1 -1
- package/ccw/dist/tools/claude-cli-tools.d.ts +7 -0
- package/ccw/dist/tools/claude-cli-tools.d.ts.map +1 -1
- package/ccw/dist/tools/claude-cli-tools.js +11 -1
- package/ccw/dist/tools/claude-cli-tools.js.map +1 -1
- package/ccw/dist/tools/cli-executor-core.d.ts +11 -0
- package/ccw/dist/tools/cli-executor-core.d.ts.map +1 -1
- package/ccw/dist/tools/cli-executor-core.js +89 -2
- package/ccw/dist/tools/cli-executor-core.js.map +1 -1
- package/ccw/dist/tools/codex-lens.d.ts +2 -1
- package/ccw/dist/tools/codex-lens.d.ts.map +1 -1
- package/ccw/dist/tools/codex-lens.js +51 -8
- package/ccw/dist/tools/codex-lens.js.map +1 -1
- package/ccw/dist/tools/index.d.ts.map +1 -1
- package/ccw/dist/tools/index.js +2 -0
- package/ccw/dist/tools/index.js.map +1 -1
- package/ccw/dist/tools/litellm-client.d.ts +6 -0
- package/ccw/dist/tools/litellm-client.d.ts.map +1 -1
- package/ccw/dist/tools/litellm-client.js +22 -1
- package/ccw/dist/tools/litellm-client.js.map +1 -1
- package/ccw/dist/tools/litellm-executor.js +2 -2
- package/ccw/dist/tools/litellm-executor.js.map +1 -1
- package/ccw/dist/tools/memory-update-queue.d.ts +172 -0
- package/ccw/dist/tools/memory-update-queue.d.ts.map +1 -0
- package/ccw/dist/tools/memory-update-queue.js +431 -0
- package/ccw/dist/tools/memory-update-queue.js.map +1 -0
- package/ccw/src/core/routes/help-routes.ts +46 -7
- package/ccw/src/core/routes/litellm-api-routes.ts +35 -4
- package/ccw/src/core/routes/memory-routes.ts +84 -0
- package/ccw/src/core/routes/status-routes.ts +39 -4
- package/ccw/src/core/server.ts +62 -0
- package/ccw/src/core/services/api-key-tester.ts +9 -3
- package/ccw/src/templates/dashboard-css/21-cli-toolmgmt.css +45 -0
- package/ccw/src/templates/dashboard-js/components/cli-status.js +36 -5
- package/ccw/src/templates/dashboard-js/components/hook-manager.js +42 -81
- package/ccw/src/templates/dashboard-js/components/mcp-manager.js +170 -28
- package/ccw/src/templates/dashboard-js/components/notifications.js +14 -4
- package/ccw/src/templates/dashboard-js/i18n.js +26 -0
- package/ccw/src/templates/dashboard-js/views/cli-manager.js +72 -2
- package/ccw/src/templates/dashboard-js/views/codexlens-manager.js +11 -1
- package/ccw/src/tools/claude-cli-tools.ts +17 -1
- package/ccw/src/tools/cli-executor-core.ts +103 -2
- package/ccw/src/tools/codex-lens.ts +63 -8
- package/ccw/src/tools/index.ts +2 -0
- package/ccw/src/tools/litellm-client.ts +25 -3
- package/ccw/src/tools/litellm-executor.ts +2 -2
- package/ccw/src/tools/memory-update-queue.js +499 -0
- package/package.json +91 -91
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
# Element Mapping
|
|
2
|
+
|
|
3
|
+
内容元素到 BBCode + Markdown 混合格式的映射表。
|
|
4
|
+
|
|
5
|
+
## When to Use
|
|
6
|
+
|
|
7
|
+
| Phase | Usage | Section |
|
|
8
|
+
|-------|-------|---------|
|
|
9
|
+
| Phase 2 | 元素识别 | Detection patterns |
|
|
10
|
+
| Phase 3 | 格式转换 | Conversion rules |
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Element Detection Patterns
|
|
15
|
+
|
|
16
|
+
### 标题检测
|
|
17
|
+
|
|
18
|
+
| 类型 | Pattern | 示例 |
|
|
19
|
+
|------|---------|------|
|
|
20
|
+
| ATX 标题 | `/^#{1,6}\s+(.+)$/` | `# Title`, `## Subtitle` |
|
|
21
|
+
| Setext H1 | `/^(.+)\n={3,}$/` | `Title\n====` |
|
|
22
|
+
| Setext H2 | `/^(.+)\n-{3,}$/` | `Subtitle\n----` |
|
|
23
|
+
|
|
24
|
+
### 列表检测
|
|
25
|
+
|
|
26
|
+
| 类型 | Pattern | 示例 |
|
|
27
|
+
|------|---------|------|
|
|
28
|
+
| 无序列表 | `/^[\s]*[-*+]\s+(.+)$/` | `- item`, `* item` |
|
|
29
|
+
| 有序列表 | `/^[\s]*\d+\.\s+(.+)$/` | `1. item`, `2. item` |
|
|
30
|
+
| 任务列表 | `/^[\s]*[-*]\s+\[([ x])\]\s+(.+)$/` | `- [ ] todo`, `- [x] done` |
|
|
31
|
+
|
|
32
|
+
### Callout 检测
|
|
33
|
+
|
|
34
|
+
| 类型 | Pattern | 示例 |
|
|
35
|
+
|------|---------|------|
|
|
36
|
+
| Callout 开始 | `/^>\s*\[!(\w+)\](?:\s+(.+))?$/` | `> [!NOTE] 标题` |
|
|
37
|
+
| Callout 内容 | `/^>\s*(.*)$/` | `> 内容行` |
|
|
38
|
+
| 可折叠展开 | `/^>\s*\[!(\w+)\]\+/` | `> [!NOTE]+` |
|
|
39
|
+
| 可折叠收起 | `/^>\s*\[!(\w+)\]-/` | `> [!NOTE]-` |
|
|
40
|
+
|
|
41
|
+
### 代码检测
|
|
42
|
+
|
|
43
|
+
| 类型 | Pattern | 示例 |
|
|
44
|
+
|------|---------|------|
|
|
45
|
+
| 代码块开始 | `/^```(\w*)$/` | ` ```js ` |
|
|
46
|
+
| 代码块结束 | `/^```$/` | ` ``` ` |
|
|
47
|
+
| 行内代码 | `/`([^`]+)`/` | `` `code` `` |
|
|
48
|
+
|
|
49
|
+
### 其他元素
|
|
50
|
+
|
|
51
|
+
| 类型 | Pattern | 示例 |
|
|
52
|
+
|------|---------|------|
|
|
53
|
+
| 链接 | `/\[([^\]]+)\]\(([^)]+)\)/` | `[text](url)` |
|
|
54
|
+
| 图片 | `/!\[([^\]]*)\]\(([^)]+)\)/` | `` |
|
|
55
|
+
| 普通引用 | `/^>\s+(.+)$/` | `> quote` |
|
|
56
|
+
| 分隔线 | `/^[-*_]{3,}$/` | `---`, `***` |
|
|
57
|
+
| 高亮 | `/==(.+?)==/` | `==highlight==` |
|
|
58
|
+
| 粗体 | `/\*\*(.+?)\*\*/` | `**bold**` |
|
|
59
|
+
| 斜体 | `/\*(.+?)\*/` | `*italic*` |
|
|
60
|
+
| 删除线 | `/~~(.+?)~~/` | `~~strike~~` |
|
|
61
|
+
|
|
62
|
+
### HTML 元素检测
|
|
63
|
+
|
|
64
|
+
| 类型 | Pattern | 示例 |
|
|
65
|
+
|------|---------|------|
|
|
66
|
+
| 高亮 | `/<mark>(.+?)<\/mark>/` | `<mark>高亮</mark>` |
|
|
67
|
+
| 折叠块 | `/<details>\s*<summary>(.+?)<\/summary>([\s\S]*?)<\/details>/` | `<details><summary>标题</summary>内容</details>` |
|
|
68
|
+
| 下划线 | `/<u>(.+?)<\/u>/` | `<u>下划线</u>` |
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Element Conversion Matrix
|
|
73
|
+
|
|
74
|
+
### 标题映射 (Pixel-Based)
|
|
75
|
+
|
|
76
|
+
| Element | Markdown | BBCode Output |
|
|
77
|
+
|---------|----------|---------------|
|
|
78
|
+
| **H1** | `# text` | `[size=150][color=#2196F3][b]text[/b][/color][/size]` |
|
|
79
|
+
| **H2** | `## text` | `[size=120][color=#2196F3][b]text[/b][/color][/size]` |
|
|
80
|
+
| **H3** | `### text` | `[size=100][color=#333][b]text[/b][/color][/size]` |
|
|
81
|
+
| **H4** | `#### text` | `[b]text[/b]` |
|
|
82
|
+
| **H5** | `##### text` | `[b]text[/b]` |
|
|
83
|
+
| **H6** | `###### text` | `[b]text[/b]` |
|
|
84
|
+
|
|
85
|
+
### 文本样式映射
|
|
86
|
+
|
|
87
|
+
| Element | Markdown/HTML | BBCode |
|
|
88
|
+
|---------|---------------|--------|
|
|
89
|
+
| **Bold** | `**text**` 或 `__text__` | `[b]text[/b]` |
|
|
90
|
+
| **Italic** | `*text*` 或 `_text_` | `[i]text[/i]` |
|
|
91
|
+
| **Bold+Italic** | `***text***` | `[b][i]text[/i][/b]` |
|
|
92
|
+
| **Strike** | `~~text~~` | `[s]text[/s]` |
|
|
93
|
+
| **Underline** | `<u>text</u>` | `[u]text[/u]` |
|
|
94
|
+
| **Highlight** | `==text==` 或 `<mark>text</mark>` | `[color=yellow]text[/color]` |
|
|
95
|
+
| **Code (inline)** | `` `text` `` | 保持原样 |
|
|
96
|
+
|
|
97
|
+
### HTML 转 BBCode 映射
|
|
98
|
+
|
|
99
|
+
| HTML | BBCode |
|
|
100
|
+
|------|--------|
|
|
101
|
+
| `<mark>text</mark>` | `[color=yellow]text[/color]` |
|
|
102
|
+
| `<u>text</u>` | `[u]text[/u]` |
|
|
103
|
+
| `<details><summary>标题</summary>内容</details>` | `[spoiler=标题]内容[/spoiler]` |
|
|
104
|
+
|
|
105
|
+
### 块级元素映射
|
|
106
|
+
|
|
107
|
+
| Element | Markdown | BBCode |
|
|
108
|
+
|---------|----------|--------|
|
|
109
|
+
| **Code Block** | ` ```lang\ncode\n``` ` | `[code]code[/code]` |
|
|
110
|
+
| **Quote** | `> text` | `[quote]text[/quote]` |
|
|
111
|
+
| **HR** | `---` | `---` (保持 Markdown) |
|
|
112
|
+
| **List Item** | `- text` | `• text` |
|
|
113
|
+
| **Paragraph** | `text\n\ntext` | `text\n\ntext` |
|
|
114
|
+
|
|
115
|
+
### 链接和媒体映射
|
|
116
|
+
|
|
117
|
+
| Element | Markdown | BBCode |
|
|
118
|
+
|---------|----------|--------|
|
|
119
|
+
| **Link** | `[text](url)` | `[url=url]text[/url]` |
|
|
120
|
+
| **Image** | `` | `[img]url[/img]` |
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
## Callout Mapping
|
|
125
|
+
|
|
126
|
+
### 类型到样式映射
|
|
127
|
+
|
|
128
|
+
| Callout Type | Color | Icon | Label |
|
|
129
|
+
|--------------|-------|------|-------|
|
|
130
|
+
| note | #2196F3 | 📝 | 注意 |
|
|
131
|
+
| info | #2196F3 | ℹ️ | 信息 |
|
|
132
|
+
| tip | #4CAF50 | 💡 | 提示 |
|
|
133
|
+
| hint | #4CAF50 | 💡 | 提示 |
|
|
134
|
+
| success | #4CAF50 | ✅ | 成功 |
|
|
135
|
+
| check | #4CAF50 | ✅ | 完成 |
|
|
136
|
+
| done | #4CAF50 | ✅ | 完成 |
|
|
137
|
+
| warning | #FF9800 | ⚠️ | 警告 |
|
|
138
|
+
| caution | #FF9800 | ⚠️ | 注意 |
|
|
139
|
+
| attention | #FF9800 | ⚠️ | 注意 |
|
|
140
|
+
| danger | #F44336 | ❌ | 危险 |
|
|
141
|
+
| error | #F44336 | ❌ | 错误 |
|
|
142
|
+
| bug | #F44336 | 🐛 | Bug |
|
|
143
|
+
| example | #9C27B0 | 📋 | 示例 |
|
|
144
|
+
| question | #FF9800 | ❓ | 问题 |
|
|
145
|
+
| help | #FF9800 | ❓ | 帮助 |
|
|
146
|
+
| faq | #FF9800 | ❓ | FAQ |
|
|
147
|
+
| quote | gray | 💬 | 引用 |
|
|
148
|
+
| cite | gray | 💬 | 引用 |
|
|
149
|
+
| abstract | #2196F3 | 📄 | 摘要 |
|
|
150
|
+
| summary | #2196F3 | 📄 | 摘要 |
|
|
151
|
+
| tldr | #2196F3 | 📄 | 摘要 |
|
|
152
|
+
| todo | #FF9800 | 📋 | 待办 |
|
|
153
|
+
| important | #F44336 | ⭐ | 重要 |
|
|
154
|
+
|
|
155
|
+
### Callout 输出模板
|
|
156
|
+
|
|
157
|
+
```bbcode
|
|
158
|
+
[quote]
|
|
159
|
+
[size=100][color={color}][b]{icon} {title}[/b][/color][/size]
|
|
160
|
+
|
|
161
|
+
{content}
|
|
162
|
+
[/quote]
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
---
|
|
166
|
+
|
|
167
|
+
## Unsupported Elements
|
|
168
|
+
|
|
169
|
+
### 不支持转换的元素
|
|
170
|
+
|
|
171
|
+
| 元素 | 原因 | 降级方案 |
|
|
172
|
+
|------|------|----------|
|
|
173
|
+
| 表格 | BBCode 表格支持有限 | 转为代码块或列表 |
|
|
174
|
+
| 脚注 | 不支持 | 转为括号注释 `(注: ...)` |
|
|
175
|
+
| 数学公式 | 不支持 | 保留原始文本 |
|
|
176
|
+
| 嵌入内容 | 不支持 | 转为链接 |
|
|
177
|
+
| 任务列表 | 复选框不支持 | 转为普通列表 `☐`/`☑` |
|
|
178
|
+
|
|
179
|
+
### 降级示例
|
|
180
|
+
|
|
181
|
+
**表格**:
|
|
182
|
+
```
|
|
183
|
+
| A | B |
|
|
184
|
+
|---|---|
|
|
185
|
+
| 1 | 2 |
|
|
186
|
+
|
|
187
|
+
→ 降级为:
|
|
188
|
+
|
|
189
|
+
A: 1
|
|
190
|
+
B: 2
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
**脚注**:
|
|
194
|
+
```
|
|
195
|
+
文本[^1]
|
|
196
|
+
|
|
197
|
+
[^1]: 脚注内容
|
|
198
|
+
|
|
199
|
+
→ 降级为:
|
|
200
|
+
|
|
201
|
+
文本 (注: 脚注内容)
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
**任务列表**:
|
|
205
|
+
```
|
|
206
|
+
- [ ] 待办
|
|
207
|
+
- [x] 已完成
|
|
208
|
+
|
|
209
|
+
→ 降级为:
|
|
210
|
+
|
|
211
|
+
☐ 待办
|
|
212
|
+
☑ 已完成
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
## Validation Rules
|
|
218
|
+
|
|
219
|
+
### 转换验证
|
|
220
|
+
|
|
221
|
+
- [ ] 所有 H1-H3 使用像素值 size (150/120/100)
|
|
222
|
+
- [ ] 未使用 `[align]` 标签
|
|
223
|
+
- [ ] 未使用 `[hr]` 标签
|
|
224
|
+
- [ ] 分隔线保持 `---`
|
|
225
|
+
- [ ] Callout 正确识别并转换
|
|
226
|
+
- [ ] 颜色值使用 hex 格式
|
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
# Format Conversion Rules
|
|
2
|
+
|
|
3
|
+
BBCode + Markdown 混合格式转换规则(论坛优化)。
|
|
4
|
+
|
|
5
|
+
## When to Use
|
|
6
|
+
|
|
7
|
+
| Phase | Usage | Section |
|
|
8
|
+
|-------|-------|---------|
|
|
9
|
+
| Phase 3 | 格式转换 | All sections |
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Core Principles
|
|
14
|
+
|
|
15
|
+
### 1. Pixel-Based Sizing
|
|
16
|
+
|
|
17
|
+
**重要**: 使用像素值而非 1-7 级别
|
|
18
|
+
|
|
19
|
+
| 元素 | Size (px) | 说明 |
|
|
20
|
+
|------|-----------|------|
|
|
21
|
+
| 主标题 (H1) | 150 | 文档标题 |
|
|
22
|
+
| 章节标题 (H2) | 120 | 主要章节 |
|
|
23
|
+
| 子标题 (H3) | 100 | 子章节 |
|
|
24
|
+
| 正文 | (默认) | 不指定 size |
|
|
25
|
+
| 备注/灰色 | 80 | 脚注、元数据 |
|
|
26
|
+
|
|
27
|
+
### 2. Supported Tags Only
|
|
28
|
+
|
|
29
|
+
**支持的 BBCode 标签**:
|
|
30
|
+
- `[size=N]` - 字号(像素值)
|
|
31
|
+
- `[color=X]` - 颜色(hex 或名称,如 `[color=blue]`、`[color=#2196F3]`)
|
|
32
|
+
- `[b]`, `[i]`, `[s]`, `[u]` - 粗体、斜体、删除线、下划线
|
|
33
|
+
- `[quote]` - 引用块
|
|
34
|
+
- `[code]` - 代码块
|
|
35
|
+
- `[url]`, `[img]` - 链接、图片
|
|
36
|
+
- `[list]`, `[*]` - 列表
|
|
37
|
+
- `[spoiler]` 或 `[spoiler=标题]` - 折叠/隐藏内容
|
|
38
|
+
|
|
39
|
+
**禁止使用的标签**:
|
|
40
|
+
- `[align]` - 不渲染,显示为文本
|
|
41
|
+
- `[hr]` - 不渲染,使用 Markdown `---`
|
|
42
|
+
- `[table]` - 支持有限,避免使用
|
|
43
|
+
|
|
44
|
+
**HTML 标签转换** (输入时支持,转换为 BBCode):
|
|
45
|
+
- `<mark>text</mark>` → `[color=yellow]text[/color]`
|
|
46
|
+
- `<details><summary>标题</summary>内容</details>` → `[spoiler=标题]内容[/spoiler]`
|
|
47
|
+
- 其他 HTML 标签 (`<div>`, `<span>`) - 删除
|
|
48
|
+
|
|
49
|
+
### 3. Markdown as Separator
|
|
50
|
+
|
|
51
|
+
分隔线使用 Markdown 语法:`---`
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## Element Conversion Rules
|
|
56
|
+
|
|
57
|
+
### 标题转换
|
|
58
|
+
|
|
59
|
+
| Markdown | BBCode Output |
|
|
60
|
+
|----------|---------------|
|
|
61
|
+
| `# H1` | `[size=150][color=#2196F3][b]H1[/b][/color][/size]` |
|
|
62
|
+
| `## H2` | `[size=120][color=#2196F3][b]H2[/b][/color][/size]` |
|
|
63
|
+
| `### H3` | `[size=100][color=#333][b]H3[/b][/color][/size]` |
|
|
64
|
+
| `#### H4+` | `[b]H4[/b]` (不加 size) |
|
|
65
|
+
|
|
66
|
+
### 文本样式
|
|
67
|
+
|
|
68
|
+
| Markdown/HTML | BBCode |
|
|
69
|
+
|---------------|--------|
|
|
70
|
+
| `**bold**` 或 `__bold__` | `[b]bold[/b]` |
|
|
71
|
+
| `*italic*` 或 `_italic_` | `[i]italic[/i]` |
|
|
72
|
+
| `***both***` | `[b][i]both[/i][/b]` |
|
|
73
|
+
| `~~strike~~` | `[s]strike[/s]` |
|
|
74
|
+
| `==highlight==` 或 `<mark>text</mark>` | `[color=yellow]highlight[/color]` |
|
|
75
|
+
| (无 MD 语法) | `[u]underline[/u]` |
|
|
76
|
+
|
|
77
|
+
### 折叠内容
|
|
78
|
+
|
|
79
|
+
| HTML | BBCode |
|
|
80
|
+
|------|--------|
|
|
81
|
+
| `<details><summary>标题</summary>内容</details>` | `[spoiler=标题]内容[/spoiler]` |
|
|
82
|
+
| (无 HTML) | `[spoiler]隐藏内容[/spoiler]` |
|
|
83
|
+
|
|
84
|
+
### 代码
|
|
85
|
+
|
|
86
|
+
| Markdown | BBCode |
|
|
87
|
+
|----------|--------|
|
|
88
|
+
| `` `inline` `` | 保持原样或 `[color=#9C27B0]inline[/color]` |
|
|
89
|
+
| ` ```code``` ` | `[code]code[/code]` |
|
|
90
|
+
|
|
91
|
+
### 链接和图片
|
|
92
|
+
|
|
93
|
+
| Markdown | BBCode |
|
|
94
|
+
|----------|--------|
|
|
95
|
+
| `[text](url)` | `[url=url]text[/url]` |
|
|
96
|
+
| `` | `[img]url[/img]` |
|
|
97
|
+
|
|
98
|
+
### 列表
|
|
99
|
+
|
|
100
|
+
```
|
|
101
|
+
Markdown:
|
|
102
|
+
- item 1
|
|
103
|
+
- item 2
|
|
104
|
+
- nested
|
|
105
|
+
|
|
106
|
+
BBCode:
|
|
107
|
+
• item 1
|
|
108
|
+
• item 2
|
|
109
|
+
• nested
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
注意:使用 `•` 符号而非 `[list][*]`,因为部分论坛渲染有问题。
|
|
113
|
+
|
|
114
|
+
### 引用
|
|
115
|
+
|
|
116
|
+
```
|
|
117
|
+
Markdown:
|
|
118
|
+
> quote text
|
|
119
|
+
|
|
120
|
+
BBCode:
|
|
121
|
+
[quote]
|
|
122
|
+
quote text
|
|
123
|
+
[/quote]
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Callout (标注) 转换
|
|
129
|
+
|
|
130
|
+
### Obsidian Callout 语法
|
|
131
|
+
|
|
132
|
+
```markdown
|
|
133
|
+
> [!TYPE] 可选标题
|
|
134
|
+
> 内容行 1
|
|
135
|
+
> 内容行 2
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### 支持的 Callout 类型
|
|
139
|
+
|
|
140
|
+
| Type | Color | Icon | 中文标签 |
|
|
141
|
+
|------|-------|------|----------|
|
|
142
|
+
| note, info | #2196F3 | 📝 | 注意 / 信息 |
|
|
143
|
+
| tip, hint | #4CAF50 | 💡 | 提示 |
|
|
144
|
+
| success, check, done | #4CAF50 | ✅ | 成功 |
|
|
145
|
+
| warning, caution, attention | #FF9800 | ⚠️ | 警告 |
|
|
146
|
+
| danger, error, bug | #F44336 | ❌ | 危险 / 错误 |
|
|
147
|
+
| example | #9C27B0 | 📋 | 示例 |
|
|
148
|
+
| question, help, faq | #FF9800 | ❓ | 问题 |
|
|
149
|
+
| quote, cite | gray | 💬 | 引用 |
|
|
150
|
+
| abstract, summary, tldr | #2196F3 | 📄 | 摘要 |
|
|
151
|
+
|
|
152
|
+
### Callout 转换模板
|
|
153
|
+
|
|
154
|
+
```bbcode
|
|
155
|
+
[quote]
|
|
156
|
+
[size=100][color={color}][b]{icon} {title}[/b][/color][/size]
|
|
157
|
+
|
|
158
|
+
{content}
|
|
159
|
+
[/quote]
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
**示例**:
|
|
163
|
+
|
|
164
|
+
```markdown
|
|
165
|
+
> [!WARNING] 注意事项
|
|
166
|
+
> 这是警告内容
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
转换为:
|
|
170
|
+
|
|
171
|
+
```bbcode
|
|
172
|
+
[quote]
|
|
173
|
+
[size=100][color=#FF9800][b]⚠️ 注意事项[/b][/color][/size]
|
|
174
|
+
|
|
175
|
+
这是警告内容
|
|
176
|
+
[/quote]
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
### 可折叠 Callout
|
|
180
|
+
|
|
181
|
+
Obsidian 支持 `> [!NOTE]+` (展开) 和 `> [!NOTE]-` (折叠)。
|
|
182
|
+
|
|
183
|
+
由于 BBCode 不支持折叠,统一转换为普通 quote。
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## Color Palette
|
|
188
|
+
|
|
189
|
+
### 语义颜色
|
|
190
|
+
|
|
191
|
+
| 语义 | Hex | 使用场景 |
|
|
192
|
+
|------|-----|----------|
|
|
193
|
+
| Primary | #2196F3 | 标题、链接、信息 |
|
|
194
|
+
| Success | #4CAF50 | 成功、提示、特性 |
|
|
195
|
+
| Warning | #FF9800 | 警告、注意 |
|
|
196
|
+
| Error | #F44336 | 错误、危险 |
|
|
197
|
+
| Purple | #9C27B0 | 示例、代码 |
|
|
198
|
+
| Gray | gray | 备注、元数据 |
|
|
199
|
+
| Dark | #333 | 子标题 |
|
|
200
|
+
|
|
201
|
+
### 颜色使用规则
|
|
202
|
+
|
|
203
|
+
1. **标题颜色**: H1/H2 使用 #2196F3,H3 使用 #333
|
|
204
|
+
2. **Callout 颜色**: 根据类型使用语义颜色
|
|
205
|
+
3. **备注颜色**: 使用 gray
|
|
206
|
+
4. **强调颜色**: 根据语义选择(成功用绿色,警告用橙色)
|
|
207
|
+
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
## Spacing Rules
|
|
211
|
+
|
|
212
|
+
### 空行控制
|
|
213
|
+
|
|
214
|
+
| 元素 | 前空行 | 后空行 |
|
|
215
|
+
|------|--------|--------|
|
|
216
|
+
| 标题 | 1 | 1 |
|
|
217
|
+
| 段落 | 0 | 1 |
|
|
218
|
+
| 列表 | 0 | 1 |
|
|
219
|
+
| 代码块 | 1 | 1 |
|
|
220
|
+
| Callout | 1 | 1 |
|
|
221
|
+
| 分隔线 `---` | 1 | 1 |
|
|
222
|
+
|
|
223
|
+
### 示例输出结构
|
|
224
|
+
|
|
225
|
+
```bbcode
|
|
226
|
+
[size=150][color=#2196F3][b]文档标题[/b][/color][/size]
|
|
227
|
+
|
|
228
|
+
[size=80][color=gray]作者 | 日期[/color][/size]
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
[size=120][color=#2196F3][b]第一章节[/b][/color][/size]
|
|
233
|
+
|
|
234
|
+
正文内容...
|
|
235
|
+
|
|
236
|
+
[quote]
|
|
237
|
+
[size=100][color=#4CAF50][b]💡 提示[/b][/color][/size]
|
|
238
|
+
|
|
239
|
+
提示内容
|
|
240
|
+
[/quote]
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
[size=120][color=#2196F3][b]第二章节[/b][/color][/size]
|
|
245
|
+
|
|
246
|
+
更多内容...
|
|
247
|
+
|
|
248
|
+
---
|
|
249
|
+
|
|
250
|
+
[size=80][color=gray]— 全文完 —[/color][/size]
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
---
|
|
254
|
+
|
|
255
|
+
## Quality Checklist
|
|
256
|
+
|
|
257
|
+
### 转换完整性
|
|
258
|
+
|
|
259
|
+
- [ ] 所有标题使用像素值 size
|
|
260
|
+
- [ ] 未使用 `[align]` 或 `[hr]`
|
|
261
|
+
- [ ] 分隔线使用 `---`
|
|
262
|
+
- [ ] Callout 正确转换为 quote
|
|
263
|
+
- [ ] 颜色符合语义规范
|
|
264
|
+
- [ ] 空行控制正确
|
|
265
|
+
|
|
266
|
+
### 常见错误
|
|
267
|
+
|
|
268
|
+
| 错误 | 正确做法 |
|
|
269
|
+
|------|----------|
|
|
270
|
+
| `[size=5]` | `[size=120]` |
|
|
271
|
+
| `[align=center]` | 删除,默认左对齐 |
|
|
272
|
+
| `[hr]` | 使用 `---` |
|
|
273
|
+
| `<div class="...">` | 删除 HTML 标签 |
|