A Short Journey with LaTeX

2011-08-30 by . 8 comments

Like many open-source aficionados, I’ve used LaTeX for quite some time. I have at least used it to typeset my CV (using europecv and later moderncv) and church songs and hymns (using songbook and gchords). While I liked what LaTeX produced, I was under the idea (like many) that TeX was an old lady of a software, a bit rusted and certainly not very active. My recent experience with LaTeX proved me very wrong.

When I decided, a few months back, to start publishing books with LaTeX, little did I suspect to find such a vibrant, dynamic, active community with a fully alive software stack!

Back to basics with PDFTex

About 6 months ago, I started writing a book about Augeas. Following the example of the Git Pro book, I began writing the book in markdown to keep it simple. However, I soon had the need to typeset computer code with syntax highlighting for Augeas code, a syntax not supported by any known highlighter, so it brought me to use minted and define my own syntax. I then started adding index entries to the book.

After that was done, the amount of LaTeX embedded in the markdown code was just too much, and I simply switched the whole project to plain LaTeX and rendered it using pdflatex. I had never typeset more than a few pages in LaTeX, so that was my first big project using it.

Tikz and the CTAN

After gaining some confidence with the Augeas book (which has yet to be finished), I decided I could edit and publish a theology book I had been translating, as well as a daily devotional my pastor had translated. I naturally began rendering them with pdflatex. I happily discovered that the bibleref package could help me typeset Bible references in LaTeX and even generate automated indexes of Bible references.

For the devotional, I had a need to typeset thumbs with the month names on the border of all odd pages. With the help of the TeX.SX users, I was advised to turn to tikz for this, and thus created my very first CTAN package, fancytabs.

XeTeX

As the theology books were getting edited and prepared for printing, I wanted to adapt the fonts used. For one book in particular, I wanted to use proprietary truetype fonts that were used on the cover of the book (which is composed using Inkscape). So I was advised to turn to XeTeX, for its great capabilities to use system fonts. I then discovered about OTF fonts, and how it could achieve many of the OT1 features (such as ligatures) and more using OTF.

Playing with OTF fonts in XeTeX got me to publish the fontbook and babyloniannum packages (as answers to TeX.SX questions), and start a demo project using the EB Garamond open-source font’s OpenType capabilities to reproduce a 16th century Bible.

TeXLive and software packages

Being an Ubuntu developer, I tend to use only software packages to install anything on my systems, and package the software that are missing in the official archive. However, after switching to XeTeX, I had more and more needs for up-to-date LaTeX packages and rendering engines, and Ubuntu only had TexLive 2009. TeXLive is hard to package and split, so most Linux distributions are lagging behind on it. Packaging TexLive 2011 for my own need seemed like too much work (for now), so I gave up and installed TeXLive 2011 the traditional way.

LuaTeX

One thing that soon frustrated me with XeTeX was its lack of support for microtype features. Sure, there was a beta version of microtype with XeTeX support. It added font protrusion, but I still had to fix lots of overfull lines manually for the lack of font expansion. This is what brought me to LuaTeX.

So finally (for now), after migrating to TexLive 2011, I began converting my documents to LuaTeX. I had a few issues with font tracking and microtype, but all in all, I’m really quite happy to have gotten there (and I’m not even making use of Lua just yet).

This short journey with LaTeX has gotten me to use 3 rendering engines (in order of appearance), commit 4 new packages to the CTAN and contribute to one existing package. It has also gotten me to discover a vibrant, active and welcoming community of users and developers, and a collection of software which is all but dying. I’m looking forward to where TeX will take me next!

Filed under LaTeX TeX.sx

• N.N. says:

Nice post! Just a slight correction, in the first sentence under the heading “TeXLive and software packages” I guess software is misspelled.

• jemp says:

Incredible how similar your TeX experiences are to mine! :) Like you, I intended to use the system to typeset a book. I started with PDFTex, then switched to XeTeX to use an OpenType font easily, then was frustrated by the lack of microtype support in XeTeX, then discovered the beta version of microtype, then realized that my ‘Ubuntu-supported’ TeXLive is too old for this version of microtype, then was deeply saddened by the fact that when using XeTeX, I have to say goodbye to font expansion.

So as your post shows, it almost seems natural to turn to LuaTex now :) One thing that has stopped me from doing so is that LuaTeX offers no polyglossia support. Now, if I understand you rightly, the books you typeset are in French, like “Calvinisme, Arminianisme & Parole de Dieu” (which, by the way, is a display of some beautiful typography in my opinion). So how do you cope with hyphenation in your French-language documents typeset in LuaTeX?

• Very interesting indeed. As far as hyphenation goes, I’m still using babel (frenchb in this case) as I’m satisfied with it, so it hasn’t been a problem for me with LuaTeX.

• jemp says:

Thanks for the answer! For some mysterious reason I was convinced LuaTeX didn’t support babel. But because it actually does, then I can take the next step in my LaTeX journey :)

• Well, for the few cases where there’s still a need for hyphenation when using microtype with font expansion, babel works fine for me :-) Enjoy the journey!

• barbara beeton says:

agree with N.N. — nice post!

a small niggle. in the last paragraph it says “all by dying”. i hope that’s “all but dying”! i’m not ready to throw in the towel yet!