For years, I was faithfully downloading a copy of TeX by Topic whenever I reinstalled my computer. Then I learnt about texdoc texbytopic and my life got just that smidgen easier. I've just returned from a foray in cyberspace where I wanted to learn about the \mathpalette command and found TeX for the impatient. One of the exotic fruits I found on that foray was Where can I find an online manual for low-level LaTeX commands? where Martin suggested texdoc impatient.

On the basis that a book in texdoc is

  1. free,
  2. on my system, and
  3. at least vaguely approved by the TeX community

if I found myself at a loose end one evening and wanted to curl up with a good book on TeX, the ones in texdoc seem a good place to start.

But knowing what is there is a difficult task, so I thought that a nice CW list would help us all find something to read on those long winter nights.

I think that this is an obvious CW question (assuming it doesn't get closed) and one organised answer would be better than a load of disorganised ones. What would be useful information to have would be:

  1. Name of book
  2. texdoc invocation
  3. Which main distributions is it in (TeXLive? MikTeX?)
  4. Vague area of coverage

As I intend this to be CW, we can build that up incrementally, so if you know of a book but don't know about distributions, list it and someone can test if it's in their distribution.

One thing to be clear is that this is not for individual packages, even if the documentation is more like a book than anything else.

  • Good question. I didn't "grow up" with texdoc and as a result, it is always my destination of last resort and I have no idea what is there. – Ryan Reich Sep 6 '11 at 15:33
  • 1
    None of the texdoc xxx with the the books listed in these posts works for me with MiKTeX 2.9. For manuals of packages that I have installed, it does work. Does MiKTeX not contain them or might there be some other issue so that I should ask a separate question? – doncherry Sep 9 '11 at 19:11
  • @doncherry: (I don't have MiKTeX so can't test this myself) are the files on the system? Can you search for, say, texbytopic.pdf? – Loop Space Sep 9 '11 at 19:14
  • @Andrew: No, can't be found. I don't have the full install of MiKTeX though, so only when I first use a package it's downloaded. I double-checked the package manager and found something, I'm working on an answer right now. – doncherry Sep 9 '11 at 19:40
  • texdoc texdoc does not produce an infinite loop but brings the documentation of texdoc up. It is useful for those who do not know what texdoc is. – kiss my armpit Jul 18 '14 at 16:19

In addition to "TeX by Topic":

  1. Oetiker's "The Not So Short Introduction to LaTeX 2ε" in English. Available in other languages as, for example, texdoc lshort-german but these are usually older than the English version. Invoke as texdoc lshort in TeX Live
    Not all language versions are obvious; to get a full list of what's available, at least on linux, texdoc -l lshort; as of July 2014, there are over 60 possibilities, of which 17 are marked "The document itself".

  2. Knuth's “TeX82” (= "TeX: The Program"). Invoke as texdoc tex in TeX Live.

  3. "TeX for the Impatient” (2003) by Abrahams, Hargreaves and Berry. Invoke as texdoc impatient/book.pdf in TeX Live. Also available in French as texdoc impatient-fr/fbook.pdf.

  4. "A Few Notes on Book Design" (2009) by Peter R Wilson. Available as texdoc memdesign in TeX Live. Whilst originally part of the memoir class documentation it is now separate from that documentation and is a volume on book design in its own right so I think it can satisfy the criteria for this list.


It seems to me that given a package name, texdoc will search for a PDF in the package directory and display it using your favorite PDF reader.

For example, when typing texdoc impatient, it opens:


When typing texdoc texbytopic, it opens:


etc. With that in mind, here is a quick and dirty way to get a list of parameters you can pass to texdoc using sed:

find /path/to/texlive/2011/ -type f -name '*.pdf' | sed 's@.*/\([^/][^/]*\)/[^/][^/]*\.pdf@\1@' | sort -u

which on TL2011 returns 1720 names.

That said, the books you mentioned were found specifically in /path/to/texlive/2011/texmf-dist/doc/plain, so you can restrict that to:

find /path/to/texlive/2011/texmf-dist/doc/plain/ -type f -name '*.pdf' | sed 's@.*/\([^/][^/]*\)/[^/][^/]*\.pdf@\1@' | sort -u

which returns 14 results:

  • 1
    Exactly! 1720 is a bit too many for me to go through and figure out which are books and which are package documentation. I'm after the things that you can get via texdoc that you would never find if all you ever did was texdoc package. – Loop Space Sep 6 '11 at 8:12
  • 1
    For some reason the sed command didn’t work on my Mac – not sure what the issue is (surely something to do with extended regex) but the following version did: sed 's@^.*/\([^/]*\)/[^/]*\.pdf$@\1@'. – Konrad Rudolph Sep 6 '11 at 10:08
  • @Konrad: MacOS doesn't use GNU Sed, it's another version (with slightly different options and syntax). – ℝaphink Sep 6 '11 at 10:12
  • @Raphink True but I’m not aware of any syntax changes in the above expression. Specifically, \+ should normally work the same since both commands use the BRE dialect by default. – Konrad Rudolph Sep 6 '11 at 10:18
  • The sed command should now work on both Mac and GNU/Linux. I converted Raphink's regular expression to POSIX BRE format (and dropped the unnecessary -e). – mvkorpel Jul 18 '14 at 10:25

texdoc gentle gets you michael doob's "a gentle introduction to tex", which was the precursor to "tex starting from square 1" and still a good resource for learning about plain tex. in tex live; don't know about other distributions.

somewhat more obvious is texdoc metapost, "metapost, a user's manual"; although this is user documentation rather than a formal book, mp is a large enough system that the user's manual (it doesn't cover the program code itself) seems to fall within the subject category.

although it's not about tex itself, texdoc comprehensive, for "the comprehensive latex symbol list`, covers an area that's the subject of lots of questions, and might be the resource most frequently cited in answers.

in the tex family, though also not about tex itself, texdoc mf gets "metafont: the program".


In addition to the above answers, In TeXLive distribution the texdoc command line has a Perl/Tk-based GUI known as texdoctk for easy ac­cess to pack­age doc­u­men­ta­tion.

On Windows 7 with TeXLive 2012 it works without any installation perl/tk

enter image description here

On Ubuntu with TeXLive 2012 it needs installation perl/tk

enter image description here

With any keyword/package name in GUI TeX Documentation Browser search box it leads to list of relevant pdfs similar to texdoc -l <keyword>

PS: It's another choice available, kindly ignore incase you know or prefer command line. To have it for record.



Most of the answers here refer to TeX Live and I couldn't really retrieve any of them with MiKTeX 2.9, so I tried to find out what MiKTeX has in store. The package manager lists the following as "Documentation":

l2tabu ~-english ~-italian
lshort-english ~-finnish ~-french ~-german ~-mongolian ~-persian ~-polish ~-portuguese
     ~-russian ~-slovak ~-slovenian ~-spanish ~-ukranian

To be able to access these, you need to install them via the package manager first.

I tried invoking some of these via texdoc and it seems to me that you can only invoke those available in a compiled form (pdf or dvi) or as HTML files (uk-tex-faq). texdoc knuth doesn't work, presumably because you're not allowed to compile The TeX Book. (See additionally How to force MikTeX' texdoc to open package manuals with a PDF reader rather than the DVI viewer?.)

Obviously, not all of these can be called a book, but I'm afraid this is all there is in MiKTeX.

  • How to deal with documents like ascii-chart and – more important, I think – voss-mathmode, what are uncategorized? – Speravir Feb 27 '13 at 18:37

My LaTeX books can be read via texdoc:

texdoc dickimaw-novices

for "LaTeX for Complete Novices" (introductory) and

texdoc dickimaw-thesis

for "Using LaTeX to Write a PhD Thesis" (thesis-related topics).

The article "Creating a LaTeX minimal example" (debugging techniques) is also available via texdoc:

texdoc dickimaw-minexample

I will also add my pending LaTeX book "LaTeX for Administrative Work" (intermediate to advanced admin-related topics) to CTAN at some point after it's published. If you do:

texdoc -l dickimaw

you'll get the list of available documents. (Available on both MiKTeX and TeX Live.)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.