Week
- PythonTeX output not shown for imported modules in Beamer overlaysby Tonechas on November 13, 2026 at 12:49 am
I want to show Python code and its output on the same Beamer slide. The code is displayed on the left side of a colored box and the output on the right. Using \pause, the code is shown on the first overlay and the output on the second. This is a MWE: \documentclass[xcolor=table]{beamer} \usepackage{fontspec} \usepackage{pythontex} \usepackage{fancyvrb} \usepackage[skins,listings,most]{tcolorbox} \newcommand{\tmpFontSize}{\normalsize} \newcommand{\codepath}{../../PySlides/code} \setpythontexworkingdir{../../PySlides/code} \newenvironment{PyBlockSnippetRight}[3][fontsize=\normalsize] {% \VerbatimEnvironment% \renewcommand{\tmpFontSize}{#1}% \ifstrempty{#2}{% \begin{tcolorbox}[% notitle, colframe=cyan!75!gray, colback=cyan!5, size=small, sidebyside, lefthand ratio=#3, sidebyside align=top]% } { \begin{tcolorbox}[% title=#2, colframe=cyan!75!gray, colback=cyan!5, size=small, sidebyside, lefthand ratio=#3, sidebyside align=top]% } \setpythontexautoprint{false} \begin{pyblock}[][fontsize=#1] } { \end{pyblock} \tcblower \pause \printpythontex[verbatim][formatcom={\color{gray}\tmpFontSize}] \end{tcolorbox} } \begin{document} \begin{frame}[fragile] \frametitle{MWE} \begin{PyBlockSnippetRight}[\large]{Code and output}{.5} for i in range(10): print(i) \end{PyBlockSnippetRight} \end{frame} \end{document} This works fine. The problem arises when I move the Python code to mymodule.py and try to obtain the same output by importing the code like this: \begin{PyBlockSnippetRight}[\large]{Code and output}{.5} import mymodule \end{PyBlockSnippetRight} In this case, the output is not displayed, although it should be. Note that the colored box has the expected height (10 lines) in the first overlay, but shrinks to a single line in the second overlay. More context: Windows 10 PythonTeX 0.19 LuaHBTeX, Version 1.25.7 (MiKTeX 26.5) I have been struggling with this issue for quite a while and cannot figure out what is going wrong. Any suggestions would be greatly appreciated.
- TeXShop for macOS: strange behaviour of the magnification toolby Pierre Funck on November 12, 2026 at 11:12 pm
I freshly installed the current TeXShop version (5.57) on a brand-new MacBook with macOS 27.2, and the magnification tool in the preview window behaves very strangely (see this video). The magnified area is in the wrong place and moves in the opposite direction of my trackpad movement. In my System Settings, “Natural scrolling” is turned on. Toggling this setting doesn’t change the behaviour in TeXShop. I have been using TeXShop for many years on several macOS computers and have never encountered this behaviour… Thanks for any help! Pierre Funck
- Indenting a second sentence within an enumerated itemby Sho Furuta on November 12, 2026 at 9:42 pm
I want my second sentence in an enumerated item to be indented compared to the first sentence, like below:
- Procedure for taking over maintenance of a CTAN package with old maintainer's permission in 2026by jwodder on November 12, 2026 at 2:08 pm
I recently e-mailed the maintainer of a CTAN package about a problem with it, and they responded that they don't use it anymore and would be fine with me taking over maintenance. Before I try blindly uploading a new version at https://ctan.org/upload, I feel I should ask: How do I establish to the CTAN staff that I have the maintainer's blessings to do this? Should I ask the maintainer to e-mail CTAN? Is there a button in the CTAN web interface that they can press to give me maintainer powers? Further information: The package's ctan.org page states that the package is licensed under version 1 of the LaTeX Project License (which, from a quick look, says nothing about maintainership), while the README.txt file in the package source just states "This program is provided under the terms of the LaTeX Project Public License distributed from CTAN archives in the directory macros/latex/base/lppl.txt" — and, in my version of TeX Live, that file contains version 1.3c of the LPPL, which states: If the Current Maintainer is reachable and agrees to pass maintenance of the Work to you, then this takes effect immediately upon announcement. The "announcement" bit appears to be a reference to a previous clause that states: ..., then announce within the pertinent community your intention to take over maintenance. (If the Work is a LATEX work, this could be done, for example, by posting to comp.text.tex.) Do people really post stuff like this on Usenet in this day & age? I'd have to jump through multiple hoops to post there.
- How to show chapter names in one line in Contents? [duplicate]by Rup_LA on November 12, 2026 at 1:49 pm
I am writing a report in which I have some long chapter names, which I want to write in two lines. But I also want them to be in a single line in the table of contents. When I write the chapter names in two lines, the same appears in the table of contents too. How can I fix that? MWE: \documentclass{report} \begin{document} \tableofcontents \chapter{Spectral Integral Variation\\ occuring in one place} Something something... \chapter{Spectral Integral Variation\\ occuring in two places} Something else!!! \end{document} which produces: Also can you suggest should I keep the naming like this or should I capitalize everything in chapter names (or something else which will look good). Actually, to be honest, I don't like the chapter names to be like this long but for the content of my report, I'm bound to do it.
- Compiling a local copy of a dtx of an installed package while ignoring the installed version [duplicate]by jwodder on November 12, 2026 at 1:39 pm
I have recently begun attempting to fix a broken CTAN package that is also broken in my installation of the latest TeX Live. I downloaded the zip file from CTAN and edited the .dtx file to fix the problem (I think), but when I run latex package-name.dtx, LaTeX loads the broken TeX Live copy of the package, and the build fails. How can I instruct LaTeX to ignore the installed copy of the package and/or to give priority to the local version?
- What the heck is going on with SE? [migrated]by Jack on November 12, 2026 at 9:11 am
Today I got a mail with the subject “1 new item in your Stack Exchange inbox“ saying You are now able to set your unique username for your profile. I was puzzled and clicked it, and after some security checks, I ended up on a page, where I was asked to join the community. To my surprise, my username "Jack" was known and appeared. But then I read: Member since today Last seen this week Visited 1 days total, 1 consecutive days And worse: All my old messages were lost, as were my badges and reputations. What can I do to restore my old values, also for the other groups I am in?
- want \autoref to print "Chapter #" instead of "chapter #" in report classby Rup_LA on November 12, 2026 at 4:05 am
I want to link/cite some chapters to demonstrate that "these topics will be studied in Chapter #". I am using report document class. I use \autoref for linking Theorems and Lemmas, which prints them like this: "Theorem #" / "Lemma #". But when I do the same thing with the chapters, it prints it like this "chapter #" instead of "Chapter #". How can I fix that? MWE: \documentclass{report} \usepackage{amsmath,amssymb,amsthm} \usepackage{hyperref} \hypersetup{ colorlinks=true, filecolor=blue, urlcolor=blue, linkcolor=blue } \newtheorem{theorem}{Theorem} \newtheorem{lemma}[theorem]{Lemma} \newcommand\lemmaautorefname{Lemma} \newcommand\chapterautoframename{Chapter} \begin{document} \chapter{Preliminaries} \begin{lemma} \label{lemma} This is a lemma. \end{lemma} From \autoref{lemma} it follows that... \\ These topics will be studied in \autoref{ch} \chapter{Results} \label{ch} \end{document} Part of the PDF produced:
- Memoir: how to remove dot at the end of legend?by Zarko on November 11, 2026 at 8:53 pm
To explain the abbreviations used in my block diagrams, I customized the \legend command in the memoir document class. For captions of figures and tables I enabled an option that automatically appends a dot (period) to the end of captions, which also applies to the legend. However, when a legend description includes a table, this trailing dot looks awkward. How can I redesign my customization so it automatically detects whether a dot is needed? Is it necessary to define two separate types of legends, or is there a simpler/smarter way to suppress the dot when a table is present? MWE: \documentclass{memoir} %---------------------------------------------------------------% \makeatletter \captiontitlefinal{.} \renewcommand{\legend}[1]{ \par\smallskip \begingroup \@parboxrestore \if@minipage \@setminipage \fi \normalsize \setlength\abovecaptionskip{0.25ex} \captiondelim{\mbox{}} \@makecaption{}{\ignorespaces\textbf{Legenda:} #1}\par \endgroup} \makeatother %---------------------------------------------------------------% \usepackage{tikz} \usepackage{tabularray} \begin{document} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{figure}\centering \tikz\node[draw] {some complex image}; \legend{explanation of image elements} \caption{Caption of image 1} \tikz\node[draw, text width=0.8\linewidth] {some very complex image with a lot of items which meaning are explained in the \verb+\legend+}; \legend{\\ \begin{tblr}[t]{colspec={*{2}{Q[r, font=\bfseries] Q[l]}}, rowsep = 1pt, hlines, vlines} item 1 & description of the item & item 2 & description of the item \\ item 3 & description of the item & item 4 & description of the item \\ \end{tblr} } \caption{Caption of image 2 where I like to omit the dot at the end of legend} \end{figure} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \end{document}
- foreach doesn't split a dynamically build variable (csname)?by lAtExFaN on November 11, 2026 at 5:33 pm
I would like to process/build a list of filenames to be processed by \input I use pgf's foreach to process/build the list for filenames. But the build lists aren't split (seems to be expansion; I have no clue how to solve (not even how to ask properly). Hopefully this example code helps to understand my goal and the problem. \documentclass{article} \usepackage{pgffor}% http://ctan.org/pkg/{pgf,pgffor} \begin{filecontents}[overwrite,noheader]{fileA.tex} Content file A\par \end{filecontents} \begin{filecontents}[overwrite,noheader]{fileB.tex} Content file B\par \end{filecontents} \begin{filecontents}[overwrite,noheader]{fileC.tex} Content file C\par \end{filecontents} \begin{document} %There are n lists, named eg. parts- and stationsList: \newcommand{\partsList}{fileA,fileB,fileC} \newcommand{\stationsList}{fileC,fileB,fileA} % I would like to iterate over the names, build the lists % and \input each list's files: \foreach \listName in {parts, stations} {% \newcommand{\aList}{\csname \listName List\endcsname} aList (\listName): \aList\par %<- seems fine, but ... \foreach \file in \aList {% ... isn't split %\input{\file} %<- fails obiously f: \file\par %<- output for debugging/testing } } \end{document}
- Winedit book contents [closed]by user450830 on November 11, 2026 at 7:31 am
In Latex Winedit, I am writing a book which has five chapters, including preface, acknowledgement, index, bibliography etc, now I want to extract contents from the book, what to do for displaying only contents pages not the other things.
- Attempting to make align environment that's very long fit on pageby leg42004 on November 11, 2026 at 5:57 am
I am working on formatting a line of equalities, including a second column labelling where each equality comes from. Below is my tex code. Any ideas on how to get this to look nice and fit on the page? \documentclass{article} \usepackage{amsmath} \begin{document} \newcommand{\by}[2]{&{#1}&\text{#2}} \newcommand{\id}{\text{id}} \newcommand{\ev}{\text{ev}} \newcommand{\coev}{\text{coev}} \newcommand{\cat}{\mathcal{C}} \begin{alignat*}{2} &(\id_Z \otimes \ev_Y \otimes \id_{X^*}) \circ (\tilde{g} \otimes \tilde{f}) = (\id_Z \otimes \ev_Y \otimes \id_{X^*})\circ (((g\otimes \id_{Y^*}) \circ \coev_Y) \otimes (f\otimes \id_{X^*}) \circ \coev_X)\\ &= (\id_Z \otimes \ev_Y \otimes \id_{X^*})\circ (g\otimes \id_{Y^*}\otimes f\otimes \id_{X^*}) \circ (\coev_Y \otimes \coev_X) \by{\quad}{by functoriallity of $\otimes$}\\ &=(\id_Z\otimes \ev_Y \otimes \id_{X^*}) \circ (\id_Z \otimes \id_{Y^*}\otimes \id_Y \otimes \id_{X^*}) \circ (g\otimes \id_{Y^*}\otimes f\otimes \id_{X^*}) \circ (\coev_Y \otimes \coev_X)\\ &= (g\otimes \ev_Y \otimes \id_{X^*}) \circ (\id_Y \otimes \id_{Y^*}\otimes \id_Y \otimes \id_{X^*}) \circ (\id_Y\otimes \id_{Y^*}\otimes f\otimes \id_{X^*}) \circ (\coev_Y \otimes \coev_X)\\ &= (g\otimes \ev_Y \otimes \id_{X^*}) \circ (\id_Y \otimes \id_{Y^*}\otimes \id_Y \otimes \id_{X^*}) \circ (\coev_Y \otimes ((f\otimes \id_{X^*})\circ \coev_X) \by{\quad}{by functoriallity of $\otimes$}\\ &= (g\otimes \id_{1_\cat} \otimes \id_{X^*}) \circ (\id_Y \otimes \ev_Y \otimes \id_{X^*}) \circ (\id_Z \otimes \coev_Y \otimes \id_{X^*}) \circ (((f\otimes \id_{X^*})\circ \coev_X) \\ &= (g\otimes \id_{1_\cat} \otimes \id_{X^*}) \circ (((\id_Y \otimes \ev_Y) \circ (\id_Z \otimes \coev_Y)) \otimes \id_{X^*}) \circ (((f\otimes \id_{X^*})\circ \coev_X) \by{\quad}{by functoriallity of $\otimes$}\\ &= (g\otimes \id_{X^*}) \circ (\id_Y \otimes \id_{X^*}) \circ (((f\otimes \id_{X^*})\circ \coev_X) \by{\quad}{by $\cat$ having duals.}\\ &= (g\otimes \id_{X^*}) \circ (((f\otimes \id_{X^*})\circ \coev_X) \\ &= ((g\circ f) \otimes \id_{X^*}) \circ \coev_X \by{\quad}{by functoriallity of $\otimes$}\\ &= \widetilde{g\circ f}\\ \end{alignat*} \end{document}
- Is it possible to create commutative diagrams with hawkdraw package?by Luis Turcio on November 10, 2026 at 1:56 am
I'm trying to use hawkdraw package, I know is a new package still in development. Still I would like to use it to draw commutative diagrams. This is a (posible naïve) first attempt: \documentclass{article} \usepackage{hawkdraw} \begin{document} \begin{hawkdraw} \node[at={(0cm,0cm)}, name={1-1}] {A} \node[at={(3cm,0cm)}, name={1-2}] {B} \stroke[arrow end]{(1-1) -- (1-2)} \end{hawkdraw} \end{document} But the output is rather unespected: If the start of the stroke is (0cm,0cm), then the result is more accurate: I'm trying to use it like this because of the similarity with tikz. There is something wrong with the code? Also, is it planned to support commutative diagrams?
- Can you draw graphs with overleaf’s free version? [closed]by Rainofrisk on November 9, 2026 at 9:31 pm
I just discovered that you can make graphs in LaTeX. As a high school student whose only access point to the software is overleaf on my school iPad, is there a way to make graphs? This would be incredibly useful.
- MTPro2 Lite: curly brace changes appearance when using \dfrac inside casesby Sebastiano on November 9, 2026 at 9:11 pm
I am using the mtpro2[lite] package and have noticed an unexpected behaviour when using \dfrac inside the cases environment. When I use \frac, the left curly brace has its usual appearance. However, when I replace \frac with \dfrac, the curly brace changes its appearance. Interestingly, this does not happen with \ccases: the brace retains the same appearance even when using \dfrac. Here is a minimal working example: \documentclass[12pt]{article} \usepackage{mathtools} \usepackage[lite]{mtpro2} \begin{document} \[ f(x)= \begin{cases} \dfrac{1}{x}, & x>0,\\ \dfrac{x^2+1}{x-1}, & x<0 \end{cases} \] \[ f(x)= \begin{cases} \frac{1}{x}, & x>0,\\ \frac{x^2+1}{x-1}, & x<0 \end{cases} \] \[ g(x)=\ccases{ \dfrac{1}{x}, & x>0,\\ \dfrac{x^2+1}{x-1}, & x<0 } \] \end{document} Why is there this difference?
- Losing Section Hierarchy When Using Cleverrefby Mark Verschell on November 9, 2026 at 9:01 pm
I am trying to get complete hierarchical section labels by using cleverref in the main body, e.g., I.B.2., but just each section in the TOC {2.}. I have gotten pretty close, but now I am stumped. Two problems in my MWE: In the TOC, the section prints as I Main Topic, when I need I. Main Topic (missing period); while the subsections have the complete hierarchy, the subsubsection does not, I.1. instead of I.A.1. Thanks in advance: Minimum Working Example \documentclass[12pt,letterpaper]{article} % --- Packages --- \usepackage[explicit]{titlesec} % Custom section formatting \usepackage{ulem} \usepackage{cleveref} % --- Section Title Formatting --- \titleformat{\section}{\normalfont\bfseries\centering}{\thesection.}{0.5em}{\MakeUppercase{#1}} \titleformat{\subsection}{\normalfont\bfseries}{\thesubsection}{0.5em}{#1} \titleformat{\subsubsection}{\normalfont\bfseries}{\thesubsubsection}{1em}{\uline{#1}} \makeatletter \renewcommand{\p@section}{\thesection.} \renewcommand{\p@subsection}{\thesection.} \renewcommand{\p@subsubsection}{\thesection.} \renewcommand{\thesection}{\Roman{section}} \renewcommand{\thesubsection}{\Alph{subsection}.} \renewcommand{\thesubsubsection}{\arabic{subsubsection}.} \makeatother \begin{document} \tableofcontents \section{Main Topic} \subsection{First Sub-point}\label{subsec:first} \subsubsection{First Sub-Sub-point}\label{subsubsec:first} \subsection{Second Sub-point}\label{subsec:second} \subsection{Third Sub-point}\label{subsec:third} See \cref{subsec:first} for details. \Cref{subsec:first} provides the overview. We analyze this across \cref{subsec:first,subsec:second,subsec:third} Finally, we refer to \cref{subsubsec:first} \end{document} Which gives:
- ConTeXt: snapping ascenders of headings to gridby Georgian Ilie on November 9, 2026 at 7:58 pm
Good evening everyone, To be more clear in my request, I start the message by showing this output: which derives from the code below: \setuplayout[grid=yes] \setuphead[chapter][style={\tfb}] \starttext \showgrid \chapter{Hello} This is a text. \section{What's up?} This is some other text. \stoptext I would like to snap the top of the headings to the baselines staying on top of them, that is, to snap the top of Chapter "Hello" to line 1 and the top of section "What's up?" to line 10. I know that there are some options about snapping within \setuphead, but I did not find the correct one (I ask for sorry in advance if I have missed it). Is there a simple solution to this? Thank you in advance for your help. Edit 1 To be more clear in my request, I add the following pictorial example: In addition, as requested I provide the output of the code including \showstruts in the preamble of my code:
- Long document \inputting many small files that may \input smaller files, comprising "nested" sectionsby eigengrau on November 9, 2026 at 6:46 pm
I'm trying to develop and organize a long document about one overall (math and theoretical computer science, i.e., domain theory) subject, but with many subtopics that I need to individually focus my thinking on. And I can't really see the best way to "fit together" all the necessary subtopics until they've been mostly written. So I want to write each in its own topic.tex file, and eventually \input each such topic file in a more-or-less skeleton paper.tex file. But, as per title, after I get my thoughts better organized, a heirarchy may emerge such that some topic files end up \inputting others. And then, what I originally wrote as \sections in one topic file, may need to end up as \subsections (or \subsubsections, or \paragraphs, etc) when \inputted by another. Is there any way to sensibly accomplish that kind of thing? If we could reasonably do stuff like \begin{section}...\end{section}, then that kind of nesting could, at least in principle, be effectively recognized, e.g., if one such \begin{section}...\end(section} ends up being \inputted by another such section, then it would automatically be formatted as a \subsubsection, and numbered accordingly. But as it stands, seems like I'd have to do lots and lots of secretarial-type editing and re-editing to organize and re-organize (and re-re-organize) the topic files as the work progresses and I get better ideas about how all the little pieces should best fit together. Is there any latex approach that gives me the desired organizational flexibility with a minimum of secretarial editing overhead? I'd have thought this is a reasonably common kind of situation, but couldn't google a solution. Thanks.
- How to use the siunitx S column type (for tabular...) in a Jinja2 latex template?by Serge Ballesta on November 9, 2026 at 3:17 pm
I have to provide an automatic report containing financial data in tables. What I mean is that I want some data to display as 12,20 € and aligned on the decimal comma (comma is the decimal point in French locale...), even if it was passed 12.2 €. So far so good, I have found the S column type of the siunitx package which nicely handles the conversion and my source file looks like: ... \usepackage{tabularx} \usepackage[table]{xcolor} \usepackage{siunitx} \sisetup{ locale = FR, round-mode = places, round-precision = 2, round-pad = true } ... \begin{tabularx}{0.9\textwidth}{XSc} \rowcolor{black!10} \textbf{Description}&\textbf{Montant}&\textbf{Date} \\Cours à domicile&24.48 \euro{}&07/07/2026 \\Cours à domicile&40.8 \euro{}&08/07/2026 \end{tabularx} ... Things only go bad when I try to automate the task, with a Jinja2 template. Because the template table becomes: \begin{tabularx}{0.9\textwidth}{XSc} \rowcolor{black!10} \textbf{Description}&\textbf{Montant}&\textbf{Date} <! for presta in invoice.prestas !> \\<<presta.label>>&<<presta.amount>> \euro{}&<<presta.dat.strftime('%d/%m/%Y')>> <!endfor!> \end{tabularx} And I can no longer test the template as a valid latex document because the S type complains that it is given invalid values. What I have tried: manually replace the S with a r while developing the template, and only switch to S when the template is ready for production : it works but is err... manual use a variable containing XScor Xrc to allow an automatic switch. But then the tabular environment complains that it is given an invalid format string make all the conversions in the upside Python code and only use r column format. It surely works, but the S type looked so cute... I am now using the manual method 1, but wonder whether more clever ways could exist. So the question is : Is there a way to have a tex template for Jinja2 containing tables using the S column type from sunitx and have that template be a valid latex document?
- What's the position of LaTeX community on LLM-geneated software? [closed]by niru on November 9, 2026 at 9:16 am
Like many other software communities, the LaTeX world also has started witnessing software fully written by (or co-authored by) LLM models aka AI. I have some software that I developed for my personal use. I would like to distribute it. I generally prefer distributing my own software on forums that are decentralized and community-oriented, e.g., GNU Savannah, Puszcza, Codeberg, Sourcehut, git gay (as opposed to enterprises, e.g., Microsoft GitHub, Gitlab). Most of these decentralized software hosts have decided to not allow hosting LLM-generated software. In light of this, I wonder what the stance of LaTeX community is on this. There already are some packages written using LLM on CTAN and the number might soon increase. How should this be looked at? Note: I am aware that this is neither directly related to the TeX SE website, nor to its meta, but since it is primarily about best practices of (La)TeX development, I think this is a good place for this discussion. If it is still found to be not suitable for the website, I will delete it.
- Bidirectional hyperlinks between exercises and figures in LaTeXby Sebastiano on November 8, 2026 at 10:12 pm
I have the following minimal working example: \documentclass[12pt,a4paper]{amsart} \usepackage{tikz} \usepackage[colorlinks=true,linkcolor=blue]{hyperref} \newtheorem{Es}{Esercizio} \begin{document} \section{Esercizi} \begin{Es} My solution Link to figure \end{Es} \bigskip \begin{Es} My solution \end{Es} \newpage \section*{Figure} %%%%%%%%%%%%%%%%% Add automatically link to exercise \begin{figure}[htbp] \centering \begin{tikzpicture}[scale=1.25] \draw[->] (-1.8,0) -- (1.8,0) node[below right] {$x$}; \draw[->] (0,-1.8) -- (0,1.8) node[below left] {$y$}; \draw[gray, thick] (0,0) circle (1); \draw[gray,very thick] (0,0) circle (1.5); \fill (0,0) circle (0.025); \node[below left] at (0,0) {$O$}; \draw[blue, very thick, domain=45:225, samples=100] plot ({1.5*cos(\x)},{1.5*sin(\x)}); \draw[blue, fill=white, very thick] ({1.5*cos(45)},{1.5*sin(45)}) circle (0.06); \draw[blue, fill=white, very thick] ({1.5*cos(225)},{1.5*sin(225)}) circle (0.06); \draw[dashed, gray] (0,0) -- ({1.6*cos(45)},{1.6*sin(45)}); \draw[dashed, gray] (0,0) -- ({1.6*cos(225)},{1.6*sin(225)}); \node[above right] at ({1.5*cos(45)},{1.5*sin(45)}) {$\frac{\pi}{4}$}; \node[below left] at ({1.5*cos(225)},{1.5*sin(225)}) {$\frac{5\pi}{4}$}; \end{tikzpicture} \caption{Soluzioni della disequazione $\sin x-\cos x>0$.} \label{fig:soluzioni_seno_coseno} \end{figure} \end{document} How can I modify this example to automatically create bidirectional hyperlinks between each Es environment and its corresponding TikZ figure, so that clicking at the end of an exercise takes me to its figure and clicking at the end of the figure takes me back to the exercise, without manually specifying exercise numbers, figure numbers, \hypertarget, or \hyperlink? Here an example PDF in this link https://www.lorenzoroi.net/prelievi/ProblemiEsame3.pdf PS: In this question Hyperlinks from exercises to solutions and vice versa there are mdframed and tcolorbox which I don’t need for the exercises, and I’d like it to be, for example, ‘Exercise 1 (solution)’, and at the end, in a final section, the image relating to Exercise 1 which, when clicked, takes me to the solution to the exercise, just like the PDF file mentioned above. I'm looking for a very simple solution that doesn't include packages released after 2018
- pgfplots warning when input starts with equal digitsby jlab on November 8, 2026 at 2:28 pm
I'm plotting thermodynamics data with pgfplots. I get a strange warning when a value begin with 55. For example: \addplot table[x index=3,y index=1, col sep=comma]{ 311.00, 100.00, 55.463, 0.018030 } ; gives Missing character: There is no . (U+002E) in font nullfont! Missing character: There is no 4 (U+0034) in font nullfont! Missing character: There is no 6 (U+0036) in font nullfont! Missing character: There is no 3 (U+0033) in font nullfont! If I replace 55.463 with 550 I get Missing character: There is no 0 (U+0030) in font nullfont! But there is no warning if 55.463 is replaced by 5.463 54.463 56.463 Any idea to explain this strange behaviour? Compilable example: \documentclass{article} \usepackage{pgfplots} \pgfplotsset{compat=1.18} \begin{document} \begin{tikzpicture} \begin{axis}[ ,xmin = {0} ,xmax = {0.02} ,ymin = {90} ,ymax = {300} ] %% Warnings: %% Missing character: There is no . (U+002E) in font nullfont! %% Missing character: There is no 4 (U+0034) in font nullfont! %% Missing character: There is no 6 (U+0036) in font nullfont! %% Missing character: There is no 3 (U+0033) in font nullfont! %% \addplot table[x index=3,y index=1, col sep=comma]{ 311.00, 100.00, 55.463, 0.018030 } ; %% Replace 55.463 by 550: %% Missing character: There is no 0 (U+0030) in font nullfont! \addplot table[x index=3,y index=1, col sep=comma]{ 311.00, 100.00, 550, 0.018030 } ; %% Replace 55.463 by 5.463: no warnings \addplot table[x index=3,y index=1, col sep=comma]{ 311.00, 100.00, 5.463, 0.018030 } ; %% Replace 55.463 by 54.463: no warnings \addplot table[x index=3,y index=1, col sep=comma]{ 311.00, 100.00, 54.463, 0.018030 } ; %% Replace 55.463 by 56.463: no warnings \addplot table[x index=3,y index=1, col sep=comma]{ 311.00, 100.00, 56.463, 0.018030 } ; \end{axis} \end{tikzpicture} \end{document} Bug report I filled a bug report for that: https://github.com/pgf-tikz/pgfplots/issues/532
- Stop furigana (ruby) from pushing down titles (with luatexja-ruby)by threedaymonk on November 7, 2026 at 2:12 pm
Titles that include furigana push the title down, making them look out of alignment when compared to adjacent titles without. In the example below, the "With furigana" title and column is significantly lower than the adjacent title and paragraph text. \documentclass[a4paper, landscape]{book} \usepackage{luatexja} \usepackage{luatexja-ruby} \usepackage{multicol} \usepackage[margin=20mm]{geometry} \usepackage{lipsum} \begin{document} %\topskip=40pt \pagestyle{plain} \begin{multicols*}{3} \raggedcolumns \section*{With furigana・\ruby{振}{ふ}り\ruby{仮名}{がな}\ruby{有}{あ}り} \columnbreak \section*{Without furigana・振り仮名無し} \lipsum[1-20] \end{multicols*} \end{document} What I'd like to do is to let the furigana bleed into the blank space above, whether that's the page margin or a gap after a preceding (sub(sub(sub))) section, so that the text of both titles is at the same height. I can partially solve this by setting \topskip to a large enough value (e.g. 40pt), but this results in the third column paragraph lines losing alignment and there's now a big gap at the top: What I want to achieve is the alignment of columns 2 and 3 from the first image, and the alignment of columns 1 and 2 from the second, and no additional whitespace at the top. Is this possible?
- Punctuation with \textcitesby KeithB on November 7, 2026 at 11:25 am
I am using code like \textcites[57]{Faith:peasantry}[106--15]{Faith:moral} with this configuration: \usepackage[bibencoding=utf8,doi=false,isbn=false,url=false,eprint=false,dashed=true,uniquename=false,style=authoryear-comp,sorting=nyt,backref=true,useprefix=true,hyperref,backend=biber,urldate=long]{biblatex} The result looks like: Faith (1997, 57, 2020, 106–15) when I would like a semicolon: Faith (1997, 57; 2020, 106–15) I have tried \DeclareDelimFormat[textcite,textcites]{compcitedelim}{\addsemicolon\space} \DeclareDelimFormat[textcite,textcites]{multicitedelim}{\addsemicolon\space} but it's having no effect. Any suggestions? MWE: \documentclass[12pt,a4paper]{article} \usepackage[bibencoding=utf8,doi=false,isbn=false,url=false,eprint=false,dashed=true,uniquename=false,style=authoryear-comp,sorting=nyt,backref=true,useprefix=true,backend=biber,urldate=long]{biblatex} \bibliography{biblatex-examples} \begin{document} \textcites[57]{knuth:ct:c}[106--15]{knuth:ct:related}. \end{document} giving: Knuth (1986, p. 57, 1984–1986, pp. 106–15).
- Adding double line breaks into LaTeX code(!) inside align environment [duplicate]by kb70145613 on November 7, 2026 at 8:33 am
This is not a question about adding breaks into the output document. Suppose that you have a pretty long equation code inside align environment: \begin{align} &\Omega(\funTarget\funTarget\funTarget\NatTrans_A \circ \funTarget\funTarget\NatTrans_A \circ (1 + \funTarget\NatTrans_A) \circ \NatTrans_A)\\ =& ... \end{align} In most programming/markup languages, I would be able to write it as: \begin{align} & \Omega( \funTarget\funTarget\funTarget\NatTrans_A \circ \funTarget\funTarget\NatTrans_A ( 1 + \circ \funTarget\NatTrans_A ) \circ \NatTrans_A )\\ =& ... \end{align} It would make it much more readable and easier to edit. But LaTeX fails with an error when dealing with this kind of line breaks: Missing $ inserted. I guess that double line breaks have some special meaning inside LaTeX. Is there a way to temporarily disable this meaning and let line breaks be normal characters which could be used to organize the code? Or is this behavior is embedded deeply into LaTeX and I should just get used to unreadable code when equations get longer? I was looking into other questions and most of them try to add line breaks into the output document instead. If there is a way to adjust math environments to automatically replace sequences of line breaks with a singular line break, it would be great.
- \edef with incomplete expansionby Elayson Abreu on November 6, 2026 at 7:00 pm
I have a macro that removes whitespace from a set of tokens, called \removespaces. When I compile the code below, 1_2_3_ becomes 123 (where the underscore represents a whitespace character). In other words, \z=macro: ->123. And this is the desired result. \def\removespaces#1 {\if\relax\detokenize{#1}\relax\else#1\expandafter\removespaces\fi} \edef\z{\removespaces 1 2 3 {} } \show\z \bye The code below, in turn, produces the result \z=macro: ->1 2 3 {} . \def\removespaces#1 {\if\relax\detokenize{#1}\relax\else#1\expandafter\removespaces\fi} \def\y#1{\removespaces#1 {} } \edef\z{\y{ 1 2 3 }} \show\z \bye So my question is, why didn't a complete expansion occur at \z?
- Print page numbers from one run of a document as rules in a later run?by modallyFragile on November 6, 2026 at 11:27 am
I have a custom class for making lecture handouts. It has an environment notes and an option notes; when the option is enabled, everything in the environment is printed in greyed-out text. When it is not, the environment is ignored completely. I use this to prepare my own, 'instructors version' of the handout for each lecture -- I write just one document, then I compile without the option (and print many copies for the students), then recompile with the option (and print one copy for me). During lectures I often refer to our place in the handout. Before I used the greyed-out notes I used to do this by page number. But of course, with the greyed-out notes, my copy of the handout has different numbering to the student's. I can use section and paragraph numbers, but it's not the same. Goal: I would like to somehow save the locations of the page-breaks in the students (non-noted) compilation run, and print these, perhaps as margin notes or cross-pages rules, in my notated compilation run (e.g. similar to the cross-page rules used for page-numbering here). I know how to do all the typesetting and I can play around with the format myself, but I don't know where to start with saving and printing the external numbers. I imagine the answer has something to do with the aux file, zref, or maybe the new marks interface? Ideally I would also like to be able to compile with notes more than once, and not lose the existing data on the student's page numbering, but I recognise that might be a lot of extra work for little benefit. Any solution should also ideally account for the possibility that I compile with notes first, and so there is no data on the students' numbering -- in this case perhaps just print a question mark or something. Here's an MWE. \begin{filecontents}[overwrite]{handout.cls} \NeedsTeXFormat{LaTeX2e} \ProvidesClass{handout-base} % Option for displaying notes \newif\ifnotes \notesfalse \DeclareOption{notes}{% \typeout{Option `notes' passed, notes will be displayed. Define macro `noteformat' to change formatting.} \notestrue% } \DeclareOption*{% \PassOptionsToClass{\CurrentOption}{article}% } \ProcessOptions\relax \LoadClass{article} \RequirePackage{xcolor} % Environment for writing notes \NewDocumentEnvironment{notes}{ +b }% {\ifnotes\bgroup\color{gray}#1\fi}% {\ifnotes\egroup\fi} % Cross-page rule counter printer for the page number \newcommand*\arabicpagerule[1]{\expandafter\@arabicpagerule\csname c@#1\endcsname} \newcommand*\@arabicpagerule[1]{ \begin{center} \hrulefill\raisebox{-0.5ex}{\the#1}\hrulefill\relax \end{center} } \end{filecontents} \documentclass% % [notes] % Uncomment and recompile for notated version {handout} \title{On the importance of \LaTeX\ in academia} \date{}\author{} \usepackage{lipsum} \begin{document} \maketitle \section{\TeX, the earlier days} \lipsum[1-2] \begin{notes}\lipsum[3]\end{notes} \section{Lamport's genius} \lipsum[5-6] \end{document} Which delivers: And my desired output after two runs, without then with notes, is something like this: Any help gratefully received. TIA.