All Projects → pillar-markup → Pillar

pillar-markup / Pillar

Licence: mit
Markup syntax and associated tools to write and generate documentation, books and slides

Programming Languages

420 projects


Projects that are alternatives of or similar to Pillar

Generates and maintain a Table of Content for your
Stars: ✭ 16 (-60.98%)
Mutual labels:  markup
Pandoc Ruby
Ruby wrapper for Pandoc
Stars: ✭ 299 (+629.27%)
Mutual labels:  markup
Universal markup converter
Stars: ✭ 24,250 (+59046.34%)
Mutual labels:  markup
Awesome Web Styling with CSS Animation Effects ⭐️
Stars: ✭ 109 (+165.85%)
Mutual labels:  markup
Charts with HTML & CSS
Stars: ✭ 79 (+92.68%)
Mutual labels:  markup
Minimalistic HTML templates for Elixir, inspired by Slim.
Stars: ✭ 315 (+668.29%)
Mutual labels:  markup
A modular Garry's Mod chat addon for both users and developers.
Stars: ✭ 74 (+80.49%)
Mutual labels:  markup
CBML The Code Block Markup Language
Stars: ✭ 13 (-68.29%)
Mutual labels:  markup
Slide Decks
Stars: ✭ 261 (+536.59%)
Mutual labels:  markup
An open source library that lets your users draw on things - mark up images with text, shapes, etc.
Stars: ✭ 482 (+1075.61%)
Mutual labels:  markup
Source for Codewriting (book) and the Codewriting/Code the Docs (site/blog)
Stars: ✭ 49 (+19.51%)
Mutual labels:  markup
Extensible Abstract Syntax Tree
Stars: ✭ 32 (-21.95%)
Mutual labels:  markup
Pandoc based document editor and converter in your browser.
Stars: ✭ 348 (+748.78%)
Mutual labels:  markup
A ruby environment for Latex files
Stars: ✭ 14 (-65.85%)
Mutual labels:  markup
Portable Text is a JSON based rich text specification for modern content editing platforms.
Stars: ✭ 759 (+1751.22%)
Mutual labels:  markup
This is a test project where you can explore how github interprets Org-mode files
Stars: ✭ 126 (+207.32%)
Mutual labels:  markup
The Web Markup Minifier (abbreviated WebMarkupMin) - a .NET library that contains a set of markup minifiers. The objective of this project is to improve the performance of web applications by reducing the size of HTML, XHTML and XML code.
Stars: ✭ 312 (+660.98%)
Mutual labels:  markup
🎶 Markup language for music creation and analysis! --
Stars: ✭ 34 (-17.07%)
Mutual labels:  markup
A Ruby gem for processing reStructuredText via Python's Docutils
Stars: ✭ 18 (-56.1%)
Mutual labels:  markup
It's time for your markup to get down! HTML to markdown converter. Breakdance is a highly pluggable, flexible and easy to use.
Stars: ✭ 418 (+919.51%)
Mutual labels:  markup

Pillar (P8)

Pillar is a markup syntax and tool-suite to generate documentation, books, websites and slides. Pillar is not new, it was invented around 2000 as a supporting language for SmallWiki: one of the first wiki using OOP for real. Its ancestor was the markup for the Pier CMS and we extracted it from Pier to make it more applicable to different domains. The Pillar syntax is similar to markdown but its emphasis is on publishing and how it handles different types of links.


Coverage Status


1. Building from sources

For SSH setup, execute the script found in the scripts directory:

$ git clone [email protected]:pillar-markup/pillar.git
$ cd pillar
$ git checkout v8.0.12
$ chmod a+x ./scripts/
$ ./scripts/

1. Building from sources

For HTTPS setup, execute the script found in the scripts directory:

$ git clone
$ cd pillar
$ git checkout v8.0.12
$ chmod a+x ./scripts/
$ ./scripts/

The script will create a build directory in your current working directory with the pillar installation.

$ ls
LICENSE  appveyor.yml  archetypes  ==>>build<<==  scripts  src

Current version

  • Current version is Pillar v8.0.12
  • Most Pharo booklets are using v7.7.4 and are under migration to v8.0.12

2. Setting up the environment

You can then proceed to install that pillar build where you want. For example, you can place it in a hidden directory in your home directory:

$ cd ..
$ mv pillar ~/.pillar

Then add that directory to the PILLAR_HOME and HOME environment variables, for example, by modifying your .bashrc with

export PILLAR_HOME="$HOME/.pillar"

To make the pillar command available in your shell you can:

  • either symlink the pillar script into your ~/bin (or ~/.local/bin on some environments) folder using:
ln -s $PILLAR_HOME/build/pillar ~/bin/pillar
  • or add the build folder into the your PATH envirnment variable, for example by adding into your .bashrc (or shell startup):
export PATH="$PATH:$PILLAR_HOME/build"

3. Install external dependencies

You need to have a LaTeX installation in your machine. The simplest is to do a full installation, otherwise read below for a more tailored solution.

Installing LaTeX on OSX

The simplest installation is to do a full mactex installation. Just follow the instructions in

Installing LaTeX on *nix

The simplest way to install LaTeX on unix is to install texlive-full in your system using your preferred package manager.

Installing LaTeX on Windows

Install a LaTeX distribution such as MiKTeX and install the dependencies specified below using the provided package manager. Then, make sure the bin directory is in your PATH environment variable. For example this could be the following value:

C:\Program Files\MiKTeX 2.9\miktex\bin\x64

The automatic installer does this for you in general.

Also, latexmk on MiKTeX depends on a perl interpreter, that could be obtained via:

And requires to install this specific package MiKTeX package:

  • supp-pdf

Tailored installation (for non-full lovers)

Producing pdf documents with Pillar requires a LaTeX installation with certain packages. Pillar 7.7.3 introduced the possibility to use LaTeX 2018 or the rolling version of 2019. Check the files and companion travis file (if you want to run in travis) in the support/latex of the archetype.

4. Test your installation

To test your pillar installation, open a new terminal and execute the pillar --version command. If everything is ok, that should print out (as in the current version) the version of the Pharo VM. For example:

$  pillar --version
M:    CoInterpreter VMMaker.oscog-eem.2265 uuid: 76b62109-629a-4c39-9641-67b53321df9a Aug 27 2017
StackToRegisterMappingCogit VMMaker.oscog-eem.2262 uuid: 8b531242-de02-48aa-b418-8d2dde0bec6c Aug 27 2017
VM: 201708271955 $ Date: Sun Aug 27 21:55:26 2017 +0200 $ Plugins: 201708271955 $

Getting started

To create a book, you can start by installing the book archetype in a directory where you want to manage it:

$ mkdir my-new-book
$ cd my-new-book
$ pillar archetype book

You can then edit the pillar files and the pillar configuration file pillar.conf. Finally, you can generate your book in pdf using.

$ pillar build pdf

Or in html:

$ pillar build html

The resulting pdf or html site will be written into the _result directory.

All commands

Add the -h flag to get documentation.

pillar build It builds by default the export format found in pillar.conf at defaultExport target.

pillar archetype

pillar updateTemplate

pillar serve

Contributing to Pillar

The current pillar version is being developped using both Pharo8.0. To contribute, the easiest way to to follow the previous scripts and send PullRequests. Use the latest dev-branch as a root for your changes.

More documentation

Read the documentation at Please note that chapter on "Pharo a web Perspective" is obsolete since it refers to Pharo 60.


  • 8.0.12 current stable version. Tagged versions from 8.0.4 to 8.0.12 excluded got broken due to a class renaming. 8.0.12 is now green tests and loads. It is the future candidate for stable.
  • 7.7.4 Last version before moving to P8.
  • 7.7.3 introduces the possibility to use LaTeX 2018 or the rolling version of 2019. Check the and companion travis file in the support/latex of the archetype.
  • 7.7.0 cleaned useless features, plus travis builds.
  • 7.5.0 introduces environments (${begin:card|x=12}$ ... ${end:card}$
  • 7.4.1 introduces element-based templating (templates found in a given folder are used to output one given element).

Planned features

  • Up to date documentation
  • Remodularize packaging to be able to use Pillar inside Pharo for class/package comments.
  • Integration with Citezen
  • Introduce a markdown brand (to be able to do full roundtrip pillar <-> markdown <-> pillar). It will not cover every features of markdown and it will cover pillar core features: environment, extensible tags.
  • Better templates for Web
  • More components (blog)
  • Reinitiate a small version of Pier to get live support
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].