mathews-tom/armory/manuscript-typography

Claude Code and agent skill by mathews-tom/armory

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Audit academic manuscripts for typographic design conventions: booktabs table style, caption placement, dashes/quotes, units and numbers, cross-reference style, page layout, typographic hierarchy, professional polish. Triggers on: "check typography", "fix formatting", "polish my paper", "check my LaTeX", "typographic review", "make it look professional", "check tables", "fix captions". Companion to manuscript-review (content) and arxiv-preflight (compliance).

Install

npx vskill@latest install mathews-tom/armory/manuscript-typography

SKILL.md

Manuscript Typography Audit

Pipeline position: Phase 2b (polish audit). Runs in parallel with manuscript-provenance. Depends on: content settled after Phase 1 fixes. See /manuscript-pipeline for full execution order.

Purpose

Audit a LaTeX manuscript for widely-accepted academic typographic conventions that directly affect readability and professional appearance. These are not venue-specific formatting rules — they are cross-venue norms from decades of academic publishing that experienced readers and reviewers notice.

A paper with solid content but poor typography signals inexperience. Reviewers form impressions from visual presentation before reading a single sentence.

Relationship to Other Skills

Concernmanuscript-reviewmanuscript-typography (this)arxiv-preflight
Table contentData quality, significant figures (§12)Design: booktabs, alignment, headers, caption placementFormat compliance
Figure contentColorblind, axis labels, chartjunk (§12)Design: font matching, backgrounds, subfigure styleFormat/size compliance
Rendered outputLegibility, float proximity, page breaks (§23)Layout: widows, column balance, spacing, float specifiersN/A
Math notationNotation consistency, operator formatting (§15)Spacing, delimiter sizing, display vs inline choicesN/A
Cross-refsCitation hygiene (§11)Reference style consistency, non-breaking spacesN/A
TypographyN/ADashes, quotes, units, micro-typographyN/A
PolishN/ATODOs, placeholders, metadata, bookmarksN/A

Rule: This skill audits design and typography. manuscript-review audits content and communication. arxiv-preflight audits submission compliance. No overlap — each reads different signals from the same document.

Workflow

1. Ingest

Read all .tex files (main + \input/\include targets). Identify:

  • Document class and loaded packages
  • Two-column vs single-column layout
  • Target venue (if identifiable from class/template)

If compiled PDF is available, use it for rendered inspection checks.

2. Audit Passes

For each check:

  • FAIL — convention violated (document file, line, specific fix with LaTeX code)
  • WARN — debatable but worth considering
  • PASS — convention followed
  • N/A — not applicable

Pass 1 — Table Design

1.1 Rule structure

  • Use booktabs package: \toprule, \midrule, \bottomrule
  • No \hline (replace with booktabs equivalents)
  • No vertical rules (| in column spec) — vertical lines in tables are a hallmark of amateur typesetting
  • No double horizontal rules
  • Exception: if the document class mandates a specific table style, note but don't flag
latex
% BAD
\begin{tabular}{|l|c|r|}
\hline
Method & Accuracy & F1 \\
\hline\hline
Ours & 0.94 & 0.91 \\
\hline
\end{tabular}
% GOOD
\begin{tabular}{lcr}
\toprule
Method & Accuracy & F1 \\
\midrule
Ours & 0.94 & 0.91 \\
\bottomrule
\end{tabular}

1.2 Column alignment

  • Numeric columns: right-aligned or decimal-aligned (S column from siunitx)
  • Text columns: left-aligned
  • Center alignment: only for single characters or very short labels
  • Header alignment: matches column alignment or centered

1.3 Header formatting

  • Headers visually distinct from body (bold is standard: \textbf{})
  • No ALL CAPS headers (use bold or small caps)
  • Units in headers: parenthesized or bracketed — Latency (ms) not Latency ms

1.4 Best-result indication

  • If highlighting best results: consistent method across all tables (bold, underline, or marker)
  • Define the convention in the first table's caption or a footnote
  • Do not mix bold-for-best and underline-for-best across tables

1.5 Table notes

  • Footnotes/notes below the table, not in the caption
  • Use \tablenotes (threeparttable) or manual footnotes with consistent markers

1.6 Caption placement

  • Table captions ABOVE the table (universal convention)
  • \caption{} before \begin{tabular}
  • Not below — below is for figures

1.7 Caption formatting

  • Caption label ("Table 1:" / "Table 1.") in bold or small caps — visually distinct from the description text
  • Caption description text smaller than body text — \small (one step down) is standard; \footnotesize acceptable
  • Use the caption package to control this consistently:
latex
\usepackage[font=small, labelfont=bf]{caption}
% label ("Table 1:") = bold, description = \small
% applies uniformly to all figures AND tables
  • Never caption text at full body size — it visually competes with the main text and makes the document look untypeset
  • Never caption text below \footnotesize — becomes unreadable
  • Consistent across ALL captions (tables and figures use the same size/weight scheme)

1.8 Caption style

  • Consistent prefix: "Table 1:" or "Table 1." — not mixed (controlled by labelsep in caption package)
  • First sentence describes what the table shows
  • Caption is self-contained (interpretable without body text)

1.9 Spacing

  • \addlinespace (booktabs) for logical row groups, not empty rows
  • No \\[6pt] manual spacing hacks inside tables
  • Column separation adequate — use @{\hspace{...}} or \setlength{\tabcolsep} if too compressed

1.10 Long tables

  • Tables exceeding one page: use longtable or supertabular
  • Repeated headers on continuation pages
  • No font-size reduction to force a table onto one page (below \small is unreadable)

Pass 2 — Figure Design

2.1 Caption placement

  • Figure captions BELOW the figure (universal convention)
  • \caption{} after \includegraphics
  • Not above — above is for tables

2.2 Caption formatting

  • Same size/weight scheme as table captions — the caption package applies uniformly
  • Caption label ("Figure 1:") bold or small caps (matches table label style)
  • Caption description text at \small or \footnotesize (matches table caption size)
  • If not using caption package: verify manually that figure and table captions use identical formatting

2.3 Caption style

  • Consistent prefix: "Figure 1:" or "Figure 1." or "Fig. 1:" — pick one for all figures
  • Matches table caption style (if tables use "Table 1:", figures use "Figure 1:")
  • Caption self-contained

2.4 Subfigure labeling

  • Consistent style: (a), (b), (c) — not mixed with (i), (ii), (iii) or a), b), c)
  • Use subcaption or subfigure package — not manual lettering
  • Subfigure labels referenced consistently in text: "Figure 1(a)" not "Figure 1a" or "Figure 1 (a)" mixed

2.5 Font consistency

  • Text within figures (axis labels, annotations, legends) uses a font that complements the body text
  • Matching the body serif (Computer Modern, Times) or a clean sans-serif (Helvetica, CMSans) is standard
  • Matplotlib/R/MATLAB default fonts are visually distinct from LaTeX body text — flag when obvious
  • Font size in figures after scaling: readable at rendered size (cross-reference with manuscript-review §23)
  • Figure-internal text should be comparable to caption text size — not larger than body text, not smaller than footnotes

2.6 Background

  • White or transparent background — no gray plot backgrounds (matplotlib default axes.facecolor)
  • No colored frame/border unless it serves a purpose

2.7 Aspect ratio

  • Plots not stretched or compressed
  • Standard aspect ratios: 4:3, 16:9, golden ratio, or square
  • All panels in a multi-panel figure use the same aspect ratio

2.8 Consistent framing

  • All figures use the same border/frame approach (all framed or all unframed)
  • Consistent padding/margins around figure content

Pass 3 — LaTeX Typography

3.1 Dashes

  • Hyphen (-): compound words (well-known, state-of-the-art)
  • En-dash (--): number ranges (10--20, pages 5--12, 2020--2023). Common error: hyphen used for ranges ("10-20" → "10--20").
  • Em-dash (---): parenthetical asides and emphatic breaks. Em-dashes are accepted by CMOS 18, APA 7, and MLA 9 in academic prose — flag the following instead of banning the character:
  • Spacing inconsistency: CMOS/APA/MLA use closed em-dashes (text---text); journalistic AP style uses spaced (text --- text). Pick one and apply uniformly. Mixed usage = FAIL.
  • Overuse: more than ~1 em-dash per paragraph or ~3 per page tips into conversational register. Flag clusters as WARN; suggest restructuring to commas/colons/parentheses.
  • Misuse for ranges: em-dash where en-dash belongs (pages 5---12 should be pages 5--12) = FAIL.
  • AI-tell heuristic (advisory only, MEDIUM): dense em-dash usage combined with other AI-pattern markers can indicate unedited LLM output. Defer to manuscript-review Pass 7b for that judgment, do not flag em-dashes alone as AI tells.

3.2 Quotation marks

  • Opening: (backticks)
  • Closing: '' (straight single quotes)
  • Not "straight quotes" — renders incorrectly in TeX
  • Nested: ` inner' ` inside outer'' `

3.3 Ellipsis

  • \ldots or \dots — not three periods (...)
  • \ldots produces properly spaced ellipsis

3.4 Non-breaking spaces

  • Before \ref: Figure~\ref{fig:x}, Table~\ref{tab:x}, Section~\ref{sec:x}
  • Before \cite: previous work~\cite{smith2020}
  • Between number and unit: 10~ms or 10\,ms
  • Prevents line breaks that separate a label from its referent

3.5 Ties and thin spaces

  • Thin space between number and unit: 10\,ms, 5\,GB, 100\,K (use siunitx for consistency)
  • No space inside parenthetical citations: \cite{x} not \cite{ x }
  • No double spaces in source (harmless but untidy)

3.6 Semantic markup

  • \emph{text} over {\it text} or \textit{text} — \emph nests correctly
  • \textbf{} for bold, not {\bf }
  • New-style font commands (\textbf, \textit, \textsf) over old-style (\bf, \it, \sf)
  • \textrm{} for roman text inside math mode, not manual font switches

3.7 Micro-typography

  • \usepackage{microtype} — enables character protrusion and font expansion
  • Dramatically improves line breaking and margin alignment with zero effort
  • If not loaded, recommend adding it

3.8 Special characters

  • \& not & in text
  • \% not % in text
  • \# not # in text
  • \_ not _ in text
  • Degree symbol: $^\circ$ or \textdegree — not ° (Unicode)
  • Multiplication: $\times$ — not x

3.9 Ligatures

  • ff, fi, fl, ffi, ffl must render as proper ligatures (default in CM/Latin Modern fonts)
  • Flag if \DisableLigatures or microtype ligatures=false is set globally without reason
  • Some fonts break ligatures — if text renders "find" as "f ind" or similar, the font config is wrong
  • Ligatures should NOT cross morpheme boundaries in some compound words (e.g., "shelfful") — minor, WARN only

3.10 Italic usage — three distinct purposes

  • Emphasis: \emph{important} — for stress within a sentence
  • Foreign words: \textit{in vivo}, \textit{a priori} — for non-English terms not yet naturalized
  • Terms being defined: \textit{A convolutional layer is...} — for the first occurrence of a technical term being introduced
  • Using bold, ALL CAPS, or colored text for emphasis in running prose = FAIL
  • Consistent: if "in vitro" is italicized on page 3, it must be italicized everywhere (or nowhere if treated as naturalized)

3.11 No color for emphasis

  • Colored text in running prose for emphasis (red for important, blue for terms) = FAIL
  • Color belongs in figures, tables, and hyperlinks — not in body text
  • Exception: hyperref link colors for cross-references and URLs

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassed, 95 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
251
Repository forks
37
7-day trend score
28

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/mathews-tom/armory/manuscript-typography/badge)](https://verified-skill.com/skills/mathews-tom/armory/manuscript-typography)

Something wrong with this skill or its page? Tell us.