feat(scaffold): redesign paper scaffold + clarify doc responsibilities

Scaffold (mytoolkit init paper):
- default to portable Elsevier elsarticle [review,3p,11pt] (was ctexart/Fandol)
- TeX Live Libertinus fonts (serif+math+mono), no system-font dependency
- xelatex one-engine via latexmk; figure/abstract/keyword frontmatter
- PDF bookmarks expand to two levels (bookmarksopenlevel=2)
- fix diffpreamble.dtx: define \DIFadd/\DIFdel (latexdiff highlighted now compiles)

Docs responsibility split:
- CLAUDE.md owns design decisions/constraints; exact scaffold specs live only
  in the generated main.tex header (self-documenting, no drift)
- README/SKILL point to those; README command table gains `voice`
- reconcile source-of-truth wording across CLAUDE.md / README / SKILL
This commit is contained in:
Zhengshou Lai
2026-06-29 00:47:48 +08:00
parent 587eac8837
commit f45b46073a
9 changed files with 93 additions and 60 deletions
+1 -1
View File
@@ -83,4 +83,4 @@ mytoolkit templates list
> **重要**:修改 `contrib/mytoolkit` 中的源码、或用 `git pull` / `git submodule update` 拉取更新后,**都必须重新执行 `make install`**(或 `mytoolkit update`)。Python 的 editable 安装不会自动跟踪源码改动,不重装则 CLI 调用的仍是旧版本。验证方式:`mytoolkit --version` 或 `which mytoolkit`。
> **唯一真源**:mytoolkit 的具体用法、命令参数、模板说明以 **已安装的 mytoolkit 包** 为准。读取详细文档时,先运行 `mytoolkit info paths` 查看资源路径,或用 `mytoolkit info docs <name>` 直接打印参考文档。若 `mytoolkit` 命令不可用,可按默认开发路径 `~/workspace/contrib/mytoolkit/` 查找。本 skill 的 `references/` 仅作为速查补充。
> **唯一真源**:mytoolkit 的具体用法、命令参数、模板说明以 **已安装的 mytoolkit 包** 为准`mytoolkit info paths` 查路径、`mytoolkit info docs <name>` 打印参考文档)。**设计决策与仓库约定**(脚手架取舍、文档生成工作流、命名等)见仓库 `CLAUDE.md`。若 `mytoolkit` 命令不可用,可按默认开发路径 `~/workspace/contrib/mytoolkit/` 查找。本 skill 的 `references/` 仅作为 `info docs` 未覆盖命令的速查补充。
+1 -1
View File
@@ -11,7 +11,7 @@ mytoolkit latex count paper.tex
## 论文脚手架 / 投稿模板
```bash
mytoolkit init paper <dir> # 新建论文项目(ctexart + Fandol 跨平台字体
mytoolkit init paper <dir> # 新建论文项目(elsarticle 脚手架,xelatex,可移植;精确配置见生成的 main.tex 头部注释,设计约束见仓库 CLAUDE.md §3
mytoolkit init journal # 列出投稿套件
mytoolkit init journal elsevier # Elsevier / ieee / springer 套件 → ./submit-<name>/
```