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?
Math in OpenOffice is even uglier than in MS Word. I consider this quite an achievement considering how ugly Word is to begin with. AFAIK, LaTeX is still the only way to get decent-looking maths.
Opus: the Swiss army knife of audio codec
http://lout.wiki.sourceforge.net/FAQ
Simple, do what I did and start using http://kile.sourceforge.net/>Kile
Type setting is a very different task than word processing. Proper type setting involved heavy math in order to optimize the formatting of the document. Look up the Knuth-Plass line breaking algorithm for the most basic example (there are better algorithms now days). These sorts of formatting tweaks are things that OpenOffice and MS Word just don't do.
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
The short answer is no.
The big difference between document processing and word processing is that with something like Word you are constantly having to play with layout, fonts etc.
There is some rudimentary stuff to set styles, but when you push it (and not even hard) it breaks, and then you are back to trying to reformat your own document, and as you make changes to the malformed part, other parts of the document change.
With a document processor, you specify a document format and then just throw test at it, with directives to sat what part of the format to apply. There is a HUGE amount of complex logic which applies various rulesets to format each part of the document very nicely, and do so within the context of the document.
Word was designed initially to work with things like daisy wheel printers etc. FrameMaker Tex etc. were designed to work with typesetters which have much more flexibility (and thus require much more logic to drive them).
The end result is that the same paper prepared with word and LaTex is night and day - even on the same output device.
And despite what the original poster has to say about using LaTex, once its set up you concentrate on the content, not on the formatting. If set up correctly it behaves somewhat like CSS in that you can go and play with the document formatting and output a paper in a completely different style, never having to go touch the content at all.
Simple answer: LaTeX implements proper "optimal" line breaking, while most word processors implement "greedy" line breaking. This means that LaTeX will produce the "best looking"(*) word wrap. See "Word Wrap" on Wikipedia for just the tip of the iceberg.
(*) "Best looking" in this case has a precise mathematical definition. See the Wikipedia reference for more details. Finding definitions of "best looking" that actually look good and that are mathematically tractable (some involving figure placement are NP-hard) is an open area of research.
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.
I'm currently using Texmacs to type in my math. Entering greek characters and structured expressions is a breeze. For example, to get \alpha^2 you'd enter the following keystrokes:
[a] [tab] [^] 2
Texmacs is WYSIWYG, like a word processor, so you only see the typeset document, and not the underlying text file.
There are disadvantages though; for publication, I have to make use of Texmacs "export to Latex" feature, which does not provide an optimal Latex file. It is also not possible (I believe) to import a Latex file. And Latex is the lingua franca of scientific writing. Texmacs also seems to have a small user base.
Nonetheless, Texmacs is the fastest and most efficient tool I have found for math heavy writing.
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.
Speaking of markup languages, what about Docbook? Would that do what he wants?
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
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
I can't speak on behalf of frederec, but I've found a couple of resources to be immensely useful:
1. Tutorial
Covers a breadth of topics and provides enough detail to layout any document.
2. Reference Manual
I mostly use this as a character reference, but it should contain the depth of information that [1] might not provide.
For installation and configuration, there shouldn't be anything google can't find for you. MikTeX is great (Windows) and your GNU/Linux distribution's package manager likely has an all-in-one LaTeX package.
Wrong one. Only TeX' version numbers tend to Pi. LaTeX version numbers have been 1, 2 and 2e. LaTeX 3 exists only in theory.
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
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
Installation, and the basics of LaTeX are not terribly hard. Graphics support is a pain--it helps to have something like Illustrator that can make high quality EPS files out of anything. Then again, Word support for EPS has been pretty crappy also (dunno about 2008, however). Mathmode produces stunning results, but is a seriously nasty bit of code to read. Going from tex to a camera-ready pdf is fairly nasty, I write a makefile for this, which pretty much puts setting up an efficient LaTeX workflow out of reach for any non-programmer. Some of the command line tools don't have sensible defaults either (e.g. partial font embedding). There are enough differences in installations that steps for going from dvi to pdf can vary wildly from one installation to the next.
Getting LaTeX to comply with a template can be a pain--editors may be more accustomed to submissions from Word users, and not aware of LaTeX-specific problems. Sometimes the templates don't even comply with their own requirements. Some editors don't have standard bibliography formats either, and editing Bibtex templates seems to be a black-art, so one can't always count on that tool being available.
LaTeX has a few default settings that are rather silly... like over-eager hypenation and an insane idea of how much space a figure should be allowed to take up. This page got me past some of the more tedious problems: http://dcwww.camd.dtu.dk/~schiotz/comp/LatexTips/LatexTips.html
Overall I'd say its a fairly horrible experience--the only thing worse is MS Word.
Docbook XML uses MathML inputs. MathML is a lot of voodoo from experience but not as much as LaTeX
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.)
Yes, I played around with JuraBib and it was pretty good. But when it became abandonware, it was suggested on the jurabib list to look to biblatex. That was the first time I had heard about biblatex. So I never made the investment to really learn JuraBib...biblatex is a far more flexible and general solution than JuraBib, IMO.
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.
No easy way to do scientific notation? I defined a simple command so \scinot{10.6}{-6} does what you would expect. No dedicated "degrees" symbol? I defined one.
It's my personal preference (not necessarily that of anyone else), but I would never switch to a front end that took away my ability to create tools to make my life easier.
For the record, the definition is
\newcommand{\scinot}[2]{\ensuremath{#1 \times 10^{#2}}}