pillar, one format for all pillar/presentatiآ  5/35 pillar thibault arloing yann dubois pillar,...

Download Pillar, one format for all pillar/presentatiآ  5/35 Pillar Thibault Arloing Yann DUBOIS Pillar, one

Post on 06-Aug-2020

3 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Pillar, one format for all supports

    Thibault Arloing Yann DUBOIS

    26 août 2016

    1/35

  • 1 Pillar

    2 Pillar use cases

    3 What’s new in Pillar 4.0

    4 Make utilisation easier

    5 Demo Time

    6 Conclusion

    2/35

  • 3/35

    Currently

    LaTeX Complicated Hard to debug Hard to convert to HTML

    Markdown Incomplete Incompatible Inplementation Few output formats

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 3 / 35

  • 4/35

    Why Pillar ?

    We wanted something :

    Easier than LaTeX More complete than Markdown

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 4 / 35

  • 5/35

    Pillar

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 5 / 35

  • 6/35

    Pillar

    One input, many outputs (e.g. HTML, LaTeX, ePub)

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 6 / 35

  • 7/35

    Pillar - EPub export

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 7 / 35

  • 8/35

    Pillar

    One input, many outputs (e.g. HTML, LaTeX, ePub) Slides / Books / Websites Textual syntax Easy to Extend Easy to use

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 8 / 35

  • 9/35

    Pillar - Easy syntax

    !Example This is an example of Pillar file. *Link>http://pharo.org* -Unordered Item -Unordered Item #Ordered Item #Ordered Item [[[language=smalltalk|label=How to say Hello Transcript show: ’Hello !’. ]]] |!Harder |!Better |Faster |Stronger |More Than |Ever +Figure>file://path/to/the/file.png|width=80+

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 9 / 35

  • 10/35

    Advanced features

    ${}$ annotation syntax Slides ${slide :Slide name}$ ${myAnnotation :arg1=1|arg2=2}$ Consistency in syntax [[[language=smalltalk|arg1=1|arg2=2]]] Evaluate a smalltalk script

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 10 / 35

  • 11/35

    Pillar use cases

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 11 / 35

  • 12/35

    Books written with Pillar

    Enterprise Pharo : A Web Perspective Agile Virtualization Pharo By Example

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 12 / 35

  • 13/35

    Books written with Pillar

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 13 / 35

  • 14/35

    Presentations

    Beamer DeckJs

    This presentation itself is written in Pillar

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 14 / 35

  • 15/35

    Other use cases

    Ecstatic : Static Websites, Guillermo Polito / Stéphane Ducasse (http ://guillep.github.io/ecstatic) PillarHub, Mike Filonov (http ://pillarhub.pharocloud.com/)

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 15 / 35

  • 16/35

    What’s new in Pillar 4.0

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 16 / 35

  • 17/35

    Pillar 4.0 - Structures

    Dissociate form the shape Easy to use Provide from formatting mistakes

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 17 / 35

  • 18/35

    Structures - How does it work

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 18 / 35

  • 19/35

    Pillar 4.0 - Other features

    Footnotes ${footnote :Text to put in the footnote}$ Citations ${cite :REF1713}$ Header Capitalization Hideable Scripts

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 19 / 35

  • 20/35

    Make utilisation easier

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 20 / 35

  • 21/35

    Hell on boot project

    Where is my configuration file ? Where are templates ? I am bored of copy/paste parts of configuration file Where did I put my pillar files ?

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 21 / 35

  • 22/35

    Pillar Archetypes - Skeleton maker

    Simple utilisation Build a project base with example files Many archetypes (Book / Slides / Beginner)

    ./ pillar archetype book

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 22 / 35

  • 23/35

    Pillar Archetype - How does it work ?

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 23 / 35

  • 24/35

    Makefile Archetypes

    Makefile adapted to each Archetypes Separated Makefiles

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 24 / 35

  • 25/35

    Makefile Job

    Begin with a pillar file

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 25 / 35

  • 26/35

    Makefile Job

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 26 / 35

  • 27/35

    Makefile Job

    Pass through Pillar

    $(OUTPUTDIRECTORY)/%. html.json: %. pillar copySupport ./ pillar export --to="html" --outputFile=$@ $<

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 27 / 35

  • 28/35

    Makefile Job

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 28 / 35

  • 29/35

    Makefile Job

    Pass through a template System

    ./ mustache --data=$< --template=${HTMLTEMPLATE} > $@

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 29 / 35

  • 30/35

    Makefile Job

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 30 / 35

  • 31/35

    Demo Time

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 31 / 35

  • 32/35

    Conclusion

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 32 / 35

  • 33/35

    Future Works

    Pharo comments in Pillar Mobi Exporter Math expressions in LaTeX We have a lot of suggestions from community

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 33 / 35

  • 34/35

    Conclusion

    Easy to Extend Easy Syntax Lot of output Easier Compilation Possibility to use other tools for templating

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 34 / 35

  • 35/35

    For more informations

    https ://ci.inria.fr/pharo- contribution/job/EnterprisePharoBook/lastSuccessfulBuild/artifact/book- result/PillarChap/Pillar.html

    Thibault Arloing Yann DUBOIS Pillar, one format for all supports 26 août 2016 35 / 35

    Pillar Pillar use cases What's new in Pillar 4.0 Make utilisation easier Demo Time Conclusion