Skip to content

Commit 2d0ab36

Browse files
feat: ready to be publiced
1 parent 1047e32 commit 2d0ab36

16 files changed

Lines changed: 923 additions & 0 deletions

.github/workflows/deploy.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# 工作流名称
2+
name: 自动部署 MkDocs
3+
4+
# 触发条件:推送到 main 分支
5+
on:
6+
push:
7+
branches:
8+
- main
9+
10+
# 允许手动触发
11+
workflow_dispatch:
12+
13+
# 设置权限
14+
permissions:
15+
contents: write # 允许推送到 gh-pages 分支
16+
17+
jobs:
18+
deploy:
19+
runs-on: ubuntu-latest
20+
21+
steps:
22+
# 1. 检出代码
23+
- name: 检出仓库
24+
uses: actions/checkout@v4
25+
with:
26+
fetch-depth: 0 # 获取完整历史,显示文章修改时间
27+
28+
# 2. 设置 Python
29+
- name: 设置 Python
30+
uses: actions/setup-python@v5
31+
with:
32+
python-version: "3.11"
33+
cache: 'pip' # 缓存依赖,加速构建
34+
35+
# 3. 安装依赖
36+
- name: 安装依赖
37+
run: pip install -e ./scripts
38+
39+
# 4. 构建网站
40+
- name: 构建网站
41+
run: mkdocs build --clean
42+
43+
# 5. 自动部署到 gh-pages 分支(这一步会自动触发 GitHub Pages)
44+
- name: 部署到 GitHub Pages
45+
uses: peaceiris/actions-gh-pages@v4
46+
with:
47+
github_token: ${{ secrets.GITHUB_TOKEN }} # GitHub 自动提供的 token
48+
publish_dir: ./site # MkDocs 构建输出目录

.gitignore

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,12 @@ compile_commands.json
1111
# OS
1212
.DS_Store
1313
Thumbs.db
14+
15+
# MkDocs
16+
site/
17+
18+
# Python
19+
.venv/
20+
__pycache__/
21+
*.pyc
22+
*.egg-info/

mkdocs.yml

Lines changed: 196 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,196 @@
1+
site_name: PenguinLab 文档
2+
site_description: 30 天嵌入式 Linux 内核学习计划
3+
site_author: Charliechen
4+
site_url: https://awesome-embedded-learning-studio.github.io/PenguinLab/
5+
6+
copyright: Copyright © 2025 Charliechen - 保留所有权利
7+
8+
docs_dir: "tutorial"
9+
10+
# 排除非文档文件
11+
exclude_docs: |
12+
**/*.ko
13+
**/*.o
14+
**/*.cmd
15+
**/*.mod
16+
**/*.mod.c
17+
**/*.order
18+
**/*.symvers
19+
**/build/
20+
**/.gitignore
21+
**/Makefile
22+
**/CMakeLists.txt
23+
24+
25+
# ==================== 主题配置 ====================
26+
27+
theme:
28+
name: material
29+
language: zh
30+
31+
logo: Awesome-Embedded.png
32+
favicon: Awesome-Embedded.ico
33+
34+
palette:
35+
- media: "(prefers-color-scheme: light)"
36+
scheme: default
37+
primary: indigo
38+
accent: indigo
39+
toggle:
40+
icon: material/brightness-7
41+
name: 切换至暗色模式
42+
43+
- media: "(prefers-color-scheme: dark)"
44+
scheme: slate
45+
primary: black
46+
accent: indigo
47+
toggle:
48+
icon: material/brightness-4
49+
name: 切换至亮色模式
50+
51+
font:
52+
text: Noto Sans SC
53+
code: JetBrains Mono
54+
55+
features:
56+
# ---------- 导航功能 ----------
57+
- navigation.instant
58+
- navigation.instant.prefetch
59+
- navigation.instant.progress
60+
- navigation.tracking
61+
- navigation.tabs
62+
- navigation.tabs.sticky
63+
- navigation.sections
64+
- navigation.prune
65+
- navigation.path
66+
- navigation.indexes
67+
- navigation.top
68+
- navigation.footer
69+
70+
# ---------- 目录功能 ----------
71+
- toc.follow
72+
73+
# ---------- 搜索功能 ----------
74+
- search.suggest
75+
- search.highlight
76+
- search.share
77+
78+
# ---------- 内容功能 ----------
79+
- content.code.copy
80+
- content.code.select
81+
- content.code.annotate
82+
- content.tabs.link
83+
- content.tooltips
84+
- content.action.edit
85+
- content.action.view
86+
87+
88+
# ==================== Markdown 扩展 ====================
89+
90+
markdown_extensions:
91+
# ---------- 基础扩展 ----------
92+
- abbr
93+
- attr_list
94+
- def_list
95+
- footnotes
96+
- md_in_html
97+
- tables
98+
99+
# 目录扩展
100+
- toc:
101+
permalink: true
102+
permalink_title: 链接到此章节
103+
slugify: !!python/object/apply:pymdownx.slugs.slugify
104+
kwds:
105+
case: lower
106+
107+
# 警告框扩展
108+
- admonition
109+
110+
# ---------- PyMdown 扩展 ----------
111+
- pymdownx.details
112+
113+
# 代码高亮
114+
- pymdownx.highlight:
115+
anchor_linenums: true
116+
line_spans: __span
117+
pygments_lang_class: true
118+
linenums: true
119+
linenums_style: pymdownx-inline
120+
121+
# 行内代码高亮
122+
- pymdownx.inlinehilite
123+
124+
# 代码块围栏支持
125+
- pymdownx.superfences:
126+
custom_fences:
127+
- name: mermaid
128+
class: mermaid
129+
format: !!python/name:pymdownx.superfences.fence_code_format
130+
131+
# 内容标签页
132+
- pymdownx.tabbed:
133+
alternate_style: true
134+
combine_header_slug: true
135+
slugify: !!python/object/apply:pymdownx.slugs.slugify
136+
kwds:
137+
case: lower
138+
139+
# Emoji 支持
140+
- pymdownx.emoji:
141+
emoji_index: !!python/name:material.extensions.emoji.twemoji
142+
emoji_generator: !!python/name:material.extensions.emoji.to_svg
143+
144+
# 其他实用扩展
145+
- pymdownx.caret
146+
- pymdownx.mark
147+
- pymdownx.tilde
148+
- pymdownx.keys
149+
- pymdownx.smartsymbols
150+
- pymdownx.snippets
151+
- pymdownx.critic
152+
- pymdownx.betterem
153+
154+
155+
# ==================== 插件配置 ====================
156+
157+
plugins:
158+
# 搜索插件
159+
- search:
160+
separator: '[\s\u200b\-_,:!=\[\]()"/]+|\.(?!\d)|&[lg]t;|(?!\b)(?=[A-Z][a-z])'
161+
lang:
162+
- zh
163+
- en
164+
pipeline:
165+
- stemmer
166+
- stopWordFilter
167+
- trimmer
168+
169+
# 标签插件
170+
- tags
171+
172+
# Awesome Pages 插件
173+
- awesome-pages
174+
175+
# Git 修订日期插件
176+
- git-revision-date-localized:
177+
enable_creation_date: true
178+
fallback_to_build_date: true
179+
type: datetime
180+
timezone: Asia/Shanghai
181+
locale: zh
182+
183+
184+
# ==================== 额外配置 ====================
185+
186+
extra:
187+
social:
188+
- icon: fontawesome/brands/github
189+
link: https://github.com/Awesome-Embedded-Learning-Studio
190+
name: GitHub
191+
- icon: fontawesome/solid/paper-plane
192+
link: mailto:725610365@qq.com
193+
name: 发送邮件
194+
195+
extra_css:
196+
- stylesheets/extra.css

0 commit comments

Comments
 (0)