This is a snapshot of my personal lexicographic database of Tlingit. I use
the Mac OS X version of
TshwaneLex for my lexicography
work. The HTML version is automatically generated by TshwaneLex from the XML
database with no frills. The much prettier PDF version is created through an
arcane pipeline of
scripts. Since the database is inherently XML there is naturally the
possibility of a fancy online version. But I’m not much of a web programmer and
so I haven’t bothered to explore that direction much.
I don’t recommend that the average lexicographer should try this route, but if
you’re handy with LaTeX, XSL, and sed then you might find it a useful template
from which to design your own.
TshwaneDJe has discounts with no
publication restrictions for people using their software to create dictionaries
for endangered languges, currently €150. It’s a commercial product, but you get
much more than what you pay for. I’ve used other free lexicographic programs
and have yet to find one that suits my needs as well as TshwaneLex does. The
Mac OS X version, which I normally use, is still a bit clunky but constantly
Last updated: 15-July-2012
- TshwaneLex database — Some obfuscated
and probably compresed form of XML under the hood.
- HTML version — Produced automatically by
TshwaneLex with no further changes. Crude but useable.
- PDF version — Produced by my hand-hacked
pipeline of cruft below. This isn’t finished yet, there are still lots of
small details to work out. But it’s a good example of what can be done.
- XML output — Exported from TshwaneLex.
- Processing script — A shell script that does
the following steps. (I’m currently using
Saxon 9.4 HE for the XML magic.)
- TLex → TeXML — XSL stylesheet to convert
from the XML output by TshwaneLex to the intermediate format of
- TeXML input — The result of the previous
conversion, ready to be processed by TeXML.
- Postprocessing script — Another shell script
that massages and mangles XeLaTeX code that is output from TeXML.
- Spacing fix — Sed script to fix some
- Formatting fix – Sed script to convert TLex
inline %X...%X formatting to LaTeX.
- Classifier feature fix – Sed script to convert
[±X] classifier features to LaTeX.
- Null fix — Sed script to fix the Unicode
U+2205 EMPTY SET character.
- Root fix — Sed script to fix the Unicode
U+221A SQUARE ROOT character.
- XeLaTeX input — The result, ready for processing
- XeLaTeX wrapper — The wrapper file which
provides all the formatting details for XeLaTeX.
- Font setup – Macrology to set up
the fonts for the dictionary.
- Layout — Layout parameters and
calculations. This part depends almost entirely on the layout hooks
and macros provided by the excellent
- Packages — Loads a wide variety
of LaTeX packages.
- Crippenmacros – A package of assorted
LaTeX macros that I use regularly.