Re: [SSFR] basculement azerty /qwerty - traduction francais / anglais |
[ Thread Index |
Date Index
| More debianworld.org/shellscript-fr Archives
]
franck Molle a écrit :
Bonjour à tous,
Histoire de planter le décor et d'expliquer le pourquoi de mes
questions, je vais présenter en qq mots le projet sur lequel je
travaillle :
Il s'agit d'un serveur de fichiers sous linux doté d'un interface web
et destiné à l'éducation (sambaedu3).
Je travaille en particulier sur le cd d'installation qui a pour but de
partitionner/formatter le dd, d'installer la distrib debian sarge et
de configurer le serveur en 1/4h environ.
Pour le moment, seul le francais est supporté mais j'envisage de
mettre également de l'english ;). Bref, voila (enfin ;)) mes questions :
- Au démarrage de l'installation, je voudrais mettre une boite de
dialogue permettant le choix du clavier et de la langue, pour la boite
de dialogue, je sais faire mais par contre, est il possible de changer
le clavier à la volée en lancant une commande ou bien une série de
commandes ?
Tu peux utiliser loadkeys.
- En php, il existe l'outil gettext permettant d'internationaliser une
interface web, y a t-il une sorte d'équivalent sous bash ou y a t-il
un moyen pas trop complexe d'avoir un script qui puisse aussi bien
afficher des boites de dialogues en francais ou en anglais sans pour
autant réécrire tout le script (il fait plus de 50Ko donc j'aimerais
autant éviter)
Tu peux faire un fichier fr.posh, en.posh, de.posh, etc... avec la liste
des variables contenant des messages localisés, puis sourcer le fichier
correspondant dans ton script:
echo 'MSG="Hello World"' > en.posh
echo 'MSG="Bonjour Monde"' > fr.posh
echo -e '#!/bin/bash\nLANGUAGE=$1; source ${LANGUAGE}.posh; echo $MSG' >
test.sh
chmod +x test.sh
./test.sh en
./test.sh fr
Tu peux aussi utiliser la variable d'environnement LANGUAGE:
echo 'MSG="Hello World"' > en_EN.posh
echo 'MSG="Bonjour Monde"' > fr_FR.posh
echo -e '#!/bin/bash\n; source ${LANGUAGE%%:*}.posh; echo $MSG' > test.sh
chmod +x test.sh
./test.sh
Mais y'a peut-être un truc plus adapté...
Merci d'avance pour toute réponse,
@+