ConTeXt/Langues multiples et polices
← Page précédente : Tables et tableaux Modèle:Nav
Composer un document multilingue : stratégies et bonnes pratiques
[modifier | modifier le wikicode]ConTeXt, grâce à LuaTeX, peut composer des documents en de nombreuses langues : français, anglais, allemand, grec ancien, russe, hébreu, arabe, chinois, japonais, coréen (CJK). Cette page explique comment organiser un document multilingue, indiquer la langue des différents passages, composer des éditions bilingues, gérer les citations, les notes, les écritures de droite à gauche, et structurer proprement un projet complexe.
Objectifs de cette section :
- comprendre la différence entre « langue du texte » et « police utilisée » ;
- apprendre à indiquer correctement la langue d’un passage ;
- composer des documents bilingues linéaires ou en colonnes ;
- insérer des citations et notes multilingues ;
- composer de courts passages en hébreu ou arabe (RTL) au sein d’un document LTR ;
- structurer un projet multilingue de manière professionnelle.
📜 Note historique : écrire en plusieurs langues, de l’Antiquité à LuaTeX
La composition multilingue n’est pas née avec l’informatique. Les scribes de l’Antiquité, les moines médiévaux, les humanistes de la Renaissance et les savants modernes ont tous travaillé avec des textes où coexistaient plusieurs écritures : latin, grec, hébreu, arabe, syriaque, arménien, cyrillique, etc.
Avec l’imprimerie occidentale, les ateliers de typographie possédaient des fontes distinctes pour chaque alphabet : grec polytonique (héritier des éditions d’Alde Manuce), hébreu carré, caractères arabes adaptés aux contraintes mécaniques, variantes cyrilliques selon les nations.
Au XXe siècle, la photocomposition permit des pages mixtes, mais souvent au prix d’un travail complexe et artisanal.
Aujourd’hui, LuaTeX et ConTeXt offrent, pour la première fois dans l’histoire de l’imprimerie, un moteur entièrement Unicode capable de composer correctement presque toutes les écritures du monde, en appliquant les règles typographiques sophistiquées de chaque script (ligatures, contextualisation, shaping). La composition multilingue devient ainsi non seulement possible, mais élégante, cohérente et automatisable.
1. Définir la langue principale du document
[modifier | modifier le wikicode]La première étape consiste à fixer une langue principale : elle détermine la césure, les règles locales (espaces, ponctuation), et certaines conventions typographiques.
\mainlanguage[fr] % document rédigé principalement en français
ou :
\mainlanguage[en]
2. Changer ponctuellement de langue
[modifier | modifier le wikicode]Pour des citations et fragments dans une autre langue :
Ceci est un texte français.
Une phrase en anglais :
{\language[en] "This is an English sentence."}
Une phrase en allemand :
{\language[de] Dies ist ein deutscher Satz.}
Changer de langue influe sur :
- la césure ;
- la ponctuation locale ;
- certains réglages typographiques.
3. Document bilingue linéaire (français → anglais)
[modifier | modifier le wikicode]\mainlanguage[fr]
\starttext
\section{Exemple bilingue}
{\language[fr]
Ce paragraphe est rédigé en français.}
\blank[medium]
{\language[en]
This paragraph is written in English.}
\stoptext
4. Document bilingue en colonnes
[modifier | modifier le wikicode]Utile pour éditions scolaires, comparatives ou philologiques simples.
\setupcolumns[n=2, distance=8mm]
\startcolumns
{\language[fr] ... texte français ...}
\column
{\language[en] ... English text ...}
\stopcolumns
💡 Astuce : toutes les mises en page bilingues stables devraient être placées dans un fichier d’environnement pour éviter les répétitions et conserver une logique claire.
5. Notes multilingues
[modifier | modifier le wikicode]Texte principal en français\footnote{%
{\language[en] J. Doe, "Introduction to Typesetting", 2020.}
}.
Les notes peuvent aussi contenir plusieurs langues (allemand, latin, grec, etc.).
6. Mélanger écritures LTR et RTL (hébreu, arabe)
[modifier | modifier le wikicode]\definefontfamily[mainface][serif][Libertinus Serif]
\definefontfamily[arabface][serif][Amiri]
Texte français.
{\switchtobodyfont[arabface]\righttoleft السلام عليكم ورحمة الله وبركاته}
\stoptext
⚠️ Attention : les textes longs en arabe ou hébreu avec notes, colonnes ou tableaux nécessitent des réglages spécifiques (direction globale, alignement, index). Ce chapitre présente uniquement les bases.
7. Organisation professionnelle d’un projet multilingue
[modifier | modifier le wikicode]Dans un document complexe (ouvrage ou étude scientifique), la bonne pratique consiste à :
- définir les polices et scripts dans un environnement ;
- définir des macros de citations par langue :
\EN{...},\DE{...},\EL{...}; - répartir le contenu dans plusieurs
\component.
Exemple d’environnement :
% env/env_multilingue.mkiv
\mainlanguage[fr]
\definefontfamily[mainface][serif][Libertinus Serif]
\definefallbackfamily[mainface][serif][GFS Didot][range=greek]
\definefontfamily[arabface][serif][Amiri]
\setupbodyfont[mainface, 11pt]
\def\EN#1{{\language[en]#1}}
\def\DE#1{{\language[de]#1}}
\def\EL#1{{\language[el]#1}}
8. Exemple complet : latin + grec ancien + petite note d’apparat
[modifier | modifier le wikicode]\definefontfamily[mainface][serif][Libertinus Serif]
\definefallbackfamily[mainface][serif][GFS Didot][range=greek]
\setupbodyfont[mainface, 11pt]
\mainlanguage[la]
\starttext
\section{Exemple minimal d’édition bilingue}
% --- Texte latin principal ---
\language[la]
In principio erat Verbum, et Verbum erat apud Deum.\footnote{%
Apparatus:
{\language[el] Ἐν ἀρχῇ} lectio cod. A,
{\language[la] In principio} lectio Vulg.
}
% --- Parallèle grec ---
\blank[medium]
\language[el]
Ἐν ἀρχῇ ἦν ὁ Λόγος,
καὶ ὁ Λόγος ἦν πρὸς τὸν Θεόν.
% --- Retour au latin ---
\blank[medium]
\language[la]
Hoc exemplum ostendit quomodo textus latinus cum textu graeco
et minimo apparatu critico componi possit in ConTeXt.
\stoptext
Cet exemple présente :
- un texte latin et sa version grecque polytonique ;
- une note d’apparat simple (lectio cod. A / lectio Vulg.) ;
- l’usage de
\languageet de polices appropriées ; - un découpage minimal typique des éditions savantes.
Voir aussi
[modifier | modifier le wikicode]- Polices pour les langues non romanes
- Polices et familles de polices
- Styles typographiques
- Organisation d’un document long
- ConTeXt