Comprendre les localités sur Debian GNU / Linux

Comprendre les localités sur Debian GNU / Linux
Chaque système informatique est livré avec sa configuration spécifique concernant le langage du système et le codage des caractères qui est utilisé. Sur la base de cette configuration, les messages d'erreur, le système d'aide ainsi que les commentaires du programme s'affichent à l'écran.

Sur les systèmes UNIX / Linux, cette configuration est appelée Posix [7] et standardisé comme IEEE STD 1003.1-2017 [3]. Un tel paramètre peut varier pour le système dans son ensemble, et les comptes d'utilisateurs uniques, car chaque utilisateur peut individualiser son environnement de travail. Dans cet article, nous vous expliquerons comment déterminer la configuration actuelle des paramètres régionaux sur Debian GNU / Linux, pour comprendre ses vis de réglage unique et comment adapter le système à vos besoins.

Notez que cet article est adapté à Debian GNU / Linux Release 10 "Buster". Sauf indication contraire, les techniques décrites ici fonctionnent également pour ses dérivés comme Ubuntu ou Linux Mint [8].

Qu'est-ce qu'un lieu?

De manière générale, un lieu est un ensemble de valeurs qui reflètent la nature et les conventions d'un pays, ou une culture. Entre autres, ces valeurs sont stockées comme des variables d'environnement qui représentent la langue, le codage des caractères, le formatage de date et d'heure, la taille du papier par défaut, la monnaie du pays ainsi que le premier jour de la semaine.

Tel qu'auparavant, il existe un paramètre général appelé «paramètre par défaut» et un paramètre défini par l'utilisateur. Le paramètre par défaut fonctionne à l'échelle du système et est stocké dans le fichier / etc / par défaut / les paramètres locaux. Listing 1 affiche les paramètres par défaut sur un debian GNU / Linux en utilisant l'allemand comme langue principale, et Unicode 8 bits (UTF-8) comme jeu de caractères [11].

Listing 1: le paramètre par défaut sur un debian allemand GNU / Linux

$ Cat / etc / par défaut / Locale # Fichier généré par Update-Locale Lang = “DE_DE.Utf-8 ”$ --

Veuillez noter que contrairement à Debian GNU / Linux, sur certaines versions Ubuntu antérieures, la configuration des paramètres régionaux à l'échelle du système est stocké sur / etc / par région.confli.

Les paramètres définis par l'utilisateur sont stockés en tant que fichier caché dans votre répertoire domestique, et les fichiers réels évalués dépendent du shell de connexion que vous utilisez [6]. Le Shell Bourne traditionnel (/ bin / sh) [4] lit les deux fichiers / etc / profil et ~ /.Profil, tandis que la coque Bourne-Again (bash) (/ bin / bash) [5] lit / etc / profil et ~ / /.bash_profile. Si votre shell de connexion est z shell (/ bin / zsh) [9], les deux fichiers ~ /.zprofile et ~ /.zlogin sont lus, mais pas ~ /.Profil à moins que ce soit invoqué en mode d'émulation Bourne Shell [10].

Le démarrage d'une coquille dans un terminal d'une session existante entraîne une coque interactive et non logique. Cela peut entraîner la lecture des fichiers suivants - ~ /.Bashrc pour bash, et / etc / zshrc ainsi que ~ /.zshrc pour z shell [6].

Nommer un lieu

Comme expliqué ici [12], le nom d'un lieu suit un modèle spécifique. Le modèle se compose de codes linguistiques, d'encodage de caractères et de description d'une variante sélectionnée.

Un nom commence par un code de langue à deux lettres ISO 639-1 [13], ou un code de langue à trois lettres ISO 639-2 [14] si la langue n'a pas de code à deux lettres. Par exemple, c'est de l'allemand, FR pour le français et cel pour celtique. Le code est suivi pour beaucoup mais pas toutes les langues par un soulignement _ et par un code de pays à deux lettres ISO 3166 [15] [15]. Par exemple, cela mène à DE_CH pour l'allemand suisse et FR_CA pour un système francophone pour un utilisateur canadien susceptible d'être situé au Québec.

Facultativement, un point . Suit le nom du codage de personnage tel que UTF-8, ou ISO-8859-1, et le signe @ suivi du nom d'une variante. Par exemple, le nom en_ie.UTF-8 @ Euro décrit la configuration d'un système anglais pour l'Irlande avec un codage de caractères UTF-8, et l'euro comme le symbole de la devise.

Commandes et outils

Le nombre de commandes liées aux localités est relativement faible. La liste contient des paramètres régionaux qui affichent purement les paramètres des paramètres régionaux actuels. Le second est localctl qui peut être utilisé pour interroger et modifier les paramètres de disposition des paramètres régionaux et du clavier. Afin d'activer un lieu, les outils DPKG-Reconfigure et les régions locales entrent en jeu - voir l'exemple ci-dessous.

Montrer le lieu qui est utilisé

La première étape consiste à déterminer les paramètres régionaux actuels de votre système à l'aide de la commande des paramètres régionaux comme suit:

Listing 2: afficher les paramètres régionaux actuels

$ Lang Lang = DE_DE.Langue UTF-8 = LC_CTYPE = "DE_DE.Utf-8 ”lc_numeric =“ DE_DE.UTF-8 ”
Lc_time = “DE_DE.UTF-8 ”LC_COLLATE =" DE_DE.UTF-8 ”LC_MONETARY =" DE_DE.UTF-8 ”
LC_MESSAGES = "DE_DE.Utf-8 ”lc_paper =“ DE_DE.UTF-8 ”LC_NAME =" DE_DE.UTF-8 ”
Lc_address = “DE_DE.Utf-8 ”lc_telephone =“ DE_DE.Utf-8 ”lc_measurement =“ DE_DE.UTF-8 ”
Lc_identification = “DE_DE.Utf-8 ”lc_all = $ --

Veuillez noter que d'autres distributions Linux que Debian GNU / Linux peuvent utiliser des variables d'environnement supplémentaires non répertoriées ci-dessus. Les variables uniques ont la signification suivante:

  • Lang: détermine les paramètres par défaut en l'absence d'autres variables d'environnement liées aux paramètres régionaux
  • Langue: liste des langues de traduction de messages de secours
  • LC_CTYPE: Classification des caractères et conversion de cas
  • LC_NUMERIC: Formatage numérique
  • Lc_time: formats de date et d'heure
  • LC_COLLATE: Collation (tri) Ordre
  • LC_MONETARY: Formatage monétaire
  • LC_MESSAGES: Format des mots et réponses interactifs
  • LC_Paper: Taille du papier par défaut pour la région
  • LC_NAME: formats de noms
  • LC_ADdress: Convention utilisée pour le formatage des adresses de rue ou postale
  • LC_TELEPHONE: Conventions utilisées pour la représentation des numéros de téléphone
  • LC_MEASURMENT: Système de mesure par défaut utilisé dans la région
  • LC_IDENTIFICATION: métadonnées sur les informations locales
  • LC_Response: détermine comment les réponses (telles que oui et non) apparaissent dans la langue locale (non utilisée par Debian GNU / Linux mais Ubuntu)
  • LC_ALL: remplace toutes les autres variables locales (sauf la langue)

Liste des localités disponibles

Ensuite, vous pouvez répertorier les localités disponibles sur votre système à l'aide de la commande Locale accompagnée de son option -a. -A est court pour-tout locales:

Listing 3: Afficher les localités disponibles

$ Locale -a C C.Utf-8 de_de @ euro de_de.UTF8 EN_US.UTF8 POSIX $ --

Listing 3 contient deux paramètres de paramètres régionaux pour l'allemand (Allemagne) et l'anglais (États-Unis). Les trois entrées c, c.UTF-8 et POSIX sont synonymes et représentent les paramètres par défaut qui conviennent aux données analysées par un programme informatique. La sortie dans Listing 3 est basée sur la liste des lieux pris en charge stockés dans / usr / share / i18n / pris en charge.

De plus, l'ajout de l'option -v (abréviation de -verbose) à l'appel conduit à une sortie beaucoup plus étendue qui inclut les métadonnées LC_Identification sur chaque paramètre. La figure 1 le montre pour l'appel de la liste 3.

Afin de voir quels localités existent déjà, et lesquelles ont besoin d'une aide supplémentaire pour être terminée, vous pouvez également jeter un œil à la carte du projet Locale Helper [20]. Les marqueurs rouges montrent clairement quels localités sont inachevées. La figure 2 affiche les localités pour l'Afrique du Sud qui semblent assez complètes.

Afficher les cartes de personnages disponibles

La commande LOCALE est livrée avec l'option -m qui est court pour -charmaps. La sortie montre les cartes de caractères disponibles ou les fichiers de description du jeu de caractères [16]. Un tel fichier est destiné à «définir les caractéristiques du jeu de caractères codé et le codage pour les caractères spécifiés dans le jeu de caractères portables, et peut définir le codage pour des caractères supplémentaires pris en charge par l'implémentation» [16]. Listing 4 illustre cela avec un extrait de la liste entière.

Listing 4: Fichiers de description du jeu de caractères

$ Locale -M ANSI_X3.110-1983 ANSI_X3.4-1968 ARMSCII-8 ASMO_449 BIG5 BIG5-HKSCS… $ --

Montrer les définitions des variables locales

Chaque variable utilisée pour un lieu est livrée avec sa propre définition. Utilisation de l'option -K (abréviation de -Keyword-Name) La commande LOCALE affiche ce paramètre en détail. Le listing 5 illustre cela pour la variable LC_telephone telle qu'elle est définie dans un environnement allemand - le format de numéro de téléphone, le format de téléphone national, le code de sélection international ainsi que le code du pays (préfixe international) et l'ensemble de codes. Voir le projet Lockale Helper [20] pour une description détaillée des valeurs.

Listing 5: Les détails de LC_TELEPHONE

$ Locale -K lc_telephone tel_int_fmt = "+% c% a% l" tel_dom_fmt = "% a% L"
int_select = ‘00” int_prefix = “49” téléphonique coder = «utf-8» $ --

Changer les paramètres régionaux actuels

Les connaissances concernant les paramètres régionaux deviennent nécessaires dès que vous exécutez un système qui est livré avec un lieu différent de celui à laquelle vous êtes habitué - par exemple, sur un système Linux Live. La modification des paramètres régionaux peut être effectuée de deux manières - reconfigurer le package des localités Debian [19] et l'ajout des paramètres locaux à l'aide de la commande de paramètres de commandement. Pour la première option, l'exécution de la commande suivante ouvre une boîte de dialogue de configuration basée sur le texte illustré à la figure 3:

# DPKG-Reconfigure Lays

Appuyez sur la barre d'espace afin de choisir les paramètres régionaux souhaités dans la liste indiquée dans la boîte de dialogue, et choisissez «OK» pour confirmer votre sélection. La prochaine fenêtre de dialogue vous propose une liste de lieux disponibles pour les paramètres par défaut. Sélectionnez celui souhaité et choisissez "OK". Désormais, les fichiers locaux selon les paramètres sont générés, et les paramètres régionaux précédemment sélectionnés sont définis pour votre système.

Pour l'option deux, la génération des paramètres régionaux souhaités se fait avec l'aide de la commande de la commande. Listing 6 illustre cela pour une configuration française:

Listing 6: générer un lieu français

local-général fr_fr.UTF-8
Génération de lieux… FR_FR.UTF-8… Génération terminée complète. # --

Afin d'utiliser les paramètres locaux générés précédemment comme par défaut, exécutez la commande dans Listing 7 pour le configurer correctement:

Listing 7: réglage manuellement le lieu

# Update-Locale Lang = FR_FR.UTF-8

Dès que vous ouvrez une nouvelle session de terminal, ou remaniez à votre système, les modifications sont activées.

Compiler un fichier de définition des paramètres régionaux

La commande localctl vous aide à compiler manuellement un fichier de définition des paramètres régionaux. Afin de créer un paramètre français, exécutez la commande comme suit:

Listing 8: compiler une définition des paramètres régionaux

# localdef -i fr_fr -f utf-8 fr_fr.UTF-8

Conclusion

Comprendre les localités peut prendre un certain temps car c'est une configuration qui est influencée par plusieurs facteurs. Nous avons expliqué comment déterminer votre paramètre local actuel et comment le changer correctement. Adporter le système Linux à vos besoins devrait être beaucoup plus facile pour vous à partir de vous.

Liens et références
  • [1] Locale, Debian Wiki
  • [2] Changelanguage, comment changer la langue de votre système Debian
  • [3] POSIX LOCALE, The Open Group Spécifications Numéro 7, édition 2018
  • [4] Bourne Shell, Wikipedia
  • [5] Bourne-Again Shell, Wikipedia
  • [6] Différence entre la coque de connexion et la coque non logique?, Stackexchange
  • [7] Interface du système d'exploitation portable (POSIX), Wikipedia
  • [8] Linux Mint
  • [9] Z Shell, Wikipedia
  • [10] Shell Zsh Shell Constructions
  • [11] UTF-8, Wikipedia
  • [12] Sur quoi devrais-je régler mon lieu et quelles sont les implications de le faire?
  • [13] ISO 639-1, Wikipedia
  • [14] ISO 639-2, Wikipedia
  • [15] ISO 3166, Wikipedia
  • [16] Fichiers de description du jeu de caractères
  • [17] Locale, Ubuntu Wiki
  • [19] Package de debian local
  • [20] Projet de collaborateurs