TeXnique.fr
TeXnique.fr is a French question-and-answer site for TeX and LaTeX. Here are the newest 20 questions. Sorry that the code formatting is not preserved through the RSS feed.
- Macrocommande vim pour éditer une note de bas de pageby joseph-tux on October 29, 2025 at 11:33 amCeci n'est pas une question, juste le partage d'une macro que j'utilise couramment, publié ici: debian-fr.org :call IMAP('FTN', "\<ESC>mma%\<CR>\\footnote{%\<ESC>V<V<V<V<\<CR>i<++>\<CR>} <++>\<CR><++>\<ESC>`m", 'tex') Qui imprime: Un test% \footnote{% [] }<++> <++> et place le curseur au bon endroit : [] Pourquoi cette macrocommande? Elle facilite une présentation des notes de bas de page qui rend le source *tex plus facile à lire en séparant facilement les notes du texte principal. l’appel de la note (taper FTN juste à la fin du mot, ici test), la commande \footnote{% seule sur une ligne, facilite le repérage des notes, Le curseur en mode insertion, il suffit d’insérer directement le contenu de la note, Fermeture de la note sur une ligne séparée, vide, très repérable pour marquer la fin de la note. Cette ligne est limitée à l’accolade fermante suivie seulement d’une éventuelle ponctuation, qui (en LaTeX) doit suivre le mot sans espace. La commande Ctrl-J envoi directement le curseur au premier place-holder ( <++> ), en mode insertion, pour y écrire l’éventuelle ponctuation, Retour par une deuxième frappe Ctrl-J au début de la ligne qui reprend le fil du texte principal, toujours en mode insertion. La commande de mappage IMAP est fournie par la suite vim-latex, avec l'avantage suivant: la macro fonctionne quel que soit le délai de frappe de la commande. 
- Gestion des arguments en LaTeX3by cpierquet on October 28, 2025 at 5:38 pmBonjour, ma précédente et éphémère question a été retirée car il s'agissait une erreur bête de ma part, mais là j'aurais un souci (ou une demande) que je n'arrive pas à gérer simplement... J'essaye, pour compléter mes recherches en LaTeX3, de créer une macro pour traiter une liste d'éléments et d'accéder à ses éléments. La commande de lecture peut spécifier un séparateur personnalisé, et la commande d'accès peut afficher ou stocker. Là où j'ai été confronté à un souci que je n'imaginais pas, c'est la gestion des éléments de la liste, que je dois pouvoir donner sous forme brute, ou sous forme d'une macro (latex2 ou latex3), et là je n'arrive pas à gérer les possibilités, je dois spécifier (version étoilée) que je travaille avec l'une ou l'autre des capacités... Mon code est le suivant : \documentclass{article} \usepackage{amsmath} \ExplSyntaxOn \NewDocumentCommand\pflcreatelistsingle{ s O{,} m m } { % #1 = étoilé => mode argument, sinon mode macro (à voir :-/) % #2 = séparateur principal (par défaut: ,) % #3 = nom de la structure (ex: maliste) % #4 = contenu de la liste % Stocker le séparateur principal \tl_if_exist:cF { g__pfl_#3_mainsep_tl } { \tl_new:c { g__pfl_#3_mainsep_tl } } \tl_gset:cn { g__pfl_#3_mainsep_tl } { #2 } %liste à construire \seq_if_exist:cF { g__pfl_#3_main_seq } { \seq_new:c { g__pfl_#3_main_seq } } \seq_clear:c { g__pfl_#3_main_seq } %gestion arg/macro ? \IfBooleanTF{#1} { %expansion de la liste, si besoin \tl_set:Nn \l_tmpmylist_tl { #4 } \seq_set_split:NnV \l_tmpa_seq { #2 } { \l_tmpmylist_tl } } { \seq_set_split:NnV \l_tmpa_seq { #2 } { #4 } } % Toujours utiliser une seq, même pour les virgules \seq_gset_eq:cN { g__pfl_#3_main_seq } \l_tmpa_seq % Stocker le nombre d'éléments \int_if_exist:cF { g__pfl_#3_count_int } { \int_new:c { g__pfl_#3_count_int } } \int_gset:cn { g__pfl_#3_count_int } { \seq_count:c { g__pfl_#3_main_seq } } } \NewDocumentCommand\pflgetfromlistsingle{ s m m O{\myelt} } { % #2 = nom, #3 = index, #4 = macro \int_set:Nn \l_tmpa_int { \int_eval:n { #3 } } \tl_clear:N \l_tmpa_tl \tl_set:Nx \l_tmpa_tl { \seq_item:cn { g__pfl_#2_main_seq } { \int_use:N \l_tmpa_int } } \IfBooleanTF{#1} { \tl_if_exist:NF \g__pfleltlistsingle_result_tl { \tl_new:N \g__pfleltlistsingle_result_tl } \tl_gset_eq:NN \g__pfleltlistsingle_result_tl \l_tmpa_tl \tl_use:N \l_tmpa_tl } { \tl_set_eq:NN #4 \l_tmpa_tl } } \ExplSyntaxOff \begin{document} %si argument en 'dur', version non étoilée fonctionne \pflcreatelistsingle{maliste}{ {1+\dfrac{1}{x}} , { \sqrt{x+61} } } Élément n°1 : $\pflgetfromlistsingle*{maliste}{1}$\\ Élément n°2 : \pflgetfromlistsingle{maliste}{2}[\myelt]$\myelt$\\ Élément n°3 : $\pflgetfromlistsingle*{maliste}{3}$ %si argument macro, version non étoilée fonctionne \def\maliste{ {1+\dfrac{1}{x}} , { \sqrt{x+61} } } \pflcreatelistsingle{maliste}{ \maliste } Élément n°1 : $\pflgetfromlistsingle*{maliste}{1}$\\ Élément n°2 : \pflgetfromlistsingle{maliste}{2}[\myelt]$\myelt$ %si argument en dur avec imbrication, version étoilée obligatoire \pflcreatelistsingle*{maliste}{ AAA , { BBB,CCC } } Élément n°1 : $\pflgetfromlistsingle*{maliste}{1}$\\ Élément n°2 : \pflgetfromlistsingle{maliste}{2}[\myelt]$\myelt$ \end{document} J'ai globalement compris le fonctionnement de l'expansion en latex3, mais j'ai l'impression que l'interaction latex2/latex3 est moins explicite que je l'aurais envisagé... 
- Écrire du japonaisby pdesmons on October 28, 2025 at 3:05 pmComment écrire du japonais avec le package CJK, et quelles polices (fonts) sont disponibles ? 
- [yathesis] président de jury et rôlesby GreenMaker on October 25, 2025 at 12:13 amJe fais suite à cette question concernant la duplication des rôles dans la classe yathesis. La solution proposée fonctionne mais l'ajout d'un président de jury, en remplaçant un \examiner par \committeepresident, affiche un doublon du rôle de rapporteur·e, au-dessus de la colonne du président. Est-il possible de modifier la commande, de sorte à conserver la distinction dans la première colonne mais de laisser le président du jury tout seul dans sa colonne ? \documentclass[nomakeabstract, notableofcontents,noprintbibliography, version=final]{yathesis} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \makeatletter \patchcmd{\YAD@display@staff}{\DTLiffirstrow}{% \ifboolexpr{% test {\ifdefstring{\YAD@the@staff}{referees}}% }{}{\DTLiffirstrow}}{}{\err} \patchcmd{\YAD@display@staff}{\YAD@translation{\YAD@the@staff-pl}}{% \ifboolexpr{% test {\ifdefstring{\YAD@the@staff}{referees}}% }{\YAD@translation{\YAD@committeemember@role}}{\YAD@translation{\YAD@the@staff-pl}}}{}{\err} \renewcommand*{\referee}[3][]{% \yadsetup{#1}% \ifboolexpr{% bool {YAD@female} or % not bool {YAD@male}% }{% \YAD@error@firstlastnames@empty{de la rapportrice}{#2}{#3}{\referee}% \YAD@staff[role=referees-female,#1]{#2}{#3}{referees}% }{% \YAD@error@firstlastnames@empty{du rapporteur}{#2}{#3}{\referee}% \YAD@staff[role=referees,#1]{#2}{#3}{referees}% }% }% \makeatother \expression{referees-female}{Rapportrice}{\translate[to=English]{lbl-referees}} \begin{document} % métadonnées \author{paulc}{paulc} \title[title]{titre} \academicfield[latex]{LateX} \institute{Université} \doctoralschool{ED} \laboratory{Labo}{Labo} \date{25}{12}{2022} \submissiondate{25}{10}{2022} \keywords{keywords}{motscles} %%%%%%% Encadrants \supervisor[corps=professor]{prenom}{nom} \comonitor[corps=associateprofessor]{prenom2}{nom2} %%%%%% Rapporteurs \referee[corps=juniorresearcher*]{Truc}{Muche} \referee[corps=professor,female=true]{Machine}{Bidule} %%%%%% Examinateurs \examiner[corps=professor]{Machin}{Chose} \committeepresident[corps=associateprofessor]{Truc}{Bidule} %%%%%% Invités \guest[corps=associateprofessor, female=true]{Machine2}{Bidule2} \guest[corps=associateprofessor]{Truc2}{Muche2} \maketitle \mainmatter \end{document} 
- Une note marginale en regard d'une note en bas de page ?by Pathe on October 21, 2025 at 11:34 amPeut-on placer une note marginale en regard d'une note en bas de page ? Le code suivant ne fonctionne pas : \documentclass[french]{article} \usepackage[T1]{fontenc} % Encodage T1 (adapté au français) \usepackage{lmodern} % Caractères plus lisibles \usepackage{babel} % Réglages linguistiques (avec french) \pagestyle{empty} % N'affiche pas de numéro de page \begin{document} La valeur du paramètre temps est fixée à 12~minutes\footnote{et des bananes \marginpar{approx.}}. En tenant compte de cette hypothèse, les résultats obtenus sont les suivants : \ldots \end{document} 
- À propos de guillemetsby polymorphisme on October 20, 2025 at 10:48 amJ'ai deux questions à propos des guillemets : Quel est le point de code (dans le standard Unicode) correspondant aux deux premières commandes ci-dessous : \textquotestraightbase et \textquotestraightdblbase ? En complément, j'ai ajouté les deux commandes \quotesinglbase et \quotedblbase parce qu'elles peuvent être source de confusion. Quelles sont les différences entre les paires de commandes \textquoteleft et \textquoteright d'une part, et \lq et \rq d'autre part ? Dans quel contexte les utilise-t-on ? Merci de m'éclairer. % !TeX TS-program = lualatex \documentclass{article} \usepackage{polyglossia} \begin{document} \begin{tabbing} \hspace{8.0cm} \= \hspace{2.0cm} \= \kill \textbf{Nom Unicode} \> \textbf{Symbole} \> \textbf{Commande Latex} \\ Single straight quotes on the baseline \> ??? \> texte \textquotestraightbase \\ Single and double straight quotes on the baseline \> ??? \> texte \textquotestraightdblbase \\ Single low-9 quotation mark \> \symbol{"201A} \> texte \quotesinglbase \\ Double low-9 quotation mark \> \symbol{"201E} \> texte \quotedblbase \\ \end{tabbing} \begin{tabbing} \hspace{8.0cm} \= \kill \textbf{Nom Unicode} \> \textbf{Commande Latex} \\ Single left quote \> \textquoteleft texte \\ Left (opening) quote \> \lq texte \\ Single right quote \> texte \textquoteright \\ Right (closing) quote \> texte \rq \\ \end{tabbing} \end{document} 
- [circuitikz] Définition d'un dipôleby idefix on October 19, 2025 at 10:21 pm\documentclass{standalone} \usepackage{circuitikz} % Déclaration d'un bipôle circulaire avec G au centre \pgfcircdeclarebipole{}{}{generatorG}{\ctikzvalof{bipoles/length}}{% % Dessin du cercle \pgfpathcircle{\pgfpoint{0}{0}}{.4\pgf@circ@res@up} \pgfusepath{draw} % Lettre G \pgftext{\normalsize\bfseries G} } \begin{document} \begin{circuitikz} \draw (0,0) to[generatorG,l=Générateur] (3,0); \end{circuitikz} \end{document} J'essaye de définir un dipôle pour circuitikz avec \pgfcircdeclarebipole. Mais circuitikz ne le reconnaît pas. J'ai un version récente de circuitikz (1.8.2) : celle de la TeX Live 2025. ! Package pgfkeys Error: I do not know the key '/tikz/generatorG' and I am going to ignore it. Perhaps you misspelled it. 
- [yathesis] Pages réellement blanches ?by Pathe on October 18, 2025 at 8:38 pmJe souhaite supprimer les en-têtes des pages blanches créées automatiquement (par exemple la page à gauche d’une page de début de chapitre). J’utilise la classe yathesis pour mon document. Si l'on se réfère à l'exemple these.tex fourni avec le package (et à son pendant compilé these.pdf), il s'agit d'ôter de la quarante-huitième page du document (numérotée 6) la ligne d'entête indiquant « 6 Introduction générale ». Après la page de titre d'une partie, il y a une page réellement blanche (par exemple, la page 86, entre les parties 1 et 2 du document d'exemple these.pdf). J'aimerais qu'il en aille de même à la fin des chapitres (et donc que la page 84 — numérotée 42 — soit totalement blanche, et ne présente plus l'entête « 42 CHAPITRE 3. Conclusion du chaos du rire »). 
- etoolbox::newbool ne fonctionne pas dans un tikz::pgffor::foreachby MiQ75 on October 2, 2025 at 10:59 pmBonjour, le code suivant ne compile pas \documentclass{article} \usepackage{etoolbox} \usepackage{tikz} \begin{document} \foreach \note in {AA,BB} { %\global% ne change rien %\expandafter% fait compiler, mais le résultat affiche AB, mais ni Oui ni Non \newbool\note } \ifbool{AA}{Oui}{Non} \end{document} Tout se passe comme si newbool ne fonctionnait pas correctement dans un foreach, alors qu'en dehors il fait son taf. Est-ce que quelqu'un a la clef de ce mystère ? 
- yathesis - Les bibliographies ne sont plus locales après modification des en-têtes de chapitresby olirwin on September 30, 2025 at 2:41 pmJ'ai changé (grâce à @touhami, ma question initiale ici) l'apparence des en-têtes des chapitres d'un manuscrit. Cependant, depuis ce correctif, je constate que les bibliographies ne sont plus locales -- et plus préoccupant encore, elles sont présentes sur des éléments n'en ayant pas besoin, comme la table des matières ou les chapitres ne citant rien. Comme si un \nocite{*} était inséré partout. Voici un ECM qui illustre le problème : \documentclass[ mainlanguage=english, french, localtocs, localbibs*, secnumdepth=subsubsection, titlesec={pagestyles}]{yathesis} \usepackage{lipsum} \usepackage{geometry} \usepackage[ backend=biber, url=true, isbn=true, eprint=false, maxcitenames=10, maxnames=10, style=alphabetic, sortlocale=en_UK]{biblatex} \begin{filecontents}{bib.bib} @article{einstein, author = "Albert Einstein", title = "{Zur Elektrodynamik bewegter K{\"o}rper}. ({German}) [{On} the electrodynamics of moving bodies]", journal = "Annalen der Physik", volume = "322", number = "10", pages = "891--921", year = "1905", DOI = "http://dx.doi.org/10.1002/andp.19053221004", keywords = "physics" } @book{dirac, title={The Principles of Quantum Mechanics}, author={Paul Adrien Maurice Dirac}, isbn={9780198520115}, series={International series of monographs on physics}, year={1981}, publisher={Clarendon Press}, keywords = {physics} } @online{knuthwebsite, author = "Donald Knuth", title = "Knuth: Computers and Typesetting", url = "http://www-cs-faculty.stanford.edu/~uno/abcde.html", keywords = "latex,knuth" } @inbook{knuth-fa, author = "Donald E. Knuth", title = "Fundamental Algorithms", publisher = "Addison-Wesley", year = "1973", chapter = "1.2", keywords = "knuth,programming" } \end{filecontents} \addbibresource{bib.bib} \makeatletter \def\@makechapterhead#1{% \vspace*{0\p@}% (no extra top margin) {\parindent \z@ \centering \normalfont\sffamily % --- Chapter number line with colored text and rule --- \ifnum \c@secnumdepth >\m@ne \if@mainmatter \Huge\bfseries\color{gray}\@chapapp~\thechapter\par\nobreak \vskip -7\p@ % tighten spacing above the rule {\color{black}\rule{0.9\linewidth}{0.2pt}}\par % horizontal rule \vskip 7\p@ % space between rule and title \fi \fi % --- Chapter title line --- \LARGE\bfseries\color{blue} #1\par}% \vskip 30\p@ % space below chapter title % --- Insert leadchapter text, if provided --- \@ifundefined{YAD@leadchapter}{}{% \noindent\YAD@leadchapter\par \let\YAD@leadchapter\relax }% % --- Insert local chapter TOC, if enabled --- \ifbool{YAD@localtocs}{% \YAD@localtoc \renewcommand{\YAD@localtoc}{\YAD@default@localtoc}% \ifbool{YAD@nextwithlocaltoc}{% \boolfalse{YAD@localtocs}\boolfalse{YAD@nextwithlocaltoc}}{}% % (no extra gap here; adjust with \vskip if desired) }{}% \@afterheading \clearpage } \def\@makeschapterhead#1{% \vspace*{0\p@}% (no extra top margin) {\parindent \z@ \centering \normalfont\sffamily \LARGE\bfseries\color{red} #1\par}% \vskip 30\p@ % space below chapter title % --- Insert leadchapter text, if provided --- \@ifundefined{YAD@leadchapter}{}{% \noindent\YAD@leadchapter\par \let\YAD@leadchapter\relax }% % --- Insert local chapter TOC, if enabled --- \ifbool{YAD@localtocs}{% \YAD@localtoc \renewcommand{\YAD@localtoc}{\YAD@default@localtoc}% \ifbool{YAD@nextwithlocaltoc}{% \boolfalse{YAD@localtocs}\boolfalse{YAD@nextwithlocaltoc}}{}% % (no extra gap here; adjust with \vskip if desired) }{}% \@afterheading }\let\old@makechapterhead\@makechapterhead \AfterPreamble{% \patchcmd{\chapter}{{\YAD@starred@chapter}{\YAD@unstarred@chapter}}{{\let\@makechapterhead\@makeschapterhead\YAD@starred@chapter}{\let\@makechapterhead\old@makechapterhead\YAD@unstarred@chapter}}{}{\err} } \makeatother \geometry{ paper=a4paper } % \begin{document} \tableofcontents[depth=section] \mainmatter \chapter{Le premier} \lipsum{4} Ceci est une citation \cite{einstein} \cite{dirac} \chapter{Le deuxième} \lipsum{8} ici aussi une citation \cite{knuth-fa} \chapter*{Un test non num} \lipsum{6} \end{document} Est-ce qu'il existe une solution pour remédier à ce problème ? J'ai déjà (vainement) essayé de patcher les commandes de chapitres pour retirer la bibliographie. La seule chose qui fonctionne pour moi pour le moment est de retirer la ligne \patchcmd{\chapter}{{\YAD@starred@chapter}{\YAD@unstarred@chapter}} {{\let\@makechapterhead\@makeschapterhead\YAD@starred@chapter} {\let\@makechapterhead\old@makechapterhead\YAD@unstarred@chapter}}{}{\err} Mais ça me fait perdre la personnalisation des en-têtes de chapitres non numérotés, ce qui revient essentiellement dans mon cas (hors ECM) à avoir un saut de page non désiré entre le titre d'un chapitre non numéroté (comme le sommaire ou la bibliographie finale) et son contenu. 
- Écriture de conversion décimale binaire en LaTeXby idefix on September 27, 2025 at 6:28 pmJ'ai récupéré la définition d'une commande qui permet par exemple de poser facilement une conversion d'un nombre décimal en nombre binaire : \documentclass{article} \usepackage{intcalc} \usepackage{tikz} \usetikzlibrary{calc} \newcommand{\divisions}[2]{% % #1 = n -- #2 = base \begin{tikzpicture} \pgfmathsetmacro{\divQ}{ \intcalcDiv{#1}{#2} } \pgfmathsetmacro{\divR}{ \intcalcMod{#1}{#2} } \foreach \i in {0,...,#1} {% \pgfmathsetmacro{\intensite}{10*(\i+1)} \node (a\i) at (\i, -\i) {\ifnum\i=0$#1$\fi} ; \node (b\i) at (\i+1, -\i) {$#2$} ; \node (q\i) at (\i+1, -\i-1) {$\divQ$} ; \node[fill=red!\intensite] (r\i) at (\i, -\i-1) {$\divR$} ; \draw[thick] ($ (a\i)!.5!(b\i) $) -- ++(0,-1) ; \draw[thick] ($ (a\i)!.5!(q\i) $) -- ++(1,0) ; \ifnum \divQ<1 \breakforeach \else \xdef\divR{ \intcalcMod{\divQ}{#2} }; \xdef\divQ{ \intcalcDiv{\divQ}{#2} }; \fi } % end foreach \end{tikzpicture} } \begin{document} \divisions{57}{2} \end{document} Mais existe-t-il un package qui est spécialisé dans ce genre de choses (la présentation des nombres binaires et leur manipulation) et qui soit paramétrable avec des options ? 
- yathesis : problème d’alinéa lié à mainlanguageby sinay on September 24, 2025 at 12:40 pmAvec yathesis, je rédige en français le résumé substantiel de ma thèse qui, elle, est en anglais ; la mise en page ne se comporte pas comme je m’y attendais. En effet, en sélectionnant french, normalement, il devrait y avoir un alinéa au premier paragraphe après un chapitre, mais ce n’est pas le cas. Il me semble que la mise en page des paragraphes reste bloquée sur celle du mainlanguage parce que si on change pour french la partie anglaise a un alinéa au début comme la partie française. Autrement, le formatage est conforme aux langues respectives. Voici un EMC pour tester : \documentclass[version=inprogress,mainlanguage=english,localtocs,fncychap=Conny,space=onehalf]{yathesis} \usepackage{fontspec} \usepackage{lipsum} \usepackage[autostyle]{csquotes} \begin{document} \selectlanguage{french} \chapter{En français} \lipsum[1-4] J’écris en français: preuve \enquote{en guillemets}. \selectlanguage{english} \chapter{In English} \lipsum[1-4] I write in English: proof with \enquote{quotation marks.} \end{document} 
- Sujets multiples avec pythontex et numérotation automatiséeby mumblee on September 23, 2025 at 6:43 pmBonsoir, Tout juste inscrit donc, pour commencer, bonjour à tous ! Ainsi que renseigné dans ma description, je suis professeur de mathématiques en lycée et utilisateur de LaTeX depuis de nombreuses années, bien qu'encore néophyte sur certains de ses aspects. L'an dernier, accompagné par un collègue de maths, Jean-Marc Duquesnoy, je me suis mis à pythontex. D'une part, c'est cohérent avec l'enseignement de l'algorithmique et son implémentation en python du programme de BTS SIO 1re année, d'autre part cela permet de générer des sujets avec des éléments aléatoires ; un des bénéfices étant de limiter la "fraude de voisinage". J'ai une solution fonctionnelle mais qui me paraît "lourde" et je me demande si vous auriez des idées de procédures autres, voire moins "lourdes". Ma solution actuelle est constituée de deux fichiers : Un source LaTeX contenant du code python, nécessitant donc une triples compilation (1)LaTeX/(2)pythontex/(3)LaTeX Un script bash avec une variable d'environnement récupérée par le source LaTeX à la compilation, plus précisément aux compilations (1) et (3) Ci-dessous, un ECM. Merci de vos éventuelles suggestions. Cordialement, Fichier 1 : ECM_variable.tex \documentclass{article} %%% Accès aux variables d'environnement. % Référence : % https://tex.stackexchange.com/questions/62010/can-i-access-system-environment-variables-from-latex-for-instance-home \usepackage{xparse} \ExplSyntaxOn \NewDocumentCommand{\getenv}{om} { \sys_get_shell:nnN { kpsewhich ~ --var-value ~ #2 } { } \l_tmpa_tl \tl_trim_spaces:N \l_tmpa_tl \IfNoValueTF { #1 } { \tl_use:N \l_tmpa_tl } { \tl_set_eq:NN #1 \l_tmpa_tl } } \ExplSyntaxOff %%% Interaction avec python. % Triple compilation nécessaire : LaTeX -> pythontex -> LaTeX \usepackage{pythontex} \begin{document} \begin{pycode} from random import randint a,b = randint(1,5),randint(6,10) \end{pycode} \getenv[\NUM]{NUMERO} Sujet \NUM Calculer $\py{a}+\py{b}$ \end{document} Fichier 2 : Plusieurs.sh #!/bin/bash nb=2 # Boucle pour le nombre de sujets demandés. for i in `seq 1 $nb`; do # Variable d'environnement utilisée par le source LaTeX pour numéroter le sujet export NUMERO=$i # On copie le source LaTeX puis on effectue les trois compilations # nécessaires pour obtenir le PDF contenant sujet et corrigé. cp ECM_variable.tex exemplaire$i.tex pdflatex exemplaire$i.tex pythontex exemplaire$i.tex pdflatex exemplaire$i.tex done Utilisation : placer les deux fichiers dans le même répertoire, rendre exécutable le script bash et l'exécuter 🙂 
- Pourquoi le package minted ne fonctionne plus avec MiKTeX (2025) ?by idefix on September 16, 2025 at 8:11 pmJ'utilise Windows 11, MiKTeX et TeXstudio J'utilise le package minted pour écrire du code avec coloration syntaxique Le package utilise le package python pygments qui doit donc être installé et nécessite de compiler avec l'option --shell escape pour pouvoir exécuter pygmentize. pdflatex -synctex=1 -interaction=nonstopmode -shell-escape %.tex C'est le cas chez moi et tout fonctionnait parfaitement, mais à présent j'ai le message suivant Enoncé tableau 1.tex: error: 69: Package minted Error: minted v3+ executable is not installed, is not added toTORY environment variable. end{minted} Peut être une mise à jour du package minted provoque cela. Si vous avez la solution pour résoudre cet obscur problème de configuration je suis preneur 
- Tirer un document d'un fichier beamerby fred02840 on September 13, 2025 at 2:40 pmJ'ai vu, un jour (peut-être bien à Dunkerque, il me semble), qu'il existait une possibilité de tirer, à partir d'un seul fichier (classe beamerou article), à la fois un diaporama et une trace écrite. Pour être plus précis, je me sers du premier pour présenter la base d'un cours (pas forcément court), et du second, imprimé, pour le développer. Or, jusque là, je faisais deux fichiers .tex : intéressant, mais fastidieux, à la longue... Je ne sais plus si, pour y arriver, on doit utiliser un éditeur comme TeXstudio ou Emacs... Quelqu'un aurait-il des souvenirs plus affinés que les miens ou, encore mieux, des références ?Je continue de chercher de mon côté. 
- babel et efrench incompatibles ? lequel choisir ?by idefix on September 2, 2025 at 10:10 pm\documentclass[]{article} \RequirePackage[T1]{fontenc} \RequirePackage[utf8]{inputenc} \RequirePackage[french]{babel} % utilise babel (avec le package babel-french ex frenchb) \RequirePackage{french} % utilise le package e-french %opening \title{Mon article} \author{Moi} \begin{document} \maketitle \begin{abstract} Mon résumé \end{abstract} \section{} \end{document} les packages de francisation e-french et babel sont incompatibles ? Quand je les mets tous les deux j'ai des erreurs 
- Tabularx: format d'une colonne dans une commande (\\columntype)by joseph-tux on September 2, 2025 at 10:59 amje ne parviens pas à trouver la bonne syntaxe. Il s'agit de créer une colonne dont le contenu sera systématiquement dans une commande \url{...} \newcolumntype{U}{>\url{<\}} ne fonctionne pas. \newcolumntype{U}[1]{>\url{#1<\}} non plus \documentclass[a4paper,french]{scrartcl} \usepackage{tabularx} Exemple: \newcolumntype{U}{>\url{<\}} \begin{tabularx}{\textwidth}{lUlX} Fichier & Date & Description \\ 2020-12-28_TESTAMENT000[1-4].png & Mon testament \\ 2021_04_11_APh.pdf & 2021 01 14 & 1er après B \\ APh_R2.pdf & 2021 02 22 & 2e après B \\ \end{tabularx} 
- Paquetage tabularray et liste des tablesby polymorphisme on September 1, 2025 at 2:45 pmAfin de conserver mes styles d'en-tête de table créées avec le paquetage caption, j'utilise le paquetage tblr-extras. Je ne trouve pas comment ne pas créer d'entrée dans la liste des tables pour une table données. \documentclass[12pt]{article}% \usepackage{multicol}% \usepackage{tabularray}% \usepackage{tblr-extras}% \UseTblrLibrary{caption}% \setlength{\parindent}{0em}% \begin{document}% \begin{multicols}{2}% caption=Caption1, entry=Entry1, label={tab:label1} \begin{talltblr} [ caption=Caption1, entry=Entry1, label={tab:label1} ] { colspec = { Q Q }, hlines, vlines } 1 & the text in the cell \\ A & another text \\ \end{talltblr} \vspace{2.0\baselineskip} caption=none, entry=Entry2, label={tab:label2} \begin{talltblr} [ caption=none, entry=Entry2, label={tab:label2} ] { colspec = { Q Q }, hlines, vlines } 2 & the text in the cell \\ B & another text \\ \end{talltblr} \vspace{2.0\baselineskip} caption=Caption3, entry=none, label={tab:label3} \begin{talltblr} [ caption=Caption3, entry=none, label={tab:label3} ] { colspec = { Q Q }, hlines, vlines } 3 & the text in the cell \\ C & another text \\ \end{talltblr} \vspace{2.0\baselineskip} caption=Caption4, entry=Entry4, label=none \begin{talltblr} [ caption=Caption4, entry=Entry4, label=none ] { colspec = { Q Q }, hlines, vlines } 4 & the text in the cell \\ D & another text \\ \end{talltblr} \columnbreak caption=Caption5, entry=none, label=none \begin{talltblr} [ caption=Caption5, entry=none, label=none ] { colspec = { Q Q }, hlines, vlines } 5 & the text in the cell \\ E & another text \\ \end{talltblr} \vspace{2.0\baselineskip} caption=none, entry=none, label={tab:label6} \begin{talltblr} [ caption=none, entry=none, label={tab:label6} ] { colspec = { Q Q }, hlines, vlines } 6 & the text in the cell \\ D & another text \\ \end{talltblr} \vspace{2.0\baselineskip} caption=none, entry=Entry7, label=none \begin{talltblr} [ caption=none, entry=Entry7, label=none ] { colspec = { Q Q }, hlines, vlines } 7 & the text in the cell \\ F & another text \\ \end{talltblr} \vspace{2.0\baselineskip} caption=none, entry=none, label=none \begin{talltblr} [ caption=none, entry=none, label=none ] { colspec = { Q Q }, hlines, vlines } 8 & the text in the cell \\ G & another text \\ \end{talltblr} % \end{multicols}% \listoftables% \end{document}% 
- Changer le style des chapitres non numérotésby olirwin on August 31, 2025 at 2:11 pmJe cherche à changer le style des chapitres d'un document écrit avec yathesis. En bidouillant un peu, on trouve \@makechapterhead et son équivalent pour les chapitres étoilés \@makeschapterhead. Quand je teste sur l'ECM suivant : \documentclass[ mainlanguage=english, french, localtocs, localbibs*, secnumdepth=subsubsection, titlesec={pagestyles}]{yathesis} \usepackage{lipsum} \usepackage{geometry} \makeatletter \def\@makechapterhead#1{% \vspace*{0\p@}% (no extra top margin) {\parindent \z@ \centering \normalfont\sffamily % --- Chapter number line with colored text and rule --- \ifnum \c@secnumdepth >\m@ne \if@mainmatter \Huge\bfseries\color{gray}\@chapapp~\thechapter\par\nobreak \vskip -7\p@ % tighten spacing above the rule {\color{black}\rule{0.9\linewidth}{0.2pt}}\par % horizontal rule \vskip 7\p@ % space between rule and title \fi \fi % --- Chapter title line --- \LARGE\bfseries\color{blue} #1\par}% \vskip 30\p@ % space below chapter title % --- Insert leadchapter text, if provided --- \@ifundefined{YAD@leadchapter}{}{% \noindent\YAD@leadchapter\par \let\YAD@leadchapter\relax }% % --- Insert local chapter TOC, if enabled --- \ifbool{YAD@localtocs}{% \YAD@localtoc \renewcommand{\YAD@localtoc}{\YAD@default@localtoc}% \ifbool{YAD@nextwithlocaltoc}{% \boolfalse{YAD@localtocs}\boolfalse{YAD@nextwithlocaltoc}}{}% % (no extra gap here; adjust with \vskip if desired) }{}% \@afterheading \clearpage } \def\@makeschapterhead#1{% \vspace*{0\p@}% (no extra top margin) {\parindent \z@ \centering \normalfont\sffamily \LARGE\bfseries\color{red} #1\par}% \vskip 30\p@ % space below chapter title % --- Insert leadchapter text, if provided --- \@ifundefined{YAD@leadchapter}{}{% \noindent\YAD@leadchapter\par \let\YAD@leadchapter\relax }% % --- Insert local chapter TOC, if enabled --- \ifbool{YAD@localtocs}{% \YAD@localtoc \renewcommand{\YAD@localtoc}{\YAD@default@localtoc}% \ifbool{YAD@nextwithlocaltoc}{% \boolfalse{YAD@localtocs}\boolfalse{YAD@nextwithlocaltoc}}{}% % (no extra gap here; adjust with \vskip if desired) }{}% \@afterheading } % \makeatother \geometry{ paper=a4paper } % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Début du document %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{document} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Caractéristiques du document %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Préparation des pages de couverture et de titre %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Les caractéristiques de la thèse sont saisies dans le fichier % « characteristics.tex » (situé dans le dossier « configuration »). % % Production des pages de couverture et de titre %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %\maketitle[frametitle=ovalbox] % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Début de la partie liminaire de la thèse %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % (Facultatif) Production de la page de clause de non-responsabilité %\makedisclaimer % % (Facultatif) Production de la page de mots clés %\makekeywords % % (Facultatif) Production de la page affichant les logo, nom et coordonnées du % ou des laboratoires (ou unités de recherche) où la thèse a été préparée %\makelaboratory % % (Facultatif) Dédicace(s) % \input{liminaires/dedicaces} % % (Facultatif) Épigraphe(s) % \input{liminaires/epigraphes} % % Résumés succincts % \input{liminaires/resumes} % % (Facultatif) Chapitre de remerciements % \include{liminaires/remerciements} % % (Facultatif) Chapitre d'avertissement % \include{liminaires/avertissement} % % (Facultatif) Liste des acronymes % \printacronyms % % (Facultatif) Liste des symboles % \printsymbols % % (Facultatif) Chapitre d'avant-propos % \include{liminaires/avant-propos} % % Sommaire \tableofcontents[depth=section] % % (Facultatif) Liste des tableaux % \listoftables % % (Facultatif) Table des figures % \listoffigures % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Début de la partie principale (du « corps ») de la thèse %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \mainmatter \chapter{Le premier} \lipsum{4} \chapter{Le deuxième} \lipsum{8} \chapter*{Un test non num} \lipsum{6} \end{document} Les chapitres numérotés sont bien modifiés (avec le titre en bleu, ne me jugez pas c'est pour le test), mais les non numérotés utilisent aussi \@makechapterhead et sont donc en bleu également (et non pas en rouge comme demandé). Je ne trouve pas grand chose sur internet qui m'aide dans cette situation. J'ai essayé d'utiliser ces commandes à différents endroits sans succès et clairement, même sans package externe ça me fait le coup. À noter que ça agit aussi logiquement sur la bibliographie et la table des matières, mais je ne comprends pas pourquoi la commande dédiée n'est pas utilisée... EDIT (au cas où): je compile chez moi avec lualatex -shell-escape 
- Tikz Innerspace=0by idefix on August 28, 2025 at 8:10 pm\documentclass{article} \usepackage{graphicx} % to include images \usepackage{tikz} % TikZ for drawing \begin{document} % One straightforward way to place an image inside a tikzpicture is to use node with the includegraphics command: \fbox{ \begin{tikzpicture} \node[anchor=south west, inner sep=0 cm] (img) at (0,0) {\includegraphics[width=10cm]{example-image.png}}; \end{tikzpicture} } \end{document} inner sep vaut zéro, je ne comprend pas pourquoi il reste un espace autour de l'image. Pour moi \fbox délimite la figure tikz qui ne contient que le nœud contenant l'image et inner box indique qu'il n'y a pas d'espace intérieur entre le bord du nœud et son contenu l'image. Où ai-je faux ?