From 63839ff57b0012fb1e2437602333d172e78835de Mon Sep 17 00:00:00 2001 From: Olivier DOSSMANN Date: Fri, 10 Feb 2012 20:31:03 +0100 Subject: [PATCH] =?UTF-8?q?[AJ]=20Transformation=20du=20script=20de=20g?= =?UTF-8?q?=C3=A9n=C3=A9ration=20des=20cat=C3=A9gories=20pour=20prendre=20?= =?UTF-8?q?des=20param=C3=A8tres=20qui=20sont=20les=20dossiers=20et=20fich?= =?UTF-8?q?iers=20n=C3=A9cessaire=20=C3=A0=20l'=C3=A9laboration=20du=20con?= =?UTF-8?q?tenu=20des=20rubriques=20et=20=C3=A9l=C3=A9ments=20de=20la=20pa?= =?UTF-8?q?ge=20PorteAil?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- GNUmakefile | 6 +++--- LISMOI | 8 ++++++++ TACHES | 7 ++++--- configrc.exemple | 13 ++++++++++++- creation_categ.sh | 39 +++++++++++++++++++++++---------------- 5 files changed, 50 insertions(+), 23 deletions(-) diff --git a/GNUmakefile b/GNUmakefile index d1d15e2..ecd87b4 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -42,11 +42,11 @@ all: test index.html # divers tests sur l'existence des dossiers/fichiers # création si besoin -test: +test: @$(PROG_ECHO) -e "Lancement des tests…" @$(PROG_ECHO) -e "\t…existence des dossiers img, categ et style" @$(PROG_TEST) -d img || mkdir img - @$(PROG_TEST) -d categ || mkdir categ + @$(PROG_TEST) -d $(categ) || mkdir $(categ) @$(PROG_TEST) -d style || mkdir style @$(PROG_ECHO) -e "\t…option introduction dans la page" $(if $(INTRO), @test -f $(INTRO) || exit) @@ -72,7 +72,7 @@ css: $(dependances_css) # création du fichier $(contenu) contenu: $(script_contenu) @$(PROG_SED) -i "s/DEBUG=1/DEBUG=0/g" $(script_contenu) - @$(PROG_SH) $(script_contenu) || exit + @$(PROG_SH) $(script_contenu) $(categ) $(contenu) $(ext) $(composants) $(categ_deb) $(categ_fin) $(elem) || exit # création de la page d'index index.html: $(DOSSIER_HTML) css contenu $(dependances_index) $(contenu) diff --git a/LISMOI b/LISMOI index 1790605..09702ef 100644 --- a/LISMOI +++ b/LISMOI @@ -305,6 +305,14 @@ attachées à ces composants sont les suivantes : - contenu_fin : fichier contenu_fin.html - script_contenu : script bash permettant de générer les catégories - contenu : fichier temporaire possédant le contenu à insérer dans la page +- categ : désigne le dossier dans lequel se trouve l'ensemble des descriptions des catégories et des éléments se trouvant à l'intérieur de chacune d'elle +- ext : extension des fichiers contenus dans le dossier 'categ' (précédemment renseigné) qui contiendra la description de base de chacune des catégories et de ses éléments. Cf. Chapitre "Le dossier 'categ'" +- composants : dossier dans lequel se trouve l'ensemble des éléments permettant de construire le contenu de la page PorteAil. C'est à dire l'entête et l'enqueue de chaque rubrique ainsi que le code HTML de chaque élément +- categ_deb : nom du fichier contenant le code HTML d'un début de rubrique. Le fichier doit se trouver dans le dossier renseigné par la variable 'composants' +- categ_fin : nom du fichier contenant le code HTML d'une fin de rubrique. Le fichier doit se trouver dans le dossier renseigné par la variable 'composants' +- elem : nom du fichier contenant le code HTML d'un élément. Le fichier doit se trouver dans le dossier renseigné par la variable 'composants' + + Pour plus de renseignements, veuillez vous référer au chapitre 'Les composants'. diff --git a/TACHES b/TACHES index db1fce0..7ad33be 100644 --- a/TACHES +++ b/TACHES @@ -23,14 +23,11 @@ DESTDIR - Que donne une ligne vide dans le fichier de catégorie ? => à tester comme cas possible >>> Pour la v0.1.1 : -- améliorer la connexion entre le makefile et creation_categ.sh afin de ne plus toucher aux variables de creation_categ.sh - faire des "which" pour les programmes utilisés (notamment pour sha1 ou md5). Quitter le makefile si dans TEST les "which" sont vides - dans dossier categ on fait une somme sha1 ou md5 de tous les fichiers. On copie dans le dossier porteail. Au début du programme, on compare somme de tous les fichiers du dossier categ avec la somme contenue dans dossier porteail (s'il existe). Si les sommes sont pareilles, alors on quitte le makefile - compléter l'adresse des images pour l'insertion dans le contenu - vérifier l'existence de l'image avant de l'ajouter - si pas d'image ou image inexistante, mettre une image générique -- trouver une méthode qui permet de récupérer toujours les dernières versions sources sans écraser la version que nous avons. configrc.exemple par exemple, à copier en configrc ;) -- Prévoir un script d'export des données entrées par l'utilisateur s'il utilise un dépôt git OU trouver un système de mise à jour du logiciel >>> Pour la v0.2 : - imaginer un système d'héritage des feuilles de style pour ne modifier que les couleurs de la page, en dehors de la structure ? @@ -97,3 +94,7 @@ des éléments - Essayer de faire en sorte que le lien soit écarté jusqu'aux bords de tout l'élément afin que le clic sur l'élément renvoie sur la page - Faire la feuille de style bleue pour le site avec un menu - Voir si possibilité de faire un "source configrc" pour inclure les variables modifiables du programme, histoire de n'éditer que le fichier 'configrc' du programme +- améliorer la connexion entre le makefile et creation_categ.sh afin de ne plus toucher aux variables de creation_categ.sh +- trouver une méthode qui permet de récupérer toujours les dernières versions sources sans écraser la version que nous avons. configrc.exemple par exemple, à copier en configrc ;) +- Prévoir un script d'export des données entrées par l'utilisateur s'il utilise un dépôt git OU trouver un système de mise à jour du logiciel => réglé avec le fichier configrc.exemple en configrc + diff --git a/configrc.exemple b/configrc.exemple index 78012cc..48cc884 100644 --- a/configrc.exemple +++ b/configrc.exemple @@ -21,4 +21,15 @@ enqueue = $(DOSSIER_HTML)/enqueue.html contenu_fin = $(DOSSIER_HTML)/contenu_fin.html dependances_index = $(entete) $(enqueue) $(contenu_fin) script_contenu = creation_categ.sh -contenu = categories.html +## utiles pour le script de parcours du dossier contenant les catégories +contenu = categories.html # résultat de la génération des catégories +categ = categ # dossier contenant le détail des catégories +composants = ./composants # dossier contenant les morceaux de la page +#+ résultante +categ_deb = categ_deb.html # entête des catégories (contenu +#+ dans dossier composants) +categ_fin = categ_fin.html # enqueue des catégories (contenu +#+ dans dossier composants) +elem = element.html # code HTML de chaque élément +ext = txt # Extension des fichiers à prendre en compte dans le dossier +#+ contenant les catégories diff --git a/creation_categ.sh b/creation_categ.sh index 6d2a55f..4a2c60c 100755 --- a/creation_categ.sh +++ b/creation_categ.sh @@ -34,15 +34,9 @@ ## VARIABLES DEBUG=0 -dossier="categ" -destination="categories.html" IFS=" " -dossier_composants="./composants" -categ_deb="${dossier_composants}/categ_deb.html" -categ_fin="${dossier_composants}/categ_fin.html" -elem="${dossier_composants}/element.html" -extension="txt" # Extension des fichiers à prendre en compte +PROGRAMME=`basename $0` ## FONCTIONS debug( ) @@ -53,7 +47,29 @@ debug( ) fi } +utilisation( ) +{ + echo "Utilisation : $PROGRAMME dossier_cat destination.html extension composants entete_cat.html enqueue_cat.html element.html" + echo "" + echo "Cf. Fichier LISMOI pour plus d'informations." +} + ## TESTS +# Test sur les paramètres +if [ $# -ne 7 ] +then + utilisation +else + # $PROGRAMME dossier_cat destination.html extension composants entete_cat.html enqueue_cat.html element.html + dossier=$1 + destination=$2 #"categories.html" + extension=$3 # Extension des fichiers à prendre en compte + dossier_composants=$4 + categ_deb="${dossier_composants}/$5" + categ_fin="${dossier_composants}/$6" + elem="${dossier_composants}/$7" +fi +# Existence dossier if ! test -d "$dossier" then echo "Dossier '$dossier' manquant." @@ -66,15 +82,6 @@ then rm -f "$destination" fi -## DEBUT -#TODO: Prendre en compte plusieurs paramètres pour : -# - connaître le dossier contenant les fichiers de catégorie -# - l'extension des fichiers contenant les catégories -# - le fichier contenant le début de la catégorie -# - le fichier contenant la fin de la catégorie -# - le fichier contenant une trame pour un élément -#TODO: Faire des tests sur les paramètres avant lancement du programme - # Parcours du dossier for fichier in `find categ/ -iname "*.${extension}" -print -type f|sort` do