Your support for our advertisers helps cover the cost of hosting, research, and maintenance of this document

Formatting Information — An introduction to typesetting with LATEX

Appendix A: Installation

Section 3: Picking an Editor

One of the best features of TEX-based systems like LATEX is that they don’t force you to use any particular editor or viewer: you can pick one that you’re comfortable with.

One of the worst features (for a beginner) is not understanding this: many new users have never come across this flexibility in software before, and may be unfamiliar with the idea that you don’t have to do what your vendor says: you can pick and choose.

Nevertheless, I’m solving this by edict for beginners here: unless you already have a pet editor or viewer, just use the one shown below. If you’re an experienced computer user, see the comments at the end of this section.

So for beginners, in the case of ProTEXt (Windows) and MacTEX (Macs) the editor is the one that comes with the distribution (TEXMakerX and TEXshop respectively). Unix and GNU/Linux users need to choose and install an editor separately.

SystemPackageEngineEditorViewer
Microsoft WindowsProTEXtMiKTEXTEXMakerXAdobe Acrobat Reader
Apple Mac OS XMacTEXgwTEXTEXshopPreview
Unix and GNU/LinuxTEX LiveTEX LiveKile, TEXMaker, or EmacsOkular, Evince, or qpdfview

However, there are many other editors, if you want to try them out and pick one you are comfortable with. In particular, Emacs is also available for Windows (and for Mac OS X — Aquamacs); TEXMaker is also available for Macs; and the LYX near-WYSIWYG front-end to LATEX is available for all platforms.

Have a look at Barbara Beeton’s slide on Features of a good editor, slide 4 from her presentation at TUG 2017 (Beeton, 2017).

Experienced computer users should also read Michael Sperberg-McQueen’s very sensible and relevant comments:

Twenty years ago, when my computer center required us all to start moving our data from VM/CMS to Unix, and we were all trying to decide which of the available text editors to invest time in learning, I formulated one of the few general principles of computer usage that has ever been revealed to me:

  1. If you are a serious computer user, you will spend more time in your text editor than in any other single application. Choosing well is a good idea.

  2. It takes a long time to learn an editor well. You will not learn 2000 editing programs between now and the day you stop using computers at all — you may only learn two or three. Choosing wisely is important to avoid wasting time.

  3. The first question to ask, when considering any candidate editor, is ‘when I write a macro for this editor, what is the name of the language I’m writing in?’

    There are three classes of answer:

    • Answers of the form ‘you don’t, there are no macros in ———’. These won’t normally occur, since such editors won’t ever actually be candidates for serious day-in day-out use.

    • Answers of the form ‘It’s a specialized macro lang———’. You needn’t listen to the end of these; the editor is not worth investing your time to learn.

    • Answers of the form ‘X’, where ‘X’ is the name of a ‘real’ programming language, with variables and functions and flow of control and all of those things.

It was on this basis that I chose Emacs over vi. (A decision, I may say, that I have never regretted.)

The importance of macros was pretty clear to me because over my years of using VM, I had written dozens of macros for XEdit, the system editor, and the fact that I could write them in a well designed programming language (Rexx) was really important.

The funny thing is that having chosen Emacs over vi because it has a real programming language for macros, I then used Emacs for ten years or more before I ever actually used Lisp to write any macros. I decided that this was because all the macros I needed seemed to have been written by someone else already.