traduction

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
traduction [2014/02/12 19:14] danytraduction [2023/07/29 16:45] (Version actuelle) dany
Ligne 11: Ligne 11:
  
  
-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]]+Ici une discussion avec un fichier d'exemple [[https://forum.noalyss.eu/viewtopic.php?f=3&t=5630&p=5635]]
  
 +====== Traduction ======
 +Il suffit d'utiliser [[https://poedit.net/|Poedit]]  ou [[https://userbase.kde.org/Lokalize/fr|Lokalize]] sous Linux. 
 +
 +Il faut ouvrir le fichier noalyss/html/lang/LC_MESSAGES/message.po et traduire chaque entrée
 +
 +====== Ajouter une nouvelle langue ======
 +N'hésitez pas à demander qu'on le fasse pour vous.
 +
 +Depuis le répertoire noalyss
 +
 +a) créer le répertoire pour la langue avec les codes internationaux (es : espagnol , fr : français , en : anglais ) souligné le pays (exemple : en_US)
 +Dans la suite , remplacer {your_local} par cette valeur 
 +<code bash>
 +mkdir -p html/lang/{your_local}/LC_MESSAGES
 +</code>
 +
 +b) executer depuis le répertoire noalyss
 +
 +<code bash>
 +export LOCAL={your_local} # ici le code correspondant au répertoire
 +msginit --locale=$LOCAL -i html/lang/messages.po -o html/lang/$LOCAL/LC_MESSAGES/messages.po 
 +</code>
 +Maintenant le fichier est créé avec les messages à traduire.
 +c) Pour traduire (sous Linux)
 +<code bash>
 +poedit html/lang/$LOCAL/LC_MESSAGES/messages.po
 +</code>
 +
 +d) Adapter les fichiers pour compiler
 +Pour compiler et extraire, il faudra adapter des fichiers
 +
 +Compile
 +  noalyss/dev/compile_text.sh
 +
 +<code bash>
 +echo "Your language"
 +cd ../..
 +cd {your_local}/LC_MESSAGES
 +msgfmt -c -v messages.po
 +
 +</code>  
 +extrait
 +  noalyss/dev/extract_text.sh
 +
 +<code bash>
 +echo "Your language"
 +msgmerge -U -s html/lang/{your_local}/LC_MESSAGES/messages.po html/lang/messages.po
 +
 +</code>  
 ====== Les scripts ====== ====== Les scripts ======
 dans dev/ dans dev/
 ===== extract_text.sh ===== ===== extract_text.sh =====
 Retrouve toutes les chaînes de caractères à traduire et les place dans html/lang/<langue>/LC_MESSAGES Retrouve toutes les chaînes de caractères à traduire et les place dans html/lang/<langue>/LC_MESSAGES
 +<code bash>
   #!/bin/bash   #!/bin/bash
   # Brief : extract strings from the file, in order to update a   # Brief : extract strings from the file, in order to update a
Ligne 28: Ligne 78:
   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/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   xgettext -L PHP -j --from-code=UTF-8 -p html/lang/nl_NL/LC_MESSAGES/ html/*.php include/*.php
 +</code>
 ===== get_menu.sh ===== ===== get_menu.sh =====
 Retrouve les menus et les inscrit dans un fichier afin de pouvoir être traités par extract_text.sh Retrouve les menus et les inscrit dans un fichier afin de pouvoir être traités par extract_text.sh
 +<code bash>
  #!/bin/bash  #!/bin/bash
  
Ligne 44: Ligne 95:
  psql -A -F"  " -t -c "select '\$menu[]=_('''||replace(me_menu,'''',E'\\\\''')||''');' , '\$desc[]=_('''||replace(me_description,'''',E'\\\\''')||''');' from menu_ref ;"  psql -A -F"  " -t -c "select '\$menu[]=_('''||replace(me_menu,'''',E'\\\\''')||''');' , '\$desc[]=_('''||replace(me_description,'''',E'\\\\''')||''');' from menu_ref ;"
  echo "?>"  ) > ../include/menu_translate.php  echo "?>"  ) > ../include/menu_translate.php
 +</code>
 ===== compile_text.sh ===== ===== compile_text.sh =====
 Compile le fichier afin que les traductions soient disponibles Compile le fichier afin que les traductions soient disponibles
 +<code bash>
   #!/bin/bash   #!/bin/bash
   # Brief : compite  the file .mo,    # Brief : compite  the file .mo, 
Ligne 61: Ligne 112:
   cd nl_NL/LC_MESSAGES   cd nl_NL/LC_MESSAGES
   msgfmt -c -v messages.po   msgfmt -c -v messages.po
 +</code>
 ====== Traduction avec Google ====== ====== Traduction avec Google ======
  
Ligne 71: Ligne 122:
  
  
-====== tutoriel ======+====== tutoriel et documentation ======
  
-[[http://www.grafikart.fr/tutoriels/php/internationaliser-site-gettext-104|Tutoriel Vidéo]]+  - [[http://www.grafikart.fr/tutoriels/php/internationaliser-site-gettext-104|Tutoriel Vidéo]] 
 +  - [[https://webtranslateit.com/fr/docs/file_formats/gettext_po]] 
 +  - [[https://www.gnu.org/software/gettext/manual/html_node/PO-Files.html]] 
 +  - [[http://en.wikipedia.org/wiki/Gettext]] Anglais 
 +  - [[http://fr.wikipedia.org/wiki/Gettext]] Français
  • traduction.1392228853.txt.gz
  • Dernière modification : 2014/02/12 19:14
  • de dany