Will I miss something if I start using ConTeXt instead of pdfLaTeX/XeLaTeX/LuaLaTeX+ TikZ?

It depends on the type of documents that you generate. Most (rather almost all) LaTeX packages do not work with ConTeXt. This is not as scary as it sounds, though; because it is relative easy to get the functionality of most packages by writing a few lines of code in ConTeXt.

Types of documents

  1. Journal articles (if they require a LaTeX file): You will have to provide a LaTeX file. If they require camera ready copy, you can submit ConTeXt generated pdfs.

  2. Conference articles. Most conference require camera ready PDFs, so in principle you can submit ConTeXt generated PDFs. However, as one often reuses the content from a conference paper to a journal paper, it is easier to LaTeX for both (given that you have to use LaTeX for journal submissions).

  3. Presentations. There is no inherent advantage of either LaTeX or ConTeXt. With LaTeX, you get some very well thought of presentation classes (beamer, powerdot, ...); with ConTeXt, there are some modules that provide a basic functionality, but for the most part you are on your own. But that is a good thing!

    What I realized after using ConTeXt for a while is that presentations are just simple documents written on a 3:4 paper. And you can easily write your own style. (I wrote a tutorial on how to create a basic presentation style in 40 commits).

    With LaTeX, it is easy to create your first presentation. But as you start making more presentations and want to tweak the style to your personal tastes, things get tricky. Customizing the look and feel is much easier in ConTeXt.

    The same remarks hold for posters, but I haven't created any posters, so I cannot give more details.

  4. Letters. Both LaTeX and ConTeXt provide style files for letters. Personally, I find it much easier to write my own style file (in ConTeXt) than to read the documentation of existing styles and tweak them to my liking. Letters are really simple document. The only tricky part is placing the address-like elements at specific locations on a page. Doing that is really simple in ConTeXt (using layers).

  5. CVs. There are various LaTeX packages for CVs but not any that I know of for ConTeXt. But again, CVs are relatively simple documents and it is straight forward to create your own style in ConTeXt.

I have been using ConTeXt for over 10 years. I now typically write my journal and conference papers in LaTeX, and write presentations, lecture notes, assignments, CV, letters, one off documents in ConTeXt.

Packages

Most LaTeX packages do not work in ConTeXt, but often similar functionality is available by other means.

  1. Tikz, pgfplots, and circuitikz work in ConTeXt.
  2. There is a module similar to algorithm2e, but I haven't used both (the LaTeX or the ConTeXt version) to know how they compare in terms of features.
  3. xstring: There are few basic string manipulation macros in ConTeXt, but for anything sophisticated, it is much simpler to use Lua.

Documentation

ConTeXt documentation is sparser than LaTeX documentation. Having said that, the documentation is still extensive (probably around 1000 pages of different manuals, compared to around 50,000-100,000 pages for LaTeX). Personally, I prefer the personal writing style of ConTeXt manuals compared to the more academic writing style of LaTeX manuals. But, I know, that some people really dislike the writing style of ConTeXt manuals.

Summary

You don't have to make a permanent choice between either LaTeX or ConTeXt. Use both. If you are already proficient in LaTeX, start using ConTeXt for documents where you don't have to share the source file with others (presentations, letters, CVs).

Functionality wise, both are comparable. But the user experience that you get from the two macro packages is very different. Which one you'll end up liking depends a bit on your personal taste. Neither is universally better than the other.


When I have tried to get into ConTeXt, what I miss, or maybe its just under-documented, is how to write something like a document class. I have several finely-tuned classes for letters, memos, legal documents of various sorts that makes composing them in LaTeX a breeze.

ConTeXt, at least from the part of the tutorials I have read, appears to be a system for ad-hoc formatting, exactly the reason I don't like word processors such as Word.

I want to like ConTeXt, but this issue has always tripped me up when I have looked into in.