# LaTeX cookbook?

Has anyone written, or is anyone working on, a LaTeX cookbook? Specifically, a guide to writing intermediate/advanced LaTeX macros and solutions to other common tasks?

I found a handful of resources on the Web, but these were all brief and basic and appeared to be written for beginners. I also found a document called "Advanced LaTeX", which looks good, but is only 23 pages, and is actually only intermediate rather than advanced.

I would love to have on my shelf a thick book that covers hundreds of short practical topics, with lots of visual examples.

Things I have wondered how to do—and eventually learned thanks to folks here who have kindly answered my questions—include:

Symbols

• Using \ooalign to stack glyphs for finely-tuned custom symbols.
• Creating custom symbols with TikZ when a symbol can't easily be created by mixing existing symbols.
• Extracting a single glyph from a font without loading the font to use in a macro.
• Patching \verbatim* and \verb* to override a symbol.

Styles

• Testing whether the current style is slant or italic.
• Using \mathchoice to ensure a macro displays properly in various math contexts.

General

• Using \makeatletter and \makeatother for internal sub-macros.
• Detecting an optional argument inside a macro.
• Extracting specific characters from a macro argument string.
• Using \futurelet to query the next token.
• Using \ifthenelse to select different behaviors within a macro (I didn't even know about the ifthen package until yesterday, and I wish I'd known about it weeks ago).
• Using \fbox to debug heights, depths, and width issues.

Formatting

• Custom vertical and horizontal spacing in the tabular environment.
• When and how to use \parbox.
• Subtle differences between \hbox and \mbox.

Words

• Right and wrong ways to suppress ligatures within a tricky word (such as "shelfful" or "cufflinks").

Many of these things turned out to be easy, but some (like \mathchoice, \ooalign, and \futurelet) were difficult if not overwhelming at first attempt. Most common questions seem to have answers here on TeX.sx already, but the answers can be elusive when the magic word or phrase to search for is not known, or when the possibility itself is not known (I totally didn't know about TikZ/PGF, for example).

• "(I didn't even know about the ifthen package until yesterday, and I wish I'd known about it weeks ago)" No, really you don't, trust me:-) It's OK for quick top level branches that are only going to be made once or twice in a document, but you don't really want to use it embedded in a macro set as it spends 99% of its time trying to offer an infix top level syntax that you don't really care about in internal code. – David Carlisle Feb 3 '12 at 15:58
• \equal isn't a lot more than \def\xxx{#1}\def\yyy{#2}\ifx\xxx\yyy yes \else no\fi Perhaps I'm hard on ifthenelse but 2 decades later I still feel the pain of trying to take the syntax as given and making it do anything useful without locking up a 0.5M 386 PC for days on end:-) – David Carlisle Feb 3 '12 at 16:11
• LaTeX Hacks: Tipps und Techniken für professionellen Textsatz by Anselm Lingnau. It's in German but is readable with bit of google translate. Most of the cookbook formulae though are in the hundreds of packages on ctan. So far I have collected over 700 pages of notes on LaTeX and friends. – Yiannis Lazarides Feb 3 '12 at 17:06
• @YiannisLazarides: Nice! Do you have these notes published anywhere on the web? Or links organized? – Todd Lehman Feb 3 '12 at 17:09
• @anon They accumulated over time and \index is a powerful command:) I want to edit them and publish on the web as a Free ebook, later on in the year. – Yiannis Lazarides Feb 3 '12 at 17:32