6
votes

Comment générer un fichier de traduction (.po, .xliff, .yml, ...) à partir d'un projet Symfony2 / SILEX?

Je vais construire un projet SILEX / SYMFONY2 et je suis intéressé autour d'une méthode pour générer des fichiers de traduction XLIF / PO / YAML en fonction de Texts-to-Be-Traduit à l'intérieur du projet mais non trouvé d'instruction ou de documentation sur ça.

Ma question est la suivante: existe une manière automatisée de générer des fichiers de traduction dans un format spécifique pour un projet Symfony2 / SILEX? ​​

Si oui, veuillez me dire comment générer le fichier puis mettre à jour la traduction après cela.

Si non, veuillez me dire comment créer un fichier de traduction puis ajouter plus de texte pour mon projet? Je recherche un éditeur basé sur le bureau ou basé sur le Web au lieu d'utiliser un éditeur normal tel que Transifex, getlocalisation (mais ils n'ont pas la possibilité de créer un nouveau fichier ou d'ajouter plus de texte)


0 commentaires

3 Réponses :


11
votes

Après une longue période de recherche sur Internet, j'ai trouvé un bon:

https://github.com/schmittjoh/jmstranslationbundle


2 commentaires

J'ai un fichier .xlxs qui a besoin de changer de fichier .xliff - savez-vous comment cela pourrait être atteint? Merci.


Cela ne fonctionne pas avec Twig 2.0 , jusqu'à ce que JMS 1.3.1



6
votes

Je vois que vous avez trouvé un convertisseur, mais pour répondre à votre première question sur la génération de votre fichier de traduction initial -

si vous avez gettext installé sur votre système, vous pouvez générer un fichier PO de votre" textes-to-être traduisée à l'intérieur du projet ". Le programme de ligne de commande xgetext scannera les fichiers source à la recherche de la fonction que vous utilisez.

Exemple:

Pour analyser les fichiers PHP pour des instances de Trans Metory Call comme indiqué ici Vous pouvez utiliser la commande suivante - xxx

à votre question sur les éditeurs:
Vous pouvez utiliser n'importe quel éditeur PO, tel que POEDIT , pour gérer vos traductions, mais comme vous dites que vous avez finalement besoin de Convertissez le fichier PO en un pack de langues XLIF ou YAML pour symfony.

Je vois que vous avez déjà trouvé un outil de convertisseur. Vous pouvez également aimer essayer celui que j'ai écrit pour loco. Il prend en charge PO à Yaml et PO à XLIFF


2 commentaires

Je pense qu'il n'est pas possible de gérer la syntaxe de pluralisation symographiques avec xgetext.


C'est vrai. La syntaxe plurielle limitée de GetText n'est pas compatible avec la syntaxe plus expressif de Symfony. Vous devez intégrer la syntaxe spéciale dans les cordes réelles. Bien que cela puisse pour tout format que vous utilisez avec symfony, y compris le format XLIFF recommandé



1
votes

Solution de contournement pour les personnes occupées (UNIX)

Vous pouvez exécuter la commande suivante dans le terminal: xxx

Ceci va sortir la liste des messages à traduire: xxx

Je veux dire presque .. Mais vous pouvez généralement faire du travail d'ici ...

Evidemment, vous devez modifier la commande à votre goût ( TRANCHOICE , Double-citations au lieu de célibataire ...).

pas idéal mais peut aider!

grep options

  • grep -r, -r, --Recursive : lire tous les fichiers sous chaque répertoire, cela équivalent à l'option -d recueil.
  • grep -e, --Extended-regexp : interpréter le modèle comme une expression régulière étendue.
  • grep -o, --Only-correspondant : Affiche uniquement la partie d'une ligne de correspondance correspondant à la motion.
  • grep -h, --No-filenameame : supprimez le préfixe des noms de fichiers sur la sortie lorsque plusieurs fichiers sont recherchés.

    ( source ) < / p>


0 commentaires