HaTeX: The Haskell LaTeX library.

[ bsd3, latex, library ] [ Propose Tags ] [ Report a vulnerability ]

This library provides a bridge between LaTeX and Haskell, implementing the LaTeX syntax in Haskell.

Some of the things you can do with HaTeX are:

Write LaTeX documents with all the advantages you already have in Haskell (recursion, type system, high order functions, ...), create a LaTeX backend for your own program, parse a LaTeX file and obtain its Abstract Syntax Tree (AST), pretty-print Haskell values in LaTeX, generate TikZ scripts easily, ...

Browse the examples directory in the source distribution to see some simple examples. It would be good to get you started. The HaTeX User's Guide is available at https://github.com/Daniel-Diaz/hatex-guide/blob/master/README.md.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 1.0.0, 1.0.1, 2.0.0, 2.0.1, 2.1.0, 2.1.1, 2.1.2, 2.1.3, 3.0.0, 3.1.0, 3.2, 3.2.0.1, 3.3, 3.4, 3.5, 3.6, 3.6.0.1, 3.6.1.0, 3.7.0.0, 3.8.0.0, 3.9.0.0, 3.9.1.0, 3.10.0.0, 3.11.0.0, 3.11.0.1, 3.12.0.0, 3.13.0.0, 3.13.0.1, 3.13.1.0, 3.14.0.0, 3.15.0.0, 3.16.0.0, 3.16.1.0, 3.16.1.1, 3.16.2.0, 3.17.0.0, 3.17.0.1, 3.17.0.2, 3.17.1.0, 3.17.2.0, 3.17.3.0, 3.17.3.1, 3.18.0.0, 3.19.0.0, 3.20.0.0, 3.20.0.1, 3.21.0.0, 3.22.0.0, 3.22.1.0, 3.22.2.0, 3.22.3.0, 3.22.3.1, 3.22.3.2, 3.22.4.0, 3.22.4.1, 3.22.4.2
Dependencies attoparsec (>=0.10.2 && <0.12), base (>=4 && <5), bytestring (>=0.9.2.1 && <0.11), containers (>=0.4.2.1 && <0.6), matrix, text (>=0.11.2.3 && <2), transformers (>=0.2.2 && <0.4) [details]
License BSD-3-Clause
Author Daniel Díaz
Maintainer Daniel Díaz (dhelta `dot` diaz `at` gmail `dot` com)
Category Text, LaTeX
Home page http://daniel-diaz.github.io/projects/hatex
Bug tracker https://github.com/Daniel-Diaz/HaTeX/issues
Source repo head: git clone git@github.com:Daniel-Diaz/HaTeX.git
Uploaded by DanielDiaz at 2014-01-30T17:21:45Z
Distributions LTSHaskell:3.22.4.2, NixOS:3.22.4.2, Stackage:3.22.4.2
Reverse Dependencies 15 direct, 9 indirect [details]
Downloads 47420 total (241 in the last 30 days)
Rating 2.25 (votes: 4) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Successful builds reported [all 1 reports]

Readme for HaTeX-3.10.0.0

[back to package description]

The HaTeX library

HaTeX is a Haskell library that implements the LaTeX syntax.

Check a list of examples of usage in the Examples directory. A good starting point may be simple.hs. Run any example script executing the main function.

Installation notes

To install HaTeX, use cabal-install.

$ cabal update
$ cabal install HaTeX

This will install the latest official release (recommended). If you want to try a newer version, use git to clone the code contained in this repository.

$ git clone git@github.com:Daniel-Diaz/HaTeX.git
$ cd HaTeX
$ cabal install

However, note that the API may be unstable and is subject to any kind of change. In the other hand, this package follows the Package Versioning Policy, so it is unlikely to suffer from API breakages if you follow it too when importing the library.

Travis automatic build

Build Status

HaTeX User's Guide

The HaTeX User's Guide lives here... and is also done in Haskell! It is free source and anybody can contribute to it. Doing so, you will help current and future users!

A downloadable version (not necessarily the last version, but most likely) can be found here. To be sure that you are reading the last version, go to the github repository of the guide and follow instructions to build it. It is fairly easy.

Community and Contributions

There are many ways to get involved in the HaTeX project.

TODO list

  • Add more examples.
  • More testing on the parser (See #15). This includes adding more test cases to the parsertest folder.
  • Add more documentation.
  • BibTeX support.

Packages to be implemented

  • geometry
  • TeX-my-math: Experimental library to ease the production of mathematical expressions using HaTeX.
  • haskintex: Tool to use Haskell and in particular the HaTeX library within a LaTeX file.