[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [linux] to be french or not to be french



Kaixo!

On Wed, Jun 13, 2001 at 07:01:48AM +0200, Pol wrote:
 
> Tout simplement parce que les variables en tant qu'utilisateur sont
> differentes de celles de l'utilisateur qui lance cron (generalement root)

Les variables ne sont pas et n'ont jamais été "par utilisateur"
mais par session, ou plus exactemment par instance d'un programme (en
particulier l'interpreteur de commande, généralement bash).
Et c'est heritable, càd que si on definit LANG=xx dans bash, tout ce
qu'on lancera depuis bash aura cette variable.

Mais, il existe certains programmes qui sont lancés par init, càd *sans*
passer par le cheminement habituel de definition des variables du shell.

Pour ça, il y a plusieures solutions:

- si init lance en fait un script, faire en sorte que le script aille lire
  et initialiser les bonnes variables dans un fichier
- si le programme le permets (cas des cron modernes) mettre ça dans un fichier
  de config propre au programme
- passer LANG=xx comme paramètre au kernel lors du boot, ainsi même le
  programme lancé directemment par le kenrnel (init) en heritera.

> Les variables affectees sont +- differentes pour chaque distro.

Non. C'est les mêmes pour tout système GNU/Linux.

Il se peut que des distros differentes choissisent de les definir ou pas;
mais les variables sont les mêmes.

> Pour les afficher, tu tapes: set

Là tu as toutes les variables, pas seulement celles concernant les locales.
Pour les locales tu tapes "locales ; echo $LANGUAGE" et tu as tout.

> pour en enregistrer une, tu fait: 
> 
> set LANG=fr
> export LANG
> 
> Essaie cette variable.

Attention que LANG est la plus "faible", elle sera ignorée si une LC_*
ou LC_ALL (qui redefinit toutes les LC_*) est definie.
Seuls les vieux programmes comme Netscape n'utilisent que LANG.

Il y a aussi LANGUAGE, extension GNU qui permets de specifier une *liste*
de langues (très pratique ça) à essayer à tour de rôle, pour l'affichage
des traductions. LANGUAGE est prioritaire aux autres, mais ne concerne que
la langue à utiliser pour les traductions, donc pas le format des nombres
(ça c'est LC_NUMERIC) ni le format des dates et noms de mois/jours de la
semaine (ça c'est LC_TIME) ni l'ordre alphabetique (ça c'est LC_COLLATE)
ni le jeu de caractères (ça c'est LC_CTYPE) (il y a encore d'auress LC_*
mais qui sont raremment utilisée; un utile est sans doute LC_PAPER, pour la
taille du papier (A4/letter par exemple) ou LC_MEASURE (je crois) pour
les unités de mesure (cm ou inch etc)

-- 
Ki ça vos våye bén,
Pablo Saratxaga

http://www.srtxg.easynet.be/		PGP Key available, key ID: 0x8F0E4975

[ Soyez précis dans vos sujets svp afin de déterminer directement  ]
[ le type de demande...                                            ]
[ Pour vous (dés)inscrire, aller sur http://linuxbe.org/ml.php     ]
[ http://LinuxBe.org              Contact: listmaster@linuxbe.org  ]