Rencontre ConTeXt 2008, partie 3
5 minutes de gloire
Non utilisateur (encore) de ConTeXt. Espère régler avec ConTeXt des problèmes rencontrés en LaTeX (utilisé depuis 10 ans). Trouve TeX bizarre en tant que langage de programmation, espère en Lua.## Norbert Preining : l’installateur TeX Live 2008
Non utilisateur, quoique que mainteneur sur Debian…
Pas de présentation structurée, mais une jolie présentation interactive. Tout se passe bien, ce qui est rassurant à quelques jours de la sortie de TeX Live. Pas trop de notes, car je mets au propre mes notes d’hier et ce matin, et que je ferai de toutes façon vraisemblablement un billet séparé sur TeX Live 2008 prochainement.
Tutoriel ConTeXt
Sources d’info
- Générales
- - http://www.pragma-ade.com/show-man-1.htm (attention, plusieurs pages) - http://wiki.contextgarden.net/Main_Page - http://texshow.contextgarden.net
- Modules
- http://groups.foundry.supelec.fr/modules
Installation
Cf les séances de ce matin : COnTeXt minimals, TeXLive (mais MkIV à finir de configurer manuellement, une page y est consacrée sur le wiki ConTeXt). Conseils divers sur comment régler son environnement pour les minimals, que je ne reproduis pas (je trouve que les minimals mériteraient une meilleure installation et cohabotation, cf la conf de ce matin sur l’installateur Mac.)
Pour tester son installation, le fichier minimal est :
\starttext Hello, World! \stoptext |
On le lance avec au choix context hello
(MkIV, LuaTeX), ou texexex -xtx
hello
(XeTeX), etc. Ça doit produire un pdf. Pour les vrais documents, des
éditeurs recommandes sont les classiques, plus Scite, (Windows/Linux) pour
lequel un mode ConTeXt très bien fait semble exister.
Les bases
\enableregime[utf8] % encodage (inutile pour MkIV, qui utilise utf8 par défaut) %\enableregime[windows} \mainlanguage[de] % prend soin des césures mais pas de la miseen page \starttext ... \stoptext |
Valeurs par défaut :
- papier A4 (réglable dans tlmgr sous TeX LIve 2008, ndlr) ;
- marges latérales 30mm, verticales 25mm, en-tête et pied de page 20mm ;
- utiliser \showlayout
pour le voir.
ConTeXt cherche les fichiers dans le répertoire courant, et dans le répertoire
parent. On peut régler l’emplacement des figures avec
\setupexternalfigures[directory=~/path/to/figures]
. On inclut des fichiers
avec input fichier
(sans accolades).
La commande \frame
et l’environnement framedtext
est un bon exemple des
possibilités de configuration de ConTeXt. (Ndlr : l’environnement est très
pratique pour encadrer du texte verbatim sans effort, alors que c’est douloureux
et manuel en LaTeX.)
\framed[width=.5\textwidth, offset=15pt, frame=on]{Welcome to Bohinj!} |
Les volontaires se voient remettre un livret d’exercices imprimé pour poursuivre… Pause café d’abord pour que tout le monde finisse de configurer une installation potable.
Aller un peu plus loin
Les thèmes abordés incluent : modèle de page (\showlayout
ou \ShowLayout
du
module layout (plus visuel)) et réglage des dimensions (\setuplayout
),
taille du papier (\setuppapersize
et éventuellement \definepapersize
), page
spéciale (de titre, colophon, etc.) avec \startstandardmakeup
et
\setupmakeup
.
- La commande/environnement
\frame
: c’est un ingrédient de base pour beaucoup - de chose et pas seulement pour encadrer. Repris par beaucoup d’environnement,
- donc ses options sont souvent disponibles pour d’autres environnements. Conseil
- regarder les exemples la plupart des noms d’options parlent d’eux-même. Voire
aussi
\setupframedtexts
,\defineframed
, avec une notion d’héritage. Commeframe
n’autorise pas les coupures de pages, voire aussitextbackgrounds
qui y ressemble mais les autorise (sous certaines conditions)
Suggestion d’exercice : prendre les exemples de pages de titre sur la page LaTeX de Vincent Zoonekynd et essayer de les reproduire.
Structure du document
Commandes de structure prédéfinies :
- \chapter
= \title
- \section
= \subject
- \subsection
= \subsubject
- \susubbsection
= \susubbsubject
Configurées avec \setupheads
(numérotation, espace autour, matériel autour,
alignement, coupures, mise en forme avec une commande perso) pour tous d’un
coup, ou \setuphead[niveau]
individuellement. Possibilité de définir ses
niveaux de titre avec \definehead
.
Pour les gros documents :
- \startfrontmatter
… \stopfrontmatter
- \startbodymatter
… \stopbodymatter
- \startbackmatter
… \stopbackmatter
- \startappendices
… \stopappendices
Personnalisés avec \setupsectionblocks
globalement, ou \setupsectionblosk
individuellement. On peut aussi en définir avec… (faux suspense….)
\definesectionblock
(sans rire).
[Ici il y a des trucs avec des \v!
et \c!
que je ne comprends pas trop.]
Je ne note pas la suite, pourtant tout aussi intéressante, car je suis trop fatigué pour noter et écouter en même temps… Le tout donne l’impression d’une interface très cohérente, à la syntaxe naturelle, et suffisamment puissante pour tout configurer avec autant de souplesse sinon plus que n’en fournissent les extensions LaTeX classiques titlesec, fancyhdr, geometry, enumitem, etc. (À la pause café, quelqu’un faisait remarquer que le classe memoir se rapproche pas mal de ConTeXt en ce qu’elle inclut les extensions nécessaires pour configurer un minimum).
Bref, un tuto qui donne envie (et il y avait du matériel pour bien plus que 3h, on est inondés d’informations). La partie 2 a lieu dimanche.
Je suis un peu perdu sur le programme, j’arrête donc ce billet ici en attendant de voir, on part donc sur un rythme de trois billets par jours : chers lecteurs, accrochez-vous !