Maintenant que j'arrive à générer un HTML et un PDF magnifiques (oui, oui, je me la pète :) ), je suis en train de nettoyer scripts et feuilles de style pour tout commiter sur le dépôt SVN.

J'ai commencé par renommer tous les fichiers SGML en XML :

find . -name "*.sgml" | while read fichier
do
  svn move ${fichier} ${fichier/sgml/xml}
done

Ensuite, j'ai corrigé le Makefile et les feuilles de style pour remplacer les LFS par des PG, histoire d'être cohérent. J'ai eu un petit soucis avec le Makefile. Je voulais qu'il crée les répertoires et les fichiers de tel façon que je n'ai plus qu'à les copier sur le serveur. Donc, il me fallait ajouter le numéro de version sur la variable contenant le répertoire de construction. La version se trouve dans le fichier version.xml. En shell, c'est très simple car il suffit de cette ligne :

BASEDIR=~/pgsql-`grep -v major version.xml | cut -c19-23`-fr

Dans un Makefile, cette commande ne fonctionne pas. En effet, il n'exécute pas la commande grep -v .... Il l'exécute quand il utilise la variable, plus exactement quand il exécute l'instruction qui utilise cette variable, ce qui peut poser quelques soucis (par exemple quand cette variable se trouve déjà des guillemets inversés). Bref, en parcourant le manuel de make, j'ai fini par découvrir qu'on pouvait exécuter une commande shell et récupérer le résultat dans une variable (y compris si ce résultat comprend plusieurs lignes) :

BASEDIR := $(shell echo "~/pgsql-`grep -v major version.xml | cut -c19-23`-fr")

Voilà. Tout con mais il fallait le savoir.

Bref, maintenant, mes scripts fonctionnent avec les feuilles de style associées. Il faudra rajouter la feuille de style CSS de Kryskool quand il l'aura terminé. En attendant je commit... et j'obtiens la révision 232.