traduction

Ceci est une ancienne révision du document !


GETTEXT

La traduction se fait avec gettext sauf pour les fichiers javascript.

Google translate peut traduire les fichiers po

Pour créér un message à traduire, écrivez-la en français entouré de _( ) puis utilisez dev/extract_test.sh pour générer les fichiers po puis après traduction (poedit, vi ou google translate) compilez-les avec le script dev/compile_text.sh

Attention sous Unix, vous devez avoir les locales NL_nl et EN_en pour que la traduction fonctionne (voir man locale)

Ici une discussion avec un fichier d'exemple http://www.phpcompta.be/index.php?option=com_fireboard&Itemid=42&func=view&id=4680&catid=5&limit=6&limitstart=0

Les scripts

dans dev/

Retrouve toutes les chaînes de caractères à traduire et les place dans html/lang/<langue>/LC_MESSAGES

  #!/bin/bash
  # Brief : extract strings from the file, in order to update a
  # po file. It is used for the translation
  #
  #
  # This file is a part of NOALYSS under GPL
  # Author D. DE BONTRIDDER danydb@aevalys.eu
  echo "Extract"
  cd ..
  xgettext -L PHP -j --from-code=UTF-8 -p html/lang/en_US/LC_MESSAGES/ html/*.php include/*.php include/template/*.php
  xgettext -L PHP -j --from-code=UTF-8 -p html/lang/nl_NL/LC_MESSAGES/ html/*.php include/*.php

Retrouve les menus et les inscrit dans un fichier afin de pouvoir être traités par extract_text.sh

 #!/bin/bash
 
  export PGUSER=dany
  export PGPASSWORD=dany
  export PGHOST=localhost
  export PGDATABASE=trunkdossier25
  export PGPORT=5000
 
 
 (
 echo "<?php "
 psql -A -F"  " -t -c "select '\$menu[]=_('''||replace(me_menu,'''',E'\\\\''')||''');' , '\$desc[]=_('''||replace(me_description,'''',E'\\\\''')||''');' from menu_ref ;"
 echo "?>"  ) > ../include/menu_translate.php

Compile le fichier afin que les traductions soient disponibles

  #!/bin/bash
  # Brief : compite  the file .mo, 
  # It is used for the translation
   #
  #
  # This file is a part of NOALYSS under GPL
  # Author D. DE BONTRIDDER danydb@aevalys.eu
  cd ../html/lang
  cd en_US/LC_MESSAGES
  msgfmt -c -v messages.po
  cd ../..
  cd nl_NL/LC_MESSAGES
  msgfmt -c -v messages.po

Traduction avec Google

tutoriel et documentation

  • traduction.1392389839.txt.gz
  • Dernière modification : 2014/02/14 15:57
  • de dany