Emmanuel Beffara - Software

(La)TeX stuff


This is a wrapper for LaTeX and companion programs. It can perform dependency analysis over sources, convert graphics into appropriate formats, process bibliographies and indexes, and compile the documents the right number of times to resolve references, playing the role of a LaTeX-aware "make" program.


This is a very small font that contains some symbols useful in Linear Logic and that I didn't find elsewhere. Available in standard TeX distributions.
French Cursive
This is a family of cursive fonts in the style of the French academic running-hand (though it contains many accented letters that are not used in French). It is declined in several variants.

LaTeX packages


This is a LaTeX package that replaces the standard presentation of theorem environments with a more fancy one, putting rules around the text.


Another package that changes the presentation of theorems. This one numbers theorem-like environment and other paragraphs with numbers in the margin, as in old math books.

  • The package, no documentation yet.

Printing tools

This is a Python script that I use to rearrange pages in PDF documents. It computes bounding boxes and deduces optimized zoom for any number of pages pages per sheet with given margins or scaling. Pages can be arranged for various kinds of folding or binding. This requires Poppler for Python and works faster when PIL is available. Say pdfpages --help for help.
This is the ancestor of pdfpages, used to make booklets from PostScript.
This Python script takes a bunch of image files and turn them into a nice PDF document, with one image per page, at an appropriate scaling. This requires pdfLaTeX.

Django applications

An application to manage the schedule of a conference or regular seminar, organized as events/talks/sessions. You can see it in action on the web sites of LI2012 and Chocola.
  • git clone http://iml.univ-mrs.fr/~beffara/repos/django-seminar.git/
A small application to handle database-independent backups on Django sites.
  • git clone http://iml.univ-mrs.fr/~beffara/repos/django-backups.git/

Various things

Sometimes I write shell scripts and other small pieces of code, some of which might be of interest to other people

This is a Python script that translates TeX sources to and from Unicode, translating Unicode symbols to TeX commands and back.
keymaps for Vim
  • arabic-tr.vim for arabic (transliterated),
  • math.vim for math symbols (on a French keyboard).
  • They can even be turned into Gtk2 input methods using vim2gtk!

This is a Python script that eases the task of installing software using Stow. Say tostow snap, install a package normally using its ./configure; make; make install procedure, say tostow stow foo, and all the files just installed are moved to the proper place in /usr/local/stow/foo.