Circularspace

LuaLaTex

Using LuaLaTeX seems like a great idea, inserting the excellent embedded programming language Lua into LaTeX1 code (not really code, a very good mathematical markup language) to help with some of the inconveniences of the language.

For those of you who’ve never worked with LaTeX, imagine a simple markup language like markdown for example. The text looks clean and simple, font style changing and the like is handled pretty seamlessly and does not distract from the experience of writing the text itself.

LaTeX is not like this.

It’s full of annoying backticks and curly braces which frankly get in the way of writing prose. It’s great for inserting maths, for example I cannot embed maths into markdown very simply but in LaTeX it’s a doddle.

For example

$\chi^2 = \sum_i_N$

This is a simple equation for the chi squared value of a dataset. It makes sense once you stare at it for a while I promise you!

It does not however handle things like file paths well. I started to write about embedding python into LaTeX to enable nice file pathing structures and relative paths but this turned out to be quite a hassle. I had a nice vision of writing a python pre-processor for latex which strips out any python code between some predetermined tags, running python on it and putting the resulting text back into the tex document. I gave up on this however for two reasons:

  1. I could not be bothered
  2. I found LuaLaTeX

This article is about point number 2 in that list, and its advantages and disadvantages. It is also a cry for help: if anyone knows the answers to these questions, please leave a comment below!

What can one use LuaLaTeX for?

Unfortunately most of the documentation I’ve found on the ‘net are for LuaTeX which is the lua equivalent of plain TeX, a language I’ve never learnt - I therefore know very little about it.


  1. I understand that it’s written as LaTeX with the X being a chi symbol, but Χ but I may slip up sometimes. ↩︎