See the bibliography for pointers to
X
E
T
E
X
and
X
E
L
A
T
E
X
.