PoEdit, fichiers POT, chaînes vides et invalid multibyte sequence

Voici un message rapide afin de garder trace du problème que je viens d’avoir … pas très simple à déboguer. En espérant que cela puisse aider ceux d’entre vous qui travaillent avec les fichiers « *.pot » pour la traduction de leurs applications (ceux qui utilisent CakePHP notamment !).

Ce problème est survenu avec la version actuelle de CakePHP (cf date du message), et l’éditeur PoEdit … puis surtout un code pas très « classique » de ma part !

En effet, sachez que si vous utilisez PoEdit sur un fichier « pot » généré avec Bake i18n il se peut que l’erreur suivante survienne :

C:\Users\xxx\AppData\Local\Temp\poe4311.tmp\ref.pot:14: invalid multibyte sequence
07:10:04: This application has requested the Runtime to terminate it in an unusual way.
07:10:04: Please contact the application's support team for more information.

A quoi est-ce dû ?

Tout simplement au fait que dans votre fichier vous avez une chaîne vide à traduire (cela peut arriver si vous ne savez pas quoi mettre encore) !

#: nom_du_fichier.ctp:39
msgid ""
msgstr ""

Il suffit simplement de vous rendre dans le fichier « nom_du_fichier.ctp » à la ligne 39 et de commenter votre ligne qui doit ressembler à :

__(""); // TODO Mettre une valeur ici plus tard :o)

Et voilà …

Partagez avec vos amis !
  • del.icio.us
  • Twitter
  • Tumblr
  • Facebook
  • Digg
  • LinkedIn
  • Google Bookmarks
  • email
  • Technorati
  • Wikio FR
  • Netvibes
  • RSS
If you enjoyed this post, make sure you subscribe to my RSS feed!

Tags : CakePHP, outils, pense-bête
blog comments powered by Disqus