meta données pour cette page
  •  

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
envrac:bash-international [2012/03/03 09:41]
ztrulphcs [Il ne peut y en avoir qu'un]
envrac:bash-international [2022/10/30 06:55] (Version actuelle)
ztrulphcs [Il ne peut y en avoir qu'un]
Ligne 44: Ligne 44:
  
  
-Notez au passage que bash se donne vraiment beaucoup de mal pour trouver le catalogue de chaines traduites. Si on fait exprès de le taquiner un peu et qu'on regarde avec ''[[http://linuxmanpages.com/man1/strace.1.php|strace]]'' ce qu'il essaie de faire, on peut voir ceci :+Notez au passage que bash se donne vraiment beaucoup de mal pour trouver le catalogue de chaines traduites. Si on fait exprès de le taquiner un peu et qu'on regarde avec ''[[http://man7.org/linux/man-pages/man1/strace.1.html|strace]]'' ce qu'il essaie de faire, on peut voir ceci :
 <code txt> <code txt>
 open(".../locale/fr_FR.UTF-8/LC_MESSAGES/multilingue.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open(".../locale/fr_FR.UTF-8/LC_MESSAGES/multilingue.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
Ligne 232: Ligne 232:
 C'est pas mieux. Voir l'explication ci dessus, mais en plus, les chaines du tableau sont même pas traduites... C'est pas mieux. Voir l'explication ci dessus, mais en plus, les chaines du tableau sont même pas traduites...
  
-Il n'y a pas de solution alors ? ben si. Y'a [[http://linuxmanpages.com/man1/printf.1.php|printf]]. Au passageil se trouve, que ''printf'' est une commande [[http://linuxmanpages.com/man1/bash.1.php#lbCZ|interne de bash]] (et aussi de dash et ash) et donc peu coûteuse -- même si le lien donné pointe vers la page de manuel de la commande externe du même nom. Un exemple correct pour ce script est :+Il n'y a pas de solution alors ? ben si. Y'a [[https://www.gnu.org/software/bash/manual/bash.html#index-printf|printf]], une commande interne de bash. Cette fonction interne reprend et étend la **commande externe** [[http://linuxmanpages.com/man1/printf.1.php|printf]]. Cette commande étant un interne de bast (et aussi de dash et ash) est donc peu coûteuse. Un exemple correct pour ce script est :
  
 <code bash essai-006> <code bash essai-006>
Ligne 282: Ligne 282:
 et voilà aussi les commandes à passer : et voilà aussi les commandes à passer :
 <code bash> <code bash>
-lang=fr_FR+langue=fr_FR
 mkdir -p locale/$langue/LC_MESSAGES/ mkdir -p locale/$langue/LC_MESSAGES/
 msgfmt -o locale/$langue/LC_MESSAGES/essai-006.mo essai-006.po msgfmt -o locale/$langue/LC_MESSAGES/essai-006.mo essai-006.po
 bash essai-006 bash essai-006
 </code> </code>
 +
 ===== Téléchargement bonus ===== ===== Téléchargement bonus =====