CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
项目概述
这是一个基于Jekyll的个人博客,拥有19年的内容积累(2006-2025),托管在GitHub Pages上。博客包含437篇文章,涵盖ACM竞赛、旅行游记、IT职业生涯和个人思考。内容主要为中文,支持多语言界面。
开发命令
本地开发
_preview.sh- 启动Jekyll开发服务器,支持草稿和未来文章(端口4000)make serve- 基于Docker的本地开发服务器,使用Jekyll 3.8.5(端口3000或4000)make build- 基于Docker的Jekyll构建,验证站点是否能正常编译
内容管理
_new_draft.sh [文件名]- 从_drafts/中的模板创建新草稿_publish.sh 文件名.md- 将草稿移动到_posts/,自动添加日期前缀并处理git操作
内容质量工具
pangu -f 文件名.md- 格式化中文排版和空格(自动在中英文之间添加空格)tekorrect -f 文件名.md- 应用文本校正(修复常见拼写和标点错误)- 建议发布前总是运行这两个工具确保内容质量
架构说明
内容结构
_posts/- 已发布的博客文章(437个文件,时间跨度2006-2025)_drafts/- 草稿文章,包含template.markdown新文章模板_layouts/- Jekyll模板文件(default, page, post)_includes/- 可复用组件(header, footer, sidebar, analytics)_sass/- SCSS样式表images/- 按文章日期和主题组织的图片_markdown-to-wechat/- 自定义微信发布工具
导航页面
根目录的markdown文件使用前缀控制菜单顺序:
a_home.md,b_about.md,c_archives.md,d_category.md,e_tags.md,f_guestbook.md,f_list.md
发布流程
- 创建草稿:
_new_draft.sh 文章标题 - 在
_drafts/目录中编辑内容 - 预览:
_preview.sh或make serve - 格式化:对中文内容使用
pangu -f 文件名.md和tekorrect -f 文件名.md - 验证:运行
make build确保没有构建错误 - 发布:
_publish.sh 文件名.md(自动处理git add/mv操作)
重要注意事项
文件命名规范
- 文章必须使用格式:
YYYY-MM-DD-标题.md(使用连字符,不是下划线) - YAML头部的日期不能是未来时间(Jekyll会忽略未来的文章)
内容规范
- 添加
<!--more-->标记用于首页摘要显示 - 优化大图片(可使用tinypng.com API集成)
- 中文内容应使用pangu/tekorrect工具格式化
多语言支持
网站通过_config.yml配置支持中文、英文、日文、波兰文、韩文、俄文、土耳其文和印尼文界面。
分析和集成
- Google Analytics 4
- 不蒜子页面访问统计
- Plausible.io替代分析
- Disqus评论系统
- jekyll-feed生成RSS/Atom订阅
