pillar-markup / pillar

Markup syntax and associated tools to write and generate documentation, books and slides
MIT License
51 stars 37 forks source link

Facilitate the use of similar configurations (aka. themes) #68

Open DamienCassou opened 9 years ago

DamienCassou commented 9 years ago

Currently, each book project has its own set of files (bash scripts, pillar configuration file, fonts, latex template, latex styles, CSS, ...). That's not good because (1) creating a new project takes time and a lot of copy/pasting and (2) improving one file for one project leaves the other projects behind. Yuriy and Luc worked on the pillar-markup/book-skeleton project but (1) the process involved git commands to fetch and merge changes from the skeleton (2) the process required starting from a clone of the skeleton but many projects already existed, and (3) I don't think a git remote is a semantically valid way to express what we need.

DamienCassou commented 9 years ago

I think what we need is a notion of theme:

  1. A theme includes a Pillar configuration with some parameters regarding the LaTeX/HTML templates to use, the header numbering configuration, the desired outputs, ...
  2. A theme should contain a set of files (such as fonts, templates, latex styles, CSS files)
  3. Everyone should be able to define a theme for others to use

As a result, I think it should be possible to define a theme (or list of themes) in a pillar configuration. Each of them associated with an URL that Pillar will fetch and deploy.

DamienCassou commented 9 years ago

cc @LucFabresse @jecisc what do you think?

jecisc commented 9 years ago

I think it's a great idea! It's so lame when we change a script and we have to change each repository…

LucFabresse commented 9 years ago

I think that we need something like texmf (but simpler) ;-) Some Ideas:

Installing a theme is a matter of copying files in ~/.pillar/themes/ or directly git clone it here

Updating theme would be:

cd ~/.pillar/themes/
git pull *

We also need a command:

pillar update
``
that would load the latest stable version in `~/.pillar/image/Pillar.image`

I am really happy that you push guys!
LucFabresse commented 9 years ago

I forgot to add that when compiling a file using:

pillar export file.pillar

If nothing is said on the command line (priority to the command line), the exporter will be the one specified in file.pillar The theme is first looked up in the current directory and then in ~/.pillar but we need to think about and fix rules for all of that.

Luc

2015-09-09 15:15 GMT+02:00 Luc Fabresse luc.fabresse@gmail.com:

I think that we need something like texmf (but simpler) ;-) Some Ideas:

~/.pillar/bin/pillar <-- This one should be added in PATH ~/.pillar/image/Pillar.image ~/.pillar/image/Pillar.changes

~/.pillar/themes/superdarktheme/html ~/.pillar/themes/superdarktheme/latex ~/.pillar/themes/superdarktheme/ ~/.pillar/themes/zentheme/html/ ~/.pillar/themes/zentheme/latex/ ~/.pillar/themes/zentheme/

Installing a theme is a matter of copying files in ~/.pillar/themes/ or directly git clone it here Updating theme would be: cd ~/.pillar/themes/ git pull *

We also need a command:

pillar update

that would load the latest stable version in ~/.pillar/image/Pillar.image

I am really happy that you push guys!

Luc

2015-09-09 13:20 GMT+02:00 CyrilFerlicot notifications@github.com:

I think it's a great idea! It's so lame when we change a script and we have to change each repository…

— Reply to this email directly or view it on GitHub https://github.com/pillar-markup/pillar/issues/68#issuecomment-138879635 .

DamienCassou commented 9 years ago
jecisc commented 9 years ago

The system of Theme of Luc looks like the system of Ecstatic. Maybe we should look a little at what Guillermo did with ecstatic ?