2016-06-19
md
GTML un preprocesseur HTML

Depuis quelques années, j'utilise un préprocesseur HTML, GTML, pour faciliter l'entretien de mes petits sites et garantir un aspect cohérent à leurs pages Web. Si cela vous intéresse d'en faire autant, évitez les versions antérieures à 3.5.4 sinon les conditions booléennes imbriquées ne fonctionneront pas correctement. Malheureusement, la version 3.5.3 est facilement rencontrée sur le Web. Le lien ci-dessus indique ce qui semble être la plus récente version.

Puisque GTML est un script Perl, un interpréteur doit être installé. Dans Windows, j'utilise Strawberry Perl. Cependant, avec cette combinaison, l'avertissement suivant apparaît.

defined(@array) is deprecated at gtml line 1613. (Maybe you should just omit the defined()?)

Sans trop savoir ce que je faisais, j'ai donc changé la ligne 1613 de gtml

if ( defined(@fileToProcess) && ! (&Member($name, @fileToProcess)) )

à

if ( @fileToProcess && ! (&Member($name, @fileToProcess)) )

et l'avertissement a disparu et tout semble bien fonctionner.

Après un passage à Linux plus tôt ce mois-ci, j'ai trouvé que Perl est livré dans Ubuntu 14.04 et que GTML est disponible à partir du référentiel. On peut installer le script en utilisant apt-get ou Synaptic. L'intégration est bien faite, y compris une page de manuel et une invocation simplifiée:

michel@hp:~$ gtml name_of_project_file

En outre, le problème mentionné ci-dessus est résolu. Voilà qui est très bien.