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/
Well its not that bad.. Sure making your own document class is pretty much impossible if you have a life, but using existing ones is pretty easy. Go to the conference you want to submit to, download their latex template and put your content into their sample file. That's all there is to it.
But I really only use latex for the stuff where exact formatting is critical and a template exists. Sure there are tools that let you use Latex for presentations, but it doesn't seem worth it for a presentation where the format is pretty much free form. You just end up with boring cookie cutter presentations.
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.
I can have LaTeX installed on my Linux box, including all sorts of crazy extras, with less than one uninterrupted minute of effort. It obviously takes a few minutes to download and install, but I don't have to pay attention after getting the ball rolling. I don't know about other "Linux hackers", but I, for one, don't enjoy wasting my time on chores like software installation.
I'm interested to see if this thread reveals any credible alternatives to LaTeX, but in the meantime, there's Getting to Grips With Latex, and the more available Wikibooks copy, for those who need to get it done in LaTeX.
The font system has a lot of benefits (it is defined algorithmically, so if a font is defined correctly, it is completely scalable
On paper this looked really good, but it turns out that font designers do not think algorithmically. Computer Modern (the font Knuth designed) is virtually the only font that is a real MetaFont, where you can vary any of the fonts aspects shape by altering parameters.
Han-Wen Nienhuys -- LilyPond
You didn't mention what type of science you are doing, so if you are an EE the best way to get schematic diagrams is still a LaTeX derivative. Circuit Macros is still the best I can find for now, located at:
http://www.ece.uwaterloo.ca/~aplevich/Circuit_macros/
Takes a few weeks to get really good at it, but the diagrams are the absolute best. There was a person who was making print quality symbols for gEDA through gschem, but I'm not sure that ever panned out. If you want a simple way to draw diagrams in ps then you might send the author an email.
The best reason I can think of is that I have never seen Word reflow a whole paragraph when I typed a single word at the end like I have seen LaTeX do. I think the requirements of a smooth user experience means that Word breaks lines on a per-line basis, while LaTeX can afford to do per-paragraph optimization.
Languages aren't inherently fast -- implementations are efficient
ConTeXt? Like LaTeX, but perhaps better in many aspects?
Sorry, no help here.
Oh, somebody cruel has forbidden you to use XeTeX, write in UTF-8 and use OpenType fonts directly from your system? Shame on them!
Ezekiel 23:20
And the good thing is, you can get LaTeX formulas even in OpenOffice: http://ooolatex.sourceforge.net/
[--- PGP key and more on http://www.root42.de ---]
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'
All of the above is true. And solid reasons for using TeX. But there are more great features as well.
The mathematical typesetting language has an admittedly high learning curve. It's got a lot of complicated function names and arcane naming rules for some symbols. But it produces beautifully-typeset mathematical formulas (see an earlier response to your query), and once you've memorized the fifty or so symbols that are relevant to the equations in your particular field, you can write your formulas ridiculously fast.
Take for example, the quadratic formula:
$x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$
I imagine that at first glance, this looks like gibberish to the non-LaTeXperts in the room. But if you squint, you can decode what it means. The only obscure symbol in there is the \pm for the plus-over-minus character. Commands like \frac{..}{..} and \sqrt{..} create nice variable-sized objects that grow to fit over, under, or around their arguments. And if there's a symbol in Greek, Hebrew, or any more arcane set of mathematical algebras that is necessary for your equation, Tex /probably/ has it covered somewhere (though you may have to dig to find it). In general, though, typing in equations using your "familiar" fifty or so characters winds up being far, far faster than using some WYSIWYG equation-editor. If you've got several hundred equations to typeset, you'd never get past the first chapter without it. After you adjust to getting superscripts by writing "x^2" and subscripts with "x_i," you'll never look back.
Did I also mention you can grep it?
Except that in this case, you can bring out a magnifying glass and see the differences yourself. Kerning and layout is an art that has been perfected for centuries. For example, the visual weights of the letters must be accounted for. You can't just put letters on a line one after another and expect the results to be nice or even readable. TeX/LaTeX was designed to reproduce the implicit and explicit rules of text layout and kerning. It has a separate font rendering library called Metafont. The results are very good, so good in fact that many have been content to write front-ends that call TeX or LaTeX for typesetting.
MS Word was designed by engineers to dump letters in sequence on paper. Early versions were unable to kern at less than screen resolution (some 75dpi). Later versions shipped with TrueType fonts lacking proper kerning information. The results are not good. So bad, in fact, that people turn to other alternatives. Reading documents "typeset" by Word in Times New Roman hurts your eyes, just like listening to 96 kbps MP3:s hurts your ears.
Some reading, if you don't believe:
http://nitens.org/taraborelli/latex
http://robgoodlatte.com/2007/07/24/3-examples-of-bad-microsoft-word-typography/
--Bud
Technically speaking Semantics is about the meaning of a given word or sign. Therefore proper casing is not about semantics.
Like so many other Nazis, you're misinformed.
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.
Speaking as a maths teacher (but formerly a programmer for 20 years) the formula editor is the one thing that enabled me to insist on having OOo installed on my school Windows PC (in addition to the Microsoft Office which was installed by default). At the time (admittedly about 5 years ago) the OOo formula editor worked and the Microsoft Office one simply didn't in several odd ways. For instance you couldn't embed a formula in a table in MO, which made it kind of useless.
I now use OOo all the time because I have to use Windows at school and I use Linux at home so it gives me easy portability. In September I start at a new school and everything there is Apple, so I suspect I'll still be pushing for OOo.
Obviously I wouldn't push OOo as a viable substitute for LaTeX, but it does seem to have the edge on MO in some areas.
(Incidentally, I have no difficulty with interworking with colleagues who still use MO.)
Having written all my letters, thesis and pretty much everything that I needed to print in LaTeX over the last 8 years I can at least tell you what *my* problems with it are:
Well, despite all these annoyances I'm still using LaTeX. Not because I like it so much but rather because I haven't found an alternative that produces equally excellent output.
On a side-note: I strongly disagree with the people who said that there wouldn't be a market for a "modern LaTeX". I know quite a few people that would immediately jump onto a solution that "just works" (i.e.: one program to install) and uses a sane template language.