diff options
| author | sillylaird <sillyfanboy@gmail.com> | 2026-09-03 00:33:59 +0000 |
|---|---|---|
| committer | sillylaird <sillyfanboy@gmail.com> | 2026-09-03 00:33:59 +0000 |
| commit | 898b52edcb47bcb3e9d6106e74ca73e74ea01e70 (patch) | |
| tree | 85c6ee5ad58b860144551184d4cf86b560c62b91 /.agents/skills/latex-conference-template-organizer | |
| download | www-898b52edcb47bcb3e9d6106e74ca73e74ea01e70.tar.gz www-898b52edcb47bcb3e9d6106e74ca73e74ea01e70.zip | |
Diffstat (limited to '')
| -rw-r--r-- | .agents/skills/latex-conference-template-organizer/SKILL.md | 509 |
1 files changed, 509 insertions, 0 deletions
diff --git a/.agents/skills/latex-conference-template-organizer/SKILL.md b/.agents/skills/latex-conference-template-organizer/SKILL.md new file mode 100644 index 0000000..7cd5666 --- /dev/null +++ b/.agents/skills/latex-conference-template-organizer/SKILL.md @@ -0,0 +1,509 @@ +--- +name: latex-conference-template-organizer +description: Organize messy conference LaTeX template .zip files into clean Overleaf-ready structure. Use when the user asks to "organize LaTeX template", "clean up .zip template", or "prepare Overleaf submission template". +version: 0.1.0 +--- + +# LaTeX Conference Template Organizer + +## Overview + +Transform messy conference LaTeX template .zip files into clean, Overleaf-ready submission templates. Official conference templates often contain excessive example content, instructional comments, and disorganized file structures. This skill converts them into templates ready for writing. + +## Working Mode + +**Analyze-then-confirm mode**: First analyze issues and present them to the user, then execute cleanup after confirmation. + +## Complete Workflow + +``` +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 +``` + +## Step 1: Extract and Analyze + +### Extract Files + +Extract .zip to a temporary directory: + +```bash +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" +``` + +### Identify File Types + +| File Type | Purpose | +|-----------|---------| +| `.tex` | LaTeX source files | +| `.sty` / `.cls` | Style files | +| `.bib` | Bibliography database | +| `.pdf` / `.png` / `.jpg` | Image files | + +### Identify Main File + +**Common main file names:** +- `main.tex` +- `paper.tex` +- `document.tex` +- `sample-sigconf.tex` +- `template.tex` + +**Identification methods:** +1. Check if filename matches common patterns +2. Search for files containing `\documentclass` +3. If multiple candidates exist, ask user to confirm + +```bash +# Find files containing \documentclass +grep -l "\\documentclass" *.tex +``` + +## Step 2: Diagnose Issues + +Present discovered issues to the user: + +### Disorganized File Structure + +- Multi-level directory nesting +- .tex files scattered across directories +- Unclear which file is the main file + +### Redundant Content + +Detect the following patterns and flag for cleanup: +- Filenames containing: `sample`, `example`, `demo`, `test` +- Comments containing: `sample`, `example`, `template`, `delete this` + +### Dependency Issues + +- Referenced `.sty`/`.cls` files missing +- Image/table reference paths incorrect + +## Step 3: Ask for Conference Information + +Ask the user for the following information: + +```markdown +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. +``` + +## Step 4: Present Cleanup Plan + +Present the cleanup plan to the user and wait for confirmation: + +```markdown +## 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] +``` + +## Step 5: Execute Cleanup + +### Create Output Directory Structure + +```bash +mkdir -p output/{text,figures,tables,styles} +``` + +### Clean Up Main File (main.tex) + +**Keep:** +- `\documentclass` declaration +- Required package imports +- Core configuration (e.g., anonymous mode) + +**Remove:** +- Example section content +- Verbose instructional comments +- Example author/title information + +**Add:** +- Import sections with `\input{text/XX-section}` + +**Example main.tex structure** (ACM template standard format): +```latex +\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 Anonymous Submission Special Configuration + +For KDD 2026 (using ACM acmart template), add the `nonacm` option to the document class to remove footnotes: + +```latex +%% ============================================================================ +%% 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} +``` + +### Create Section Files (text/) + +Create independent .tex files for each section, **containing only section content** without `\begin{document}` etc.: + +**text/01-introduction.tex**: +```latex +\section{Introduction} +% TODO: Write introduction content +``` + +**text/02-related-work.tex**: +```latex +\section{Related Work} +% TODO: Write related work content +``` + +**text/03-method.tex**: +```latex +\section{Method} +% TODO: Write method content +``` + +**text/04-experiments.tex**: +```latex +\section{Experiments} +% TODO: Write experiments content +``` + +**text/05-conclusion.tex**: +```latex +\section{Conclusion} +% TODO: Write conclusion content +``` + +**Important notes:** +- **Abstract** should be placed in main.tex preamble (before `\begin{document}`), after `\maketitle` +- **Files in text/ contain only sections**, starting with `\section{...}` +- Do not include `\begin{document}` or other wrappers in text/ files + +### Copy Style Files (styles/) + +Copy all `.sty` and `.cls` files from the original template to `styles/`: + +```bash +find /tmp/latex-template-temp -type f \( -name "*.sty" -o -name "*.cls" \) -exec cp {} output/styles/ \; +``` + +**Note:** Maintain the original template's directory structure (e.g., `acmart/`), only move to `styles/`. + +### Handle Images and Tables + +```bash +# 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 +``` + +### Create Example Table File + +**Important:** Overleaf automatically deletes empty directories. To prevent the `tables/` directory from being deleted, create an example table file: + +```bash +# 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 +``` + +**Notes:** +- If the original template already has table files, this step can be skipped +- The example table is only to prevent directory deletion; it can be deleted or replaced +- Reference tables in the paper using `\input{tables/example-table.tex}` or copy table content directly into section files + +### Copy Bibliography + +```bash +# Copy .bib files +find /tmp/latex-template-temp -type f -name "*.bib" -exec cp {} output/ \; +``` + +## Step 6: Generate README + +### Information Source Priority + +1. **Conference link provided by user** → Extract using WebFetch +2. **Template file comments** → Extract from .tex files +3. **Default inference** → Infer from `\documentclass` + +### README Template + +```markdown +# [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} +``` + +### Adding Tables +```latex +\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} +``` + +### Adding References +Add entries to `references.bib` and cite in text using `\cite{key}`. + +## Notes +- [Warnings extracted from template comments] +- [Important notes extracted from website] +``` + +### 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." +``` + +## Error Handling + +| Error Scenario | Handling Approach | +|----------------|-------------------| +| Main file not found | List all .tex files, let user choose | +| Dependency file missing | Warn user, attempt to locate from template directory | +| Cannot extract conference info | Use default info from template, mark as [To be confirmed] | +| Website inaccessible | Fall back to template comments, prompt user to fill in manually | +| Extraction failed | Prompt user to check .zip file integrity | + +## Common Conference Template Types + +| Conference | Document Class | Notes | +|------------|---------------|-------| +| **KDD (ACM SIGKDD)** | `acmart` | **Anonymous submission requires `nonacm` option to remove footnotes** | +| ACM Conferences | `acmart` | Requires anonymous mode `\acmReview{anonymous}` | +| CVPR/ICCV | `cvpr` | Two-column, strict page limits | +| NeurIPS | `neurips_2025` | Anonymous review, no page limit | +| ICLR | `iclr2025_conference` | Two-column, requires session info | +| AAAI | `aaai25` | Two-column, 8 pages + references | + +### KDD Anonymous Submission Configuration Notes + +KDD 2026 uses the ACM acmart template and requires special configuration for anonymous submission: + +**Submission version** (remove all ACM metadata footnotes): +```latex +\documentclass[sigconf,anonymous,review,nonacm]{acmart} +\settopmatter{printacmref=false} +\setcopyright{none} +\acmConference[]{}{}{} +\acmYear{} +\acmISBN{} +\acmDOI{} +``` + +**Camera-ready version** (restore ACM metadata): +```latex +\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} +``` + +## Quick Reference + +### Detect Document Type +```bash +# 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 +``` + +### Common Cleanup Patterns +```bash +# Remove example files +rm -f sample-* example-* demo-* test-* + +# Remove temporary files +rm -f *.aux *.log *.out *.bbl *.blg +``` |
