LyX 1.5: What you see is what you mean

According to its Web site, LyX is "the first WYSIWYM document processor," coupling a familiar word processing front end to the powerful LaTeX typesetting engine. Last month's new version 1.5 release includes a revamped interface, big improvements in multilanguage support, and enhanced tools for incorporating math, tables, and outlines.

The LyX Web site distributes the application in tar archives as source code and binaries, but provide links to contributed builds for most popular Linux distributions. Your distro may already include LyX as a supported package. I used the contributed Ubuntu Feisty packages linked to from the LyX wiki, and encountered no problems.

Polish

The first thing you'll notice about LyX 1.5 is a slick Qt4 interface, replacing the aging XForms default of previous generations. Not only does LyX now fit in with the look of modern Linux desktops, it also gains useful features. The app now remembers window size and position between times you run it, has fully customizable toolbars, uses the system clipboard, and lets you work on multiple documents at once using tabs.

This release also adds a GUI font selection interface. Because LyX uses TeX for its final output, the app has never needed to interface with the font system used by vanilla X programs. Consequently, it was hard to work with TeX's powerful font system in older releases. The new interface lets you change fonts on the fly. You are still bound to LaTeX's model of document-wide settings, of course, but the additional control is welcome.

On the language front, this version of LyX has been completely rewritten to use Unicode throughout. That enables multilingual documents, and for the first time allows the app to use Chinese, Japanese, and Korean (CJK) characters in the interface itself. Armenian and Farsi are new translations as well, but the CJK support is notable because it marks the successful merge of a CJK-LyX branch previously maintained in parallel.

A gentle introduction to non-WYSIWYG word processing

If the notion of abandoning "what you see is what you get" strikes fear in your heart, it's OK. It is a different approach to writing than that taken by office suites, even robust ones like OpenOffice.org.

LaTeX is nothing more than a way to mark up a document with formatting tags, just like HTML or XML. But it runs on top of a sophisticated typesetting program called TeX, another one of the brainchildren of computer science guru Donald Knuth.

Unlike HTML, where the final product is almost always displayed on a computer monitor, TeX is designed for printed output. It can handle even long, complex, and cross-referenced books that would be a nightmare to proof in an office suite word processor. Ever try to get footnotes formatted in Microsoft Word? Imagine that headache on steroids, and you start to see the problem.

The idea is that TeX, and LaTeX on top of it, make it easy to write everything in plain text, and let the layout engine worry about typesetting the output details. LaTeX provides useful document styles and layouts, making for a nice layer of abstraction over the raw TeX code itself.

And the weird capitalization? Well, that's just a way for TeX and LaTeX to show off. The official logos for both projects are done with custom offsets that are difficult to pull off in plain HTML. Henri Sivonen came up with an approximation using Cascading Style Sheets: LaTeX. For simplicity's sake, most people just write TeX and LaTeX in Web pages and email.

Document editing picks up a few new features in LyX 1.5, notably an outline mode, expanded table support, and a source code viewer. The outline mode tool is especially interesting; by rearranging items in the outline view, you can rapidly restructure your entire document.

As with fonts, table support in LaTeX is different enough under the hood from traditional word processors that it has been a long time coming to LyX. You do not get a wide array of tools in this release, but you do get basic tables and basic control over their alignment and appearance.

For the purists

LyX's source code viewer is likely only of practical value to TeX enthusiasts; with it you can open up a pane displaying the LaTeX source of the current document or paragraph. Even though LyX goes a long way toward letting you edit TeX documents just like a word processor, there will always be certain situations where you need to tweak the source itself to achieve what you want.

This version of LyX boasts expanded math rendering capabilities. I tried my hand at creating complex formulas from scratch, and found the math editor component to be straightforward -- fortunately, because in a bad math editor, it is easy to get lost in the equation or somehow lose the ability to insert symbols like superscripts in the middle. In LyX's editor, inserting new symbols always gave visual clues as to what elements were editable, and the mouse moved around the equation without getting trapped.

I also tested LyX with some pre-existing, real-world math in the form of theoretical physics papers and homework assignments (in official AMS-LaTeX format). LyX handled them all without complaint and (near as I could tell) rendered them correctly.

What about Joe Non-science?

All of that is well and good; it is easy to see why LyX is popular for writing theses and journal articles. But desktop Linux users may be asking why they would ever need LyX.

The answer is LyX's first-rate printed output. LyX may not give you the ability to easily tweak the kerning and leading on a paragraph-by-paragraph basis, but the trade-off is that you can count on TeX being smarter than you and making it all come out nice. LyX ships with document templates for common items like letters, resumes, and presentation slides. Even if you have never used TeX, you can start a new document and use the supplied templates to produce professional-looking results.

LyX helps you write your document by rendering markup tags in a different color than regular text; the experience is akin to using a graphical HTML editor. At any point during composition, you can preview your output through the View menu. View -> DVI is the fastest option -- it produces a DeVice Independent file and opens it in a DVI viewer. From the View menu you can also produce PostScript or PDF output, although only in rare cases would these formats produce results different from DVI.

Conclusions

LaTeX and TeX are established technologies that do not change rapidly. LyX 1.5 integrates them with Linux desktops of today. KDE and GNOME users will appreciate both its aesthetic improvements and its convenience.

Granted, you might not feel that TeX (in any form) is worth pursuing when user-friendly word processors like Abiword and KWrite already come preinstalled. If so, I suggest taking a test drive in LyX the next time you have a document to write that is destined for print. You will find LyX just as simple to write with, and you will be surprised at how nice TeX output looks in hard-copy.