关于 paper-spine-latex
paper-spine-latex 是用于组装和检查 LaTeX 论文的 Agent 技能。它处理模板整合、图表和引文,同时将稿件内容与排版工作分开。
主要功能
- 01组装 LaTeX 项目
- 02整合论文模板
- 03放置图表并设置稳定标签
- 04处理引文与参考文献
- 05编译与源码检查
适用场景
- 01套用目标 LaTeX 模板
- 02整理论文图表和引文
- 03交付 PDF 前检查项目
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ wubing2023/ paperspine --skill paper-spine-latex安装后在 Claude Code 中输入/paper-spine-latex确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
agents/openai.yamlreferences/latex-source-control.mdround3-latex-polish.mdround4-template-integration.mdtranslation-package.mdscripts/_paper_spine_utils.pyhumanize_check.pylatex_guard.pyword_guard.py详细介绍
PaperSpine LaTeX
用于 LaTeX 组装、模板集成、图表放置、引用、标签和编译安全检查。除非重写或构建输出有要求,否则不要更改稿件逻辑。
必需输入
- 修订后的稿件或构建完成的稿件
- 目标模板(如有)
- 图表、参考文献和源文件
- 使用材料构建时的
paper_rewriting_output/figure_asset_map.md
必需输出
- 更新后的 LaTeX 项目;使用材料构建时,保存为
paper_rewriting_output/final_paper/main.tex - TeX 引擎可用时编译生成的 PDF;使用材料构建时,保存为
paper_rewriting_output/final_paper/paper.pdf paper_rewriting_output/latex_report.md- 生成最终交付物时的
paper_rewriting_output/final_artifact_manifest.md - 可选的
paper_rewriting_output/final_paper/paper.docx和paper_rewriting_output/word_report.md
规则
- 项目路径可能包含空格或非 ASCII 字符(例如
exp_lab_en - 副本)。传递给 pandoc/copy 命令的每个路径都要加引号,并避免使用 未加引号的 shell 通配符;它们在此类目录中会静默出错。在 Windows 上, 文件操作优先使用 PowerShell。 - 将内容工作与 LaTeX 脚手架分开。
- 除非有经核实的更名理由,否则保留引用键和标签。
- 将获批图像复制到
figures/,并使用稳定的标签。 - 如果可用,运行
scripts/latex_guard.py。 - 在
latex_report.md中记录未解决的编译或资源问题。 - 如果工作流是
build_from_materials,不要将 Markdown 视为最终稿件。 - 对于中文输出,优先使用 XeLaTeX 和支持 CJK 的模板。对于英文输出,请遵循目标模板,或使用稳妥的 article 模板。
- 如果没有可用的 TeX 引擎,请保留
.tex,并在latex_report.md中记录已跳过编译。 - 如果有可用引擎但编译失败,请保留
.tex,在latex_report.md中写下第一个致命错误,并且不要声称产物检查通过。 - 如果生成 Word 输出,请在
final_paper/目录中使用 pandoc。当稿件使用 BibTeX 引用时,请使用 citeproc 解析引用,使\cite命令呈现为格式化参考文献,而不是泄漏原始 LaTeX:cd final_paper pandoc main.tex -o paper.docx --from latex --to docx \ --resource-path=. --extract-media=./media \ --number-sections --citeproc --bibliography=references.bib--citeproc --bibliography=references.bib会呈现\cite{...}和参考文献列表;只有稿件不含引用时才省略--number-sections可使标题编号与 LaTeX 源文件一致--resource-path=.可解析\includegraphics{figures/...}路径--extract-media=./media会将图像嵌入 docx- 对于自定义样式(字体、标题样式、页边距),请添加
--reference-doc=reference.docx,该文件应基于目标模板构建 \ref/\autoref交叉引用需要pandoc-crossref过滤器 (--filter pandoc-crossref);没有它们时,可能会呈现为[?]- 如果没有这些标志,pandoc 会静默丢弃图像或引用,或生成空白 docx
- 从
final_paper/目录运行,以确保.tex中的相对路径能正确解析 - 不要使用会剥离编码的中间纯文本步骤
- 运行
scripts/word_guard.py final_paper/paper.docx --markdown --output paper_rewriting_output/word_report.md,并在将 Word 文件作为可用文件提交前修复所有失败项。如果 word_guard 报告段落数为 0,请检查图像是否为支持的格式(PNG/JPG),以及figures/目录是否存在。 - 为确保 Word 输出忠实还原内容,请避免以下常见的 pandoc 错误:
- 先展开
\input/\include(例如latexpand main.tex > flat.tex), 再转换展开后的文件;pandoc 无法可靠地拉取子文件。 - 展开或移除自定义的
\newcommand/\def宏;pandoc 会丢弃无法解析的宏,导致内容静默丢失。 - 保持表格简单(
tabular/booktabs);tabularx、multirow和嵌套表格在 docx 中经常错位,因此要逐一打开并检查每个表格。 - Citeproc 默认按作者-日期格式呈现,因此数字编号的 LaTeX 样式(
plain、unsrt、ieeetr)在 Word 中会呈现不同。若要保留[1]这类数字引用,请传入数字型 CSL,例如--csl=ieee.csl或--csl=vancouver.csl。 - 对于中文,请使用 CJK 字体(例如 SimSun 或 Noto Serif CJK)构建
--reference-doc=reference.docx,否则字符会显示为方框。 - 转换后,打开 docx 并确认标题、公式、图、表格和参考文献均已正确呈现。
- 先展开
进行 LaTeX 结构编辑前,请先阅读 references/latex-source-control.md。
评论
支持 Markdown