@jet-w/astro-blog 0.2.0 → 0.2.1
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/dist/{chunk-HVQKQN6B.js → chunk-6D3XRDNY.js} +1 -1
- package/dist/{chunk-ATRISB7B.js → chunk-A2E2VSAQ.js} +43 -3
- package/dist/{chunk-AZHCNNAC.js → chunk-TJTPX2WP.js} +1 -1
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.js +2 -2
- package/dist/{i18n-5H4W145i.d.ts → i18n-PgMCFBw0.d.ts} +20 -0
- package/dist/index.d.ts +21 -3
- package/dist/index.js +20 -3
- package/dist/integration.d.ts +1 -1
- package/dist/integration.js +2 -2
- package/package.json +1 -1
- package/src/components/blog/FloatingToc.vue +11 -3
- package/src/components/blog/Hero.astro +17 -2
- package/src/components/blog/NavigationTabs.vue +46 -15
- package/src/components/blog/PostCard.astro +28 -10
- package/src/components/blog/RelatedPosts.astro +23 -7
- package/src/components/blog/TableOfContents.astro +10 -4
- package/src/components/blog/TagCloud.astro +4 -3
- package/src/components/home/FeaturedPostsSection.astro +22 -6
- package/src/components/home/QuickNavSection.astro +33 -4
- package/src/components/home/RecentPostsSection.astro +22 -6
- package/src/components/home/StatsSection.astro +24 -6
- package/src/components/layout/Header.astro +9 -5
- package/src/components/layout/Sidebar.astro +14 -11
- package/src/components/ui/SearchBox.vue +13 -5
- package/src/components/ui/SearchInterface.vue +49 -25
- package/src/pages/archives/[year]/[month].astro +36 -17
- package/src/pages/archives/index.astro +36 -20
- package/src/pages/categories/[category].astro +33 -16
- package/src/pages/categories/index.astro +37 -14
- package/src/pages/posts/[...slug].astro +125 -18
- package/src/pages/posts/index.astro +59 -37
- package/src/pages/posts/page/[page].astro +65 -27
- package/src/pages/search.astro +50 -14
- package/src/pages/slides/index.astro +25 -6
- package/src/pages/tags/[tag].astro +32 -15
- package/src/pages/tags/index.astro +39 -16
- package/src/plugins/remark-containers.mjs +351 -322
- package/src/plugins/remark-protect-code.mjs +69 -0
- package/src/styles/global.css +35 -1
- package/templates/default/.claude/ralph-loop.local.md +48 -0
- package/templates/default/astro.config.mjs +13 -4
- package/templates/default/content/posts/blog_docs_en/{get-started → 01.get-started}/01-intro.md +1 -1
- package/templates/default/content/posts/blog_docs_en/{get-started → 01.get-started}/02-install.md +1 -1
- package/templates/default/content/posts/blog_docs_en/{get-started → 01.get-started}/03-create-post.md +1 -1
- package/templates/default/content/posts/blog_docs_en/{get-started → 01.get-started}/04-structure.md +1 -1
- package/templates/default/content/posts/blog_docs_en/01.get-started/05-deploy.md +208 -0
- package/templates/default/content/posts/blog_docs_en/{get-started → 01.get-started}/README.md +1 -1
- package/templates/default/content/posts/blog_docs_en/02.guide/02-containers.md +245 -0
- package/templates/default/content/posts/blog_docs_en/{guide/markdown → 02.guide}/03-code-blocks.md +2 -1
- package/templates/default/content/posts/blog_docs_en/{guide/features/01-mermaid.md → 02.guide/03-mermaid.md} +1 -1
- package/templates/default/content/posts/blog_docs_en/{guide/features → 02.guide}/04-icons.md +4 -2
- package/templates/default/content/posts/blog_docs_en/{guide/features/02-latex.md → 02.guide/06-latex.md} +1 -1
- package/templates/default/content/posts/blog_docs_en/{guide/features/03-video.md → 02.guide/07-video.md} +1 -1
- package/templates/default/content/posts/blog_docs_en/02.guide/08-slides.md +359 -0
- package/templates/default/content/posts/blog_docs_en/{guide/markdown → 02.guide}/README.md +22 -3
- package/templates/default/content/posts/blog_docs_en/{config → 03.config}/01-site.md +1 -1
- package/templates/default/content/posts/blog_docs_en/{config → 03.config}/02-sidebar.md +1 -1
- package/templates/default/content/posts/blog_docs_en/{config → 03.config}/03-i18n.md +88 -24
- package/templates/default/content/posts/blog_docs_en/{config → 03.config}/README.md +1 -1
- package/templates/default/content/posts/blog_docs_en/README.md +2 -1
- package/templates/default/content/posts/blog_docs_zh/01.get-started/01-intro.md +81 -0
- package/templates/default/content/posts/blog_docs_zh/01.get-started/02-install.md +137 -0
- package/templates/default/content/posts/blog_docs_zh/01.get-started/03-create-post.md +176 -0
- package/templates/default/content/posts/blog_docs_zh/01.get-started/04-structure.md +173 -0
- package/templates/default/content/posts/blog_docs_zh/01.get-started/05-deploy.md +208 -0
- package/templates/default/content/posts/blog_docs_zh/01.get-started/README.md +52 -0
- package/templates/default/content/posts/blog_docs_zh/02.guide/02-containers.md +245 -0
- package/templates/default/content/posts/blog_docs_zh/02.guide/03-code-blocks.md +206 -0
- package/templates/default/content/posts/blog_docs_zh/02.guide/03-mermaid.md +194 -0
- package/templates/default/content/posts/blog_docs_zh/02.guide/04-icons.md +229 -0
- package/templates/default/content/posts/blog_docs_zh/02.guide/06-latex.md +233 -0
- package/templates/default/content/posts/blog_docs_zh/02.guide/07-video.md +184 -0
- package/templates/default/content/posts/blog_docs_zh/02.guide/08-slides.md +359 -0
- package/templates/default/content/posts/blog_docs_zh/02.guide/README.md +213 -0
- package/templates/default/content/posts/blog_docs_zh/03.config/01-site.md +208 -0
- package/templates/default/content/posts/blog_docs_zh/03.config/02-sidebar.md +240 -0
- package/templates/default/content/posts/blog_docs_zh/03.config/03-i18n.md +348 -0
- package/templates/default/content/posts/blog_docs_zh/03.config/README.md +85 -0
- package/templates/default/content/posts/blog_docs_zh/README.md +78 -0
- package/templates/default/src/config/locales/en/index.ts +5 -1
- package/templates/default/src/config/locales/en/menu.ts +3 -1
- package/templates/default/src/config/locales/en/sidebar.ts +18 -2
- package/templates/default/src/config/locales/en/site.ts +1 -1
- package/templates/default/src/config/locales/en/ui.ts +29 -0
- package/templates/default/src/config/locales/zh-CN/index.ts +5 -1
- package/templates/default/src/config/locales/zh-CN/menu.ts +7 -5
- package/templates/default/src/config/locales/zh-CN/sidebar.ts +22 -6
- package/templates/default/src/config/locales/zh-CN/site.ts +2 -2
- package/templates/default/src/config/locales/zh-CN/ui.ts +29 -0
- package/templates/default/src/config/site.ts +2 -2
- package/templates/default/src/content.config.ts +15 -3
- package/templates/default/content/posts/blog_docs/01-quick-start.md +0 -162
- package/templates/default/content/posts/blog_docs/02-frontmatter.md +0 -277
- package/templates/default/content/posts/blog_docs/03-markdown-basic.md +0 -350
- package/templates/default/content/posts/blog_docs/04-containers.md +0 -331
- package/templates/default/content/posts/blog_docs/05-code-blocks.md +0 -388
- package/templates/default/content/posts/blog_docs/06-mermaid.md +0 -431
- package/templates/default/content/posts/blog_docs/07-video.md +0 -243
- package/templates/default/content/posts/blog_docs/08-latex.md +0 -382
- package/templates/default/content/posts/blog_docs/09-icons.md +0 -326
- package/templates/default/content/posts/blog_docs/10-sidebar.md +0 -445
- package/templates/default/content/posts/blog_docs/11-config.md +0 -334
- package/templates/default/content/posts/blog_docs/12-i18n.md +0 -355
- package/templates/default/content/posts/blog_docs/12-slides.mdx +0 -552
- package/templates/default/content/posts/blog_docs/README.md +0 -152
- package/templates/default/content/posts/blog_docs_en/get-started/05-deploy.md +0 -197
- package/templates/default/content/posts/blog_docs_en/guide/README.md +0 -59
- package/templates/default/content/posts/blog_docs_en/guide/features/README.md +0 -51
- package/templates/default/content/posts/blog_docs_en/guide/markdown/02-containers.md +0 -226
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Containers
|
|
3
|
+
description: Use callout boxes for tips, warnings, and important information
|
|
4
|
+
pubDate: 2025-01-01
|
|
5
|
+
author: jet-w
|
|
6
|
+
categories:
|
|
7
|
+
- Documentation
|
|
8
|
+
tags:
|
|
9
|
+
- Markdown
|
|
10
|
+
- Containers
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Containers
|
|
14
|
+
|
|
15
|
+
Containers are special callout boxes that help highlight important information.
|
|
16
|
+
|
|
17
|
+
## Basic Syntax
|
|
18
|
+
|
|
19
|
+
```markdown
|
|
20
|
+
::: type
|
|
21
|
+
Content goes here
|
|
22
|
+
:::
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Container Types
|
|
26
|
+
|
|
27
|
+
### Tip
|
|
28
|
+
|
|
29
|
+
For helpful suggestions:
|
|
30
|
+
|
|
31
|
+
```markdown
|
|
32
|
+
::: tip
|
|
33
|
+
This is a helpful tip for the reader.
|
|
34
|
+
:::
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
<div class="container-tip custom-container" data-container-type="tip">
|
|
38
|
+
<div class="container-title">Tip</div>
|
|
39
|
+
<div class="container-content">
|
|
40
|
+
<p>This is a helpful tip for the reader.</p>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
### Info
|
|
45
|
+
|
|
46
|
+
For informational notes:
|
|
47
|
+
|
|
48
|
+
```markdown
|
|
49
|
+
::: info
|
|
50
|
+
Here's some additional information.
|
|
51
|
+
:::
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
<div class="container-info custom-container" data-container-type="info">
|
|
55
|
+
<div class="container-title">Info</div>
|
|
56
|
+
<div class="container-content">
|
|
57
|
+
<p>Here's some additional information.</p>
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
|
|
61
|
+
### Warning
|
|
62
|
+
|
|
63
|
+
For things to be careful about:
|
|
64
|
+
|
|
65
|
+
```markdown
|
|
66
|
+
::: warning
|
|
67
|
+
Be careful with this operation.
|
|
68
|
+
:::
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
<div class="container-warning custom-container" data-container-type="warning">
|
|
72
|
+
<div class="container-title">Warning</div>
|
|
73
|
+
<div class="container-content">
|
|
74
|
+
<p>Be careful with this operation.</p>
|
|
75
|
+
</div>
|
|
76
|
+
</div>
|
|
77
|
+
|
|
78
|
+
### Danger
|
|
79
|
+
|
|
80
|
+
For critical warnings:
|
|
81
|
+
|
|
82
|
+
```markdown
|
|
83
|
+
::: danger
|
|
84
|
+
This action cannot be undone!
|
|
85
|
+
:::
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
<div class="container-danger custom-container" data-container-type="danger">
|
|
89
|
+
<div class="container-title">Danger</div>
|
|
90
|
+
<div class="container-content">
|
|
91
|
+
<p>This action cannot be undone!</p>
|
|
92
|
+
</div>
|
|
93
|
+
</div>
|
|
94
|
+
|
|
95
|
+
### Note
|
|
96
|
+
|
|
97
|
+
For general notes:
|
|
98
|
+
|
|
99
|
+
```markdown
|
|
100
|
+
::: note
|
|
101
|
+
A side note for the reader.
|
|
102
|
+
:::
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
<div class="container-note custom-container" data-container-type="note">
|
|
106
|
+
<div class="container-title">Note</div>
|
|
107
|
+
<div class="container-content">
|
|
108
|
+
<p>A side note for the reader.</p>
|
|
109
|
+
</div>
|
|
110
|
+
</div>
|
|
111
|
+
|
|
112
|
+
## Custom Titles
|
|
113
|
+
|
|
114
|
+
Add a custom title after the type:
|
|
115
|
+
|
|
116
|
+
```markdown
|
|
117
|
+
::: tip Pro Tip
|
|
118
|
+
This container has a custom title.
|
|
119
|
+
:::
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
<div class="container-tip custom-container" data-container-type="tip">
|
|
123
|
+
<div class="container-title">Pro Tip</div>
|
|
124
|
+
<div class="container-content">
|
|
125
|
+
<p>This container has a custom title.</p>
|
|
126
|
+
</div>
|
|
127
|
+
</div>
|
|
128
|
+
|
|
129
|
+
```markdown
|
|
130
|
+
::: warning Security Notice
|
|
131
|
+
Always validate user input!
|
|
132
|
+
:::
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
<div class="container-warning custom-container" data-container-type="warning">
|
|
136
|
+
<div class="container-title">Security Notice</div>
|
|
137
|
+
<div class="container-content">
|
|
138
|
+
<p>Always validate user input!</p>
|
|
139
|
+
</div>
|
|
140
|
+
</div>
|
|
141
|
+
|
|
142
|
+
## Rich Content
|
|
143
|
+
|
|
144
|
+
Containers support full Markdown inside:
|
|
145
|
+
|
|
146
|
+
```markdown
|
|
147
|
+
::: info Features
|
|
148
|
+
This blog supports:
|
|
149
|
+
- **Markdown** formatting
|
|
150
|
+
- `Code` snippets
|
|
151
|
+
- [Links](https://example.com)
|
|
152
|
+
:::
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
<div class="container-info custom-container" data-container-type="info">
|
|
156
|
+
<div class="container-title">Features</div>
|
|
157
|
+
<div class="container-content">
|
|
158
|
+
<p>This blog supports:</p>
|
|
159
|
+
<ul>
|
|
160
|
+
<li><strong>Markdown</strong> formatting</li>
|
|
161
|
+
<li><code>Code</code> snippets</li>
|
|
162
|
+
<li><a href="https://example.com">Links</a></li>
|
|
163
|
+
</ul>
|
|
164
|
+
</div>
|
|
165
|
+
</div>
|
|
166
|
+
|
|
167
|
+
## Details (Collapsible)
|
|
168
|
+
|
|
169
|
+
Create expandable sections:
|
|
170
|
+
|
|
171
|
+
```markdown
|
|
172
|
+
::: details Click to expand
|
|
173
|
+
This content is hidden by default.
|
|
174
|
+
You can put lots of content here.
|
|
175
|
+
:::
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
<details class="container-details custom-container" data-container-type="details">
|
|
179
|
+
<summary class="container-title">Click to expand</summary>
|
|
180
|
+
<div class="container-content">
|
|
181
|
+
<p>This content is hidden by default.</p>
|
|
182
|
+
<p>You can put lots of content here.</p>
|
|
183
|
+
</div>
|
|
184
|
+
</details>
|
|
185
|
+
|
|
186
|
+
### Details with Code
|
|
187
|
+
|
|
188
|
+
```markdown
|
|
189
|
+
::: details View the solution
|
|
190
|
+
function solve() {
|
|
191
|
+
return 42;
|
|
192
|
+
}
|
|
193
|
+
:::
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
<details class="container-details custom-container" data-container-type="details">
|
|
197
|
+
<summary class="container-title">View the solution</summary>
|
|
198
|
+
<div class="container-content">
|
|
199
|
+
|
|
200
|
+
```javascript
|
|
201
|
+
function solve() {
|
|
202
|
+
return 42;
|
|
203
|
+
}
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
</div>
|
|
207
|
+
</details>
|
|
208
|
+
|
|
209
|
+
## Best Practices
|
|
210
|
+
|
|
211
|
+
<div class="container-tip custom-container" data-container-type="tip">
|
|
212
|
+
<div class="container-title">When to Use Containers</div>
|
|
213
|
+
<div class="container-content">
|
|
214
|
+
<ul>
|
|
215
|
+
<li><strong>tip</strong> - Helpful suggestions, best practices</li>
|
|
216
|
+
<li><strong>info</strong> - Background information, context</li>
|
|
217
|
+
<li><strong>warning</strong> - Potential issues, things to watch</li>
|
|
218
|
+
<li><strong>danger</strong> - Critical errors, data loss risks</li>
|
|
219
|
+
<li><strong>note</strong> - General observations</li>
|
|
220
|
+
<li><strong>details</strong> - Optional content, long examples</li>
|
|
221
|
+
</ul>
|
|
222
|
+
</div>
|
|
223
|
+
</div>
|
|
224
|
+
|
|
225
|
+
<div class="container-warning custom-container" data-container-type="warning">
|
|
226
|
+
<div class="container-title">Don't Overuse</div>
|
|
227
|
+
<div class="container-content">
|
|
228
|
+
<p>Too many containers can be distracting. Use them sparingly for truly important information.</p>
|
|
229
|
+
</div>
|
|
230
|
+
</div>
|
|
231
|
+
|
|
232
|
+
## Quick Reference
|
|
233
|
+
|
|
234
|
+
| Type | Syntax | Use Case |
|
|
235
|
+
|------|--------|----------|
|
|
236
|
+
| tip | `::: tip` | Helpful suggestions |
|
|
237
|
+
| info | `::: info` | Additional information |
|
|
238
|
+
| warning | `::: warning` | Cautions |
|
|
239
|
+
| danger | `::: danger` | Critical warnings |
|
|
240
|
+
| note | `::: note` | Side notes |
|
|
241
|
+
| details | `::: details` | Collapsible content |
|
|
242
|
+
|
|
243
|
+
---
|
|
244
|
+
|
|
245
|
+
Next: Master [Code Blocks](./03-code-blocks) for beautiful code snippets.
|
package/templates/default/content/posts/blog_docs_en/{guide/markdown → 02.guide}/03-code-blocks.md
RENAMED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
title: Code Blocks
|
|
3
3
|
description: Syntax highlighting, line numbers, and code display features
|
|
4
4
|
pubDate: 2025-01-01
|
|
5
|
-
author:
|
|
5
|
+
author: jet-w
|
|
6
6
|
categories:
|
|
7
7
|
- Documentation
|
|
8
8
|
tags:
|
|
@@ -199,6 +199,7 @@ Show code changes:
|
|
|
199
199
|
2. **Keep examples focused** - show only relevant code
|
|
200
200
|
3. **Add comments** to explain complex logic
|
|
201
201
|
4. **Test your code** - ensure examples actually work
|
|
202
|
+
|
|
202
203
|
:::
|
|
203
204
|
|
|
204
205
|
---
|
package/templates/default/content/posts/blog_docs_en/{guide/features → 02.guide}/04-icons.md
RENAMED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
title: Icons
|
|
3
3
|
description: Use icons from Font Awesome, Material, Remix, and Bootstrap
|
|
4
4
|
pubDate: 2025-01-01
|
|
5
|
-
author:
|
|
5
|
+
author: jet-w
|
|
6
6
|
categories:
|
|
7
7
|
- Documentation
|
|
8
8
|
tags:
|
|
@@ -224,4 +224,6 @@ Find icons at:
|
|
|
224
224
|
|
|
225
225
|
---
|
|
226
226
|
|
|
227
|
-
|
|
227
|
+
Next: [Slides](./05-slides) to create interactive presentations.
|
|
228
|
+
|
|
229
|
+
Or continue to [Configuration](../../config/) to customize your blog.
|
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Slides (Presentations)
|
|
3
|
+
description: Create interactive presentations with Reveal.js
|
|
4
|
+
pubDate: 2025-01-01
|
|
5
|
+
author: jet-w
|
|
6
|
+
categories:
|
|
7
|
+
- Documentation
|
|
8
|
+
tags:
|
|
9
|
+
- Slides
|
|
10
|
+
- Reveal.js
|
|
11
|
+
- Presentations
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Slides (Presentations)
|
|
15
|
+
|
|
16
|
+
This blog integrates [Reveal.js](https://revealjs.com/) to let you create beautiful interactive presentations using Markdown.
|
|
17
|
+
|
|
18
|
+
## Quick Start
|
|
19
|
+
|
|
20
|
+
### Creating a Presentation
|
|
21
|
+
|
|
22
|
+
Create a Markdown file in the `content/slides/` directory:
|
|
23
|
+
|
|
24
|
+
```markdown
|
|
25
|
+
---
|
|
26
|
+
title: My Presentation
|
|
27
|
+
description: A demo presentation
|
|
28
|
+
pubDate: 2025-01-01
|
|
29
|
+
theme: black
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
# First Slide
|
|
33
|
+
|
|
34
|
+
This is the opening
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Second Slide
|
|
39
|
+
|
|
40
|
+
- Point one
|
|
41
|
+
- Point two
|
|
42
|
+
- Point three
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
# Thank You!
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### Slide Separators
|
|
50
|
+
|
|
51
|
+
- Use `---` (three dashes) to separate **horizontal slides**
|
|
52
|
+
- Use `----` (four dashes) to separate **vertical slides**
|
|
53
|
+
|
|
54
|
+
```markdown
|
|
55
|
+
# Topic One
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
# Topic Two
|
|
60
|
+
|
|
61
|
+
This is horizontal navigation
|
|
62
|
+
|
|
63
|
+
----
|
|
64
|
+
|
|
65
|
+
## Topic Two Details
|
|
66
|
+
|
|
67
|
+
This is a vertical sub-slide (press ↓)
|
|
68
|
+
|
|
69
|
+
----
|
|
70
|
+
|
|
71
|
+
## More Details
|
|
72
|
+
|
|
73
|
+
Continue vertical navigation
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
# Topic Three
|
|
78
|
+
|
|
79
|
+
Back to horizontal navigation
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Frontmatter Configuration
|
|
83
|
+
|
|
84
|
+
| Option | Type | Default | Description |
|
|
85
|
+
|:---|:---|:---|:---|
|
|
86
|
+
| `title` | string | - | Presentation title (required) |
|
|
87
|
+
| `description` | string | - | Presentation description |
|
|
88
|
+
| `pubDate` | Date | - | Publication date |
|
|
89
|
+
| `author` | string | - | Author |
|
|
90
|
+
| `tags` | string[] | [] | Tags |
|
|
91
|
+
| `theme` | string | "black" | Theme name |
|
|
92
|
+
| `transition` | string | "slide" | Transition animation |
|
|
93
|
+
| `controls` | boolean | true | Show control arrows |
|
|
94
|
+
| `progress` | boolean | true | Show progress bar |
|
|
95
|
+
| `slideNumber` | boolean | false | Show slide numbers |
|
|
96
|
+
| `draft` | boolean | false | Draft status |
|
|
97
|
+
|
|
98
|
+
### Available Themes
|
|
99
|
+
|
|
100
|
+
| Theme | Description |
|
|
101
|
+
|:---|:---|
|
|
102
|
+
| `black` | Black background, white text (default) |
|
|
103
|
+
| `white` | White background, black text |
|
|
104
|
+
| `league` | Gray background |
|
|
105
|
+
| `beige` | Beige background, vintage style |
|
|
106
|
+
| `night` | Night mode, dark blue background |
|
|
107
|
+
| `serif` | Serif fonts, academic style |
|
|
108
|
+
| `simple` | Minimalist white |
|
|
109
|
+
| `solarized` | Solarized color scheme |
|
|
110
|
+
|
|
111
|
+
### Transitions
|
|
112
|
+
|
|
113
|
+
| Transition | Description |
|
|
114
|
+
|:---|:---|
|
|
115
|
+
| `none` | No animation |
|
|
116
|
+
| `fade` | Fade in/out |
|
|
117
|
+
| `slide` | Slide (default) |
|
|
118
|
+
| `convex` | Convex effect |
|
|
119
|
+
| `concave` | Concave effect |
|
|
120
|
+
| `zoom` | Zoom effect |
|
|
121
|
+
|
|
122
|
+
## Writing Content
|
|
123
|
+
|
|
124
|
+
### Titles and Text
|
|
125
|
+
|
|
126
|
+
```markdown
|
|
127
|
+
# Main Title
|
|
128
|
+
|
|
129
|
+
## Section Title
|
|
130
|
+
|
|
131
|
+
Regular paragraph text
|
|
132
|
+
|
|
133
|
+
**Bold** and *italic*
|
|
134
|
+
|
|
135
|
+
> Blockquote
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### Lists
|
|
139
|
+
|
|
140
|
+
```markdown
|
|
141
|
+
## Unordered List
|
|
142
|
+
|
|
143
|
+
- Item one
|
|
144
|
+
- Item two
|
|
145
|
+
- Item three
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## Ordered List
|
|
150
|
+
|
|
151
|
+
1. First step
|
|
152
|
+
2. Second step
|
|
153
|
+
3. Third step
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### Code Highlighting
|
|
157
|
+
|
|
158
|
+
````markdown
|
|
159
|
+
## Code Example
|
|
160
|
+
|
|
161
|
+
```javascript
|
|
162
|
+
function hello(name) {
|
|
163
|
+
console.log(`Hello, ${name}!`);
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
hello('World');
|
|
167
|
+
```
|
|
168
|
+
````
|
|
169
|
+
|
|
170
|
+
Supports syntax highlighting for all common programming languages.
|
|
171
|
+
|
|
172
|
+
### Math Formulas
|
|
173
|
+
|
|
174
|
+
LaTeX math formulas are supported:
|
|
175
|
+
|
|
176
|
+
```markdown
|
|
177
|
+
## Math Formulas
|
|
178
|
+
|
|
179
|
+
Inline: $E = mc^2$
|
|
180
|
+
|
|
181
|
+
Block:
|
|
182
|
+
|
|
183
|
+
$$
|
|
184
|
+
\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}
|
|
185
|
+
$$
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
### Mermaid Diagrams
|
|
189
|
+
|
|
190
|
+
````markdown
|
|
191
|
+
## Flowchart
|
|
192
|
+
|
|
193
|
+
```mermaid
|
|
194
|
+
graph TD
|
|
195
|
+
A[Start] --> B{Condition}
|
|
196
|
+
B -->|Yes| C[Execute]
|
|
197
|
+
B -->|No| D[Skip]
|
|
198
|
+
C --> E[End]
|
|
199
|
+
D --> E
|
|
200
|
+
```
|
|
201
|
+
````
|
|
202
|
+
|
|
203
|
+
### Column Layout
|
|
204
|
+
|
|
205
|
+
```html
|
|
206
|
+
## Two Columns
|
|
207
|
+
|
|
208
|
+
<div style="display: flex; gap: 2rem;">
|
|
209
|
+
<div style="flex: 1;">
|
|
210
|
+
|
|
211
|
+
### Left Side
|
|
212
|
+
|
|
213
|
+
- Content one
|
|
214
|
+
- Content two
|
|
215
|
+
|
|
216
|
+
</div>
|
|
217
|
+
<div style="flex: 1;">
|
|
218
|
+
|
|
219
|
+
### Right Side
|
|
220
|
+
|
|
221
|
+
- Content three
|
|
222
|
+
- Content four
|
|
223
|
+
|
|
224
|
+
</div>
|
|
225
|
+
</div>
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
### Images
|
|
229
|
+
|
|
230
|
+
```markdown
|
|
231
|
+
## Image Display
|
|
232
|
+
|
|
233
|
+

|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
### Tables
|
|
237
|
+
|
|
238
|
+
```markdown
|
|
239
|
+
## Comparison
|
|
240
|
+
|
|
241
|
+
| Feature | Option A | Option B |
|
|
242
|
+
|:---|:---:|:---:|
|
|
243
|
+
| Performance | High | Medium |
|
|
244
|
+
| Usability | Medium | High |
|
|
245
|
+
| Cost | Low | Medium |
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
## Fragment Animations
|
|
249
|
+
|
|
250
|
+
Use HTML attributes to add step-by-step reveal effects:
|
|
251
|
+
|
|
252
|
+
```html
|
|
253
|
+
## Step by Step
|
|
254
|
+
|
|
255
|
+
<ul>
|
|
256
|
+
<li class="fragment">Step one</li>
|
|
257
|
+
<li class="fragment">Step two</li>
|
|
258
|
+
<li class="fragment">Step three</li>
|
|
259
|
+
</ul>
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
### Fragment Types
|
|
263
|
+
|
|
264
|
+
```html
|
|
265
|
+
<p class="fragment fade-in">Fade in</p>
|
|
266
|
+
<p class="fragment fade-out">Fade out</p>
|
|
267
|
+
<p class="fragment highlight-red">Highlight red</p>
|
|
268
|
+
<p class="fragment highlight-blue">Highlight blue</p>
|
|
269
|
+
<p class="fragment grow">Grow</p>
|
|
270
|
+
<p class="fragment shrink">Shrink</p>
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
## Keyboard Shortcuts
|
|
274
|
+
|
|
275
|
+
Available shortcuts in presentation mode:
|
|
276
|
+
|
|
277
|
+
| Shortcut | Function |
|
|
278
|
+
|:---|:---|
|
|
279
|
+
| `→` / `←` | Horizontal navigation |
|
|
280
|
+
| `↓` / `↑` | Vertical navigation |
|
|
281
|
+
| `Space` | Next slide |
|
|
282
|
+
| `Esc` | Overview mode |
|
|
283
|
+
| `F` | Fullscreen mode |
|
|
284
|
+
| `S` | Speaker view |
|
|
285
|
+
| `B` | Black screen pause |
|
|
286
|
+
| `?` | Show help |
|
|
287
|
+
|
|
288
|
+
## Speaker View
|
|
289
|
+
|
|
290
|
+
Press `S` to open speaker view, which shows:
|
|
291
|
+
|
|
292
|
+
- Current slide
|
|
293
|
+
- Next slide preview
|
|
294
|
+
- Speaker notes
|
|
295
|
+
- Timer
|
|
296
|
+
|
|
297
|
+
### Adding Speaker Notes
|
|
298
|
+
|
|
299
|
+
```markdown
|
|
300
|
+
## Slide Title
|
|
301
|
+
|
|
302
|
+
Slide content
|
|
303
|
+
|
|
304
|
+
Note:
|
|
305
|
+
These are speaker notes that the audience won't see.
|
|
306
|
+
You can write prompts, key points, etc.
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
## File Organization
|
|
310
|
+
|
|
311
|
+
Recommended directory structure:
|
|
312
|
+
|
|
313
|
+
```
|
|
314
|
+
content/
|
|
315
|
+
└── slides/
|
|
316
|
+
├── my-presentation.md # Single presentation
|
|
317
|
+
└── workshop/ # Series
|
|
318
|
+
├── 01-intro.md
|
|
319
|
+
├── 02-basics.md
|
|
320
|
+
└── 03-advanced.md
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
## Best Practices
|
|
324
|
+
|
|
325
|
+
::: tip Keep It Simple
|
|
326
|
+
Focus on one key point per slide. Avoid information overload.
|
|
327
|
+
:::
|
|
328
|
+
|
|
329
|
+
::: tip Visual Hierarchy
|
|
330
|
+
- Use headings to establish structure
|
|
331
|
+
- Use lists and diagrams effectively
|
|
332
|
+
- Leave appropriate whitespace
|
|
333
|
+
:::
|
|
334
|
+
|
|
335
|
+
::: tip Code Presentation
|
|
336
|
+
- Keep code snippets short
|
|
337
|
+
- Highlight key parts
|
|
338
|
+
- Add explanatory text
|
|
339
|
+
:::
|
|
340
|
+
|
|
341
|
+
::: warning Performance
|
|
342
|
+
- Optimize and compress images
|
|
343
|
+
- Avoid extremely long presentations
|
|
344
|
+
- Complex diagrams may need loading time
|
|
345
|
+
:::
|
|
346
|
+
|
|
347
|
+
## Example Presentations
|
|
348
|
+
|
|
349
|
+
Visit the `/slides` page to browse example presentations, including:
|
|
350
|
+
|
|
351
|
+
- Basic syntax demo
|
|
352
|
+
- Code highlighting examples
|
|
353
|
+
- Math formula showcase
|
|
354
|
+
- Mermaid diagrams
|
|
355
|
+
- Theme previews
|
|
356
|
+
|
|
357
|
+
---
|
|
358
|
+
|
|
359
|
+
Next: Check out [Icons](./04-icons) for visual elements.
|
|
@@ -1,15 +1,34 @@
|
|
|
1
1
|
---
|
|
2
|
-
title:
|
|
3
|
-
description:
|
|
2
|
+
title: Writing Guide
|
|
3
|
+
description: Master content creation with Markdown, components, and advanced features
|
|
4
4
|
pubDate: 2025-01-01
|
|
5
|
-
author:
|
|
5
|
+
author: jet-w
|
|
6
6
|
categories:
|
|
7
7
|
- Documentation
|
|
8
8
|
tags:
|
|
9
|
+
- Guide
|
|
9
10
|
- Markdown
|
|
10
11
|
- Writing
|
|
11
12
|
---
|
|
12
13
|
|
|
14
|
+
# Writing Guide
|
|
15
|
+
|
|
16
|
+
Learn how to create beautiful, engaging content for your blog.
|
|
17
|
+
|
|
18
|
+
## Content Guide
|
|
19
|
+
|
|
20
|
+
| Guide | Description |
|
|
21
|
+
|-------|-------------|
|
|
22
|
+
| [Containers](./02-containers) | Tips, warnings, and callout boxes |
|
|
23
|
+
| [Code Blocks](./03-code-blocks) | Syntax highlighting and features |
|
|
24
|
+
| [Mermaid Diagrams](./03-mermaid) | Flowcharts, sequences, and more |
|
|
25
|
+
| [Icons](./04-icons) | Use icons from multiple libraries |
|
|
26
|
+
| [LaTeX Math](./06-latex) | Mathematical formulas |
|
|
27
|
+
| [Video Embedding](./07-video) | YouTube, Bilibili, custom videos |
|
|
28
|
+
| [Slides](./08-slides) | Interactive presentations with Reveal.js |
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
13
32
|
# Markdown Essentials
|
|
14
33
|
|
|
15
34
|
Markdown is a lightweight markup language that makes writing formatted content easy and intuitive.
|