I recently started teaching LaTeX to a friend. I had given him a copy of
TeX Live 2016 since Internet is unstable where we are and MikTeX creates the
hassle of installing packages that might be needed as you progress.
After going through some of the basics, he asked about all of the possible
document classes that can be used. At that time, I only knew about article
,
report
, book
, IEEEtran
and memoir
. Custom classes would have their own
definition but these were all that I had used till now.
I didn’t know the answer, so I searched and the answer was avaiable on
TeX.SE. The question asked was How do I list the available classes in my installation? Unfortunately, the answer was aimed at *NIX systems
only.
Fortunately, the solution can be partly adapted for Windows. I found the
required ls-R
file at C:\texlive\2016\texmf-dist
. I’ve got Git Bash
installed along with MinGW so grep
would not be a problem.
I copied the ls-R
file to the Desktop and ran the following from Git Bash,
grep "\.cls"$ ls-R | sort > latex_classes.txt
The command takes all the entries in the file that end with .cls
(document
class extension), sorts them alphabetically, and then saves them into the
latex_classes.txt
file.
The contents of latex_classes.txt
can be found after this paragraph. If you
know what any of the classes are for, please do leave a comment.