Est-ce qu'il existe des méthodes particulières pour débuger les Script-FU de GIMP ? Je lance des scripts obtenus depuis le dépot officiel, j'essai paralèllement d'en créer un (j'apprend), et je découvre que aussi bien le mien que ceux du dépot officiel plantent souvent... pour l'instant rien d'exceptionel, et c'est plutôt prévisible, on commence toujours comme ça.
Mais ce que j'ai découvert ensuite est beaucoup moins amusant : GIMP ne renvoit par exemple même pas de numéro ligne avec le message d'erreur ou encore la seule fonction qui pourrait servir au débugage, et qui est gimp-message, ne peut prendre en argument que des chaînes. Alors comment afficher des données d'autres types ? Etc, ...
J'ouvre alors ce fil à cet fin : pour que nous puissions discuter ici des méthodes de débogage des Script-FU.
Si vous avez des trucs et astuces en la matière, c'est ici l'endroit idéale pour en parler.
En fait je ne parlais pas de bug de GIMP sans ce post, mais de débugage de scripts-fu.
J'ai trouvé la réponse : à part gimp-message, il existe l'instruction "print". Print peut prendre tout type de donnée en paramètre. Par contre, je conseil de faire suivre les instructions "print" d'une instruction gimp-message de temps en temps, parce que sans cela les chaînes de print ne s'affiche pas : il n'y a pas d'affichage de boite de dialogue pour les montrer (GIMP semble stoquer les chaînes, mais ne pas les afficher, sauf en cas d'apparition d'un message d'erreur par exemple).
Ca a l'air un peu étrange comme ça, mais retenez seulement que pour utiliser "print" vous devez utiliser "gimp-message" quelque part plus loin, sinon rien ne s'affichera.
Reste encore le problème qu'en cas d'erreur dans les script, GIMP ne renvoie aucun numéro de ligne. Je n'ai pas trouvé de solution à ce problème, et je ne pense pas qu'il en existe. Le seul moyen restant, et de retrouver la ligne par tatonement successif, en désactivant puis réactivant certaines zones de code.