Certaines chaînes de caractères présentent dans les sources du wiki peuvent être automatiquement remplacées par des images. Cela est utilisé entre autre pour l'affichage de smileys mais peut être étendu à tout type de besoin (affichages de tags ou d’icônes divers).
L'association entre la chaîne de caractère et le fichier image est définie dans le fichier de configuration conf/smileys.conf
.
Après avoir migré en version 20220731a “Igor”, les chaînes de texte n'étaient plus correctement remplacées.
Ci-dessous un extrait de rendu de la page text_to_image_conversions
Comme on peut le voir l'image générée juste derrière les caractères reproduisait exactement les caractères mais ne retournait pas l'image attendue.
Après analyse, il n'y avait plus de correspondance entre les noms de fichiers définis dans la configuration conf/smileys.conf
et les ressources intégrées dans l'image Docker.
# Invocation d'un shell dans le conteneur docker-compose exec -u root dokuwiki /bin/bash # liste les ressources images ls -l /opt/bitnami/dokuwiki/lib/images/smileys/ total 92 -rw-rw-r-- 1 daemon root 174 Sep 16 12:25 README -rw-rw-r-- 1 daemon root 817 Sep 16 12:25 biggrin.svg -rw-rw-r-- 1 daemon root 1308 Sep 16 12:25 confused.svg -rw-rw-r-- 1 daemon root 997 Sep 16 12:25 cool.svg -rw-rw-r-- 1 daemon root 3649 Sep 16 12:25 deleteme.svg -rw-rw-r-- 1 daemon root 372 Sep 16 12:25 doubt.svg -rw-rw-r-- 1 daemon root 372 Sep 16 12:25 doubt2.svg -rw-rw-r-- 1 daemon root 959 Sep 16 12:25 eek.svg -rw-rw-r-- 1 daemon root 357 Sep 16 12:25 exclaim.svg -rw-rw-r-- 1 daemon root 3055 Sep 16 12:25 facepalm.svg -rw-rw-r-- 1 daemon root 3071 Sep 16 12:25 fixme.svg -rw-rw-r-- 1 daemon root 1129 Sep 16 12:25 fun.svg -rw-rw-r-- 1 daemon root 901 Sep 16 12:25 index.php lrwxrwxrwx 1 1001 root 42 Sep 27 21:10 local -> /bitnami/dokuwiki/lib/images/smileys/local -rw-rw-r-- 1 daemon root 1762 Sep 16 12:25 lol.svg -rw-rw-r-- 1 daemon root 411 Sep 16 12:25 neutral.svg -rw-rw-r-- 1 daemon root 602 Sep 16 12:25 question.svg -rw-rw-r-- 1 daemon root 665 Sep 16 12:25 razz.svg -rw-rw-r-- 1 daemon root 512 Sep 16 12:25 sad.svg -rw-rw-r-- 1 daemon root 819 Sep 16 12:25 silenced.svg -rw-rw-r-- 1 daemon root 525 Sep 16 12:25 smile.svg -rw-rw-r-- 1 daemon root 526 Sep 16 12:25 smile2.svg -rw-rw-r-- 1 daemon root 341 Sep 16 12:25 surprised.svg -rw-rw-r-- 1 daemon root 1183 Sep 16 12:25 wink.svg # Affiche la configuration de la correspondance texte -> fichier image cat /bitnami/dokuwiki/conf/smileys.conf # Smileys configured here will be replaced by the # configured images in the smiley directory 8-) icon_cool.gif 8-O icon_eek.gif 8-o icon_eek.gif :-( icon_sad.gif :-) icon_smile.gif =) icon_smile2.gif :-/ icon_doubt.gif :-\ icon_doubt2.gif :-? icon_confused.gif :-D icon_biggrin.gif :-P icon_razz.gif :-o icon_surprised.gif :-O icon_surprised.gif :-x icon_silenced.gif :-X icon_silenced.gif :-| icon_neutral.gif ;-) icon_wink.gif m( facepalm.gif ^_^ icon_fun.gif :?: icon_question.gif :!: icon_exclaim.gif LOL icon_lol.gif FIXME fixme.gif DELETEME delete.gif
On peut voir que le fichier de configuration ci-dessus associe aux chaînes de caractères des ressources non disponibles sur le système de fichier. Les fichiers images effectivement présents n'ont pas de préfixe icon_
et une présentent une extension .svg
.
Le fichier de configuration proposé ci-dessous permet de redéfinir correctement les associations:
# Smileys configured here will be replaced by the # configured images in the smiley directory 8-) cool.svg 8-O eek.svg 8-o eek.svg :-( sad.svg :-) smile.svg =) smile2.svg :-/ doubt.svg :-\ doubt2.svg :-? confused.svg :-D biggrin.svg :-P razz.svg :-o surprised.svg :-O surprised.svg :-x silenced.svg :-X silenced.svg :-| neutral.svg ;-) wink.svg m( facepalm.svg ^_^ fun.svg :?: question.svg :!: exclaim.svg LOL lol.svg FIXME fixme.svg DELETEME deleteme.svg
Après modification de la configuration, forcer le vidage du cache
# Invocation d'un shell dans le conteneur docker-compose exec -u root dokuwiki /bin/bash touch /bitnami/dokuwiki/conf/local.conf