AGENTS
概述
- 本仓库为「爬客」博客的 GitHub Pages 站点(
sixgad.github.io),对外说明见README.md。 - 内容以静态 HTML/CSS/JS 为主;本地用 Python 将各文章目录下的 Markdown 转为
article.html,并生成首页分页、文章索引、ACG 推荐页与导航聚合页(index-hub.html)。 - 工程取向:保持「纯静态 + 少量手写 CSS」与现有 Python 生成流程,不引入 Node/npm 构建链;全站导航与视觉增量集中在
static/css/site-v2.css,模板仍复用static/css/style.css、plugin.css等与旧版主题兼容的资源。
技术栈
- Python:用于站点生成脚本(具体次版本以本机环境为准)。
- 依赖(见
requirements.txt,已钉版本):Jinja2==3.1.2、Markdown==3.4.1。 - 模板与生成:
Jinja2加载basetp/下ori_*.html与frag_nav.html;Markdown使用extra、codehilite、tables、toc、meta等扩展(配置见generate.py中default_config["md_ext"])。 - 前端静态资源:
static/下 Bootstrap、jQuery、合并版plugin.js/plugin.css(内含 Bootstrap 与图标字体样式)、site-v2.css等;无package.json。static/fonts/当前仅保留 Font Awesome 与 Simple Line Icons 的 woff2 文件(与plugin.css中@font-face一致)。 - 托管:
CNAME(自定义域)、.nojekyll(禁用 Jekyll 处理)。
目录结构
blog/:文章目录,子文件夹名为序号-标题;内含源稿.md(及图片等)、生成结果article.html。basetp/:Jinja2 源模板——ori_index.html(首页分页)、ori_detail.html(文章页)、ori_list.html(索引)、ori_acg.html(ACG)、ori_hub.html(导航聚合)、frag_nav.html(顶栏导航片段,被各页include)。static/:全站公共 CSS/JS/字体与图片(如static/css/、static/js/、static/fonts/、static/images/)。- 仓库根目录:
generate.py为生成入口;index.html、index2.html… 为列表分页输出;index-list.html、index-acg.html、index-hub.html为单页输出(运行生成脚本后更新)。
编码规范
- 仓库内无 ESLint、Ruff、Black、EditorConfig 等统一工具链配置;修改时与现有
generate.py、模板与静态资源风格保持一致即可。 - 文章 Markdown 需带
markdown.extensions.meta所需字段(脚本中读取tags、date、title、private等);是否生成article.html由private的字符串判定(仅当取值(小写)中包含no或false时才生成,逻辑见generate.py)。
常用命令
pip install -r requirements.txt:安装生成博客页所需的 Python 依赖。python generate.py:删除仓库根目录下所有以index开头且后缀为.html的文件后,扫描blog/中 Markdown,生成各篇article.html,并重新生成分页首页、index-list.html、index-acg.html与index-hub.html。
禁止事项
- 勿向仓库提交密钥、令牌或本地
.env(.gitignore已忽略.env与常见虚拟环境目录)。 - 勿在文档中编造仓库未出现的依赖、脚本或 CI;技术栈与命令须能在
requirements.txt、generate.py等文件中得到印证。