0

For external packages CTAN provides the needed documentation, however, for built-in Latex commands I am not aware of any proper documentation except for The (not so) short introduction to Latex which doesn't really list all the options

I would like to know how I could check all the available environments, commands and relative optional fields of all the built-in commands of Latex more or less like I would use the man command under linux.

I'm looking for something exhaustive like the KOMA-script documentation that breaks down every single piece available.

Maxiride
  • 526

1 Answers1

0

There is official documentation of all LaTeX macros at user level:

Leslie Lamport, “LaTeX: A Document Preparation System (2nd Edition)” ISBN 978-0201529838

(also known as the “LaTeX Manual”)

Frank Mittelbach and Michel Goossens (with Johannes Braams, David Carlisle and Chris Rowley), “The LaTeX Companion (Tools and Techniques for Computer Typesetting) 2nd Edition” ISBN 978-0201362992

(also known as the “Companion”)

Guessing from latex.ltx the arguments is an almost hopeless task. For instance, \section is a macro with no argument, which calls \@startsection which has six arguments and in turn calls either \@ssect (one argument) or \@sect (one optional and one mandatory argument), depending on whether a * follows \section.

With some LaTeX programming experience, one can get through, but one of those manuals is necessary if the whole story is needed.

I own the first and second edition of both the Manual and the Companion; actually two copies of the second edition of the Companion, plus the electronic edition. One of the two paper copies is a gift of the publisher. And, believe it or not, I go and check them when I have to be sure about some command's syntax.

egreg
  • 1,121,712
  • 1994 is the year of publication of the Leslie book, would you still recommend it even after such a long time? – Maxiride Dec 04 '17 at 16:59
  • @Maxiride There have been changes in the internals, but no change in the syntax and workings of the user level commands. Some additions have been made, though, particularly in the field of input encoding. – egreg Dec 04 '17 at 17:05