Introduction à la création d’un livre

Pour produire un livre avec SPIP, on peut produire un PDF. Une des solutions est d’utiliser LaTeX. C’est celle que nous avons choisie.

SPIP et LaTeX

SPIP permet de produire n’importe quel fichier de type text. En général, il produit des fichiers HTML. Mais avec le language de boucle de SPIP, on peut aussi produire des javascript, des css, etc.

L’idée d’un livre avec SPIP est la suivante : produire tantôt du HTML, pour une consultation avec un navigateur, tantôt des fichiers .tex.

Ces fichiers sont des fichiers LaTeX. À partir d’un ensemble de fichiers LaTeX, il est possible en utilisant le compilateur LaTeX [1] de produire un fichier PDF. C’est ce fichier qui devra être envoyé à l’impression.

L’avantage d’utiliser LaTeX est :
-  utiliser un logiciel libre plutôt que PrinceXml (qui permet de convertir du HTML en PDF, mais qui est propriétaire)
-  utiliser un logiciel réputé pour ses grandes qualités typographiques (réputation qui n’est pas volée).

Au final, on peut résumer ainsi le processus de production d’un livre avec SPIP.

Schéma de production d’un livre avec SPIP

Pour ce projet, nous n’utilisons pas LaTeX, mais XeLaTeX qui est une variante de LaTeX ayant une gestion plus correcte de l’encodage Unicode [2].

Une structure de livre flexible

De même que SPIP peut produire n’importe quelle structure de page HTML, il peut produire n’importe quelle structure de fichier .tex.

C’est pourquoi le système est divisé en deux plugins :
-  LaTeXWheel qui permet à SPIP de transformer ses raccourcis typographiques ({,-* etc.) en code LaTeX.
-  Zippeur version 2, qui permet d’assembler en un seul ZIP une série de fichier .tex. En effet, il est possible de créer des sous-fichiers LaTeX, un peu comme on crée des sous-squelettes avec <INCLURE>. Par conséquent, on demandera à SPIP de produire un zip contenant un ensemble de fichier .tex, plutôt qu’un seul fichier .tex de grande taille.

Un squelette correspondant à la structure du site http://programmer.spip.org a été concu. Il propose ainsi une structure possible. Il s’appuie sur ces deux plugins.

Comment aborder ce projet « Un livre avec SPIP »

Cette documentation se divise en deux :

-  Une documentation pour les personnes ne connaissant ni LaTeX ni le mécanisme des boucles de SPIP. Cette documentation se subdivise en deux :

-  Une documentation, encore à écrire, pour les personnes souhaitant personnaliser leur livre, ce qui nécéssite de connaître :

Notes

[1Voir l’article de Wikipédia pour plus de détails sur ce qu’est LaTeX.

[2Sur les histoires d’encodage, voir le mémorable article sur la tour de Babel du net.

Discussion

2 discussions

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom