What editors/IDEs are available for easing the process of writing TeX/LaTeX documents?

Please state some useful features like code completion, spell checking, building final DVI or PDF files, etc.

This question is undergoing a systematic refurbishment, see Let’s polish the Editors/IDEs question on meta. If you’d like to see another editor feature covered here or to take care of an editor that’s not covered yet, share your ideas in that meta question.

Emacs is one of the oldest programmable editors, which supports the extensive LaTeX, ConTeXt, and Plain TeX editing mode, AUCTeX and its sister package for managing sources, RefTeX.

(In this screenshot, visual-line-mode is enabled. In this mode, lines that are wider than the window are broken between words. The line breaks are not added to the source file.)

RefTeX makes all your references as easy to find as a C-c <key>, for both BibTeX and biblatex, and also provides convenient shortcuts for navigating between sections in your document, bound by default to C-c =:

(Note that colour themes are completely customizable)

AUCTeX supports multi-file parsing, so that huge documents with \input or \include commands are easily compiled with C-c C-c from any of their files. No more going back to the master file in order to compile.

C-u C-c C-e allows you to change the current environment (eg. from align to align*) C-c C-. marks the current environment. C-c C-* marks the current section. C-c C-m allows you to insert a macro (it has a large autocomplete list...)
–
SeamusJun 1 '11 at 16:48

3

You mention that emacs does not have directives? But isn't that wrong? I can apply directives to which mode it should be compiled with, and also specify master files? That I would say are directives?
–
zerothFeb 18 '13 at 11:44

If you're really hardcore, you can always use Vim. There's a suite of macros and whatnot appropriate for Vim which can be used to edit LaTeX files.

You can have word/command completion via <C-P> and <C-N>, to go the previous and next matches, respectively.

There is a version of Vim with graphical menus, called gVim. If it is used with LaTeX-suite, then various TeX commands are displayed in the menu bar for quick insertion in the text. (For Mac, there is a native build called MacVim.)

Features

Vim also allows for code folding, the package vim-latex offers automatic code folding. Folding can also be done manually based on a key (e.g., {{{ and }}}) to open and close automatic folds. Example of folds can be seen as follows:

As per original question, some other useful features not listed elsewhere in this post include

VIM

Regular Expressions

Powerful keyboard short-cuts/commands

Extremely customizable

Smart Indenting

LaTeX-Suite

Calling the compiler is quick with \ll; viewing the result is \lv

Environments accessible with three letter sequences in insert mode:

EEQ = equation environment

EFI = figure environment

Place-holders (<+text+>) can be jumped to with Ctrl-J without leaving insert mode

Inverse searching: Double click in (supported) pdf viewer and you jump to corresponding tex source line

I definitely second the Vim recommendation. For instance, it's very easy to define all kinds of keyboard shortcuts (e.g. for me 5prop turns into \begin{proposition} \end{proposition}) that make typing very easy.
–
Akhil MathewJul 31 '10 at 0:17

There is always gVim for those of you who don't like the command line. and the vim-latex plugin is very helpful for completion of commands.
–
DomFeb 17 '11 at 16:29

2

I also use vim but without any plugins. One of the great things is that it's the usual vim environment, which I also use for mail and other applications: you don't have to learn a new environment. I haven't used vim folds yet, but it's the next thing I want to learn because it will add more structure to the editing of large LaTeX documents. What's also nice is the multiple undo-redo feature.
–
Marc van DongenJan 3 '12 at 17:35

texmaker and the forked texmakerx sounded quite interesting, but then I realized that they support only LaTeX. Not so useful for a plain&ConTeXt user.
–
Taco HoekwaterNov 12 '10 at 14:07

1

The texmakerx fork is new to me. Thanx for the tip!
–
Egon WillighagenDec 16 '10 at 10:16

15

This is the best Latex IDE for beginners. I tried TexWorks, TexNicCenter, Notepad++ and TexMaker. And found TexMaker to be the most user friendly for newbies.
–
Marcel Valdez OrozcoSep 9 '12 at 19:21

8

The most useful feature of texmaker is missing in this list: whenever you have a main-tex, which \input{} other content-tex, you can tell texmaker which tex is to run (called Master Document). So you don't have to switch to the main, press F1 (for Quick Build), and switch back to the tex you are currently working on. Just do your changes in the content.tex, press F1, and view the results. Second best feature I haven't seen with other IDEs: The build-in document viewer jumps to and highlights for some seconds the latest changes. I simply love that!
–
Dominikus K.Mar 6 '13 at 15:13

2

-1 TexMaker does some arcane evaluation of regular expressions in its search and replace box. This is wholely inappropriate in a LaTeX editor because of the common use of various characters between LaTeX and regex. The result is that one cannot simply replace all \section{ with \subsection{.
–
alx9rApr 12 '13 at 18:20

@DevSolar Unfortunately, aside from the standard wiki comparison, I haven't been able to find any. In general, TeXStudio comes with more features and options (I always ended up choosing it over TM because the latter was missing something I wanted; on the other hand, TXS has gotten so many options it might be overwhelming nowadays). By design, however, they both have a similar look and feel, so you can easily switch if you don't like one of them.
–
scallopsSep 19 '11 at 0:19

7

TeXStudio isn't Texmaker with additional features. It was forked years ago and there are more differences now as there were in the beginning. I tried both and somehow prefer Texmaker, it just feels cleaner to me.
–
doblakNov 26 '11 at 17:35

5

TexStudio, is recommended by MikTex distribution in their manual as an advanced choice editor, after spending some time toying with TexWorks (the basic choice if you are a total beginner). I couldn't stay long with TexWorks, while TexStudio is there inviting with its many features. For spell checking and language, there is some nice plugin with great potential called language tool.
–
doctorateMay 25 '13 at 16:12

9

After using TexMaker for a year I switched to TexStudio. It has much more features, but the selling point was the much better support of custom shortcuts. It's also blazingly fast on my low-end laptop, compared to TexMaker.
–
DwelleJun 11 '13 at 12:17

4

I switched from TexMaker to TexStudio quite some time ago and haven't looked back.
–
Nicholas HamiltonFeb 4 '14 at 10:06

Screen shot of TeXworks on the Mac: the layout stays the same on Windows and Linux:

On Windows and Linux, I use TeXworks, which provides with an editor window and a document preview window. Clicking in the document preview locates the edit mark at that TeX source corresponding to the clicked location.

The fact that TeXWorks has both the goodies of a GUI (you can easily and instantly see what you get) and a pure text editor like Emacs (you, not a program, writes the code) really makes it a hot shot.
–
Tomas LyckenAug 4 '10 at 16:51

2

+1 for TeXWorks --- still needs a few features that I can't live without, but I'm checking the progress regularly and I hope this could turn into the "standard" LaTeX editor.
–
Martin TapankovAug 19 '10 at 6:02

2 While Kile does not have !TeX directives for defining compilation tool etc., it does have some "magic comments", similar to Latexila and TeXStudio. They are %TODO and %FIXME, which appears in the structure view, for adding notes in the code, and %BEGIN/%END for defining foldable regions of code.

3 A full built-in output viewer will be available in Kile 3 and is already available by compiling the Kile git master branch

Kile is a wonderful program for LaTeX editing, some of the features like creating tables automatically, image insertion, and list/enumeration macros are extremely helpful. As a beginner, Kile basically taught me LaTeX. +1!
–
EricRJul 27 '10 at 15:41

19

Kile is the editor when you're on Linux, and find that vim/emacs is too much effort to learn.
–
Martin TapankovAug 19 '10 at 5:44

6

Kile's the editor I've been looking for for years. Few nagging "features" that can all be disabled, everything's customizable to my likings (and I have very special ones indeed) and so on.
–
DavidDec 11 '11 at 19:43

2

@RyanReich GNOME the de facto standard desktop? Maybe in the US, where Red Hat is strong, but certainly not in Europe.
–
mafpJan 16 '13 at 22:02

2

I just installed it and been using all day. I think this is the best latex editor I tried so far, and I tried few. Easy to use.
–
NasserJun 17 '13 at 22:25

I also like TeXShop because you can have side by side source and pdf output, also with two-way synchronization between them (Cmd+Click on a piece of code and you're taken to its place on the output). The only things I miss are tabs to organize many open files and better project management.
–
Juan A. NavarroJul 30 '10 at 6:08

4

I also used TeXShop, as it is a very clean and powerful editor with a great pdf viewer included. I abandoned it because I wanted code folding and a structure (tree) view for faster navigation in my large document and therefore now I use TexMakerX (tex.stackexchange.com/questions/339/latex-editors-ides/…) for my thesis (and TeXShop sometimes for smaller documents)
–
MartinApr 8 '11 at 18:30

1

Unfortunately, TeXShop cannot be set up to use an external editor.
–
JubobsApr 12 '13 at 10:32

3

Did they remove that feature? TeXShop used to support the use of an external editor!
–
cfrDec 22 '13 at 0:33

This is a simple, but powerful, editor. It's similar to Notepad++, but available on multiple platforms, and much easier to setup for LaTeX with the LaTeXTools or the LaTeXing plugin—both available from the Package Control tool. It is also similar to TextMate, but is being actively developed and has a huge community which develops plug-ins for. It's also much prettier than both of them!

Note that this commercial software, and inquires a licence after an evaluation period (costs $70 USD). It is possible to run Sublime Text without buying a licence, but you will be reminded that you are using an unregistered copy.

Sublime Text features some really powerful tools when it comes to typing, some of which you don't understand that you could do without:

Sublime Text is an almost completely text based editor, with almost unlimited potential. The list of features is about as long as you want it to be. Install Package Manager, and you have a long list of repositories only a few seconds install-on-the-fly away.

The evaluation period can last forever, I've been using it for over a year.
–
levesqueFeb 27 '13 at 20:06

7

Also, when used with Skim you get a very, very fast compiling PDF viewer that syncs with your code to give you the same PDF functionality that other editors provide.
–
BoZifferMar 15 '13 at 1:44

1

Definitely recommend Sublime. It has vim integration, has spellchecking... Whatever you want, you can find it here! It is THE solution for all platforms :) A pity that it hasn't been voted higher up, that when I first viewed this list I didn't notice it.
–
Xiang JiJun 11 '14 at 0:34

Languages: English, German, more dictionaries for spelling control downloadable

Unicode: Yes (in version 2, which was released mid-september 2013).

RTL/bidi:?

% !TEX directives: No

Syntax Highlighting: Yes, customizable (also background colour)

Code Completion: Yes

Code Folding: Yes

Spell Checking: Yes

SyncTeX: Yes

Built-in Output Viewer: No. You can config TeXnicCenter to use an external PDF viewer like Acrobat Reader or SumatraPDF with synchronized viewing.

Project Management: Yes

I highly recommend TeXnicCenter. It stands out because it is the right mix between a GUI heavy editor (think Lyx) and no GUI (think emacs). Moreover, it is very easy to setup on Windows; and it integrates with MiKTeX without requiring extra configuration.

An easy-to-navigate user interface provides a document tree, editor and compiling output as well as a vast array of drop-down menus:

Click image to enlarge

Customizable profiles allow for manipulating of latex, bibtex and makeindex parameters, as well as post-processing features and viewer parameters (e.g. forward and backward search):

Click image to enlarge

TeXnicCenter also allows to jump directly to the line that caused an error and provides code completion. TeXnicCenter has easy and integrated project management tools, and handles multiple files conveniently. It can be synchronized with pdf viewers such as Adobe Reader or SumatraPDF to provide forward and backward search options. Forward and backward search lets user jump and navigate between LaTeX code and pdf output seamlessly.

LyX is a document processor that encourages an approach to writing based on the structure of your documents (WYSIWYM) and not simply their appearance (WYSIWYG).
LyX combines the power and flexibility of TeX/LaTeX with the ease of use of a graphical interface. This results in world-class support for creation of mathematical content (via a fully integrated equation editor) and structured documents like academic articles, theses, and books. In addition, staples of scientific authoring such as reference list and index creation come standard. But you can also use LyX to create a letter or a novel or a theatre play or film script. A broad array of ready, well-designed document layouts are built in.

Quite intuitive and user-friendly, and it is possible to import from and (more importantly) export to LaTeX.

Too many useful features to mention, but I'll mention one that I find extra good: If you want to typeset a "2-dimensional" math expression, LyX is the way to go. I have used LyX for nearly ten years. Switched to AUCTeX recently, but I still use LyX whenever I want to get the LaTeX code for a complicated math expression.

The thing I don't like about LyX (or WYSIWYG-ish in general) is that it puts an emphasis format (that's all you see!) rather than content structure (which is hidden behind the format). LaTeX code does it the other way around, the structure is explicit and this helps you focus on the content rather than the format of your document.
–
Juan A. NavarroJul 30 '10 at 6:01

10

I really don't like LyX, but I don't think that this is grounds to downvote you :)
–
ViviJul 30 '10 at 7:40

32

I really do like LyX, but: LyX is not an LaTeX Editor and we really, really should stop selling it as such! LyX is a document system in its own respect with an own document format, it just uses LaTeX as (one) backend. So every LyX document can be exported to LaTeX, but not every LaTeX document can be imported into LyX (even though simple stuff works pretty well). If collaborating on some document, all or no authors have to use LyX. This, by definition, does not qualify LyX as an "editor".
–
DanielJan 4 '12 at 9:22

3

@JuanA.Navarro Interesting, I feel exactly the other way around. When looking at raw LaTeX code, I find it hard to focus on the content, since it is mixed with the structure and formatting aspects of the document. Also, the displaying of chapter and section titles in big, bold fonts (instead of the same way as normal text) makes it much easier for me to understand and modify the structure of my document.
–
rolveApr 9 '13 at 13:43

1

@JuanA.Navarro, for me the fact that Lyx injects all sort of messy macros (and writes out the source with awful indentation and spacing) is the put off.
–
vonbrandFeb 8 '14 at 23:14

I've been happily using TeXlipse in Eclipse for a long time, it has integrated code completion (including BibTeX entries), customizable templates, an outline view - and being integrated into Eclipse it includes all useful stuff I'm used to when working in Eclipse, like editor shortcuts, version control, etc.

There is also an Eclipse pdf viewer plugin Pdf4Eclipse with complete support of SyncTeX, which allows forward and reverse search in LaTeX documents. Since TeXlipse rebuilds the LaTeX sources automatically (in background) after a save, the code and the preview of the document are always synchronized.

It's probably worth mentioning that Eclipse might not be the best choice to install as a TeX-only IDE if you don't already have it, just because it's rather large and has many features that aren't needed to write up an assignment, for example.
–
Michael UnderwoodJul 27 '10 at 20:11

3

One plugin that is almost essential for PhD writers is integrated SVN/GIT backup using subclipse/eGit. Every edit is retrievable and can be stored in the cloud. There's enough horror stories on the net about losing one's thesis because of a hard-drive failure the week before the viva/printing etc
–
DGarsideMar 14 '12 at 21:11

5

I'm surprised Texlipse scores so low on this. To my mind it is far superior to many of the bespoke LaTeX packages. It automatically flags up errors AS YOU TYPE THEM, and compiles smartly so that minor errors are ignored. Consequently the time spent dealing with errors is greatly reduced. Compiling is a doddle as one can edit while compiling. The "Templates" feature (CTRL + SPACE) is superb. It also runs without installation if like me you are working on a locked-down Windows machine. As mentioned above SVN is a major plus.
–
Nick RichesFeb 11 '13 at 11:07

3

My problem is that Eclipse needs to put everything in projects, so you don't simply edit and compile a .tex file. Instead you have to click through the New Project Wizard. Or am I wrong?
–
marczellmMar 9 '13 at 10:34

Built-in Output Viewer: No. You can configure notepad++ to use an external PDF viewer like Acrobat Reader or SumatraPDF with forward and backward searching.

Project Management: Yes (no master file)

I use Notepad++ and I love it. It has all the powerful features you expect from a good text editor (powerful find/replace, regex, macros, plugin support, etc.) and lots of features for coding, like syntax highlighting (and it has built-in rules for TeX), code folding, etc. The best part is that you can map keys to run external programs, so all you have to do is tap a bound key and it instantly runs your favorite compiler or automator and displays your output in one step, outputting errors in the command window if there are any.

It's not made exclusively for TeX, but if you're on Windows and want to use a single text editor for many purposes, one of which is TeX, Notepad++ is a very good option.

This question has answers with two methods of setting up the connection between notepad++ and a TeX distribution, as well as with SumatraPDF.

Available for: Linux (unstable development version for Windows exists),
Open Source

Emacs is great, but what I generally use is Gummi. It has a 2-pane live preview which is really useful for catching syntax errors and formatting errors early on. Plus, when you save your latex document it will automatically save a pdf copy. Other features include helpers for matrix editing, inserting images, and a citing tool.

It appears to be not available on the site at present (as of January, 2014).

For my gedit LaTeX suite to be complete, I add two other plugins, first the 'Control your tabs' plugin to get Ctrl-(Shift)-Tab behavior, and also the AutoCompletion plugin which provides automatic suggestions for completion of any word, based on the words already present in the document - it can be a real time saver.

Temporary edit:
Currently the plugin is not ready for release with gedit 3. So, if you're running the latest Ubuntu (11.10) or like being cutting edge, you need to manually install the LaTeX-plugin. The easiest way is to download the version you want from here extract and install with the standard ./configure, make, sudo make install sequence. Read the INSTALL file in the archive for more details. You can also get the most recent version of the plugin from their git repository.

Note: If the ./configure script gives the error "No package ‘gtk+-3.0′ found" then, under Ubuntu, run sudo apt-get install libgtk-3-dev and then try the script again.

I am a big fan of the Linux editor Ktikz. By default Ktikz is meant to be a real-time editor for TikZ pictures. However, one can edit any type of environment just by editing the default template. Moreover, by creating a template consisting only of the text

<>

one can get real-time compilation of LaTeX documents.

I usually restrict my use of Ktikz to editing Beamer presentations or drawing TikZ pictures (or other projects where the visual output needs extra attention or tweaking). For other purposes the real-time compilation can be more of a distraction than it is worth.

For windows users: install QtikZ (also available in the link). Tested with windows 7 and miktex 2.9, and it works with no problem.

TextMate

Available for: Mac
Commercial (Not anymore since version 2.0)

With OS X I use TextMate with MacTeX. Now I don't want to change OS X for Linux only because I work with TextMate. It's powerful like vim and emacs. It's not free 45 euros. You can do all what you want and you can use and define snippets, macros, commands with shell programming or python or ruby. You can use it for mails or you can create HTML pages or you can programming with R, or Ruby. Perhaps to like this editor you need to learn a programming language like ruby or python (Perl and bash can be used). You can try it during one month for free.

Some screenshots:Click image to enlarge
In this screenshot, you can see the bundles and in the LaTeX bundle you can see some commands and macros. You can define your personal bundle like my "latex author", you can work with the terminal from TextMate. You can find some movies on the net, to see how to work with TextMate.

I can recommend LEd. It is Windows only and is just not working on some computers, still it is very functional; standard things like spelling, tree views, macros are present, while it has some more nice functions. I especially like a toolbar for beamer, but also noticeable is an option in search which can be used to highlight occurrences of a few queries at a time (regex supported of course).

Latexian is made by Taco Software. It is available Mac OS X 10.6 or higher (including Mavericks).

This is a very lean editing environment at its core, with many features that can extend its capabilities. One very nice feature is an integrated execution environment that updates a live preview window in near-real time with edits. It is perfect for quick, simple projects.

OS X Lion & Mountain Lion Features

For OS X Lion and Mountain Lion users, Latexian has support for Autosave, Resume, Versions, and Full Screen.

Navigator

Quickly navigate to chapters, sections, and included files using the Navigator. You can also add your own bookmarks to the Navigator by adding a comment to your document starting with the "!" character.

Live Preview

Live Preview allows you to see how your document typesets while you are editing. The PDF preview appears in a split pane and updates automatically.

Code Completion

Latexian includes Code Completion for LaTeX and BibTeX documents. When navigating the completion list, a brief description is shown for the selected item.

Code Folding

Code Folding allows you to collapse segments of text, making it easier to navigate through your text. Latexian identifies chapters and sections in your document and provides disclosure triangles to fold these in one click. Latexian will remember and restore your folds if you don't edit a document externally.

Code Clips

If you ever get tired of copying and pasting frequently used text segments, then Latexian's Code Clips will alleviate your problems. Code Clips allow you to store, manage, and access those text segments more easily. With Code Clips, you can assign keyboard shortcuts (Command + 0-9) to insert a clip into a document. You can also insert clips through Latexian's Code Completion panel.

Spell Checking

Latexian includes syntax-aware spell checking, including spell checking while you type. It ignores your LaTeX commands, and highlights errors in your text content.

Code Coloring

As you edit your document, Latexian colors your text to make it easier to read and navigate. Coloring is customizable, and Latexian supports coloring for LaTeX and BibTeX documents.

Console

Latexian includes an interactive console for presenting the output of the typesetter, and accepting input requested by the typesetter. Error messages are hyperlinked to the document location where the error occurred.

Find & Batch Find

Latexian includes advanced Find functionality for searching individual documents or entire projects. Support for regular expressions is included.

WinShell is a free multilingual integrated development environment (IDE) for LaTeX and TeX. The program includes a text editor, syntax highlighting, project management, spell checking, a table wizard, BibTeX support, Unicode support, different toolbars and user configuration options. It is not a LaTeX system; an additional LaTeX package is required.

Finally, someone mentioned it. I've tried almost all IDEs mentioned thus far, and only WinShell managed to stick, and is now my editor of choice. There are a few handy options that I miss, though (namely, including a fancy symbol from a menu if you've forgotten the name -- the way TexnicCenter does).
–
Martin TapankovAug 19 '10 at 5:47

1

What I found useful in winshell is that it is portable and has unicode support.
–
fabikwNov 12 '10 at 16:46

LaTeXila is an Integrated LaTeX Environment for the GNOME desktop. It has a very nice and clean interface. Its available in Ubuntu software center. You can preview what you write, when ever you want.

It has some "magic" comments for making todonotes, which will show up in the structure panel on the left hand side. These are %TODO and %FIXME, in both cases followed by some text (if there is no text, it won't show in the panel).

Inlage is a great LaTeX IDE for Windows Vista/7! It has a lot of features that make it easy to handle LaTeX. The autocompletion has many commands with icons and descriptions and if you have a tablet pc you can use the Math Input Panel to translate a symbol or an equation to LaTeX.

I think BaKoMa is an innovative useful WYSIWYG editor. It allows users to edit both in the .tex file and in the output file. The real-time preview feature can come in handy when creating graphics and figures (e.g. using PSTricks or TikZ). In a review of BaKoMa, Martin Osborne made the following comment:

If you find the output of \int_0^\infty hard to visualize, you'll definitely have trouble with the output of

Another great editor is Geany. It comes with support for Windows and Linux. Furthermore the software has a plugin for LaTeX. It is maintained by one of the main developers. The plugin has a wizard for new LaTeX documents, autocompletion, you can easily insert environments and it is well documented.

If you are looking for a beautifully designed LaTeX editor for Mac, you should try Scribo.
Although it's still in beta, it has a beautiful interface with a live outline of your document and a split-view. I am really anxious to see what it will become.

Also, I personnally use TextMate and the LaTeX bundle for typesetting small files.