[AJ] Optimisation de la place occupée par les images
* Vérification de l'existence des images * Si non existence, utilisation d'une image générique * Ajout de chaque image dans le dossier image de destination, ce qui permet une libération conséquente de place vis à vis de la copie précédente de tout le dossier * Adaptation du fichier de configuration configrc.exemple * Ajout des éléments dans le fichier LISMOI * Mise à jour du fichier TACHES * Adaptation des exemples de catégories * Choix d'une image générique par défaut
This commit is contained in:
parent
f2715301a3
commit
ba0ea6ea95
16
GNUmakefile
16
GNUmakefile
@ -103,10 +103,10 @@ test:
|
||||
$(if $(MENU), @$(PROG_ECHO) -e "\t\t-> activée", @$(PROG_ECHO) -e "\t\t-> désactivée")
|
||||
@$(PROG_ECHO) -e "\t…création de la destination"
|
||||
@$(PROG_TEST) -d $(DESTINATION) || mkdir $(DESTINATION)
|
||||
@$(PROG_ECHO) -e "\t…création du dossier image"
|
||||
@$(PROG_TEST) -d $(DESTINATION)/image || mkdir $(DESTINATION)/image
|
||||
@$(PROG_ECHO) -e "\t…copie des fichiers images"
|
||||
@$(PROG_CP) -r img/* $(DESTINATION)/image
|
||||
@$(PROG_ECHO) -e "\t…création du dossier '$(dest_image)'"
|
||||
@$(PROG_TEST) -d $(DESTINATION)/$(dest_image) || mkdir $(DESTINATION)/$(dest_image)
|
||||
# @$(PROG_ECHO) -e "\t…copie des fichiers images"
|
||||
# @$(PROG_CP) -r img/* $(DESTINATION)/image
|
||||
@$(PROG_ECHO) -e " …terminé."
|
||||
|
||||
# création du fichier CSS
|
||||
@ -117,7 +117,7 @@ $(DESTINATION)/$(CSS_NOM): $(dependances_css)
|
||||
@$(PROG_ECHO) -e " …terminée."
|
||||
|
||||
# création du fichier $(contenu)
|
||||
$(contenu): $(script_contenu) $(SOURCE)
|
||||
$(contenu): $(script_contenu) $(SOURCE) $(image_defaut)
|
||||
@$(PROG_SED) -i "s/DEBUG=1/DEBUG=0/g" $(script_contenu)
|
||||
@$(PROG_ECHO) -e "Création du contenu avec les valeurs suivantes : "
|
||||
@$(PROG_ECHO) -e "\t\t- Dossier catégorie : $(categ)"
|
||||
@ -127,7 +127,11 @@ $(contenu): $(script_contenu) $(SOURCE)
|
||||
@$(PROG_ECHO) -e "\t\t- Entête HTML d'une catégorie : $(categ_deb)"
|
||||
@$(PROG_ECHO) -e "\t\t- Enqueue HTML d'une catégorie : $(categ_fin)"
|
||||
@$(PROG_ECHO) -e "\t\t- Code HTML d'un élément : $(elem)"
|
||||
@$(PROG_SH) $(script_contenu) $(categ) $(contenu) $(ext) $(composants) $(categ_deb) $(categ_fin) $(elem)
|
||||
@$(PROG_ECHO) -e "\t\t- Dossier contenant les images sources : $(image)"
|
||||
@$(PROG_ECHO) -e "\t\t- Dossier de destination des images : $(dest_image)"
|
||||
@$(PROG_ECHO) -e "\t\t- Image par défaut : $(image_defaut)"
|
||||
@$(PROG_ECHO) -e "\t\t- Dossier de destination global : $(DESTINATION)"
|
||||
@$(PROG_SH) $(script_contenu) $(categ) $(contenu) $(ext) $(composants) $(categ_deb) $(categ_fin) $(elem) $(image) $(dest_image) $(image_defaut) $(DESTINATION)
|
||||
|
||||
# création de la page d'index
|
||||
index: $(INDEX)
|
||||
|
11
LISMOI
11
LISMOI
@ -307,13 +307,14 @@ attachées à ces composants sont les suivantes :
|
||||
- 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'
|
||||
- image : dossier contenant quelques images pour les éléments de chaque catégorie. Toutes les images ne seront pas utilisées
|
||||
- dest_image : dossier dans lequel seront mises les images choisies dans chacune des catégories (fichiers décrivant les catégories)
|
||||
- image_defaut : image par défaut utilisée si aucune autre image n'est trouvée
|
||||
- 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 catégorie ainsi que le code HTML de chaque élément
|
||||
- categ_deb : nom du fichier contenant le code HTML d'un début de catégorie. 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 catégorie. 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'.
|
||||
|
||||
|
21
TACHES
21
TACHES
@ -7,10 +7,6 @@ DESTDIR
|
||||
- ajouter les fichiers générés pour chaque section du makefile (ceci de manière intelligente… si possible !)
|
||||
- Valider la page à l'aide de TIDY (doit être facultatif)
|
||||
- Trouver une méthode plus fine pour trouver le nombre de catégories par fichier (autre qu'un grep par exemple)
|
||||
- Transformer le fichier GNUmakefile en makefile pour bmake
|
||||
- changer les sed -i en "sed -e 's/chaine/autrechaine/g' > file.new && mv file.new file" (avec ou sans -e, c'est selon)
|
||||
- changer les VAR= en VAR:=
|
||||
- changer l'utilisation du shell par TXTs = $(shell ls $(dossier)/*$(ext)), par exemple.
|
||||
- Vérifier la présence des /, [ et ] dans les variables avant qu'elles soient mises dans un SED. Ceci à l'aide de ${var//a/b} pour modifier les chaînes A par B dans VAR.
|
||||
- permettre l'ajout de plusieurs CSS dans HEAD
|
||||
- faire une page "print.css"
|
||||
@ -19,14 +15,11 @@ DESTDIR
|
||||
- créer plusieurs feuilles de style (couleurs, positionnement des éléments, etc.)
|
||||
- ne copier QUE les images utilisées
|
||||
- favicon.ico ?
|
||||
- Doc : donner l'astuce pour ordonner les catégories dans le fichier : mettre 00-nom_fichier.txt, puis 01-autre_categorie.txt, etc.
|
||||
- Tenter d'utiliser la description de l'élément pour faire une fenêtre qui s'affiche quand on passe sur le cadre de l'élément (tout en CSS si possible !)
|
||||
- Que donne une ligne vide dans le fichier de catégorie ? => à tester comme cas possible
|
||||
|
||||
>>> Pour la v0.1.1 :
|
||||
- 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
|
||||
- Doc : donner l'astuce pour ordonner les catégories dans le fichier : mettre 00-nom_fichier.txt, puis 01-autre_categorie.txt, etc.
|
||||
|
||||
>>> 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 ?
|
||||
@ -40,6 +33,14 @@ DESTDIR
|
||||
- Changer les DIV en une liste d'éléments puis mettre display: inline-block; pour l'affichage. Si liste, alors mettre des point-virgules à la fin de chaque ligne (et les cacher en css)
|
||||
- Réorganiser les variables du GNUmakefile pour rendre plus simple le choix des variables par l'utilisateur. Afin qu'il n'ai JAMAIS à mettre d'autre variables dans le contenu. Par exemple jamais écrire cela : $(DOSSIER)/fichier.html !!!!
|
||||
|
||||
>>> Pour la v0.3 :
|
||||
- Transformer le fichier GNUmakefile en makefile pour bmake
|
||||
- changer les sed -i en "sed -e 's/chaine/autrechaine/g' > file.new && mv file.new file" (avec ou sans -e, c'est selon)
|
||||
- changer les VAR= en VAR:=
|
||||
- changer l'utilisation du shell par TXTs = $(shell ls $(dossier)/*$(ext)), par exemple.
|
||||
- Intégrer le script .sh dans le Makefile
|
||||
|
||||
|
||||
FAITES :
|
||||
---------
|
||||
|
||||
@ -103,4 +104,6 @@ des éléments
|
||||
- Tenter un ls categ |md5sum ou bien for i in `ls categ`; do md5sum categ/$i; done > somme.md5
|
||||
- Utiliser ça pour vérifier sommes de contrôle : md5 * | diff /path/to/md5.checksum -
|
||||
- find categ -type f -name *.txt -exec md5sum {} + | awk '{print $1}' |sort |diff somme.md5 -|wc -l
|
||||
|
||||
- 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
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Ceci est un commentaire
|
||||
[[Catégorie d'exemple]]Description de ma catégorie d'exemple
|
||||
Vous êtes perdus ?##http://perdu.com##Se rendre sur le site perdu.com##./image/apps/preferences-system-session-services.png##Mon image##Description de mon image
|
||||
Exalead##http://exalead.fr##Visiter Exalead##./image/apps/preferences-web-browser-shortcuts.png##Autre image##Autre description
|
||||
Vous êtes perdus ?##http://perdu.com##Se rendre sur le site perdu.com##apps/preferences-system-session-services.png##Mon image##Description de mon image
|
||||
Exalead##http://exalead.fr##Visiter Exalead##apps/preferences-web-browser-shortcuts.png##Autre image##Autre description
|
||||
|
@ -1,5 +1,5 @@
|
||||
# [[Nom de la catégorie]]Description
|
||||
[[Éducation]]Thème sur l'éducation
|
||||
# Titre du lien##Adresse web en HTTP##Description du lien##Nom du fichier image##Titre de l'image##Description de l'image
|
||||
Seeks##http://www.seeks-project.info/search.php/websearch-hp##Méta-moteur de recherche décentralisé##./image/apps/nepomuk.png##Seeks##Logo de Nepomuk
|
||||
OOo4kids##http://wiki.ooo4kids.org/index.php/Main_Page/fr##Logiciel de bureautique libre pour les enfants de 7 à 12 ans##./image/apps/okteta.png##Oketa##Logo d'Oketa
|
||||
Seeks##http://www.seeks-project.info/search.php/websearch-hp##Méta-moteur de recherche décentralisé##apps/nepomuk.png##Seeks##Logo de Nepomuk
|
||||
OOo4kids##http://wiki.ooo4kids.org/index.php/Main_Page/fr##Logiciel de bureautique libre pour les enfants de 7 à 12 ans##apps/okteta.png##Oketa##Logo d'Oketa
|
||||
|
@ -1,8 +1,8 @@
|
||||
# [[Nom de la catégorie]]Description
|
||||
[[Divers]]Quelques éléments en vrac
|
||||
# Titre du lien##Adresse web en HTTP##Description du lien##Nom du fichier image##Titre de l'image##Description de l'image
|
||||
Inkscape##http://inkscape.org/##Outil de création graphique vectorielle##./image/apps/inkscape.png##Inkscape##Logo d'Inkscape
|
||||
Wine##http://www.winehq.org/##Utilisez des outils Windows sous Linux, BSD, Mac ou Solaris##./image/apps/wine.png##Wine##Logo de Wine
|
||||
Dogmazic##http://www.dogmazic.net/##Musique libre##./image/devices/multimedia-player.png##Dogmazic##Lecteur multimédia
|
||||
Vim##http://www.vim.org/##Éditeur en mode console##./image/apps/utilities-terminal.png##Vim##Console
|
||||
ChiliProject##https://www.chiliproject.org/##Outil de gestion de projet##./image/status/script-error.png##ChiliProject##Bug
|
||||
Inkscape##http://inkscape.org/##Outil de création graphique vectorielle##apps/inkscape.png##Inkscape##Logo d'Inkscape
|
||||
Wine##http://www.winehq.org/##Utilisez des outils Windows sous Linux, BSD, Mac ou Solaris##apps/wine.png##Wine##Logo de Wine
|
||||
Dogmazic##http://www.dogmazic.net/##Musique libre##devices/multimedia-player.png##Dogmazic##Lecteur multimédia
|
||||
Vim##http://www.vim.org/##Éditeur en mode console##apps/utilities-terminal.png##Vim##Console
|
||||
ChiliProject##https://www.chiliproject.org/##Outil de gestion de projet##status/script-error.png##ChiliProject##Bug
|
||||
|
@ -21,19 +21,24 @@ enqueue = $(DOSSIER_HTML)/enqueue.html
|
||||
contenu_fin = $(DOSSIER_HTML)/contenu_fin.html
|
||||
dependances_index = $(entete) $(enqueue) $(contenu_fin)
|
||||
script_contenu = creation_categ.sh
|
||||
somme_md5 = somme.md5
|
||||
## utiles pour le script de parcours du dossier contenant les catégories
|
||||
# résultat de la génération des catégories
|
||||
contenu = categories.html
|
||||
# dossier contenant le détail des catégories
|
||||
categ = categ
|
||||
# Extension des fichiers à prendre en compte dans le dossier contenant les catégories
|
||||
ext = txt
|
||||
# dossier contenant les images
|
||||
image = img
|
||||
# dossier de destination des images
|
||||
dest_image = image
|
||||
# image par défaut (au cas où aucune ne serait trouvée)
|
||||
image_defaut = generique.png
|
||||
# dossier contenant les morceaux de la page résultante
|
||||
composants = ./composants
|
||||
composants = ./$(DOSSIER_HTML)
|
||||
# entête des catégories (contenu dans dossier composants)
|
||||
categ_deb = categ_deb.html
|
||||
# enqueue des catégories (contenu dans dossier composants)
|
||||
categ_fin = categ_fin.html
|
||||
# code HTML de chaque élément
|
||||
elem = element.html
|
||||
# Extension des fichiers à prendre en compte dans le dossier contenant les catégories
|
||||
ext = txt
|
||||
|
@ -56,7 +56,7 @@ utilisation( )
|
||||
|
||||
## TESTS
|
||||
# Test sur les paramètres
|
||||
if [ $# -ne 7 ]
|
||||
if [ $# -ne 11 ]
|
||||
then
|
||||
echo $#
|
||||
utilisation
|
||||
@ -70,12 +70,28 @@ else
|
||||
categ_deb="${dossier_composants}/$5"
|
||||
categ_fin="${dossier_composants}/$6"
|
||||
elem="${dossier_composants}/$7"
|
||||
dossier_image=$8
|
||||
dest_image=$9
|
||||
image_defaut=${10}
|
||||
destination_finale=${11}
|
||||
fi
|
||||
# Existence dossier
|
||||
if ! test -d "$dossier"
|
||||
then
|
||||
echo "Dossier '$dossier' manquant."
|
||||
exit 0
|
||||
exit 1
|
||||
fi
|
||||
# Existence dossier image
|
||||
if ! test -d "$dossier_image"
|
||||
then
|
||||
echo "Dossier '$dossier_image' manquant."
|
||||
exit 1
|
||||
fi
|
||||
# Existence de l'image par défaut
|
||||
if ! test -f "$image_defaut"
|
||||
then
|
||||
echo "Fichier '$image_defaut' manquant."
|
||||
exit 1
|
||||
fi
|
||||
# On supprime le fichier ${destination} s'il existe.
|
||||
if test -f "$destination"
|
||||
@ -85,7 +101,7 @@ then
|
||||
fi
|
||||
|
||||
# Parcours du dossier
|
||||
for fichier in `find categ/ -iname "*.${extension}" -print -type f|sort`
|
||||
for fichier in `find $dossier/ -iname "*.${extension}" -print -type f|sort`
|
||||
do
|
||||
# On met/remet la valeur de CATEG à 0 significative de l'absence
|
||||
#+ d'une Catégorie
|
||||
@ -192,6 +208,7 @@ do
|
||||
i=0
|
||||
# Parcours des tableaux afin de récupérer toutes les informations
|
||||
#+ d'un élément
|
||||
debimg=`echo $categ_titre|md5sum |cut -d " " -f 1`
|
||||
while [ "$i" -lt "$curseur_element" ]
|
||||
do
|
||||
# Assignation des valeurs à des variables afin de l'afficher
|
||||
@ -202,7 +219,17 @@ do
|
||||
e_url_tmp=$(eval echo \$elements_url_${i})
|
||||
e_url=${e_url_tmp:-""} # url element
|
||||
e_img_addr_tmp=$(eval echo \$elements_image_addr_${i})
|
||||
e_img_addr=${e_img_addr_tmp:-""} # adresse image
|
||||
# Test de l'existence de l'image
|
||||
# On prend le numéro de curseur comme nom d'image
|
||||
if ! test -f "${dossier_image}/${e_img_addr_tmp}"
|
||||
then
|
||||
# si elle n'existe pas, on prend l'image générique
|
||||
cp "$image_defaut" "${destination_finale}/${dest_image}/${debimg}${i}"
|
||||
else
|
||||
# si elle existe, on la copie dans le répertoire image de destination
|
||||
cp "${dossier_image}/${e_img_addr_tmp}" "${destination_finale}/${dest_image}/${debimg}${i}"
|
||||
fi
|
||||
e_img_addr="${dest_image}/${debimg}${i}" # adresse image
|
||||
e_img_titre_tmp=$(eval echo \$elements_image_titre_${i})
|
||||
e_img_titre=${e_img_titre_tmp:-""} # titre image
|
||||
e_img_desc_tmp=$(eval echo \$elements_image_desc_${i})
|
||||
|
BIN
generique.png
Normal file
BIN
generique.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
Loading…
Reference in New Issue
Block a user