关于 latex-conference-template-organizer
面向需要整理会议 LaTeX 模板的研究者,将 ZIP 模板转换为适合 Overleaf 的投稿项目。技能先检查文件结构与依赖、说明问题和清理方案,并在获得确认后执行整理。
主要功能
- 01分析 ZIP 结构与依赖
- 02识别主 .tex 文件
- 03诊断问题并确认后清理
- 04整理章节、样式和图片
- 05生成 README
适用场景
- 01整理会议模板以开始写作
- 02查找缺失的 LaTeX 依赖
- 03归类论文章节和资源文件
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ galaxy-dawn/ claude-scholar --skill latex-conference-template-organizer安装后在 Claude Code 中输入/latex-conference-template-organizer确认已加载。
详细介绍
LaTeX 会议模板整理工具
概述
将杂乱的会议 LaTeX 模板 .zip 文件转换为整洁、可直接用于 Overleaf 的投稿模板。官方会议模板通常包含过多示例内容、说明性注释,以及杂乱的文件结构。此技能会将它们整理成可直接开始写作的模板。
工作模式
先分析后确认模式:先分析问题并向用户说明,再在获得确认后执行整理。
完整工作流
Receive .zip file
↓
1. Extract and analyze file structure
↓
2. Identify main file and dependencies
↓
3. Diagnose issues (present to user)
↓
4. Ask for conference info (link/name)
↓
5. Wait for user confirmation of cleanup plan
↓
6. Execute cleanup, create output directory
↓
7. Generate README (with official website info)
↓
8. Output complete
第 1 步:解压并分析
解压文件
将 .zip 解压到临时目录:
unzip -q template.zip -d /tmp/latex-template-temp
cd /tmp/latex-template-temp
find . -type f -name "*.tex" -o -name "*.sty" -o -name "*.cls" -o -name "*.bib"
识别文件类型
| 文件类型 | 用途 |
|---|---|
.tex | LaTeX 源文件 |
.sty / .cls | 样式文件 |
.bib | 参考文献数据库 |
.pdf / .png / .jpg | 图像文件 |
识别主文件
常见主文件名:
main.texpaper.texdocument.texsample-sigconf.textemplate.tex
识别方法:
- 检查文件名是否符合常见模式
- 搜索包含
\documentclass的文件 - 如果有多个候选文件,请用户确认
# Find files containing \documentclass
grep -l "\\documentclass" *.tex
第 2 步:诊断问题
向用户说明发现的问题:
文件结构杂乱
- 多层目录嵌套
.tex文件散落在多个目录中- 不清楚哪个文件是主文件
冗余内容
检测以下模式并标记以便清理:
- 文件名包含:
sample、example、demo、test - 注释包含:
sample、example、template、delete this
依赖问题
- 引用的
.sty/.cls文件缺失 - 图像或表格的引用路径不正确
第 3 步:询问会议相关信息
向用户询问以下信息:
Please provide the following information (optional):
1. **Conference submission link** (recommended): Used to extract official submission requirements
2. **Conference name**: If no link available
3. **Other special requirements**: Such as page limits, anonymity requirements, etc.
第 4 步:展示整理计划
向用户展示整理计划并等待确认:
## Cleanup Plan
### Issues Found
- [List diagnosed issues]
### Cleanup Approach
1. Main file: main.tex (clean example content)
2. Section separation: text/ directory
3. Resource directories: figures/, tables/, styles/
### Output Structure
[Show output directory structure]
Confirm execution? [Y/n]
第 5 步:执行整理
创建输出目录结构
mkdir -p output/{text,figures,tables,styles}
清理主文件(main.tex)
保留:
\documentclass声明- 必需的宏包导入
- 核心配置(例如,匿名模式)
删除:
- 示例章节内容
- 冗长的说明性注释
- 示例作者和标题信息
添加:
- 使用
\input{text/XX-section}导入章节
main.tex 结构示例(ACM 模板标准格式):
\documentclass[...]{...} % Keep original template document class
% Required packages (keep original template package declarations)
%% ============================================================================
%% Preamble: Before \begin{document}
%% ============================================================================
%% Title and author information
\title{Your Paper Title}
\author{Author Name}
\affiliation{...}
%% Abstract (in preamble, before \maketitle)
\begin{abstract}
% TODO: Write abstract content
\end{abstract}
%% CCS Concepts and Keywords (in preamble)
\begin{CCSXML}
<ccs2012>
<concept>
<concept_id>10010405.10010444.10010447</concept_id>
<concept_desc>Applied computing~...</concept_desc>
<concept_significance>500</concept_significance>
</concept>
</ccs2012>
\end{CCSXML}
\ccsdesc[500]{Applied computing~...}
\keywords{keyword1, keyword2, keyword3}
%% ============================================================================
%% Document Body
%% ============================================================================
\begin{document}
\maketitle
%% Section content (imported from text/)
\input{text/01-introduction}
\input{text/02-related-work}
\input{text/03-method}
\input{text/04-experiments}
\input{text/05-conclusion}
\bibliographystyle{...}
\bibliography{references}
\end{document}
KDD 2026 匿名投稿特别配置
对于 KDD 2026(使用 ACM acmart 模板),在文档类中添加 nonacm 选项以移除脚注:
%% ============================================================================
%% Document Class - KDD 2026 Anonymous Submission Configuration
%% Submission version: \documentclass[sigconf,anonymous,review,nonacm]{acmart}
%% Camera-ready: \documentclass[sigconf]{acmart}
%% ============================================================================
\documentclass[sigconf,anonymous,review,nonacm]{acmart}
%% ============================================================================
%% Disable ACM metadata (submission version only)
%% ============================================================================
\settopmatter{printacmref=false} % Disable ACM Reference Format
\setcopyright{none} % Disable copyright notice
\acmConference[]{}{}{} % Clear conference info (removes footnote)
\acmYear{} % Clear year
\acmISBN{} % Clear ISBN
\acmDOI{} % Clear DOI
%% Content to restore for camera-ready version:
%% \acmConference[KDD '26]{Proceedings of the 30th ACM SIGKDD Conference on Knowledge Discovery and Data Mining}{August 09--13, 2026}{Jeju, Korea}
%% \acmISBN{978-1-4503-XXXX-X/26/08}
%% \acmDOI{10.1145/nnnnnnn.nnnnnnn}
创建章节文件(text/)
为每个章节创建独立的 .tex 文件,文件中仅包含章节内容,不包含 \begin{document} 等内容:
text/01-introduction.tex:
\section{Introduction}
% TODO: Write introduction content
text/02-related-work.tex:
\section{Related Work}
% TODO: Write related work content
text/03-method.tex:
\section{Method}
% TODO: Write method content
text/04-experiments.tex:
\section{Experiments}
% TODO: Write experiments content
text/05-conclusion.tex:
\section{Conclusion}
% TODO: Write conclusion content
重要说明:
- 摘要应放在 main.tex 的导言区(
\begin{document}之前),位于\maketitle之后 - text/ 中的文件仅包含章节内容,以
\section{...}开头 - text/ 文件中不要包含
\begin{document}或其他包装内容
复制样式文件(styles/)
将原始模板中的所有 .sty 和 .cls 文件复制到 styles/:
find /tmp/latex-template-temp -type f \( -name "*.sty" -o -name "*.cls" \) -exec cp {} output/styles/ \;
注意: 保留原始模板的目录结构(例如 acmart/),仅将其移动到 styles/。
处理图像和表格
# Copy image files
find /tmp/latex-template-temp -type f \( -name "*.png" -o -name "*.jpg" -o -name "*.jpeg" -o -name "*.pdf" \) -exec cp {} output/figures/ \;
# Copy table files (if any)
find /tmp/latex-template-temp -type f -name "*.tex" | grep -i table | while read f; do cp "$f" output/tables/; done
创建示例表格文件
重要: Overleaf 会自动删除空目录。为防止 tables/ 目录被删除,请创建一个示例表格文件:
# Create example table file
cat > output/tables/example-table.tex << 'EOF'
% Example table file
% Can be deleted or replaced with your own tables
\begin{table}[h]
\centering
\caption{Example Table}
\label{tab:example}
\begin{tabular}{lccc}
\toprule
Method & Metric 1 & Metric 2 & Metric 3 \\
\midrule
Baseline & 85.3 & 12.4 & 0.92 \\
Method A & 87.1 & 11.8 & 0.95 \\
\textbf{Ours} & \textbf{89.4} & \textbf{10.2} & \textbf{0.97} \\
\bottomrule
\end{tabular}
\end{table}
EOF
说明:
- 如果原始模板中已有表格文件,可跳过此步骤
- 示例表格仅用于防止目录被删除,可以删除或替换
- 在论文中使用
\input{tables/example-table.tex}引用表格,或将表格内容直接复制到章节文件中
复制参考文献文件
# Copy .bib files
find /tmp/latex-template-temp -type f -name "*.bib" -exec cp {} output/ \;
第 6 步:生成 README
信息来源优先级
- 用户提供的会议链接 → 使用 WebFetch 提取
- 模板文件注释 → 从 .tex 文件中提取
- 默认推断 → 根据
\documentclass推断
README 模板
# [Conference Name] Submission Template
## Template Information
- **Conference**: [Conference name]
- **Website**: [Conference link]
- **Template version**: [From template or website]
- **Document class**: [Extracted documentclass]
## Submission Requirements
### Page and Format
- **Page limit**: [From website or template]
- **Two-column/Single-column**: [Detect layout]
- **Font size**: [10pt/11pt etc.]
### Anonymity Requirements
- **Blind review required**: [Detect template mode]
- **Author information handling**: [Instructions]
### Compilation Requirements
- **Recommended compiler**: [XeLaTeX/pdfLaTeX/LuaLaTeX]
- **Special package requirements**: [If any]
## Overleaf Usage
### Upload Steps
1. Create a new project on Overleaf
2. Upload the entire `output/` directory
3. Set compiler to [specified compiler]
4. Click Recompile to test
### File Description
- `main.tex` - Main file, start here
- `text/` - Section content, edit as needed
- `figures/` - Place images here
- `tables/` - Place tables here
- `styles/` - Style files, no modification needed
- `references.bib` - Bibliography database
## Common Operations
### Adding Images
```latex
\begin{figure}[h]
\centering
\includegraphics[width=0.8\linewidth]{figures/your-image.pdf}
\caption{Image caption}
\label{fig:your-label}
\end{figure}
添加表格
\begin{table}[h]
\centering
\begin{tabular}{|c|c|}
\hline
Column 1 & Column 2 \\
\hline
Content 1 & Content 2 \\
\hline
\end{tabular}
\caption{Table caption}
\label{tab:your-label}
\end{table}
添加参考文献
将条目添加到 references.bib,并在正文中使用 \cite{key} 引用。
注意事项
- [从模板注释中提取的警告]
- [从网站中提取的重要说明]
### Extract Information from Website (if user provided a link)
Use WebFetch to get conference submission page content and extract:
- Page limits
- Anonymity requirements
- Format requirements
- Submission deadlines
## Step 7: Cleanup and Output
```bash
# Clean up temporary files
rm -rf /tmp/latex-template-temp
# Output completion message
echo "Template cleanup complete! Output directory: output/"
echo "Please upload the output/ directory to Overleaf to test compilation."
错误处理
| 错误场景 | 处理方式 |
|---|---|
| 未找到主文件 | 列出所有 .tex 文件,让用户选择 |
| 缺少依赖文件 | 警告用户,并尝试从模板目录中查找 |
| 无法提取会议信息 | 使用模板中的默认信息,并标记为 [待确认] |
| 网站无法访问 | 回退到模板注释,并提示用户手动填写 |
| 提取失败 | 提示用户检查 .zip 文件的完整性 |
常见会议模板类型
| 会议 | 文档类 | 备注 |
|---|---|---|
| KDD (ACM SIGKDD) | acmart | 匿名投稿需要使用 nonacm 选项移除脚注 |
| ACM 会议 | acmart | 需要启用匿名模式 \acmReview{anonymous} |
| CVPR/ICCV | cvpr | 双栏,页数限制严格 |
| NeurIPS | neurips_2025 | 匿名评审,无页数限制 |
| ICLR | iclr2025_conference | 双栏,需要会话信息 |
| AAAI | aaai25 | 双栏,8 页 + 参考文献 |
KDD 匿名投稿配置说明
KDD 2026 使用 ACM acmart 模板,匿名投稿需要进行特殊配置:
投稿版本(移除所有 ACM 元数据脚注):
\documentclass[sigconf,anonymous,review,nonacm]{acmart}
\settopmatter{printacmref=false}
\setcopyright{none}
\acmConference[]{}{}{}
\acmYear{}
\acmISBN{}
\acmDOI{}
最终出版版本(恢复 ACM 元数据):
\documentclass[sigconf]{acmart}
\settopmatter{printacmref=true}
\setcopyright{acmcopyright}
\acmConference[KDD '26]{...}{...}{...}
\acmYear{2026}
\acmISBN{978-1-4503-XXXX-X/26/08}
\acmDOI{10.1145/nnnnnnn.nnnnnnn}
快速参考
检测文档类型
# Detect document class
grep "\\documentclass" main.tex
# Detect anonymous mode
grep -i "anonymous\|review\|blind" main.tex
# Detect page settings
grep "pagelimit\|pageLimit\|page_limit" main.tex
常见清理模式
# Remove example files
rm -f sample-* example-* demo-* test-*
# Remove temporary files
rm -f *.aux *.log *.out *.bbl *.blg