7 Advanced LaTeX Hacks Every AI & CS Researcher Needs Before Submission published A developer shared seven advanced LaTeX hacks for AI and computer science researchers preparing papers for conferences like NeurIPS and ICLR. The techniques include using the microtype package to save lines, stfloats for better float placement, and TikZ externalization to speed up compilation. These tips aim to optimize layout, reduce compile times, and ease the submission process. It is 3:00 AM, twelve hours before the NeurIPS or ICLR submission deadline, and your double-column floating figure just jumped three pages downstream, turning your tight 8-page draft into a 10-page layout violation. If you have ever spent more time debugging Package tikz Error: Memory full or hunting down orphaned citation numbers than fine-tuning your model's hyper-parameters, you know the quiet desperation of academic typesetting under pressure. LaTeX remains the undisputed gold standard for technical publishing, yet most computer science and machine learning developers rely on basic templates and legacy workflows copied from decade-old StackExchange answers. Here are 7 advanced, field-tested LaTeX hacks that will optimize your compilation pipeline, save your layout under strict page limits, and shave hours off your paper writing workflow. microtype Sub-Pixel Optimization When you are 6 lines over an 8-page conference limit, cutting meaningful technical content feels like amputating a limb. Before you delete a crucial baseline description, enable font expansion and margin kerning via the microtype package. microtype adjusts font kerning, letter spacing, and hyphenation at a sub-pixel micro-typographic level. It subtly stretches or shrinks line widths to eliminate awkward word wraps "widows" and "orphans" without altering font sizes. % Add to your preamble works with pdfLaTeX, XeLaTeX, and LuaLaTeX \usepackage activate={true,nocompatibility},final,tracking=true,kerning=true,spacing=true,factor=1100,stretch=10,shrink=10 {microtype} % Micro-adjust spacing between characters \microtypecontext{spacing=noninclusive} Result: You typically gain 10–25 lines across an 8-page paper without any perceptible change to visual readability or reviewer compliance. stfloats Double-column templates such as IEEE, ACM, or NeurIPS frequently misplace full-width environment floats \begin{figure } or \begin{table } . By default, LaTeX pushes full-width figures to the top of the following page, often throwing your figures several sections out of order. Include stfloats to enable bottom placement b for two-column floats and force strict ordering: \usepackage{stfloats} % Enables double-column floats at the bottom of the page \begin{figure } b \centering \includegraphics width=0.95\linewidth {figures/architecture diagram.pdf} \caption{Overview of our proposed Transformer architecture with attention visualizer.} \label{fig:architecture} \end{figure } | Float Specifier | Intended Behavior | Common Gotcha | |---|---|---| h | Place float approximately here | Silently ignored if page capacity is full | t | Top of the current or next page | Default preference for most LaTeX engines | b | Bottom of page | Requires stfloats or dblfloatfix for figure | p | Dedicated page of floats | Triggered automatically when floats pile up | | Override internal layout constraints | Forces placement; can disrupt text flow | Vector graphics generated via TikZ produce gorgeous, scalable diagrams, but re-parsing complex geometric nodes on every document save slows compilation to a crawl. Use the external library to compile TikZ graphics once into cached PDF snippets. LaTeX will automatically reuse the compiled PDFs unless the underlying TikZ code is edited. \usepackage{tikz} \usetikzlibrary{external} % Enable caching in a dedicated subfolder \tikzexternalize prefix=figures/compiled tikz/ | Pipeline Configuration | Cold Compile Time | Hot Re-Compile Time | Memory Usage | |---|---|---|---| | Standard Inline TikZ | 42.4 seconds | 41.8 seconds | High 480MB RAM | Standalone .tex Subfiles | 38.1 seconds | 37.9 seconds | Moderate 310MB RAM | TikZ Externalization Cached | 43.1 seconds | 3.2 seconds | Low 85MB RAM | booktabs + siunitx Default LaTeX tables look amateurish when cluttered with vertical lines |c|c| and misaligned numbers. Top-tier conferences expect clean, professional typography with numeric alignment centered around decimal points. Combine booktabs for formal horizontal rules with siunitx for automated decimal alignment: \usepackage{booktabs} \usepackage{siunitx} % Configure decimal alignment precision \sisetup{table-format=2.2, table-auto-round} \begin{table} t \centering \caption{Top-1 Accuracy % on ImageNet-1k across baseline models.} \label{tab:results} \begin{tabular}{l S S} \toprule \textbf{Model Architecture} & \textbf{Baseline \% } & \textbf{Ours \% } \\ \midrule ResNet-50 & 76.13 & 78.45 \\ ViT-Base/16 & 81.80 & 84.12 \\ ConvNeXt-Large & 84.30 & 86.91 \\ \bottomrule \end{tabular} \end{table} cleveref Stop manually writing Figure~\ref{fig:arch} or Section~\ref{sec:methods} . Hardcoded prefixes waste time and introduce inconsistencies when moving sections around during peer review. The cleveref package automatically detects whether your target reference is a figure, table, equation, algorithm, or section, applying the appropriate capitalized label automatically: \usepackage{hyperref} \usepackage{cleveref} % MUST be loaded AFTER hyperref % Usage in body text: As demonstrated in \cref{fig:architecture} and detailed in \Cref{sec:methods}, our model outperforming prior baselines \cref{eq:loss function} . Massive BibTeX files exported from Google Scholar or Zotero often include irrelevant metadata like location , isbn , issn , url , or doi fields that spill over onto extra pages in the references section. If using biblatex , suppress secondary fields directly in your preamble rather than editing hundreds of .bib entries by hand: \usepackage backend=biber, style=numeric-comp, sorting=none {biblatex} % Suppress non-essential reference fields automatically \AtEveryBibitem{ \clearfield{issn} \clearfield{isbn} \clearfield{doi} \clearfield{url} \clearfield{note} \clearlist{language} } \addbibresource{references.bib} When collaborating with multiple developers across institutions, inconsistent mathematical notation e.g., one author writing \mathbf{x} , another writing \vec{x} , and a third writing \bm{x} creates an unpolished paper. Establish a single macros.tex file defining standard semantic shorthand for vectors, matrices, expectation operators, and loss functions: % --- Math Shorthand Definitions --- \newcommand{\R}{\mathbb{R}} % Real number set \newcommand{\E}{\mathbb{E}} % Expectation operator \newcommand{\mat} 1 {\mathbf{ 1}} % Bold matrices \newcommand{\vec} 1 {\boldsymbol{ 1}} % Bold vectors \DeclareMathOperator {\argmax}{arg\,max} % Argmax with proper limits \DeclareMathOperator {\argmin}{arg\,min} % Argmax with proper limits Mastering macros and preamble tricks helps eliminate layout bottlenecks, but local compilation failures, environment mismatches between co-authors, and merge conflicts during paper sprint weeks remain major productivity drains. If you are looking for a modern, browser-based LaTeX environment built from the ground up for real-time developer collaboration, check out LetX . Unlike legacy editors, LetX offers: Try LetX for free today and make your next paper submission deadline completely stress-free.