In the past, I've given up learning LaTeX because:


  • Installing and using fonts is a pain.
  • Simple things like custom page headers are insufferably hard to implement.
  • Documentation for the above items is incomplete.
  • LaTeX shows 10 errors for every 1 SLOC, so the code is impossible to debug.
  • So many errors that I feel like my code will never compile.
  • It's a pain having to scroll/find a previewed page every time I update it.


  • Code that compiles in LyX doesn't compile in TeXnicCenter/MiKTeX.
  • Code that compiles in TeXnicCenter/MiKTeX doesn't compile in TeXShop/MacTeX.
  • Code that compiles in TeXShop/MacTeX doesn't compile in LyX.
  • Specifically, adding newlines breaks compilation.


  • TeXShop/MacTeX requires 1GB of hard drive space.
  • TeXShop has no Windows or Linux version.
  • TeXShop has few graphical abilities. I would do better with vi or emacs.
  • TeXnicCenter has no Linux or Mac OS X version.
  • TeXnicCenter updates references such as table of contents and BibTeX every three compiles.
  • TeXnicCenter compilation shortcut requires four button presses on a Mac laptop.
  • LyX's WYSIWYG isn't really a WYSIWYG.

I was able to quickly learn Perl, Python, Ruby, newLISP, and Haskell because they don't have these problems. Instead, these languages offer:

  • A single multiplatform, standard edition.
  • Alternative editions for the minority of users who really need them.
  • A small collection of binaries: perl, cpan; python, pythonw; ruby, irb, rdoc; newlisp; ghc, ghci, runghc, hugs, runhugs.
  • All-in-one installers: ActiveState Perl, Python, RubyInstaller, newLISP, Haskell Platform.
  • Small installation size (with the exception of GHC Haskell vs Hugs)
  • Detailed tutorials with solutions for common errors.

In conclusion, I reserve judgment on TeX/LaTeX until the community not only produces a multiplatform system, but champions it in a highly visible way. LyX isn't even mentioned at Obtaining LaTeX.

  • 3
    This is a rant why you do not want to use LaTeX, not a question. So, what exactly is your question?
    – Caramdir
    Aug 10 '10 at 15:21
  • 1
    TeX Live requires 1GB of hard drive space. Light installs don't. Aug 10 '10 at 15:22
  • 1
    TeX Live has no Mac OS X version. It installs just fine. Aug 10 '10 at 15:22
  • 2
    TeXlive does not require 1 GB. The ‘full’ scheme does, not you can install light or medium schemes instead, and then use tlmgr to install any additional packages individually.
    – frabjous
    Aug 10 '10 at 15:32
  • 4
    That TeX is turing complete is beside the point - it has a very different purpose. But please do post (maybe as a new question?) the issue you've had with code not compiling under MacTeX. Except for missing (or different versions of) packages, I've never had any issues compiling under different platforms. Likely that issue is fixable. (PS: Last I checked, MS Word does not run on Linux, so I'd hardly call it 'multiplatform'...)
    – Neil Olver
    Aug 10 '10 at 15:39
  • TeXworks is a multi-platform editor and user friendly. It can use the same input encoding on Windows and on Linux and Mac OS X.

  • Texmaker is multi-platform and a complex editor

  • TeX Live is a multi-platform distribution. It worked fine for me on Linux and on Windows.

  • LyX is cross-platform as well.

  • TeXworks looks good. If it uses MiKTeX, MacTeX, etc. then I will still have cross-compilation errors. I've already discussed TeX Live and Lyx.
    – mcandre
    Aug 10 '10 at 15:09
  • What do you mean by "cross-compilation". Since the target is always a .pdf or .ps file cross-compilation doesn't make sense (see en.wikipedia.org/wiki/Cross_compilation for a definition of the term)
    – Caramdir
    Aug 10 '10 at 15:24
  • Caramdir, I of course mean compiling a PDF within a TeX system on Mac, Windows, and Linux. Yes, a PDF is a portable format. What's not portable is TeX code to generate the PDF.
    – mcandre
    Aug 10 '10 at 15:33
  • 1
    In that case use a cross-platform distribution like TeX Live besides your cross-platform editor TeXworks. If you choose a platform specific editor it's not the fault of the editor. I don't think the editor has to refuse to work with os specific distris.
    – Stefan Kottwitz
    Aug 10 '10 at 15:34
  • 1
    Thank you, Stefan. Note that TexMaker is dead, with no redirect to its successor, TexMakerX: texmakerx.sourceforge.net
    – mcandre
    Aug 10 '10 at 15:38

I am glad you are still willing to give TeX a shot! The learning curve can be steep, but hopefully this site can help. There are already answers for most of the points you raised:

Installing and using fonts is a pain.

This can be difficult- but package management tools like TeX Live's tlmgr amd MikTeX's mpm can take most of the pain away. The LaTeX Font Catalouge is a great place to see which fonts are available and how to use them.

TeX and LaTeX are moving towards tighter integration with system fonts through the efforts put into the XeTeX and LuaTeX engines. See the fontspec package for details on how to use those engines to access system fonts.

Simple things like custom page headers are insufferably hard to implement.

There are packages and class files that simplify this considerably. The fancyhdr package is a good choice and the memoir document class has comparable support baked-in.

Also see, How to set the font for a section for similar discussion concerning section and chapter headings.

LaTeX shows 10 errors for every 1 SLOC, so the code is impossible to debug.

Most of the output of TeX and LaTeX consists of notes about where the typesetting engine was forced to make sub-optimal decisions in order to produce a document that is better overall. All the noise about "badness" is related to this- badness is a metric that TeX tries to optimize to a minimum when typesetting. See Formatting the console output of Latex for information about how to reduce the verbosity of the log output.

It's a pain having to scroll/find a previewed page every time I update it.

A good editor should help with this.

Code that compiles in LyX doesn't compile in TeXnicCenter/MiKTeX.

This is most likely because LyX code is not LaTeX code- it won't compile outside of the LyX environment unless exported. This also means that LaTeX code won't compile in LyX unless imported or transcribed.

Code that compiles in TeXnicCenter/MiKTeX doesn't compile in TeXShop/MacTeX.

Probably due to missing packages- tlmgr and mpm should help with this. mpm is more helpful with on-the-fly installation of missing components.

TeXShop/MacTeX requires 1GB of hard drive space.

This is for the full everything-including-the-kitchen-sink install. You can select subsections when installing via the install-tl instructions are here. See also Why is the MacTeX distribution so large? Is there anything smaller for OS X?.

TeXnicCenter updates references such as table of contents and BibTeX every three compiles.

This is by design in LaTeX. To get a complete Bibliography with references you must run:

pdflatex document
bibtex document
pdflatex document
pdflatex document

This is because TeX writes out metadata about cross-references that gets used to enhance the output on subsequent runs:

  1. On the first pdflatex run, information gets written concerning which citations are needed.

  2. bibtex uses that information to pull the required citations from a database.

  3. pdflatex then uses the bibtex output to produce a bibliography.

  4. With a bibliography present, pdflatex can finally insert citations in the text.

See Tools for automating document compilation for ways to make this less of a chore.

LyX's WYSIWYG isn't really a WYSIWYG.

It is not supposed to be.

TeX-based systems do have a pile of quirks and "WTF moments" but compared to systems like MS Word you usually only have to jump these hurdles once. If I want to reuse a nicely formatted header/footer that I had in a document- I only have to open the source to find the exact steps that were executed to create them. And if there were "WTF issues" or "magic", I usually have a good comment explaining why part of the process looks like voodoo. Comparatively, I still waste a lot of time in MS Word with similar tasks because there is no good way to record in black and white the exact sequences of menu selections and clicks that led to a given output.

TeX requires a larger up-front investment of time to get comfortable with, but pays large dividends and your investment in learning the system will not be suddenly and drastically depreciated as was the case with the complete overhaul that occurred in MS Office 2007.

  • Nice detailed answer that isn't snarky like some of the rest. Thank-you for striving for quality. Aug 10 '10 at 16:40
  • Nice answer. You might add a notice about synctex, which is sipported out of the box by various editors, among them TexWorks and TexMaker.
    – matth
    Nov 11 '11 at 9:20

In my opinion, TexWorks + TeXLive is the user-friendliest cross-platform solution to TeX/LaTeX editing and previewing. I think LyX's attempt at WYSIWYG creates more confusion than it solves.

Incidentally, there is a Mac OSX version of TeX Live, and is called MacTeX. It comes with a bunch of extra features, but at its core it is the TeX Live distribution repackaged for easier installation and use on Mac OSX.

  • Plus plain old Texlive works just fine on Mac OSX. I'm not interested in Mactex's extra features, I want my setup on Linux and Mac OSX to be the same. Aug 10 '10 at 15:32
  • I use MacTeX but only for the slightly nicer installer (respecting the Mac file locations), but I miss out all of the 'extras', which like Charles I don't want/need.
    – Joseph Wright
    Aug 10 '10 at 16:39
  • @Joseph: If you use Texlive on both Linux and Mac OS, then "respecting the Mac file locations" may be something of a mixed blessing. Aug 11 '10 at 8:24

Vim, Emacs, Texworks, Texmaker, Kile and LyX are all cross-platform (though setting up Kile is tricky on some).

Unicode is the future. Save your files with Unicode encoding and refuse to use text editors that can't or don't. That should eliminate half your problems.

Incompatibilities between different versions of TeX systems do happen, but I think they tend to be temporary, and when identified, fixed ASAP. That's been my experience anyway. Just be sure to keep your system up to date.

FWIW, I’ve personally not have problems compiling source with DOS newlines using TeXlive on linux.


There's no doubt that the Tex family of software is disordered, tricky, and hard to master. If mastering Tex is the key, and that means mastering it in the same way as you want to master Haskell, then something minimalist will suffice: program in Plain Tex on Xetex. Then work through the following detailed tutorial:

  • Knuth, 1984, The TeXbook

which has lots of exercises, and is supported by an excellent reference work, TeX by Topic.

This is not the easiest way to use the Tex system for document processing, but it seems to address your learnability complaints. I believe that Texlive offers the multiplatform standard you are looking for, but it is not the easiest install, and, as I noted elsewhere, there are sometimes compatibility issues from one year to the next.

As for size, well, Word for Mac 2004 plus VBA scripting is over 300 Mb, and has a much smaller font collection than Texlive's full install.

  • As for ease if install: TeX Live for Windows comes (afaik) with a gui, has MacTeX for OS X and on Linux one usually installs everything through the Linux distribution's package manager anyway.
    – Caramdir
    Aug 10 '10 at 15:51

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