LyX is a document processor that Matthias Ettrich began writing in 1995 as a university project. It was first called Lyrix, and was renamed after a clash with a word processor from the Santa Cruz Operation. The better part of the story comes next: his main platform was Linux, and looking for a way to make LyX’s interface tolerable led him to found KDE in 1996 — one of Linux’s flagship desktops exists because someone wanted a LaTeX front end to look decent. This page covers what it means that LyX is not a LaTeX editor but a document processor driving LaTeX underneath, what is actually inside the .lyx format, how raw LaTeX gets in through TeX code (ERT), and who it is genuinely worth learning for.
What LyX is: a document processor, not a LaTeX editor
LyX typesets nothing itself. You assemble the document on screen, and when it is time to produce output it calls a TeX distribution you installed separately to make the PDF. That puts it in a different category from TeXstudio or VS Code, which are editors for writing LaTeX; LyX is a tool that reaches toward LaTeX from the word-processor side. It is not part of TeX Live, either — the bin directory of TeX Live 2024 on this machine contains no lyx and no tex2lyx at all. So the order of installation is the TeX distribution (TeX Live, MiKTeX, MacTeX) first, LyX second. Get it backwards and the installer will tell you it cannot produce output because it cannot find LaTeX.
It is GPL-licensed and runs on Windows, macOS and Linux; the 2.5 series arrived in February 2026 and has had point releases since. It supports a long list of languages, including Japanese and right-to-left scripts such as Arabic and Hebrew. The feature with the best reputation is the equation editor: you stack structures — a fraction, a matrix, a summation — from palettes and the keyboard, and the resulting mathematics is LaTeX’s own. Which is another way of saying that what LyX sells is exactly one thing, getting LaTeX’s output without learning LaTeX’s notation, and your verdict on the program turns almost entirely on how much that one thing is worth to you.
WYSIWYM: “what you see is what you mean”
WYSIWYM stands for What You See Is What You Mean, a twist on the word processor’s WYSIWYG (What You See Is What You Get), and LyX was the first document processor to fly that flag. The whole difference is in the last word. Under WYSIWYG you move the appearance directly — 12pt, bold, centred. In raw LaTeX you write the command by hand — \section{...}. LyX does neither: you stick a role onto a paragraph visually — this is a section heading, this is a footnote, this is a theorem — and leave the type size and the surrounding space to the class file. Which is why hammering the space bar never widens the gaps: spacing follows from meaning, not from how many times you pressed a key.
| Approach | What you manipulate | What the screen shows |
|---|---|---|
WYSIWYG | appearance itself (font, tracking, indent) | close to final, but no structure is recorded |
LyX | roles (heading, theorem, math structure) | an approximation of the final page; roles shown by styling |
LaTeX | the commands themselves (markup by hand) | text only; the result is unseen until you compile |
Inside a .lyx file, and the lyx2lyx gatekeeper
What LyX saves is not .tex but its own .lyx format. It is not binary: the contents are human-readable, line-oriented text, opening with a line stating which version of LyX wrote the file, then an integer \lyxformat, a class declaration such as \textclass article, and then the body nested inside \begin_header … \begin_body … \begin_layout. It is not a sequence of LaTeX commands, so you cannot hand a .lyx to a TeX engine and expect a document.
That \lyxformat integer quietly matters in practice. LyX bumps the number whenever the format changes, and opens older documents by running them through lyx2lyx, a Python converter that lifts them to the current format — and can push them back down to an older one. That is why a document from the 0.10 era still opens. The flip side is that a file saved by a newer LyX is refused by an older one: the error “file is from a newer version of LyX and the lyx2lyx script failed to convert it” shows up whenever co-authors are not on matching versions. Being text, a .lyx can live in Git, but lines move as a side effect of GUI actions, so diffs read poorly and it is a less candid collaboration surface than .tex.
When there is no menu for it: TeX code, better known as ERT
Anything LyX has no interface for goes in as raw LaTeX through Insert ▸ TeX Code. That region is known as ERT, short for Evil Red Text — a nickname earned because older versions of LyX displayed raw LaTeX in red. The LyX site still carries a note from March 2000 titled “A Brief History of ERT”, recording where the name came from and where the idea of hiding raw LaTeX inside a collapsible inset began. It is a rare case of a joke nickname being promoted to official terminology.
% Typical ERT: things LyX has no dialog for.
\setlength{\parindent}{0pt}
\renewcommand{\thefootnote}{\fnsymbol{footnote}}
\textcolor{red}{\rule{\linewidth}{0.4pt}}Besides ERT there is a second door: Document ▸ Settings ▸ LaTeX Preamble, where you paste a raw preamble wholesale. This is where the road forks. If you have to use a .cls handed down by a conference or a publisher, LyX can only offer that class’s environments as roles in its menus when a matching layout file (.layout) exists. Where one does, the experience is comfortable; where none does, every custom environment has to be written as ERT, the screen turns steadily redder, and the WYSIWYM advantage evaporates. Whether LyX suits a given project is very often decided by whether a layout file exists for the class you are required to use.
Exporting to .tex, and importing back with tex2lyx
When it is time for output, LyX converts the .lyx to LaTeX behind the scenes and then typesets it. You pick the engine — LaTeX (via DVI), pdfLaTeX, XeTeX or LuaTeX — and take a PDF from File ▸ Export ▸ PDF or a .tex from File ▸ Export ▸ LaTeX. XHTML, DocBook, EPUB and plain text are on the same menu. LyX advertises “LaTeX transparency”: it does not hide the LaTeX it generates, and finishing the exported .tex in a different editor is a sanctioned route, not a hack.
Treat that road as one-way, though. Going the other direction — pulling an existing .tex into LyX — is done with tex2lyx, but intricate macros and packages LyX does not know go uninterpreted: they come in wholesale as ERT, or need manual repair. The practical consequence is that if you export, hand-edit the .tex, and import it back, your edits return as red blocks that LyX never understood structurally. Round-tripping does not work. If you use LyX, finish in LyX; once you have exported .tex, live in the .tex world from then on. Deciding that direction at the start is what keeps a deadline calm.
The settings Japanese requires
Japanese works, but the defaults are not enough and a few settings are needed. The basics: in Document ▸ Settings choose a Japanese document class — jsarticle, for instance — and match the output engine to that class. For the character encoding there is a family of pLaTeX-oriented Japanese encodings such as utf8-platex; the CJK-package route and the japanese-package route differ in how they get along with inputenc, so keeping the combination consistent is what matters. When in doubt, the reliable source is the LyX configuration pages on the Japanese community’s TeX Wiki, which collect the steps per operating system.
In the end, producing a Japanese PDF means driving a pLaTeX- or LuaLaTeX-based setup underneath, so every consideration that applies to writing LaTeX by hand carries over unchanged. The cost of the extra layer of interface is that when something breaks it is harder to see which layer broke. If Japanese is your plan, build one trial chapter first and export both the PDF and the .tex to check them.
Who LyX is genuinely worth learning for
Honestly, the people who come out ahead from learning LyX are those writing long structured documents who have no intention of learning LaTeX’s notation. A doctoral thesis, a technical manual, a report with a fixed chapter skeleton — anything where headings, theorems, figures and cross-references recur — is exactly where “assign a role and the layout follows” pays off cleanly. It also suits people with a great deal of mathematics who would rather build it from palettes than from notation. The reverse case — you want to decide every detail of the typesetting yourself, you want to edit an existing body of raw LaTeX as it stands, you lean hard on the fine features of recent packages — leads sooner or later into a sea of ERT.
- Good fit: you want structured documents without writing markup; you want to build mathematics by pointing and typing; you want a bridge from word processing to LaTeX quality; a layout file exists for the class you must use.
- Poor fit: you want full control over the typesetting; you want to edit and reuse an existing body of raw LaTeX as it stands; you lean heavily on the fine features of recent packages; your co-authors edit
.texdirectly. - Decide before collaborating: will LyX carry the document to the end, or will you export
.texpartway and move into an ordinary LaTeX project? If the latter, compile the exported.texby hand once and confirm that the class, the packages and the Japanese engine are available where you will submit.
If you are new to it, the sure route is to build the shape of one chapter rather than a finished manuscript. Choose a document class, place a title, a section, some body text, one formula and one figure or table, export the PDF, then export the LaTeX and read it. Somewhere in that exercise the boundary becomes visible between what LyX can express as a role and what has to escape into ERT. Knowing where that boundary lies before you start writing is what keeps the late stage — when the typographic details finally have to be settled — from turning into a scramble.