Check out my first novel, midnight's simulacra!
LaTeX
Punctuation
Quotation Marks
Use `` for the left mark, and two apostrophes for the right.
Hyphens/Dashes
- Hyphens separate the parts of a compound word. Use a single '-', without spaces.
- Endashes separate the bounds of a range, usually numerics. Use two '-' characters, without spaces.
- Emdashes separate distinct thoughts. Use three '-' characters, without spaces.
- Minus signs are a mathematical entity. Use a single '-' in math mode.
Periods
To get correct spacing:
- Use ".\ " if the period does not end the sentence.
- Use "\@. " if the period ends the sentence, and follows a capital letter.
Ellipses
Use \ldots (or \cdots for line-centered dots).
- Don't use three periods (bad spacing) or the Unicode character '…' (HORIZONTAL ELLIPSIS, U+2026).
- What about \dots? fixme
Tildes
Generally, \textasciitilde{} is the way to go. In math mode, use \sim.
- When typesetting a url, the url and hyperref packages handle tildes properly.
Backslashes
Use \textbackslash{} to render a backslash in text.
Lists
Enclose bulleted lists within a \begin{itemize} and \end{itemize} block. Each element is preceded by \item.
- enumerate will give numbers instead of bullets
- description generates labeled items. Provide each label in square brackets: \item[label]
Tables
- Use tabularray!
Appearance
Fonts
- Bold: \textbf{boldfaced text}
- Italics: \textit{italicized text} (it is advised to end most italicized sequences with "\/")
- Monospace: \texttt{typewriter-stylized text}
Spacing
- The default margins are generally 1.5" or more, more suitable for books than other documents. For 1" margins, add \usepackage{fullpage}.
- Double-spacing can be achieved (in the main body) via \usepackage{doublespace}
- Return to single-spacing via \begin{singlespace} and \end{singlespace} blocks.
- \vfill, \vspace{amount} and \pagebreak
Special Forms
To include monospaced documents (code, emails, etc) use \VerbatimInput on a filename argument. This requires the moreverb package.
- Important attributes include fontsize, frame, framerule, label, and numbers
Unicode
Basic LaTeX doesn't support UTF-8 beyond expanding macros based on lexical sequences. If this is intended, use the utf8 parameter to the inputenc package. XeTeX aims to be a fully Unicode-aware TeX engine.
BibTeX
- Style examples
- Protect anything like capitalization, accented characters etc with curly braces
- A good list of BibTeX tips
- My BibTeX repository
Checkers
Of these, ChkTeX seems more fully-featured than lacheck. Neither is actively maintained.
- ChkTeX
- Watch out for some idiosyncrasies of ChkTeX. In particular, its error #38 is a false positive using the standard rules of American English.
- Rule emission can be controlled with command-line options or ~/.chktexrc
- I use -n 38
- This has the (more descriptive) .chktexrc equivalent
QuoteStyle = Traditional
(default: Logical)
- lacheck
See Also
- StackOverflow post, "Entering Unicode characters in LaTeX"
- Martin J. Osborne's "Common (La)TeX errors"
- MIT's "Essential LaTeX on Athena (AC-50)"