2. TeXmacs : Fonctions avancées
Pour être rapide en cours et en examen sur TeXmacs, vous devez exploiter le plein potentiel de l'application. Pour cela, vous devez vous intéresser (au moins un peu) au style des documents et aux macros de TeXmacs.
Personnaliser le style de vos documents
TeXmacs met en forme automatiquement tous les élements de mise en page de votre document : marges, taille et format des titres, format de tous les environnements (Théorèmes, Remarques, Exercices...). Tous ces paramètres sont définis par le style du document (par défaut, c'est le style "générique").
Si des éléments de mise en page ne vous plaisent pas, vous pouvez les modifier pour chaque document individuel, mais cela sera très fastidieux et répétitif (voir ici pour savoir comment faire). Je vous conseille très fortement de régler ces paramètres pour tous les documents, en créant votre propre style de document à l'aide d'un fichier style. Là, c'est la partie la moins intuitive de TeXmacs...
Modifier excessivement le style de vos documents est difficile et souvent infructueux. Le style de base de TeXmacs est largement satisfaisant, ne perdez pas de temps à chercher la perfection.
En revanche, il est très important de se créer son propre fichier style pour gagner du temps par la suite, notamment pour :
- Définir la taille des marges par défaut,
- Définir la taille de la police par défaut,
- Ajouter des en-têtes automatiques à vos documents,
- Utiliser les macros de TeXmacs (très très utile).
Lisez donc quand même la suite ! Ne vous entêtez juste pas à vouloir modifier absolument des détails de mis en page...
Créer un fichier style
Les fichiers de style ont pour extension ".ts" (".tm" pour les fichiers TeXmacs classiques). Ils sont modifiables dans l'application TeXmacs. Pour créer votre fichier de style vierge, créez un fichier TeXmacs vide, cliquez sur Document → Style → Source, puis enregistrez-le avec une extension ".ts".
Les fichiers de style de base sont stockés dans le répertoire C:\Program Files (x86)\TeXmacs\styles de votre ordinateur (sous Winddows...). Pour que votre style perso soit disponible dans l'application TeXmacs, il vous suffit de copier le fichier ".ts" associé dans ce répertoire. Attention : pour que cela fonctionne, vous devez modifier les propriétés du dossier parent "styles" dans l'explorateur de fichiers Windows. Faîtes un clic droit sur le dossier "styles", sélectionnez "Propriétés", puis cliquez sur l'onglet "Sécurité", le bouton "Modifier", et cochez toutes les cases de la colonne "Autoriser".
Écrire un fichier style
Un principe fondamental est à retenir : les fichiers de styles sont écrits dans un langage à part, où tout y est écrit sous forme de balise. Les balises sont des éléments entre crochets.
Prennons un exemple : <use-package|generic|french> est une balise. Le premier élément d'une balise (ici "use-package") désigne toujours le type de balise (celui qui dit ce que la balise fait). Tous les éléments après sont les paramètres que prend en compte la balise (ici "generic" et "french" sont les deux "packages" (éléments additionnels) importés par la balise pour qu'ils puissent être utilisés dans les documents).
Pour écrire correctement cette balise, vous devez taper "\use-package" puis Entrée puis taper "generic" suivi de Échap+flèche droite, puis "french" et enfin Entrée. Cette méthode de rédaction est valable pour toutes les balises.
Si vous avez un doute sur ce que fait une balise, mettez votre curseur dedans et cliquez sur l'icône "?" de la troisième ligne d'icônes de la barre de menus.
À vous de jouer : définissez le style de vos documents
Je vais vous expliquer comment faire certaines modifications utiles à partir de mes propres fichiers styles. C'est plus simple de comprendre à partir d'un exemple, et de modifier cet exemple à son goût, que de partir de zéro.
Commencez par télécharger mes fichiers styles, puis placez-les dans le dossier C:\Program Files (x86)\TeXmacs\styles :
Je vais vous expliquer à quoi sert chacune des lignes de ces documents, pour que vous puissiez les modifier selon vos envies.
Documents.ts
Ouvrez d'abord "Document.ts".
- <use-package|generic|french> : indique que ce fichier style se base sur le style de base de TeXmacs (générique). Comme ça, vous n'avez qu'à préciser dans votre fichier style ce que vous voulez modifier par rapport à ce style de base, plutôt que devoir repréciser la mise en forme de tous les environnements qui existent.
- <assign|font-base-size|11> : définir la taille de base de la police sur 11.
- <assign|full-screen-mode|true> : ouvre par défaut les documents avec une fenêtre maximisée.
- <assign|page-bot|25mm> : définit la marge inférieure des pages sur 25mm (idem pour page-even, page-odd, page-right, page-top).
- <assign|page-medium|paper> : définit l'affichage par défaut sur "papier" et non "papyrus".
- <assign|page-screen-margin|false> : définit l'affichage des marges à "comme sur le papier".
- <assign|render-theorem|...> : rend droite la police des théorèmes (et donc aussi celle des propositions, définitions, lemmes dont le style est basé sur celui des théorèmes). Elle est italique par défaut. Pour garder la police en italique, supprimer la balise dans sa totalité et enregistrer le fichier style.
- <assign|render-exercise|...> : les exercices sont maintenant affichés comme les remarques (taille de police normale et sans indentation). Pour remettre comme par défaut, idem (supprimer la balise).
- Toutes les balises de <assign|theorem-padding...> à <assign|render-proof...> servent à ce que les théorèmes soient encadrés. Je trouve que cela augmente drastiquement la lisibilité des cours. Si vous n'en voulez pas, supprimez toutes ces balises.
- <assign|eqnarray*|...> : cette balise est un peu plus compliquée à comprendre. Elle sert à modifier l'environnement "Multiple equations" ou "Formules alignées" (raccourci : Alt + &). Souvent, en maths, lorsqu'un calcul compliqué se fait sur plusieurs lignes, on aime écrire dans la marge à droite l'argument qui nous autorise à passer d'une ligne à la suivante. Cette balise vous permet d'insérer une 4ème colonne à droite de vos calculs pour jusitifier les étapes de vos calculs, grâce au raccourci Échap + flèche de droite. Essayez-le !
- Toutes les balises de la suite du document servent à définir les macros que j'utilise au quotidien : tout est expliqué plus bas sur cette page.
Je vous encourage utiliser ce fichier style (au moins au début) pour vos propres documents. Pour vous l'approprier, modifiez les valeurs numériques des balises déjà présentes dans ce fichier ou supprimez les balises qui produisent un effet que vous n'appréciez pas.
"Document.ts" est mon style de base. Dans tous mes documents, je veux avoir la même taille de police, les mêmes marges, le même rendu des théorèmes/exercices et je veux utiliser mes macros. Mais ensuite, en fonction de si je tape un cours, un TD, une fiche ou un examen, je veux des détails de mise en page supplémentaires et différents dans chaque cas. C'est à ça que servent les autres fichiers styles que vous avez téléchargé avec "Documents.ts"
Cours.ts
Le style "Cours.ts" me sert... à prendre mes cours.
- <use-package|Document|old-lenghts> : indique que ce fichier de style est basé sur le style "Document.ts" (cf ce que j'explique plus haut), et il utilise le package "old-lenghts" qui permet de numéroter tous les environnements en précisant le n° de la section actuelle devant le n° de l'environnement en lui-même. Pour ne pas utiliser cette numérotation, supprimer "old-lenghts" de la balise.
- <assign|header-primary|...> : ajoute des en-têtes sur les pages paires avec le titre de la section en cours.
- <assign|header-title|...>: ajoute des en-têtes sur les pages paires avec le titre du document.
- <assign|display-section|...> : affiche les numéros des sections en chiffres romains. Pour ne pas le faire, supprimer la balise entière.
TD.ts
Le style "TD.ts" est exactement le même que "Cours.ts" sans la balise sur les chiffres romains.
Fiche.ts
- Toutes les balises sur la police (ici 10pt), les marges (17mm), l'affichage en plein écran... fonctionnent de la même manière que dans le style "Document.ts", donc pas besoin de vous les réexpliquer.
- <assign|page-orientation|portrait> : page en mode portrait...
- <assign|par-columns|2> : une page est constituée de 2 colonnes (permet d'avoir un document plus compact, pratique pour une fiche).
- <assign|display-section|...> : affiche les numéros des sections en chiffres romains (idem que les autres fichiers)
Examen.ts
Le style "Examen.ts" ne contient que des balises déjà expliquées.
Utilisez ces styles au quotidien !
Maintenant, dès que vous crééez un nouveau document, la première chose à faire est de définir le style de ce document. Au niveau de la troisième ligne d'icônes de la barre de menus en haut, cliquez sur "générique" puis sélectionnez un de vos styles personnalisés.
À vous de modifier ces styles selon vos envies, d'en créer de nouveaux...
Si vous cherchez à modifier un élément de mise en page supplémentaire à l'aide de votre fichier style :
- Commencez par trouver où il est défini par TeXmacs dans les fichiers ".ts" de l'application. En général, on trouve grâce au bouton "?" ou en fouillant dans les dossiers C:\Program Files (x86)\TeXmacs\styles et C:\Program Files (x86)\TeXmacs\packages.
- Ensuite, essayez d'altérer les balises de la bonne manière et testez votre modification en fermant/rouvrant un fichier ".tm" qui vous sert de test.
- Si vous avez réussi, copiez/collez la balise modifiée dans un de vos fichiers style perso (Document.ts par exemple) et annulez vos modifications du fichier ".ts" de base. En effet, les fichiers ".ts" de l'applications sont remis à zéro par les mises-à-jour, contrairement à vos styles persos. Seule la "dernière" version de la balise dans votre fichier style sera prise en compte.
Utiliser les macros de TeXmacs
Les macros TeXmacs, c'est quoi ?
Encore des macros ? Et oui, c'est vraiment la clé pour aller plus vite à l'ordinateur. Mais les macros de TeXmacs sont complètement différentes des macros de votre clavier programmable.
Les macros de TeXmacs servent à enregistrer une expression de TeXmacs assez compliquée (et donc longue à écrire sur TeXmacs), pour ensuite l'insérer où vous voulez dans votre document en quelques clics. Vous y verrez plus clair dans la vidéo ci-dessous.
Comment enregistrer une macro ?
Je me suis amusé à vous faire une petite vidéo de 5 minutes pour vous montrer comment créer votre première macro :
Pour récapituler :
- Commencez par écrire l'expression que vous voulez enregistrer (une formule, un tableau...) dans un document TeXmacs classique.
- Sélectionnez cette expression, puis cliquez sur Outils → Macros → Nouvelle macro.
- Entrez le nom que vous voulez donner à votre macro entre les deux crochets bleus. Préférez les noms simples (3 lettres max) car vous devrez l'écrire à chaque fois que vous voulez utiliser la macro.
- Ajoutez des paramètres de votre macro juste à droite de son nom. Quand votre curseur est à l'endroit où on précise le nom de la macro, utilisez Échap + [flèche de droite] pour ajouter un paramètre. Le nom que vous donnez à vos paramètres n'a pas d'importance et n'apparaîtra pas quand vous utiliserez votre macro (je les nomme souvent a, b, c...).
- Positionnez les paramètres dans votre macro, aux endroits où vous voulez pouvoir écrire lorsque vous l'utiliserez. Pour insérer un paramètre, écrivez \[nom du paramètre] + entrée.
- Enregistrez la macro.
- Pour utiliser votre macro, écrivez \[nom de votre macro] + entrée dans votre document. Vous pouvez alors écrire librement dans tous les champs où vous avez mis des paramètres.
- Si vous ne faîtes rien de plus, votre macro ne sera utilisable que dans le document actuel (celui où elle a été créée). Pour l'utiliser dans tous vos document, vous devez afficher sa définition (cliquez sur le menu Outils → Macro → Editer la préambule), et copier/coller cette définition dans votre fichier style de base ("Document.ts" par exemple), et enregistrer le fichier style.
Vous pouvez maintenant utiliser toutes vos macros dans tous les fichiers utilisant le style "Document" (ou un style rattaché comme "Cours", "TD", "Fiche" etc.).
Remarque : je vous ai fourni mes fichiers style persos, qui contiennent beaucoup de macros. Ces macros sont définies dans le fichier "Document.ts". Le fichier "liste des raccourcis utiles" téléchargeable ici explique l'utilité de chaque macro en page 6.
Je vous conseille de toutes les essayer : libre à vous d'utiliser celles qui vous plaisent et d'ajouter les vôtres dans le fichier "Document.ts" !
Aller plus loin avec TeXmacs
TeXmacs est la meilleure application que j'aie jamais utilisé. Elle a sauvé ma prépa et mes concours.
Cette application trop peu connue a été lancée en 1998 et continue d'être améliorée à ce jour par une communauté très restreinte de bénévoles !
The Jolly Writer
Je vous encourage d'abord à acheter le livre The Jolly Writer. C'est un guide complet et très précis de toutes les fonctionnalités de TeXmacs, écrit par son développeur principal : Joris van der Hoeven (directeur de recherche au CNRS sur le campus de l'École Polytechnique).
Attention : c'est écrit en anglais.
Il coûte 49€ (+ 9€ de livraison) . Si vous pouvez vous le permettre, je vous recommande de l'acheter pour deux raisons :
- Ce livre contient les réponses à toutes les questions que vous pourriez vous poser sur TeXmacs, maintenant et à l'avenir. J'ai résolu beaucoup de blocages grâce à ses explications.
- Il permet de soutenir le développement de TeXmacs, qui continue d'être mis à jour régulièrement par de nombreux bénévoles depuis 1999, tout en restant open-source et gratuit.
Pour l'avoir acheté moi-même dès sa sortie, sa qualité d'impression est excellente, et son contenu est à la fois utile et bien organisé. Si TeXmacs vous est utile, offrez-vous le pour Noël !
Les mailing lists
Pour en connaître plus sur TeXmacs et participer à sa communauté, vous pouvez vous abonner à la liste email <texmacs-users@texmacs.org>.
Le principe d'une liste email est que chaque mail envoyé à texmacs-users@texmacs.org est envoyé à tous les abonnés de la liste. Cette liste est utilisée par les utilisateurs de l'application pour poser leurs questions et répondre à celle des autres. Cela vous permettra d'en apprendre plus sur TeXmacs (en lisant les conversations les plus intéressantes) et de poser vos propres questions quand vous n'arrivez pas à faire quelque chose. Il est fréquent que le développeur principal de l'application (Joris van der Hoeven) réponde lui-même aux questions posées !
Pour vous abonner, envoyez un mail à <sympa@texmacs.org> avec comme objet "SUBSCRIBE texmacs-users [Votre nom complet]".
Vous pouvez vous désabonner en envoyant un mail à <sympa@texmacs.org> avec comme objet "SIGNOFF texmacs-users".
Les archives de cette liste email sont également disponibles sur cette page. Si vous bloquez, regardez d'abord si votre question n'a pas déjà été posée avec la fonction recherche.
Le forum TeXmacs
La communauté TeXmacs possède son propre forum, disponible à l'adresse forum.texmacs.cn.
L'objectif est un peu le même que la mailing list – répondre aux questions des utilisateurs – mais le format est bien plus pratique. Il permet de visualiser les topics et leurs réponses de manière regroupée, et la recherche des anciennes questions est beaucoup plus simple.
Peut-être pour des raisons historiques, j'ai trouvé que les questions posées sur le forum mettaient parfois plus de temps à trouver une réponse, contrairement à la mailing list. Plus les utilisateurs utiliseront le forum, plus celui-ci sera lu et plus le délai de réponse sera raccourci.