package patoline
Install
Dune Dependency
Authors
Maintainers
Sources
md5=b6bdef12b3da13e85a8ca4afab86b6e6
sha512=9d7cae9822b95cf78b06d67d49f879eb656b2da0085a0d7296d6f94940a4a5fc3030f552cf5b010c72d7a66669114b3660c59c808ce0ad5c2cf79f3e1d331cec
Description
Patoline is a collection of typesetting libraries designed to be combined into a variety of possible applications. Its primary goal is not to offer the definitive answer to all typesetting problems, but rather to write the painful and boring parts of the job, so that interesting tools could be written easily. Obviously, a related (but much smaller) project is the Patoline compiler, which compiles a mixed Wiki/LaTeX/Ocaml syntax into a variety of output formats, including traditional PDF files, but also web servers that deliver dynamic contents.
Published: 30 May 2022
README
Patoline - A modern digital typesetting system
This repository contains the source code of Patoline, which homepage is hosted at https://patoline.github.io.
Dependencies
The minimal dependencies are
OCaml (version between 4.03.0 and 4.07.1)
Opam (version 2.0.0 or higher)
Dune (version 2.7.0 or higher)
Ocamlfind
Earley (version 2.0.0)
Camlzip
Sqlite3
Imagelib
GNU make
To setup a suitable OCaml environment, the simplest possible solution is to use the Opam package manager. It can be installed by following instructions at http://opam.ocaml.org/doc/Install.html. You can then install an OCaml compiler and the required libraries as follows.
opam switch 4.07.1
eval $(opam env)
opam install dune earley.2.0.0 camlzip sqlite3 imagelib
You can optionally install more Opam packages (OCaml libraries) depending on the Patoline drivers that you want to use. For instance, you will need to install lablgl
for our OpenGL driver, cairo2
for our Cairo driver, cryptokit
for our Patonet
driver.
Compilation from source
Patoline can be compiled from source as follows:
wget https://github.com/patoline/patoline/archive/master.zip
unzip master.zip
cd patoline-master
make
make install
First Patoline document
Here is a hello world patoline document (other examples can be found in the examples
folder).
======================
Hello, World!
----------------------
Patoline newbies
======================
-> Section with text
This is my //first// document! That's so **cool**!
-<
-> Section with maths
Did you known that $(a + b)² = a² + 2ab + b²$?
-<
If you copy-paste it in a file hello_world.txp
, then you can compile it with the command patoline hello_world.txp
. This will produce a PDF file called hello_world.pdf
. Note that you can compile to other format drivers such as a webpage using SVG format or an OpenGL window. To do that, select a driver with the command patoline --driver DRIVER hello_world.txp
. You can obtain the list of the existing drivers with patoline drivers
(they may not all be installed).
List of developpers and contributors
Main developpers and contributors:
Pierre-Étienne Meunier
Christophe Raffalli
Rodolphe Lepigre
Tom Hirschowitz
Florian Hatat
Pierre Hyvernat
Guillaume Theyssier
Vincent Laporte
Alan Schmitt