--- 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} 10010405.10010444.10010447 Applied computing~... 500 \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 ```