sommaire général 1. Qu'est-ce qu'une macro ? Les macros sont là pour « automatiser des tâches répétitives ». Imaginons que vous souhaitiez répéter un même lien plusieurs fois dans une page, par exemple un lien vers votre adresse e-mail : « pour m'écrire, cliquez ici, ou là ou encore juste ici ! » Pour coder cela en HTML il faudra écrire :
On peut bien sûr s'en sortir avec des copier/coller judicieux. Mais RAW HTWL permet tout simplement d'écrire ceci :
Pour que ce bout de code produise le fichier HTML désiré, il suffit de le faire glisser sur RAW HTWL. Quand il rencontre la séquence \def \mail, RAW HTWL sait que lorsqu'il rencontrera de nouveau la séquence \mail ..., il devra lui substituer la séquence <A HREF="mailto:andriana@mail.dotcom.fr> ... </A>. Dans cet exemple, #texte est un argument de la macro \mail. On peut définir autant d'arguments qu'on veut quand on définit une macro. Outre la macro \mail, remarquez la possibilité d'utiliser les accents dans RAW HTWL, ainsi que l'accès simplifié à l'espace insécable. 2. À quoi peuvent servir les macros ? 2.1. Propagation sur tout un site L'exemple ci-dessus n'est pas innocent : il évoque un cas de figure qu'on rencontre souvent Quand on change d'adresse e-mail, par exemple, si on avait défini son ancienne adresse à l'intérieur d'une macro, il suffit de changer une fois cette macro pour que toutes les références à l'adresse e-mail dans tout le site soient modifiées. En pratique, ce cas de figure se règle ainsi : Mettre ceci dans un fichier « mon mail.h » :
Contenu du fichier « index.html » :
Contenu du fichier « mes vacances.html » :
On voit que l'adresse e-mail est stockée à un seul endroit, le fichier « mon mail.h », et est accessible dans tous les autres fichiers grâce à la primitive \include. 2.2. Liens À l'instar des adresses e-mail, les liens couramment référencés devraient être stockés dans des macros, afin de limiter les fautes de frappe. Quand il s'agit de liens locaux, le principe des macros est tout aussi utile. En effet, lorsqu'on doit réorganiser son site en profondeur, il est agréable d'avoir dans un seul fichier « mes liens.h » tous les liens utilisés, pour pouvoir facilement les modifier. 2.3. Textes pré-enregistrés L'utilité la plus évidente des macros est de pouvoir répéter un texte donné. Ainsi, si on souhaite avoir dans chacune des pages du site la date de mise à jour, il suffira de définir dans un fichier « .h » une macro \date_de_mise_a_jour : Contenu du fichier « mes premières macros.h » :
puis d'utiliser la macro \date_de_mise_a_jour à bon escient. Cela ressemble au « champ de date » qu'on peut rencontrer dans des logiciels bien connus, comme Microsoft Word. On peut évidemment aller plus loin, en rajoutant par exemple un lien à un texte pré-enregistré :
Avec comme utilisation possible :
Le lien sera répété à chaque fois qu'on parlera d'Apple. 2.4. Styles On peut tout à fait se passer du HTML 4.0 et utiliser en HTML 3.2 les fonctions basiques des feuilles de styles (css) ; il suffit d'utiliser des macros
Avec l'utilisation idoine de fichiers « .h » et de la primitive \include, ces macros pourront être utilisées dans tous le site. 2.5. Mise en page Quand on a décidé d'une charte graphique pour un site, et que les pages sont composées d'éléments qui reviennent souvent (menus, logos, bandeaux, cadres pour le contenu ), on a plusieurs façons de régler le problème : copier/coller d'une page de base, utilisation des frames, modèles de pages (templates) Les macros de RAW HTWL permettent de coder assez facilement des pages templates. Se reporter aux exemples. L'intérêt des templates est de séparer la mise en page des contenus. On définira les macros de mise en page dans des fichiers « .h », et les fichiers « .html » ne contiendront quasiment que du contenu. 2.6. Catalogues d'images RAW HTWL permet de parcourir un dossier entier (primitive \foreachfile), et de répéter une action donnée pour chaque élément rencontré dans le dossier. Cela offre la possibilité par exemple de dresser la liste des images contenues dans le dossier, de créer une page HTML par image, de regrouper les images quatre par quatre, etc. Se reporter aux exemples. 2.7. Bases de données Ce qu'on fait avec RAW HTWL pour les listes d'images, on peut aussi le faire pour des bases de données. On s'arrangera pour séparer les champs par des tokens identifiables comme ci-dessous. On peut garder toutes les fiches dans un seul fichier, ou faire un fichier par fiche : Contenu du fichier « fiche 1.h » :
On peut ensuite traiter cette base de données, en extraire toutes les listes imaginables en HTML, faire un sommaire HTML, des classements, etc. Se reporter aux exemples. 3. En savoir plus sur les macros
RAW HTWL a des macros prédéfinies pour aider à la création de sites. 4. Poursuivre la navigation retour au sommaire général |