meta données pour cette page
Différences
Ci-dessous, les différences entre deux révisions de la page.
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 08:20] ztrulphcs [Script bash internationalisé] |
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 '' | + | 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 '' |
<code txt> | <code txt> | ||
open(" | open(" | ||
Ligne 116: | Ligne 116: | ||
==== Traduire plus sérieusement ==== | ==== Traduire plus sérieusement ==== | ||
- | Ben pourquoi c' | + | Ben pourquoi, c' |
La meilleure méthode est donc | La meilleure méthode est donc | ||
Ligne 195: | Ligne 195: | ||
Ben oui, mais normal quoi. Si on prend pas à pas ce qui se passe lors de l' | Ben oui, mais normal quoi. Si on prend pas à pas ce qui se passe lors de l' | ||
- | * bash voit une chaine '' | + | * bash voit une chaine '' |
- | * procède à l' | + | * procède à l' |
- | * et s' | + | * et il s' |
'' | '' | ||
Ligne 205: | Ligne 205: | ||
* recherche un équivalent dans le catalogue, | * recherche un équivalent dans le catalogue, | ||
* il trouve des chaines du genre '' | * il trouve des chaines du genre '' | ||
- | * fait le remplacement de variable '' | + | * remplace les chaines d' |
- | * range ce résultat dans la tableau et passe à la suite | + | * puis, au moment où il exécute la commande, c'est à dire l' |
+ | * range ce résultat dans la tableau et passe à la suite. | ||
Si on essaie frénétiquement ceci : | Si on essaie frénétiquement ceci : | ||
Ligne 230: | Ligne 232: | ||
C'est pas mieux. Voir l' | C'est pas mieux. Voir l' | ||
- | Il n'y a pas de solution alors ? ben si. Y'a [[http://linuxmanpages.com/man1/printf.1.php|printf]]. Au passage, il se trouve, que '' | + | Il n'y a pas de solution alors ? ben si. Y'a [[https://www.gnu.org/software/ |
<code bash essai-006> | <code bash essai-006> | ||
+ | #! /bin/bash | ||
+ | |||
+ | TEXTDOMAIN=${0## | ||
+ | TEXTDOMAINDIR=" | ||
+ | |||
status=( | status=( | ||
| | ||
Ligne 240: | Ligne 247: | ||
) | ) | ||
name=toto | name=toto | ||
- | result=3 | + | result=$(( $RANDOM % 4 )) |
printf " | printf " | ||
+ | read -p $" | ||
# ou alors, si on fait des boites de dialogue, on peut utiliser ceci : | # ou alors, si on fait des boites de dialogue, on peut utiliser ceci : | ||
- | read -p $"Press the return key" | + | result=$(( $RANDOM % 4 )) |
dialog --msgbox "$( printf " | dialog --msgbox "$( printf " | ||
+ | result=$(( $RANDOM % 4 )) | ||
zenity --info --text=" | zenity --info --text=" | ||
</ | </ | ||
Ligne 250: | Ligne 259: | ||
Les traducteurs pourront mettre les noms aux endroits où ils le veulent. Sauf qu'ils peuvent éventuellement ne même pas vraiment savoir à quoi correspond le '' | Les traducteurs pourront mettre les noms aux endroits où ils le veulent. Sauf qu'ils peuvent éventuellement ne même pas vraiment savoir à quoi correspond le '' | ||
+ | Notez l' | ||
+ | |||
+ | Voilà le fichier .po pour ceux qui voudraient essayer : | ||
+ | <code po essai-006.po> | ||
+ | #: essai-007:7 | ||
+ | msgid "%s Perfect\\\\n" | ||
+ | msgstr "%s, C'est parfait !\\\\n" | ||
+ | #: essai-006:8 | ||
+ | msgid "%s almost correct\\\\n" | ||
+ | msgstr " | ||
+ | #: essai-006:9 | ||
+ | msgid "%s could be better\\\\n" | ||
+ | msgstr "%s : Peut mieux faire\\\\n" | ||
+ | #: essai-006: | ||
+ | msgid "%s all wrong\\\\n" | ||
+ | msgstr "%s a tout faux !\\\\n" | ||
+ | #: essai-006: | ||
+ | msgid "press the return key" | ||
+ | msgstr " | ||
+ | </ | ||
+ | |||
+ | et voilà aussi les commandes à passer : | ||
+ | <code bash> | ||
+ | langue=fr_FR | ||
+ | mkdir -p locale/ | ||
+ | msgfmt -o locale/ | ||
+ | bash essai-006 | ||
+ | </ | ||
===== Téléchargement bonus ===== | ===== Téléchargement bonus ===== |