Skip to main content
3 of 3
A complete re-write of the text of the question. Addition of disclosure statement.

Can a Mathematica notebook be programmed to work as a LaTeX editor?

A short example code will show that the answer to this question is yes. The example code (which I give in my answer) is for a simple LaTeX editor that is almost a drop-in replacement for TeXworks. The only(?) editing features it lacks are syntax coloring, delimiter balancing, and being able to sync cursor positions between source and preview.

The value of this simple LaTeX editor is primarily conceptual. It is, in my opinion, the best starting point for thinking about and discussing a much more difficult question: How best to get LaTeX and Mathematica working easily together for the average user?

That this question was not answered at least 15 years ago, is I suppose, some indication of its difficulty. But now we can rephrase it as a more structured question that is much easier to answer: What editing features would we like to add to this simple LaTeX editor?

Of course, our wish-list should include features like generating LaTeX code from Mathematica output, well beyond what a "normal" LaTeX editor can do.

Disclosure statement: I am the author of a commercial package, EnableTeX, that implements most of my own wish-list of features for such an editor. I am using this post to announce the release of my package, to share my ideas, and to ask the following question which is perhaps too broad and open ended to be asked as a main question:

How is Mathematica currently being used to generate LaTeX documents, or parts of documents? To clarify: I'm interested not only in functions and packages that have been written for this purpose, but also the general workflows that have been adopted.