TeXworks est un éditeur LaTeX léger et multiplateforme fourni avec TeX Live et MiKTeX. Il a été construit délibérément à l'image de TeXShop, l'éditeur populaire macOS, pour « abaisser la barrière d'entrée dans le monde TeX » — ce qui en fait un excellent premier éditeur. Cette page explique la configuration des outils de composition, le commentaire du fichier racine qui relie les projets multi-fichiers et SyncTeX, qui relie la source à l'aperçu PDF intégré.
Qu'est-ce que TeXworks
TeXworks a été écrit par Jonathan Kew — qui a également créé XeTeX. Trouvant les environnements intégrés orientés Windows de l'époque trop élaborés et intimidants pour les nouveaux arrivants, il les a délibérément modélisés sur TeXShop de Richard Koch, l'éditeur macOS très apprécié, apportant également sa sensation épurée à Windows et Linux. L'objectif était explicite : abaisser la barrière d'entrée dans le monde TeX. Plutôt que de rivaliser sur les fonctionnalités, il est conçu pour réduire le nombre d’endroits où un débutant peut se perdre.
Son plus grand avantage pratique est qu'il n'y a rien de plus à installer : il est livré avec TeX Live et MiKTeX, donc l'installation d'une distribution vous donne également l'éditeur. Il est construit sur la boîte à outils Qt GUI et se comporte de la même manière sur Windows, macOS et Linux. L'éditeur lui-même est compatible Unicode (UTF-8 par défaut) et fournit un ensemble d'outils modeste et bien choisi : achèvement des commandes, aide à la saisie et vérification orthographique. Lorsque vous dépassez les valeurs par défaut, les plug-ins de script Lua et Python facultatifs (activés au moment de la construction) vous permettent d'utiliser vos propres commandes.
Le revers de cette simplicité est que TeXworks n’est pas conçu pour des constructions élaborées en plusieurs étapes ou une gestion de projet lourde – de tels flux de travail sont délibérément laissés de côté car trop avancés pour un débutant. Lorsque votre configuration devient véritablement complexe, les éditeurs comme TeXstudio ou VS Code (LaTeX Workshop) sont les prochaines étapes naturelles. Mais pour compiler votre tout premier document, TeXworks est à peu près le chemin le plus court qui soit.
Configuration des outils de composition
Au cœur de TeXworks se trouve la liste déroulante de composition à gauche de la barre d'outils. Vous choisissez le moteur à exécuter (pdfLaTeX, LuaLaTeX, XeLaTeX, ConTeXt, etc.) et appuyez sur le triangle vert à côté de lui (ou Ctrl/Cmd-T) ; TeXworks compile le document actuel et ouvre l'aperçu PDF. Il est livré avec un ensemble d'outils déjà configurés — pdfLaTeX, XeLaTeX, ConTeXt (MkII), ainsi que des assistants tels que BibTeX et MakeIndex.
Vous pouvez ajouter vos propres entrées à cette liste déroulante. Ouvrez Modifier → Préférences → l'onglet Composition ; la liste Outils de traitement en bas contient les outils, avec + pour en ajouter un, - pour supprimer et Edit... pour modifier. Chaque outil a un Nom (l'étiquette affichée dans la liste déroulante), un Programme (la commande à exécuter), des Arguments (un par ligne) et une case à cocher Afficher PDF après l'exécution. Les arguments acceptent des variables : $fullname se développe jusqu'au fichier en cours de traitement et $synctexoption vers l'option SyncTeX (abordée ci-dessous).
À titre d'exemple, voici un outil pdfLaTeX qui confie la construction à latexmk. Étant donné que latexmk décide lui-même du nombre de passes nécessaires pour résoudre les références croisées et les bibliographies, le côté TeXworks reste plus simple. Définissez le programme sur latexmk, entrez les arguments un par ligne comme ci-dessous et cochez Afficher PDF après l'exécution.
-e
$pdflatex=q/pdflatex $synctexoption %O %S/
-pdf
$fullnamePour le japonais, la méthode habituelle consiste à composer avec upLaTeX et à transformer le résultat en PDF avec dvipdfmx. Le TeXworks fourni avec TeX Live inclut déjà des outils japonais, mais si vous en ajoutez un vous-même, l'approche la plus simple est ptex2pdf, qui regroupe les deux étapes. Définissez Program sur ptex2pdf et les arguments comme suit (-u sélectionne upLaTeX, -l le format LaTeX et -ot transmet des options supplémentaires à TeX).
-l
-u
-ot
-kanji=utf8 -no-guess-input-enc $synctexoption
$fullnameDéfinissez celui que vous utilisez le plus comme moteur de composition par défaut en haut des préférences de composition, et les documents nouvellement ouverts l'utiliseront. Lorsque vous avez besoin d'un moteur différent pour un fichier particulier, le commentaire magique de la section suivante le remplace.
Le fichier racine et les commentaires magiques
Au fur et à mesure qu'un document s'agrandit, une solution courante consiste à le diviser en fichiers par chapitre extraits d'un parent avec \input ou \include. Le problème est ce qui se produit lorsque vous composez alors qu'un fichier enfant (par exemple chapter1.tex) est ouvert : l'enfant n'a ni \documentclass ni \begin{document}, il ne peut donc pas se compiler tout seul.
Le correctif est un commentaire magique. Pour TeX, cela ressemble à des commentaires ordinaires (tout ce qui suit %), mais TeXworks lit certaines lignes en haut d'un fichier et modifie son comportement en conséquence. Placez % !TeX root = ... en haut d'un fichier enfant pointant vers le parent, et la composition pendant que vous modifiez l'enfant oblige TeXworks compiler le fichier parent (racine) à la place. Le chemin est écrit par rapport au fichier enfant.
% !TeX root = main.tex
\chapter{はじめに}
本文をここに書きます。Il y a d'autres commentaires magiques. % !TeX program = ... choisit le moteur pour ce document — la valeur est le nom de l'outil que vous avez configuré dans les Préférences, pas le nom de fichier de l'exécutable. Mettez-le en haut d'un document japonais et le bon moteur est utilisé même si vous oubliez de changer de liste déroulante. % !TeX encoding = ... déclare le codage des caractères du fichier ; puisque TeXworks est par défaut UTF-8, vous n'en avez généralement pas besoin si vous écrivez en UTF-8. (% !TeX program accepte également l'ancienne orthographe % !TeX TS-program.)
% !TeX program = upLaTeX (ptex2pdf)
% !TeX encoding = UTF-8
\documentclass{ujarticle}
\begin{document}
\input{chapter1}
\end{document}D'une page à un projet fractionné
TeXworks est intentionnellement léger, il est donc préférable de commencer avec un seul fichier .tex. Une fois que cela produit un PDF, divisez les chapitres en fichiers enfants et ajoutez-y des directives racine ; le projet peut grandir sans compliquer la configuration.
- Commencez par seulement
main.tex: titre, en-tête de section et corps court. - Choisissez une entrée dans la liste déroulante de composition et confirmez qu'elle produit un PDF à chaque fois.
- Après avoir divisé les chapitres, placez
% !TeX root = main.texen haut des fichiers enfants. - Pour les documents japonais, conservez la cohérence de la ligne
% !TeX program = ...et de la stratégie UTF-8 dans tout le projet.
Utiliser délibérément le journal et les auxiliaires
Parce que TeXworks reste visuellement léger, c'est un bon éditeur pour apprendre à lire le journal. Les messages après la composition vous en disent plus que si un PDF a été produit : des références non résolues, des packages manquants et des échecs d'inclusion d'images y font tous surface. Traitez les fichiers auxiliaires comme un état utile et non comme un encombrement à supprimer constamment ; nettoyez-les uniquement lorsque l'état de construction semble obsolète.
- Si les références restent
??, composez-les plusieurs fois avec le même outil afin que.auxsoit mis à jour. - Supprimez
.auxou.tocuniquement après des modifications majeures de la table des matières ou de la bibliographie, puis reconstruisez à partir de zéro. - Lorsque les images n'apparaissent pas, comparez le nom de fichier dans le journal avec le chemin réel. Évitez les espaces et les caractères japonais dans les noms de fichiers.
- Si la configuration devient trop élaborée, déplacez la logique de construction dans
.latexmkrcou envisagez un éditeur plus lourd au lieu de tout forcer dans TeXworks.
SyncTeX (recherche avant et arrière)
TeXworks dispose d'un aperçu PDF intégré basé sur Qt et la bibliothèque Poppler, il n'est donc pas nécessaire de passer à un visualiseur externe comme Acrobat : vous passez de l'édition à la vérification dans la même fenêtre. SyncTeX lie ensuite les positions dans la source et l'aperçu dans les deux sens ; c'est le mécanisme de synchronisation développé par Jérôme Laurens et d'autres.
Son utilisation est intuitive. Pour passer d'un endroit de la source à l'endroit correspondant dans le PDF (recherche avant), Ctrl/Cmd-click dans la source. Pour aller dans l'autre sens, du PDF remonte à la ligne correspondante dans la source (recherche inverse), Ctrl/Cmd-click dans l'aperçu. Pouvoir sauter instantanément entre « où se trouve ce paragraphe dans le PDF » et « de quelle ligne source s'agit-il » rend la révision beaucoup plus fluide.
Heureusement, cela fonctionne immédiatement. SyncTeX construit son mappage en émettant une table de recherche .synctex.gz au moment de la compilation, et les outils TeXworks standard l'activent automatiquement en passant l'équivalent de --synctex=1 (le $synctexoption de la section précédente). Dans vos propres outils, incluez $synctexoption dans les arguments et la synchronisation fonctionne de la même manière.