Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/lev135/finetex

FineTeX is a simple lang for math document preparation translatated into LaTeX
https://github.com/lev135/finetex

language latex math

Last synced: 3 months ago
JSON representation

FineTeX is a simple lang for math document preparation translatated into LaTeX

Awesome Lists containing this project

README

        

FineTeX   language to be translated into LaTeX
===

FineTeX is just a simple (for the moment) language with more flexibility in
commands' definitions than pure LaTeX.
However, the FineTex translator generates normal LaTeX code which can be
used as desired.

Features available at the moment
---
- macros-like commands consisted of arbitrary unicode symbols
- fine document structure, based on indentation rules

Not to be unfounded, here are some examples of how FineTeX and LaTeX code looks like:

> Source FineTeX code
```
The function `f` has a limit `y` when `x -> x_0` iff
> ∀ϵ > 0 ∃δ > 0 : ∀x (|x - x_0| < δ => |f(x) - y| < ϵ)
```
> Produced LaTeX code
```tex
The function $f$ has a limit $y$ when $x \rightarrow x_0$ iff
\begin{align}
\forall\epsilon > 0 \exists\delta > 0 : \forall x (|x - x_0| < \delta \Rightarrow |f(x) - y| < \epsilon)
\end{align}
```

Features to be realized in the very near future
---
- context-checks for commands: it will be possible to specify some commands to be used only with spaces
or linebreaks surrounding them
- variables for more flexibility with commands. It will be possible to check every open bracket is closed
using this feature

Getting started
---
See page on [Wiki](https://github.com/Lev135/latex-generator/wiki#getting-started)

Contributing
---
I'll be very glad if someone wants to contribute to this project.
All constructive ideas and language features are welcome — you can open an issue at
[github](https://github.com/Lev135/latex-generator/issues).
Also, the project really needs examples and guides.

Source code can be cloned from [the GitHub repo](https://github.com/Lev135/latex-generator).
For running translation, execute:
```
cabal new-update
cabal new-run texgen -- examples/example.ttex
```