Aller au contenu

ConTeXt/Apropos

Un livre de Wikilivres.

 Page précédente : Qu'est-ce que ConTeXt ?

Part. I, ch. 1  •  Avant-Propos  •  Sommaire

Page suivante : Pourquoi ConTeXt n'est pas LATEX 


ConTeXt

Partie I : Premiers pas
Chapitre 1 : Avant-Propos


Avant-propos
Pourquoi ConTeXt, et pourquoi ce wikilivre ?

Logo de ConTeXt
Logo de ConTeXt

ConTeXt est un système de composition de documents né dans les années 1990 au sein de la société néerlandaise Pragma ADE. Son développement, conduit principalement par Hans Hagen et ses collègues, s’appuie sur une longue expérience de la typographie professionnelle et de la production documentaire automatisée.

Dès l’origine, ConTeXt a été conçu comme un ensemble cohérent : commandes unifiées, logique homogène, grande flexibilité et une attention constante à la qualité du rendu.

Objectifs Objectifs de cette section

D'abord un peu d'histoire ...

  • 1. situer ConTeXt dans la famille des systèmes issus de TeX.
  • 2. présenter sa philosophie générale et ses versions modernes (MkIV, LMTX)
  • 3. expliquer pourquoi ce wikilivre a été rédigé, et à qui il s’adresse
  • 4. proposer un premier test simple pour vérifier que l’installation fonctionne.

ConTeXt dans la famille TeX

[modifier | modifier le wikicode]

ConTeXt s’inscrit dans l’histoire plus large de TeX, système typographique conçu par Donald Knuth dans les années 1970 pour offrir une composition stable, rigoureuse et reproductible par ordinateur.

L’apparition de LATEX dans les années 1980 a popularisé l’usage de TeX dans les disciplines scientifiques — mathématiques, physique, informatique, biologie — grâce à une approche fondée sur les structures logiques du document. Mais la multiplicité et l’hétérogénéité des packages, parfois redondants ou incompatibles, ont rendu difficile la cohésion stylistique, surtout pour les documents complexes ou de grande ampleur.

ConTeXt est né en partie du désir de dépasser ces limitations : proposer un environnement complet, intégré et homogène, où les fonctionnalités essentielles sont conçues de manière unifiée plutôt qu’ajoutées en couches successives.

Versions modernes de ConTeXt : MkIV et LMTX

[modifier | modifier le wikicode]

L’évolution de ConTeXt a suivi celle des moteurs TeX :

  • ConTeXt MkIV repose sur LuaTeX et a été, pendant de nombreuses années, la version de référence.
  • Il a permis d’introduire massivement Lua, l’Unicode natif, une meilleure gestion des polices et des fichiers structurés (XML, etc.).
  • ConTeXt LMTX s’appuie sur LuaMetaTeX, un moteur plus récent, plus rapide et plus compact, développé spécifiquement pour ConTeXt.
  • Il apporte une meilleure gestion de la mémoire, une optimisation de la compilation et une intégration encore plus étroite entre Lua et le cœur du moteur.

Dans ce wikilivre :

  • la plupart des exemples sont pensés pour LMTX, qui est aujourd’hui la version active et la plus simple à installer ;
  • de nombreux exemples fonctionnent aussi en MkIV, mais certains détails (modules, scripts, performances) peuvent différer.

Les chapitres consacrés à l’installation et à la compilation signalent, lorsque c’est nécessaire, les différences de comportement entre MkIV et LMTX.

Note technique : commandes context et moteurs

Dans la pratique, le comportement de ConTeXt dépend aussi de la commande utilisée pour lancer la compilation :

  • sur les anciennes installations, on trouve encore des appels du type : context --luatex monfichier.tex (ou l’historique texexec) ;
  • dans les installations LMTX récentes, la commande standard est simplement : context monfichier.tex, qui appelle directement LuaMetaTeX.

Selon la façon dont ConTeXt est installé et configuré dans le PATH, la commande context peut donc invoquer MkIV ou LMTX, ce qui explique certains comportements différents (messages, performances, modules disponibles).

Les chapitres « Préalables » et « Installation » détaillent ces situations et proposent des commandes explicites pour vérifier quel moteur est réellement utilisé.

Pourquoi ne pas utiliser simplement un traitement de texte ?

[modifier | modifier le wikicode]

Les traitements de texte courants (Word, LibreOffice, etc.) restent pratiques pour la rédaction simple. Leur logique WYSIWYG, qui mêle écriture et mise en forme, suffit pour les documents courts, mais atteint vite ses limites pour les textes structurés :

  • gestion fragile des documents volumineux ;
  • difficultés avec les références croisées et les numérotations automatiques ;
  • gestion laborieuse des multiples niveaux de notes, bibliographies et index ;
  • microtypographie souvent approximative ;
  • on ne peut pas faire de mise en page rigoureuse d'un document complexe — plusieurs centaines de pages avec des illustrations — seulement en « cliquant » !

À l’inverse, les systèmes issus de TeX — et ConTeXt en particulier — séparent clairement structure et apparence. Ils permettent de produire des documents cohérents, reproductibles et typographiquement précis, adaptés aussi bien aux mises en page simples qu’aux apparats critiques, éditions bilingues ou documents XML-centrés.

Premier test : votre premier document ConTeXt

[modifier | modifier le wikicode]

Astuce Astuce : un premier test pour vérifier votre installation

Créez un fichier nommé test-context.tex, contenant :

\starttext
Bonjour ConTeXt !
\stoptext

Enregistrez ce fichier dans un dossier de travail (par exemple Documents/ConTeXt/essais), puis, dans un terminal ou une invite de commandes ouverte dans ce dossier, lancez :

context test-context.tex

Si tout se passe bien, un fichier test-context.pdf apparaît dans le même dossier. S’il y a un message d’erreur, reportez-vous aux pages « Préalables » et aux chapitres consacrés au dépannage, qui expliquent comment interpréter les messages les plus fréquents.

La communauté ConTeXt et ce wikilivre

[modifier | modifier le wikicode]

Le projet ConTeXt s’est développé grâce à une communauté active réunissant utilisateurs, chercheurs, éditeurs, enseignants et programmeurs.

Les échanges se poursuivent aujourd’hui sur la liste de diffusion officielle : https://mailman.ntg.nl/mailman/listinfo/ntg-context où chacun peut exposer une difficulté technique ou demander conseil — après avoir consulté la documentation préalable et en fournissant un MWE (Minimal Working Example), règle d’usage que les contributeurs apprécient.

Dans le même esprit, ce wikilivre s’efforce :

  • de proposer des exemples réellement reproductibles, testables sans d'autres efforts que d'arriver à produire un document bien formé ;
  • d’appuyer les méthodes techniques par des illustrations et des mises en page complètes ;
  • d’introduire progressivement les possibilités les plus avancées (colonnes complexes, encadrés graphiques, tableaux structurés, éditions bilingues, appareils critiques, documents XML-centrés, etc.).

Ambition et limites de ce manuel

[modifier | modifier le wikicode]

Ce wikilivre ne prétend pas remplacer la documentation officielle — principalement disponible en anglais — ni couvrir tous les usages possibles de ConTeXt.

Son but est d’offrir au lecteur francophone un parcours progressif :

  • commencer par des exemples courts, immédiatement testables ;
  • avancer vers des cas d’usage plus complexes (documents longs, index, bibliographie, front/backmatter, automatisation) ;
  • donner des repères pour explorer ensuite la documentation officielle et les modules plus spécialisés.

En revanche, ce manuel ne vise pas à traiter en détail :

  • le rendu avancé d’équations mathématiques complexes ;
  • la mise en page scientifique très spécialisée (physique, chimie, mathématiques difficiles) ;
  • les environnements et packages LaTeX spécifiques à ces disciplines.

Pour ces usages, l’écosystème LATEX et ses extensions dédiées restent l’outil le plus adapté.

En guise d’appel

[modifier | modifier le wikicode]

Ce wikilivre espère proposer un chemin d’apprentissage fidèle à l’esprit de ConTeXt : rigoureux, inventif et ouvert.

Vous êtes invités à explorer les chapitres, à tester les exemples, à adapter les modèles à vos propres besoins — et, si vous le souhaitez, à contribuer en retour, en partageant des corrections, des remarques ou de nouveaux exemples.

Remerciements & Ouverture

L'auteur à l'initiative de ce manuel remercie l'ensemble des contributeurs de la liste de diffusion ntg-context <ntg-context@ntg.nl>, à laquelle vous pouvez participer en passant par la page Communauté du Jardin de ConTeXt (page d'accueil de ConTeXt Garden). D'abord Pablo Rodriguez, qui a eu la patience de corriger les premiers pas d'initiation dans la longue phase d'apprentissage. Bien sûr l'infatigable Hans Hagen, dont la constance et la ténacité font de ConTeXt l'outil puissant qu'il est devenu. Henning Hraban Ramm <texml@fiee.net>, pour sa disponibilité à expliquer patiemment des choses pas toujours évidentes (et pour son extraordinaire manuel en allemand). Taco Hoekwater, Denir Maier, Wolfgang Schuster et Thomas A. Schmitz — pour son travail sur TEI-XML et ConTeXt. Et n'oublions pas les dizaines de contributeurs (comme Florent Michel) qui, à un degré ou un autre, ont éclairci tel ou tel point sur MetaPost ou autre.


The author of this manual would like to thank all contributors to the ntg-context <ntg-context@ntg.nl> mailing list, which you can join via the Community and web resources page of the ConTeXt Garden (ConTeXt Garden home page). First of all, Pablo Rodriguez, who had the patience to correct my first tentative steps in the long learning process. Of course, the tireless Hans Hagen, whose consistency and tenacity have made ConTeXt the powerful tool it has become. Henning Hraban Ramm <texml@fiee.net>, for his willingness to patiently explain things that are not always obvious (and for his extraordinary manual in German). Taco Hoekwater, Denir Maier, Wolfgang Schuster, and Thomas A. Schmitz, for his work on TEI-XML and ConTeXt. I must not forget the dozens of contributors who, to one degree or another, have clarified this or that point.