Modern LaTeX Replacement?
javierzinho writes "For many years I have been using LaTeX to compose scientific documents, but truly I am getting tired of its complexity. You have to install new packages for new features, compatibility issues are everywhere, you need to know commands for everything, table composition is torture, image insertion is an odyssey if you don't have the 'right' format, and you need to be a LaTeX Jedi master to create a new document class. I'm looking for a document processor (not a word processor) that is a viable replacement for LaTeX, possessing all of its advantages — consistency between text and math text, automated cross references, direct PDF creation, etc. — but that is not stuck in the 1980s with the compiler metaphor and weird font technology. An application with visual interface and so on. I've tried Scientific Word and Lyx but both are front-ends for LaTeX. Publicon only produces PDF files by exporting to LaTeX and subsequently using pdflatex. Add-ons for MS-Word are a joke, and webEq is intended for web publishing, not for PDF production. Does anybody know of a decent, scientific-structured document processor that is a modern application?"
Framemaker?
http://lout.wiki.sourceforge.net/FAQ
It is LaTex, but made easy. Made very easy. It's managed by a co-worker and friend of mine, so I may be biased. But he's done some exceptional work with it (including many internal manuals here at Red Hat). So check it out. He is a big KDE fan, so it's made the transition to QT 4 recently and it looks fabulous. http://www.99b.org/wyneken/
What sets TeX apart from other formatting systems is that it has a mathematical foundation. At it's core, TeX has a metric for how "good" a document looks and formats it to optimize that metric. Someone who wants to make a better TeX will have to have a thorough understanding of the math behind it (e.g. some "goodness" metrics are known to be NP-hard). See "Knuth-Pass line breaking" for just the tip of the iceberg on this.
So, yes, it will take someone who is a wiz at math, computer science and user interfaces (?) to overthrow TeX.
Check out PrinceXML. It actually adds footnotes, page number, and all that stuff to standard XHTML+CSS. It has already been used to typeset a book, and it looks quite nice. The authors of the one book have talked about their experiences with it
Their tool renders into PDF, but the same based XHTML will work in a web browser, giving the option of having the same document look good on paper and on the web.
There is also a Google Tech Talk on PrinceXML
Let the hate commence. Anyway:
XSL-FO is another markup language, but there's a good bit going for it, not the least of which is an application that renders it directly to PDF: http://xmlgraphics.apache.org/fop/
The main good thing about FO is the ability to take advantage of related XML technologies to help you generate the documents (and the various tools that you can use to generate them). You can embed SVG diagrams and MathML if you're comfortable with the namespaces; FOP can definitely render SVG via Apache's Batik project (which is also very good) and I'm pretty sure will also render inline MathML via an optional plugin. A lot of people mentioned OpenOffice, and the cool thing there is that since the documents it generates are XML documents (I'm pretty sure its equation editor emits MathML), you can use XSLTs to transform the documents that it generates into XSL-FO documents for rendering.
The obvious missing feature is the WYSIWYG app, but you'll find a bunch of links at the W3C's XSL-FO site.
Anyway, like I said, let the XML hate commence.
C
The Sun is proof that we can't even do fire properly.
First off the font system is purely a legacy thing, since Tex predates pretty much all other currently popular font tech. So could LaTeX be retrofitted to use TrueType for everything? Probably. In a 100% backwards compatible way? Only if a genius pulls a freaking miracle out of his butt.
You just described XeTeX. Here's a list of the features, taken from Wikipedia:
XeTeX is a TeX typesetting engine using Unicode and supporting modern font technologies such as OpenType or Apple Advanced Typography. [...] XeTeX has simple font installation and can use any installed fonts in the operating system without configuring TeX font metrics. XeTeX uses AAT when working on Mac OS X using the xdv2pdf driver, or FreeType using dvipdfmx (which is the default on Windows or Linux). As a result, XeTeX can access font features such as alternative glyphs, special ligatures, swashes and variable font weights. Support for OpenType local typographic conventions (locl tag) is also present. XeTeX allows even raw OpenType feature tags to be passed to the the font.
I've written my research proposal using XeTeX and modern typography, and am in the process of typesetting an entire book with the same foundations.
A quick note for unfortunate souls who actually try googling "Knuth-Pass line breaking", it's Plass, not Pass.
Make PDFs of two documents with square root radical formulas, one in OO.o, the other in Office (Equation Editor/MathType). Compare: The OO.o version is _really_ ugly and is not a continuous sign when you zoom in on the PDF view. The Office one, while not perfect is at least decent.
This is not a stupid question. Let me say at the outset that I avoided LaTeX for years and boy, was I wrong. LaTeX proponents often talk about the pretty formatting, but for me the advantage is the robust document structure you easily create.
LaTeX pretty much requires you to create a structured document, and the document class you're using automatically handles the formatting, display, and numbering, and it is easy to do extensive cross-referencing of equations, tables, figures, etc. By structured I mean that you create entries like
\section{This is my first section}
This creates a new automatically numbered section, creates a formatted section head, and resets all equation and subsection numbering. Entries automatically show up in a table of contents if you elect to create one (a one-line command). If you create structured technical documents, it's fantastic. Tables are a pain, but for me that's the one big weakness. And the more you have to control the detailed formatting of specific pages (which I don't need to do), the less you will want to use LaTeX.
Yes you can do all this in Word or OpenOffice, but it requires setup and in my experience almost *no* user of those programs bothers to do it. It's just too much of a pain. With LaTeX, on the other hand, it's hard to extensively change the default formats (this is what the OP meant by creating a new document class) but the standard classes for articles and books are fine for many people. New LaTeX users have to overcome the urge to tweak the formatting. Once you just leave it alone, it's liberating. You can focus on content and logical structure, and the result is a decent-looking document.
It appears to me that there is a movement *towards* the use of LaTeX in economics (my field), most commonly by using Scientific Word. This is just an impression, and I can't speak about other fields.
Finally, the experience one has with LaTeX will depend on the front end (which can simplify entering equation and structure commands). Lots of folks use Scientific Word. I use Emacs/AucTeX. I am *very* happy with that combination.
First of all, you have zero chance of finding anything better than LaTeX for mathematical/scientific typesetting. However, there are ways of solving lots of the problems you mention without chucking LaTeX out the window.
Above all, be patient, and be open to learning. It's understandable that you want to do powerful and flexible document processing, without having to learn a whole bunch of commands. Unfortunately, this has a lot of similarity with people who want to program computers without learning a programming language. ("Why can't the computer just understand what I want it to do, in plain English?") Any program powerful enough to do everything you want is also powerful enough to do lots of things you don't want -- and because the computer can't read your mind, you have to learn how to tell it exactly what you want.
Cheers,
IT
Power corrupts. PowerPoint corrupts absolutely.
GNU TeXmacs is the best document processor out there. It is also Free as in speech. It is inspired by TeX, but not a frontend for LaTeX like LyX as many believe. It will import your old LaTeX documents. I've used it to write my thesis (100 pages plus many, many figures and photos) and it works excellent, because you don't have to worry about layout. It just produces beautiful text and math.
http://www.texmacs.org/
Know what's harder than LaTex when you need math typeset correctly? Anything that's not LaTex.
Agreed, I just finished my PhD thesis in Latex ac ouple of months ago and I have say that I like Latex quite a lot.
Although Latex is not for everyone, once you get to know it, you will see all the benefits. For example, just yesterday a colleague was preparing a paper to submit for a conference, in word (2007 no less) and he spend about 4 hours (or more!) getting the references right. In latex, a combination of using the JabRef [bibtex] database and \citep [Natbib] take care of the references for me.
Not to mention indexes, references (I work in the same Word paper I mentioned putting references in word, having to mark, insert a label, then insert reference, sheesh!).
Similarly, just about two months ago (for my Viva) I decided to "learn" to use Beamer to do my presentation. I tried to do it in Lyx, but I felt like if Lyx prevented me from doing things, I finished going back to Kile and doing my presentation in Latex + beamer.
BTW, for those of you who hate the Maths package available in Microsoft Office, I would recommend Texpoint. That lets you edit your formulas in Latex inside powerpoint, and creates an image (png IIRC). That is what I used (before going to Beamer).
Ubuntu is an African word meaning 'I can't configure Debian'
Read the original post, he states exactly what his problems are, though I have other issues. My problems with LaTeX include:
Multi-page tables (Using longtables) is buggy. If a specific table cell is higher than the others, it can overflow into the document footer instead of getting moved to the next page.
Inconsistent rendering issues. When setting the background color of table cells, they sometimes change size. Float positioning is usually very good, but when it bugs out and does something stupid, it's nearly impossible to fix.
If you're using BibTex, making lots of references, etc, you need to run TeX four or five times, making it bog slow.
Any non-trivial coding is a pain. I was writing a custom document style, and it had to check if the number of figures was larger than a given number, and if so, insert a list of figures. Shouldn't be so hard, right? Wrong. You need to specify a piece of code to be evaluated at a later time, turns out that doing so is a gargantuan pain in the butt.
Another example: I wanted to write a simple function that took a piece of TeX code and displayed it verbatim, and showed the rendered result as well, side by side. No can do, because TeX has all sorts of weird issues with verbatim environemnts.
There are lots of character set issues. I have still not figured out how to use non-ascii characters in the pdf summary fields for PDFTeX and get them to consistently work.
The language for creating new BibTex styles is so retarded it's not even funny. Basically, you can't do it.
Specifying non-standard fonts is a pain.
Try out fish, the friendly interactive shell.