{{tag>sysadmin docker dokuwiki troubleshooting dépannage}}
====== Dokuwiki : Échec de conversion du texte en images ======
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''**.
===== Problématique =====
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 [[/wiki/syntax#text_to_image_conversions]]
{{text_to_image_conversions.png}}
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.
===== Résolution =====
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
===== Références =====
* https://www.dokuwiki.org/Smileys