Je localise une appli web. J'ai donc cherch=E9 un module pour faire =E7a.
J'ai trouv=E9 gettext, mais il ne convient pas =E0 cet usage. Je
chercherais quelque chose comme le syst=E8me de locales Java : de b=EAtes
fichiers texte et une API pour r=E9cup=E9rer les messages pour une locale
donn=E9e et un syst=E8me de locale par d=E9faut si possible. Quelqu'un
aurait-il une solution =E0 me proposer ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Laurent Rahuel
casa wrote:
Bonjour,
Je localise une appli web. J'ai donc cherché un module pour faire ça. J'ai trouvé gettext, mais il ne convient pas à cet usage. Je chercherais quelque chose comme le système de locales Java : de bêtes fichiers texte et une API pour récupérer les messages pour une locale donnée et un système de locale par défaut si possible. Quelqu'un aurait-il une solution à me proposer ?
Merci
Salut,
C'est exactement ce que fait gettext a part que le fichier de traduction est "précompilé". C'est ce qui est utilisé sur un bon nombre de framework web comme Django par exemple et cela fonctionne très bien.
A plus,
Laurent.
casa wrote:
Bonjour,
Je localise une appli web. J'ai donc cherché un module pour faire ça.
J'ai trouvé gettext, mais il ne convient pas à cet usage. Je
chercherais quelque chose comme le système de locales Java : de bêtes
fichiers texte et une API pour récupérer les messages pour une locale
donnée et un système de locale par défaut si possible. Quelqu'un
aurait-il une solution à me proposer ?
Merci
Salut,
C'est exactement ce que fait gettext a part que le fichier de traduction est
"précompilé". C'est ce qui est utilisé sur un bon nombre de framework web
comme Django par exemple et cela fonctionne très bien.
Je localise une appli web. J'ai donc cherché un module pour faire ça. J'ai trouvé gettext, mais il ne convient pas à cet usage. Je chercherais quelque chose comme le système de locales Java : de bêtes fichiers texte et une API pour récupérer les messages pour une locale donnée et un système de locale par défaut si possible. Quelqu'un aurait-il une solution à me proposer ?
Merci
Salut,
C'est exactement ce que fait gettext a part que le fichier de traduction est "précompilé". C'est ce qui est utilisé sur un bon nombre de framework web comme Django par exemple et cela fonctionne très bien.
A plus,
Laurent.
casa
Bonjour,
Merci pour cette réponse. Cependant, gettext ne me semble toujours pas une solution satistfaisante : - Le format des fichiers de localisation est (inutilement) compliqué. - La phase de compilation me semble de trop. Si j'utilise Python, ce n'est certainement pas pour compiler des ressources de localisation ;o)
J'ai développé un module pour faire ça, à la façon Java. Si quelqu'un est intéressé, je peux poster le source.
Cordialement
Bonjour,
Merci pour cette réponse. Cependant, gettext ne me semble toujours pas
une solution satistfaisante :
- Le format des fichiers de localisation est (inutilement) compliqué.
- La phase de compilation me semble de trop. Si j'utilise Python, ce
n'est certainement pas pour compiler des ressources de localisation ;o)
J'ai développé un module pour faire ça, à la façon Java. Si
quelqu'un est intéressé, je peux poster le source.
Merci pour cette réponse. Cependant, gettext ne me semble toujours pas une solution satistfaisante : - Le format des fichiers de localisation est (inutilement) compliqué. - La phase de compilation me semble de trop. Si j'utilise Python, ce n'est certainement pas pour compiler des ressources de localisation ;o)
J'ai développé un module pour faire ça, à la façon Java. Si quelqu'un est intéressé, je peux poster le source.
Cordialement
Laurent Rahuel
casa wrote:
Bonjour,
Merci pour cette réponse. Cependant, gettext ne me semble toujours pas une solution satistfaisante : - Le format des fichiers de localisation est (inutilement) compliqué.
Il permet de gérer les encodages, les pluralisations ... et c'est ce qui est utilisé par quasiment tous les softs opensource que je connaisse.
- La phase de compilation me semble de trop. Si j'utilise Python, ce n'est certainement pas pour compiler des ressources de localisation ;o)
Les pyc sont le pendant des .mo et cela peut être automatisé (toujours comme exemple Django)
J'ai développé un module pour faire ça, à la façon Java. Si quelqu'un est intéressé, je peux poster le source.
En général, j'evite de refaire ce que d'autres font déjà depuis longtemps et surement mieux que ce que je pourrai faire tout seul. Mais bon, c'est une question de philosophie.
Cordialement
A plus,
Laurent.
casa wrote:
Bonjour,
Merci pour cette réponse. Cependant, gettext ne me semble toujours pas
une solution satistfaisante :
- Le format des fichiers de localisation est (inutilement) compliqué.
Il permet de gérer les encodages, les pluralisations ... et c'est ce qui est
utilisé par quasiment tous les softs opensource que je connaisse.
- La phase de compilation me semble de trop. Si j'utilise Python, ce
n'est certainement pas pour compiler des ressources de localisation ;o)
Les pyc sont le pendant des .mo et cela peut être automatisé (toujours comme
exemple Django)
J'ai développé un module pour faire ça, à la façon Java. Si
quelqu'un est intéressé, je peux poster le source.
En général, j'evite de refaire ce que d'autres font déjà depuis longtemps et
surement mieux que ce que je pourrai faire tout seul. Mais bon, c'est une
question de philosophie.
Merci pour cette réponse. Cependant, gettext ne me semble toujours pas une solution satistfaisante : - Le format des fichiers de localisation est (inutilement) compliqué.
Il permet de gérer les encodages, les pluralisations ... et c'est ce qui est utilisé par quasiment tous les softs opensource que je connaisse.
- La phase de compilation me semble de trop. Si j'utilise Python, ce n'est certainement pas pour compiler des ressources de localisation ;o)
Les pyc sont le pendant des .mo et cela peut être automatisé (toujours comme exemple Django)
J'ai développé un module pour faire ça, à la façon Java. Si quelqu'un est intéressé, je peux poster le source.
En général, j'evite de refaire ce que d'autres font déjà depuis longtemps et surement mieux que ce que je pourrai faire tout seul. Mais bon, c'est une question de philosophie.
Cordialement
A plus,
Laurent.
casa
Rebonjour,
Je suis 100% d'accord avec toi sur tous les points. Néanmoins, pour l'appli concernée (pour laquelle je gère 4 clefs de localisation dans 5 langues, sans gestion de pluriels), gettext me semble surdimensionné. Je ne dis pas que cette lib est mauvaise, mais vu mes besoins, je préfère une solution légère dont j'ai le contrôle. Développer ma solution m'a pris 2 heures et remplit parfaitement le cahier des chages.
Merci pour ces infos, je penserai à gettext lorsque mes besoins évolueront.
Rebonjour,
Je suis 100% d'accord avec toi sur tous les points. Néanmoins, pour
l'appli concernée (pour laquelle je gère 4 clefs de localisation dans
5 langues, sans gestion de pluriels), gettext me semble
surdimensionné. Je ne dis pas que cette lib est mauvaise, mais vu mes
besoins, je préfère une solution légère dont j'ai le contrôle.
Développer ma solution m'a pris 2 heures et remplit parfaitement le
cahier des chages.
Merci pour ces infos, je penserai à gettext lorsque mes besoins
évolueront.
Je suis 100% d'accord avec toi sur tous les points. Néanmoins, pour l'appli concernée (pour laquelle je gère 4 clefs de localisation dans 5 langues, sans gestion de pluriels), gettext me semble surdimensionné. Je ne dis pas que cette lib est mauvaise, mais vu mes besoins, je préfère une solution légère dont j'ai le contrôle. Développer ma solution m'a pris 2 heures et remplit parfaitement le cahier des chages.
Merci pour ces infos, je penserai à gettext lorsque mes besoins évolueront.
Méta-MCI
Bonjour !
gettext ... inutilement compliqué ... compilation me semble de trop...
Je suis tout à fait d'accord ; gettext en fait trop. Cela est peut-être justifié, pour quelques rares besoins.
Perso, je me suis fait un mini module, avec une (seule) fonction, _() et un dictionnaire de message, indexé sur les messages par défaut.
C'est (très) limité, mais facile à utiliser, et suffit à des besoins simples.
Je ne vais montrer de code, car, sans doute trop simple,il ne fait pas même pas 10 lignes....
@-salutations
Michel Claveau
Bonjour !
gettext ... inutilement compliqué ... compilation me semble de trop...
Je suis tout à fait d'accord ; gettext en fait trop. Cela est peut-être
justifié, pour quelques rares besoins.
Perso, je me suis fait un mini module, avec une (seule) fonction, _() et un
dictionnaire de message, indexé sur les messages par défaut.
C'est (très) limité, mais facile à utiliser, et suffit à des besoins
simples.
Je ne vais montrer de code, car, sans doute trop simple,il ne fait pas même
pas 10 lignes....
Merci pour ce bout de code. Il a le mérite d'être simple. Personnellement, je passerais cependant la locale dans l'appel à la localisation (de manière à gérer une locale par défaut pour éviter des exceptions intempestives).
Merci pour ce bout de code. Il a le mérite d'être simple.
Personnellement, je passerais cependant la locale dans l'appel à la
localisation (de manière à gérer une locale par défaut pour éviter
des exceptions intempestives).
Merci pour ce bout de code. Il a le mérite d'être simple. Personnellement, je passerais cependant la locale dans l'appel à la localisation (de manière à gérer une locale par défaut pour éviter des exceptions intempestives).
Méta-MCI
Salut !
Perso... passerais la locale dans l'appel
Toutafé. Mais, pour les applis en question, j'ai un fichier de configuration, car il n'y a pas que du Python. Et puis, comme je l'ai dit précédemment, je voulait une alternative -très simple- à gettext
Enfin, si ça t'a inspiré un peu, je suis content.
Et merci du retour d'info.
Michel Claveau
Salut !
Perso... passerais la locale dans l'appel
Toutafé. Mais, pour les applis en question, j'ai un fichier de
configuration, car il n'y a pas que du Python.
Et puis, comme je l'ai dit précédemment, je voulait une alternative -très
simple- à gettext
Toutafé. Mais, pour les applis en question, j'ai un fichier de configuration, car il n'y a pas que du Python. Et puis, comme je l'ai dit précédemment, je voulait une alternative -très simple- à gettext
Enfin, si ça t'a inspiré un peu, je suis content.
Et merci du retour d'info.
Michel Claveau
Méta-MCI
Re !
Il y a quand même un petit avantage, à ne pas utiliser la locale comme paramètre : c'est la possibilité de changer de langue à la volée. Bon d'accord, ce n'est pas d'un usage très courant... sauf pour les tests d'intégration.
@-salutations
MCI
Re !
Il y a quand même un petit avantage, à ne pas utiliser la locale comme
paramètre : c'est la possibilité de changer de langue à la volée.
Bon d'accord, ce n'est pas d'un usage très courant... sauf pour les tests
d'intégration.
Il y a quand même un petit avantage, à ne pas utiliser la locale comme paramètre : c'est la possibilité de changer de langue à la volée. Bon d'accord, ce n'est pas d'un usage très courant... sauf pour les tests d'intégration.