Alternatives à getttext?

Existe-t-il des alternatives générales de localisation/traduction pour gettext?

Open source ou propriétaire n'a pas d'importance.

quand je dis alternative à gettext, je veux dire une bibliothèque pour l'internationalisation, avec une sorte de backend de localisation.

la raison pour laquelle je pose la question Est que (entre autres choses) je trouve la façon dont gettext fait les choses un peu encombrantes et statiques, la plupart du temps dans le bit d'arrière-plan.

26
demandé sur Tor Valamo 2010-02-02 19:12:46

3 réponses

tout d'Abord je pense gettext est l'un des meilleurs à ce point.

Vous pouvez prendre un coup d'oeil sur Boost.Locale qui peut fournir une meilleure API et utiliser gettextdictionnaire modèle: http://cppcms.sourceforge.net/boost_locale/docs/ (pas la partie officielle de Boost, encore en bêta).


Edit:

Si vous n'aimez pas gettext...

ce sont les technologies de traduction:

  • OASIS XLIFF
  • GNU gettext po / mo files
  • POSIX catalogs
  • Qt ts/tm fichiers
  • propriétés Java,
  • ressources de Windows.

Maintenant:

  • les deux dernières merdes totales... Très difficile à utiliser traduire et maintenir, ne supporte pas les formes plurielles.
  • QT ts / tm -- nécessite l'utilisation de Qt framework. Ont un modèle très similaire à gettext. Pas mauvaise solution, mais limitée à Qt. Pas si utile en général programme.
  • POSIX catalogs -- personne ne les utilise, aucun support de formulaires au pluriel. Merde.
  • OASIX XLIFF -- solution "standard", dépend de XML, même ICU nécessite la compilation à des ressources ICU spécifiques pour l'utilisation. Outils de traduction limités, Je ne connais aucune bibliothèque qui supporte XLIFF. Formes plurielles pas si facile à utiliser (ICU inclus un certain soutien seulement dans 4.X release).

Maintenant, qu'avons-nous?

GNU gettext, largement utilisé, a de bons outils, a grand soutien de formes plurielles, très populaire dans la communauté des traducteurs...

Donc décider, pensez-vous vraiment que gettext n'est pas si bonne solution?

je ne pense pas. Vous n'avez pas travaillé avec d'autres solutions du tout, donc essayer de comprendre comment cela fonctionne à la première place.

41
répondu Artyom 2017-12-11 11:59:46

commentaires intéressants sur gettext () et tous ces pro-gettext ().

Je ne dis pas que cela ne fonctionne pas correctement dans la plupart des cas, mais j'ai essayé de gérer un projet avec et je me suis rapidement senti submergé par la dureté de l'utiliser. Il y a peut-être quelques interfaces utilisateurs pour les traducteurs aujourd'hui, mais je n'ai même pas regardé. L'extraction et la fusion des cordes ne le font pas pour moi.

maintenant, je vous remercie Artyom pour parler de XLIFF qui est une bien meilleure solution pour mon environnement puisque tout est XML. Oh! Et il y a d'excellents rédacteurs. Mais si vous aimez gettext() vous n'en trouverez pas. 8 -)

je suggère de regarder celui-ci par exemple:

https://sourceforge.net/projects/wordforge2/

maintenant, cela peut donner au programmeur un cauchemar pour faire tout le travail, mais ce que nous voulons est un rêve devenu réalité pour les traducteurs (et zéro travail par le programmeur comme les traductions affluent, parce que je peux vous dire qu'avec gettext (), j'ai dû faire tout le travail!)

2
répondu Alexis Wilke 2011-09-19 06:30:21

il y a une alternative de Zend qui supporte gettext *.po/*.mo et beaucoup d'autres formats. De nombreux serveurs Apache mettent en cache les fichiers de traduction parce que gettext est implémenté en tant que module et que le serveur doit être redémarré pour rafraîchir les données de traduction.

l'implémentation Zend évite cela et prend en charge de nombreux autres formats:

http://framework.zend.com/manual/1.12/en/zend.translate.html

2
répondu Paulo 2012-11-15 04:50:46