• A little mystery about array and math mode
    by invictus on July 16, 2026 at 1:05 pm

    As far as I know, the array environment needs to be in math mode. Not surprisingly, the following code fails on TeXlive 2025 on Overleaf with the error message "missing $ inserted". \documentclass{article} \begin{document} \begin{array}{c} x \end{array} \end{document} However, the same code compiles without any errors on my local TeXlive 2026. I haven't found any documentation on the change of the behavior of array from 2025 to 2026, so I am curious how it is able to run outside of math mode here. kpsewhich latex.ltx returns /usr/local/texlive/2026basic/texmf-dist/tex/latex/base/latex.ltx and kpsewhich array.sty returns /usr/local/texlive/2026basic/texmf-dist/tex/latex/tools/array.sty The file resides alone in a separate folder of its own. So, it seems that the standard texlive distribution is used and nothing else. Any ideas?

  • Styling Headings in Chinese
    by Climber of Mount. LaTeX on July 16, 2026 at 3:11 am

    Is there a macro or something out there to convert the style of headings into Chinese? By which I mean, to make something like \documentclass{article} \usepackage{xeCJK} \setCJKmainfont{Noto Sans CJK TC} \begin{document} \section{甲章} \subsection{甲節} \subsection{乙節} \end{document} display 壹、甲章 一、甲節 二、乙節 Preferably, the numberings should be customizable between 壹貳, 一二, 甲乙, (一)(二), 1 2, and so on. For reference, I am using XeLaTeX and the xeCJK package on the Overleaf platform.

  • Canvas 3D effect for vectors flattened along an axis or plane
    by Sebastiano on July 15, 2026 at 7:39 pm

    I would like to realize the following image in TikZ, which I had created very roughly in Adobe Illustrator. I am interested in understanding how to use TikZ 3d canvas to squash vectors along planes or lines. I would also like to see how it is used for labels. Here my attempt. See after the missing pieces. \documentclass{article} \usepackage{amsmath} \usepackage{bm} \usepackage{tikz} \usetikzlibrary{arrows.meta, angles, calc} \tikzset{rhtip/.tip={Triangle[line width=1pt, fill=white, length=9pt, width=9pt]}} \definecolor{vectorgreen}{RGB}{76, 181, 93} \definecolor{vectororange}{RGB}{235, 104, 38} \definecolor{vectorbrown}{RGB}{175, 110, 52} \definecolor{ellipseblue}{RGB}{112, 196, 172} \definecolor{spherepurple}{RGB}{155, 120, 200} \begin{document} \begin{tikzpicture}[>=latex] \coordinate (O) at (0,0); \draw[thin, black!70] (O) -- (0, 4.2) node[right, font=\Large] {$z$}; \draw[thin, black!70] (O) -- (5.5, -1.0) node[below right, font=\Large] {$y$}; \draw[thin, black!70] (O) -- (-4.8, -1.9) node[left, font=\Large] {$x$}; \coordinate (C) at (-2.2, -0.88); \fill[black] (C) circle (3.5pt) node[below=8pt, font=\Large] {$C$}; \begin{scope}[shift={(C)}, rotate=12] \draw[ellipseblue, line width=1.5pt] (0,0) ellipse (1.1 and 2.5); \draw[ellipseblue, line width=1.5pt, ->, >=latex] (131:1.1 and 2.5) -- (130:1.1 and 2.5); \draw[thin, black!60] (0,0) -- (225:1.1 and 2.5) node[midway, below right, font=\Large] {$r$}; \shade[ball color=spherepurple] (155:1.1 and 2.5) circle (0.18); \end{scope} \coordinate (P) at (4.0, 2.3); \coordinate (P_proj) at (4.0, -1.6); \draw[dashed, thick, black!80] (P) -- (P_proj); \draw[dashed, thick, black!80] (O) -- (P_proj); \draw[-rhtip, vectororange, line width=2pt] (O) -- (0, 1.9); \node[above right=2pt, font=\Large] at (0, 1.9) {$\bm{\beta}$}; \draw[-rhtip, vectorbrown, line width=2pt] (O) -- (-1.4, -0.56); \node[above=6pt, font=\Large] at (-0.7, -0.15) {$\mathbf{a}$}; \draw[-rhtip, vectorgreen, line width=2pt] (O) -- (3.9, 2.2); \node[below right=4pt, font=\Large] at (1.8, 1.1) {$\mathbf{R}$}; \fill[black] (P) circle (3.5pt) node[above right=4pt, font=\Large] {$P$}; \shade[ball color=spherepurple] (O) circle (0.22); \node[above left=6pt, font=\Large] at (O) {$q$}; \draw[<->, >=latex, semithick, black!80] (30:1.3) arc (30:90:1.3); \node[font=\Large] at (60:1.65) {$\theta$}; \node[font=\Large, below left=6pt] at (1, 0, 1) {$\varphi$}; \end{tikzpicture} \end{document}

  • Displaying an Elliptical Ring of Segments with Angular Adjustments
    by DDS on July 15, 2026 at 5:37 pm

    Consider the code: \documentclass{book} \usepackage{graphicx} \usepackage{tikz} \usetikzlibrary{decorations.markings} \begin{document} \thispagestyle{empty} \begin{center} \begin{tikzpicture} \fill[red!55!black] rectangle (6,8); \draw[ decoration={markings, mark=between positions 0 and 1 step 1/12 with { \node {\textcolor{yellow}{\rule{0.35in}{.65mm}}}; } }, decorate ] (3,4) ellipse (2cm and 3cm); \end{tikzpicture} \end{center} \end{document} which produces QUESTION: How may I display each of these twelve line segments so that they are pointed in their relative angular direction from the center? In other words, if we call the line segment farthest to the right the first line segment---it will be displayed as is. The second line segment (being the one immediately above it) will be pointed in a direction 30 degrees above the horizontal. Proceeding in a counterclockwise direction, the next angle will be pointed 60 degrees ... and so forth. I compile the code with xelatex. Thank you.

  • List of theorems in HTML using tex4ht + thmtools
    by Stephen Powell on July 15, 2026 at 12:19 pm

    The following (listoftheorems.tex) uses the command \listoftheorems provided by the thmtools package: \documentclass{article} \usepackage{hyperref} \usepackage{amsthm} \usepackage{thmtools} \declaretheorem{theorem} \begin{document} \begin{theorem}[Euclid] For every prime $p$, there is a prime $p'>p$. \end{theorem} \listoftheorems \end{document} Compiled to PDF, it gives a \section* containing a numbered list of theorems. But when I compile the document to HTML (make4ht listoftheorems.tex), the list of theorems is empty.

  • Inconsistent font feature rendering with plain luatex
    by niru on July 15, 2026 at 11:08 am

    For some reasons, I have to work with plain LuaTeX. All this while, I have used LuaLaTeX with fontspec and moving to LuaTeX is not exactly easy. I am getting surprised by LuaTeX's behaviour. For example, let's have a look at the following code: \input luaotfload.sty \font\main={NewCM10-Book:+onum,+cv06,+liga} \font\deva={Mukta-Light:Language=Marathi,Script=Devanagari} \main hello world 1234567890 {\deva निरंजन ल श} \bye When I run the exact same code multiple times (with the same terminal command, i.e., luatex test.tex), I sometimes get: which is incorrect. Sometimes I get: which is partly correct (the special linguistic forms of Marathi are not rendered). Sometimes, with the same code, I have gotten the following which is fully correct: I mean, what? I chose this particular MWE because this is a typical setup in most of my PDF files. NewCM10-Book with old style numbers and old style one (provided by +cv06) and Mukta-Light for Marathi text. I added the features on purpose to show that in both the screenshots, multiple features are working correctly for NewCM10, but in some compilations, it is breaking for Mukta. I compared the log of both correct and incorrect output and the only difference was in the byte size reported by "Output written on test.pdf (1 page, 17621 bytes)". Rest everything was okay. What exactly could be happening? Note that this is happening with a fully updated TeX Live 2026 on a GNU Linux machine.

  • Using expl3 syntax in my command. How to fix my code that uses a command to set fonts for foreign scripts in math mode in LuaLaTeX?
    by Sageof6Paths on July 14, 2026 at 4:59 pm

    From my previous question here, I wanted a way to be able to write foreign scripts directly in math mode in LuaLaTeX while having different fonts for rm, sf, and tt. niru's answer provided what I wanted, but I wanted to wrap it all in a command like egreg's answer. When I rewrote niru's answer in the style of egreg's, foreign fonts don't render in text mode. I believe the problem lies here: \babelfont[#1]{rm}[NFSSFamily = {#1rm},#3]{#2} \babelfont[#1]{sf}[NFSSFamily = {#1sf},#5]{#4} \babelfont[#1]{tt}[NFSSFamily = {#1tt},#7]{#6} Anyhow, here is the code I'm using: \documentclass{article} \usepackage{babel} \usepackage{unicode-math} \usepackage{xcolor} \ExplSyntaxOn % Resetting math fonts with \rmfamily \hook_gput_code:nnn { cmd / rmfamily / before } { . } { % English \mathversion { rm } } % Resetting math fonts with \sffamily \hook_gput_code:nnn { cmd / sffamily / before } { . } { % English \mathversion { sf } } % Resetting math fonts with \ttfamily \hook_gput_code:nnn { cmd / ttfamily / before } { . } { % English \mathversion { tt } } \hook_gput_code:nnn { begindocument / end } { . } { \mathversion { rm } } % \enableblockformath{symbolic name}{rm font}[rm further options]{sf font}[sf further options]{tt font}[tt further options]{blocks} \NewDocumentCommand{\enableblockformath}{mmO{}mO{}mO{}m} {% #1 = symbolic name % #2 = rm font % #3 = rm further options % #4 = sf font % #5 = sf further options % #6 = tt font % #7 = tt further options % #8 = blocks % Loading language \babelprovide[import,onchar={ids fonts}]{#1} % Loading fonts \babelfont[#1]{rm}[NFSSFamily = {#1rm},#3]{#2} \babelfont[#1]{sf}[NFSSFamily = {#1sf},#5]{#4} \babelfont[#1]{tt}[NFSSFamily = {#1tt},#7]{#6} % Resetting math fonts with \rmfamily \hook_gput_code:nnn { cmd / rmfamily / before } { . } { \clist_map_inline:nn {#8} { \__egreg_blocksformath:nnn {#1} {##1} {rm} } } % Resetting math fonts with \sffamily \hook_gput_code:nnn { cmd / sffamily / before } { . } { \clist_map_inline:nn {#8} { \__egreg_blocksformath:nnn {#1} {##1} {sf} } } % Resetting math fonts with \ttfamily \hook_gput_code:nnn { cmd / ttfamily / before } { . } { \clist_map_inline:nn {#8} { \__egreg_blocksformath:nnn {#1} {##1} {tt} } } \hook_gput_code:nnn { begindocument / end } { . } { \clist_map_inline:nn {#8} { \__egreg_blocksformath:nnn {#1} {##1} {rm} } } \DeclareSymbolFont{#1rm}{TU}{#1rm}{m}{n} \DeclareSymbolFont{#1sf}{TU}{#1sf}{m}{n} \DeclareSymbolFont{#1tt}{TU}{#1tt}{m}{n} } \cs_new_protected:Nn \__egreg_blocksformath:nnn { \seq_set_split:Nnn \l_tmpa_seq {-} {#2} \int_step_inline:nnn {\seq_item:Nn \l_tmpa_seq {1}} {\seq_item:Nn \l_tmpa_seq {2}} { \Umathcode ##1 = "0 ~ \use:c {sym#1#3} ~ ##1 } } \ExplSyntaxOff \babelprovide[import,main,onchar={ids fonts}]{english} \babelfont{rm}[Color = {red}]{NewCM10-Book.otf} \babelfont{sf}[Color = {green}]{NewCMSans10-Book.otf} \babelfont{tt}[Color = {blue}]{NewCMMono10-Book.otf} \setmathfont[version = {rm}, Color = {red}]{NewCMMath-Book.otf} \setmathfont[version = {sf}, Color = {green}]{NewCMSansMath-Regular.otf} \setmathfont[version = {tt}, Color = {blue}]{NewCMSansMath-Regular.otf} \enableblockformath{japanese}{HaranoAjiMincho-Regular.otf}[Color = {red}]{HaranoAjiGothic-Regular.otf}[Color = {green}]{HaranoAjiGothic-Regular.otf}[Color = {blue}]{"3040-"30FF,"4E00-"9FFF} \enableblockformath{thai}{NotoSerifThai-Regular.ttf}[Color = {red}]{NotoSansThai-Regular.ttf}[Color = {green}]{NotoSansThai-Regular.ttf}[Color = {blue}]{"0E00-"0E7F} \begin{document} English language ภาษาไทย 日本語 $x+y=ก+ข=あ+い$ \sffamily English language ภาษาไทย 日本語 $x+y=ก+ข=あ+い$ \ttfamily English language ภาษาไทย 日本語 $x+y=ก+ข=あ+い$ \end{document}

  • Text overflowing in tabular cell with makecell
    by Matias Aznar on July 13, 2026 at 11:05 pm

    I'm creating a table in LaTeX with images and multi-line text in one column. The text in the "Observaciones" (Observations) column is overflowing outside the table boundaries and not wrapping properly within the cell. The third row's text wraps correctly, but the first two rows' text extends beyond the table width. I'm using \makecell[l] but it's not containing the text properly. How can I ensure the text stays within the cell boundaries and wraps properly regardless of content length? All rows should align at the top with text contained within the column width. The images sizes are 1257x1262 px \documentclass{article} \usepackage{geometry} \usepackage{makecell} \usepackage{graphicx} \geometry{ letterpaper, margin=3cm } \setlength{\marginparwidth}{2cm} \begin{document} \begin{table}[H] \centering \small \begin{tabular}{ >{\raggedright\arraybackslash}m{2cm} >{\centering\arraybackslash}m{3.4cm} >{\centering\arraybackslash}m{3.4cm} >{\raggedright\arraybackslash}m{6cm} } \hline \textbf{Fase} & \textbf{$L_1$} & \textbf{$L_3$} & \textbf{Observaciones} \\ \hline Poros & \includegraphics[width=3.3cm]{example-image} & \includegraphics[width=3.3cm]{example-image} & \makecell[tl]{ $N$: 127,090\\ $P_j$: 1.52\\ $T_G$: -1.16\\ Fuerte linealidad vertical } \\ \hline Óxido & \includegraphics[width=3.3cm]{example-image} & \includegraphics[width=3.3cm]{example-image} & \makecell[tl]{ $N$: 2,228\\ $P_j$: 1.09\\ $T_G$: -0.18\\ Débil anisotropía } \\ \hline Plagioclasa & \includegraphics[width=3.3cm]{example-image} & \includegraphics[width=3.3cm]{example-image} & \makecell[tl]{ $N$: 1,065\\ $P_j$: 1.29\\ $T_G$: -0.73\\ Orientación preferencial moderada sin embargo, se concentra en el eje Z } \\ \hline \end{tabular} \caption{Análisis de orientación de fases de la muestra L187.} \label{tab:stereonets_l187} \end{table} \end{document}

  • Hollowed-out sphere effect
    by Sebastiano on July 13, 2026 at 10:49 pm

    How can I obtain the hollowed-out sphere effect? The drawing above is my original done many years before. \documentclass{article} \usepackage{tikz} \usetikzlibrary{arrows.meta, calc, positioning, shapes.geometric} \begin{document} \begin{tikzpicture}[ scale=1.2, axis/.style={thick, ->} ] \coordinate (O) at (0, 0); \coordinate (X) at (-2, -2.3); \coordinate (Y) at (5.5, 0); \coordinate (Z) at (0, 4); \coordinate (P) at (3.1, 1.3); \draw[axis] (O) -- (X) node[left, font=\large, xshift=-3pt] {$x$}; \draw[axis] (O) -- (Y) node[below, font=\large, yshift=-3pt] {$y$}; \draw[axis] (O) -- (Z) node[left, font=\large, xshift=-3pt] {$z$}; \begin{scope} \shade[ball color=gray!30!white, opacity=0.85] (O) circle (0.9); \draw[gray!60, thin] (O) circle (0.9); \fill[gray!60!black, opacity=0.9] plot[smooth cycle, tension=0.7] coordinates { ($(O)+(-0.2, 0.4)$) ($(O)+(0.5, 0.5)$) ($(O)+(0.6, -0.4)$) ($(O)+(0.1, -0.6)$) ($(O)+(-0.3, -0.3)$) }; \shade[inner color=black!80, outer color=gray!70!black, opacity=0.5] plot[smooth cycle, tension=0.7] coordinates { ($(O)+(-0.2, 0.4)$) ($(O)+(0.5, 0.5)$) ($(O)+(0.6, -0.4)$) ($(O)+(0.1, -0.6)$) ($(O)+(-0.3, -0.3)$) }; \end{scope} \fill[black] (O) circle (0.07) node[below, yshift=-4pt, font=\large] {$O$}; \draw[->, >=Stealth, shorten >= 2.5pt, shorten <= 2pt] (O) -- (P) node[midway, above, yshift=2pt, font=\large] {$r$}; \fill[black] (P) circle (0.08) node[above, yshift=3pt, font=\large] {$P$}; \node[right, font=\Large\itshape, xshift=2pt, yshift=-2pt] at (P) {$m$}; \node[below, font=\large] at (0.2, -0.95) {$M$}; \end{tikzpicture} \end{document}

  • Why does cycle produce a diagonal?
    by D G on July 13, 2026 at 7:11 pm

    I don't understand why there is a diagonal. \documentclass[tikz,border=12pt]{standalone} \begin{document} \begin{tikzpicture} \node [draw=red] (A) at (1,1) {A}; \draw (0,0) |- (A) |- cycle; \end{tikzpicture} \end{document} Expected output \begin{tikzpicture} \node [draw=red] (A) at (1,1) {A}; \draw (0,0) |- (A) |- (0,0); \end{tikzpicture} Edit Considering the following code. \begin{tikzpicture} \node [draw=red] (A) at (1,1) {A}; \draw (0,0) |- (A) |- cycle; \end{tikzpicture} Suppose there were two separate paths within a single \draw command: first path: (0,0) |- (A.west) second path: (A.south) |- cycle In that interpretation, cycle seems to have two contradictory behaviors: It remembers (0,0) from the first path and uses it as the destination of |- in the second path. However, it also treats (A.south) as the starting point of the second path instead of (0,0). Am I misunderstanding how cycle is supposed to work?

  • CJK fonts not working without \text{}
    by Climber of Mount. LaTeX on July 13, 2026 at 10:34 am

    Sorry if anything I ask or provide is inappropriate; I am new to TeX Stack Exchange. I am writing a Traditional Chinese LaTeX document. Sometimes I will need commentary in either align or equation, which is, of course, in Chinese. I usually use \text{} for the commentary, but they look cluttered and hard to read. However, removing the \text{} around the commentary simply makes the commentary disappear in the output. Is there a workaround? Re-defining \text{} won't help me, 'cause it'll still look cluttered. For reference I am on https://overleaf.com, using XeLaTeX. \documentclass{article} \usepackage{xeCJK} \setCJKmainfont{Noto Sans CJK TC} \usepackage{amsmath} \begin{document} This works: \begin{align} 1 + 1 &= 2 \text{ 一個人和一隻狗合起來是兩個東西}\\ 2 + 3 &= 5 \text{ 兩個人和三隻狗合起來是五個東西} \end{align} This doesn't: \begin{align} 1 + 1 &= 2 \quad 一個人和一隻狗合起來是兩個東西\\ 2 + 3 &= 5 \quad 兩個人和三隻狗合起來是五個東西 \end{align} \end{document} EDIT By "cluttered" I mean the code, not the output. Also, I would like to clarify that without \text{}, the commentary simply doesn't get displayed in the output at all, and I am looking for a way to de-clutter my code while getting the output to also work. UPDATE @Explorer suggested that I use LuaLaTeX to compile, but free Overleaf only gives 20 seconds of compile time, and LuaLaTeX exceeds that time even for small documents. Is there a workaround? Or do I have to stick to cluttered code?

  • Glitch with the UnderWavy example in `lua-ul` package?
    by Explorer on July 13, 2026 at 10:09 am

    I have the following code example taken from texdoc lua-ul: \documentclass{article} \usepackage[paperheight=5cm,paperwidth=10cm]{geometry} \usepackage{lipsum} \usepackage{xcolor,luacolor} \usepackage[soul]{lua-ul} \newunderlinetype\beginUnderWavy[\number\dimexpr1ex]{\cleaders\hbox{% \setlength\unitlength{.3ex}% \begin{picture}(4,0)(0,1) \thicklines \color{magenta}% \qbezier(0,0)(1,1)(2,0) \qbezier(2,0)(3,-1)(4,0) \end{picture}% }} \NewDocumentCommand\underWavy{+m}{{\beginUnderWavy#1}} \pagestyle{empty} \begin{document} \lipsum[2][1-5] \underWavy{Hello world Hello world Hello world Hello world Hello world Hello world Hello world Hello world Hello world} \lipsum[2][1-3] \end{document} However, when we zoom in, there exists glitch, but in texdoc lua-ul, the wavyline were smooth? Is this a bug or feature? Or maybe I missed some parameters setting?

  • Recommended workaround for the Lua(La)TeX `\mathit` regression in TeX Live 2026
    by Grsto on July 13, 2026 at 8:54 am

    Earlier this year I reported what appears to be a regression in LuaLaTeX's \mathit behaviour that was introduced in TeX Live 2026. The original discussion with the LuaTeX developers is here: https://tug.org/pipermail/luatex/2026-April/008187.html In short, the commonly recommended practice of using \mathit{} for multi-letter identifiers produces visually displeasing results with LuaLaTeX v1.24.0 (TeX Live 2026): \documentclass{standalone} \begin{document} \begin{tabular}{ll} \verb!|\emph{different}|! & |\emph{different}| \\ \verb!|$\textit{different}$|! & |$\textit{different}$| \\ \verb!|$\mathit{different}$|! & |$\mathit{different}$| \\ \verb!|$different$|! & |$different$| \\ \end{tabular} \end{document} As far as I understand, the underlying issue has since been fixed in LuaTeX v1.25.8. However, TeX Live generally does not update the LuaTeX binary during the lifetime of a TeX Live release, so this fix is unlikely to reach most TeX Live 2026 users until the next annual release. Assuming a user is required to use LuaLaTeX (for other reasons), what is the recommended workaround in the meantime? I would prefer not to change all occurrences of \mathit in my sources for what appears to be a temporary regression, and downgrading to TeX Live 2025 also seems like an undesirable solution. Alternatively, is there a practical way to use a newer LuaTeX binary with an existing TeX Live 2026 installation? (I have tried to do so, but I have not managed to get it working.) Thanks!

  • How to write a chemical reaction
    by Brasil on July 13, 2026 at 3:04 am

    I am trying to write a simple chemical reaction like this one: I have the MWE below. Can anyone help, please? \documentclass{article} \usepackage{chemfig} \begin{document} Nuclear reaction: \[ \schemestart \chemfig{^{235}U} \arrow{->} \chemfig{^{231}Th} \+ ^4\alpha \schemestop \] \end{document} with the error: ! Missing $ inserted. <inserted text> $ l.16 \schemestop ?

  • How to Point the Rounded Corners of a Filled Tikzpicture Inward?
    by Jethro on July 12, 2026 at 7:49 pm

    MWE: \documentclass{article} \usepackage{tikz} \begin{document} \begin{tikzpicture} \def\W{9} % width of the rectangle \def\H{15} % height of the rectangle \def\R{0.8} % radius of the inverted corners. \draw[ultra thick, fill=blue!80] (0, \R) arc (180:270:\R) -- (\W-\R, 0) arc (270:360:\R) -- (\W, \H-\R) arc (0:90:\R) -- (\R, \H) arc (90:180:\R) -- cycle; \end{tikzpicture} \end{document} output: How may I modify the code such that all four rounded corners are pointing inward; that is, the rounded part is pointing towards the interior of the figure and not the exterior? Thanks.

  • Controlling what appears in front in a 3d pgfplot
    by James on July 12, 2026 at 6:00 pm

    I'm trying to make a nice diagram to illustrate partial derivatives for my multivariable class. I have the graph of a function, a plane, the intersection of these in the graph, a tangent line, and some guide lines to show what's occurring, but (presumably because of the order in which they appear in the code) the diagram doesn't respect what object is behind a different object, i.e., the graph is drawn on top of the plane, or the plane is drawn on top of the graph, even though they ``should'' pass through one another. Is there any nice way to make whatever ``should'' be on top be drawn on top without manually finding intersections and having different domains/clip regions for different features? My code so far is below, along with the image that is produced \begin{standalone} \usepackage{tikz} \usepackage{pgfplots} \begin{document} \begin{tikzpicture} \begin{axis}[axis lines = center, xmin = 0, xmax = 3, ymin = 0, ymax = 3, view = {100}{30}, xlabel = {$x$}, ylabel = {$y$}, zlabel = {$z$}, xtick=\empty, ytick=\empty, ztick=\empty, ] % Using f(x,y) = 2 - (x-2)^3 - (y-1.5)^2 %graph \addplot3[ domain =1:3, y domain = 0.5:2.5,surf,colormap/viridis, opacity=0.9] {-(x-2)^3 - (y-1.5)^2 + 2}; %plane \draw[fill = blue!90, color = blue, opacity = 0.3] (2,0,0)--(2,3,0)-- (2,3,3) node[black, above, opacity = 0.9] {$x=a$}--(2,0,3)--cycle ; %intersection of line and plane \addplot3[domain = 0.5:2.5, blue, samples y = 1, thick] ({2},{x},{2 - (2-2)^3 - (x-1.5)^2}); %tangent line \addplot3[black, thick, domain = -1:1.23] ({2},{x+1},{-2*(1-1.5)*x + 2 - (1-1.5)^2}); %point of tangancy \draw[fill = black] (2,1, {2 - (1-1.5)^2}) circle (2pt); %guide lines for point \draw[dashed, thick] (2,0,0)--(2,1,0) node[below] {$(a,b,0)$}--(0,1,0); \draw[dashed, thick,] (2,1,0) -- (2,1,{2 - (1-1.5)^2}); \end{axis} \end{tikzpicture} \end{document}

  • TeXLive Backend Gone Problem
    by berkus on July 12, 2026 at 4:39 pm

    Ok. Hear me out. I had this problem in the earlier versions of TeXLive, but was never able to fully understand where it is coming from, and what exactly is the solution. The only workaround was to perform a clean install of TeXLive. I am on Windows 11 64bit, TeXLive 2026. I tend to update my TeXLive occasionally to catch up with the possible updates on the packages that I am interested. Just couple of days ago, I checked the updates again using tlshell.exe (TLShell TeX Live Manager), and the update list that is shown in the following picture came up. A typical update of packages in TeXLive is not like this. Note that all the updateble packages have the version number of 79618. Also note that there is an update of "tlmgr" My first question is: What kind of update is this? Is this some sort of a major update of the TeXLive system for the purpose of some sort of a clean-up, instead of individual package updates? I have updated "tlmgr" first, and updated all the packages. But then, I have this problem of "Back end gone. Last command: info --data name,remoterev,rcat-version, category,shortdesc" Then the tlshell.exe quits on me... I have tried many many things to get rid of this error, but did not work, so just out of curiosity, I uninstalled TeXLive and did a clean installation. To my surprise, the error still occurs. So, this is telling me that the TeXLive update that was recently rolled-out has an issue. Am I right? I had this issue last year and could not solve it back then. So I am really wondering what exactly this problem is about. If anybody can direct me to a page with an explanation and a possible solution, that would be also fine. Also, what is the suggested action here when we see this sort of update list? Should we just wait for TUG to fix the problem for a couple of days, without performing an update? Or is this related to my own TeXLive setup?

  • Manage tcolorbox positioning and break
    by Brasil on July 12, 2026 at 1:01 pm

    I'm using tcolorbox to create a lecture material with examples but can't manage breaks and positioning. Can anyone help me, please? I provide a MEW below. \documentclass[12pt, openright, twoside, a4paper, chapter=TITLE]{memoir} \usepackage[a4paper, top=30mm, bottom=20mm, left=20mm, right=20mm]{geometry} %--> Language package \usepackage[english]{babel} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{lipsum} %--> For multicolumns: \usepackage{multicol} \setlength{\columnsep}{5mm} \usepackage{paracol} %... allows empty column %--> Packages for images and floats: \usepackage{graphicx, float} \newcounter{example}[chapter] \renewcommand{\theexample}{\thechapter.\arabic{example}} \usepackage[breakable, skins]{tcolorbox} \newtcolorbox[use counter=example]{example}[1][]{% %--> TITLE SETTINGS %... boxed head enhanced jigsaw, %... box style boxed title style={size=small,colback=white}, %... title text title={\bfseries Example~\thetcbcounter}, %... title color coltitle=black, %... head position attach boxed title to top left={ xshift=2mm, yshift=-\tcboxedtitleheight/2 }, %--> BOX SETTINGS %... frame line widths boxrule=1pt, rightrule=0pt, leftrule=0pt, %... background color colback=gray!10, %... shaddow drop shadow={gray!50!white}, %... automatic breaking enforce breakable, pad at break=3mm, %--> TEXT SETTINGS %... margin widths boxsep=0mm, top=5mm, %... text font size fontupper=\small, %... keep paragraphs similar to the text parbox=false, #1 % use the option [break at=85mm/0mm] if necessary } \begin{document} \begin{multicols}{2} \begin{example}[label=X: free fall, break at=350mm/0mm] \lipsum[1] \begin{figure}[H] \centering \includegraphics[width=4cm]{example-image-a} \end{figure} \lipsum[2] \end{example} \lipsum[3] \begin{example} \lipsum[4] \begin{figure}[H] \centering \includegraphics[width=4cm]{example-image-b} \end{figure} \lipsum[5] \begin{figure}[H] \centering \includegraphics[width=4cm]{example-image-c} \end{figure} \lipsum[6-7] \end{example} \section*{Non numbered section} \lipsum[1] \begin{example}[label=X: mass-spring] \lipsum[2] \begin{figure}[H] \centering \includegraphics[width=4cm]{example-image-a} \end{figure} \lipsum[3] \end{example} \lipsum[4] \end{multicols} \end{document}

  • How to plot a graph?
    by charuanl on July 12, 2026 at 11:18 am

    I want to plot a graph for this below picture I already tried but the graph wasn't smooth. This is the graph that I tried to plot Here's my code : \documentclass{article} \usepackage{tikz} \begin{document} \begin{center} \begin{tikzpicture}[x=1.2cm, y=0.7cm] \draw[thick, ->, >=stealth] (-2, 0) -- (6, 0) node[right] {X}; \draw[thick, ->, >=stealth] (0, -3.5) -- (0, 6.5) node[above] {Y}; \draw[thick, <->, >=stealth, color=black!80!blue] plot[smooth, tension=0.7] coordinates {(-1.5, 1.5) (0, 5) (2, 0) (4, -2) (4.8, 3)}; \fill (0, 5) circle (2.5pt); \node[above right] at (0, 5) {$(0, 5)$}; \fill (2, 0) circle (2.5pt); \node[above right] at (2, 0) {$(2, 0)$}; \fill (4, -2) circle (2.5pt); \node[below, yshift=-2pt] at (4, -2) {$(4, -2)$}; \node[above left] at (5.2, 3) {$y = f(x)$}; \end{tikzpicture} \end{center} \end{document}

  • How to ignore space in expl3 string comparison
    by Denis Bitouzé on July 11, 2026 at 3:14 pm

    (This is a follow-up of How to ignore space in sorting order of biblatex + biber?.) At least in French, spaces should be ignored in sorting order of strings. But, as shown by the following MCE, that's not by default the case with expl3 string comparison: just as “AB”, “A B” should be considered after (here >) “AA” in the lexicographic order. How to fix this problem? \documentclass{article} \begin{document} \ExplSyntaxOn \begin{itemize} \item \str_compare:nNnTF {AB} > {AA} {true} {false} % returns true \item \str_compare:nNnTF {A~B} > {AA} {true} {false} % returns false \end{itemize} \ExplSyntaxOff \end{document}

  • Symmetrical blank space using bold hat of \brcurs of Griffiths David's book
    by Sebastiano on July 11, 2026 at 12:46 pm

    I have tried several approaches, including adding \mkern inside the \slhat command, but I still haven't been able to fix the spacing around \slhat{\brcurs} (the slanted-hat version of Griffiths' italic accented (r)). I would like the spacing to be correct both before and after the symbol, so that it behaves like a standard mathematical accent. \documentclass{article} \usepackage{newtxtext} \usepackage{newtxmath} \usepackage{bm} \usepackage{mathtools} \newcommand{\genericrcurs}[1]{% \text{% \resizebox{!}{0.9\fontcharht\font`x}{% \includegraphics[trim=20 0 140 40]{#1}% }% }% } \NewDocumentCommand{\rcurs}{}{\mathord{\genericrcurs{ScriptR}}} \NewDocumentCommand{\brcurs}{}{\mathord{\genericrcurs{BoldR}}} \NewDocumentCommand{\hrcurs}{}{\,\mathit{\hat{\!\brcurs}}} \usepackage{l3draw} \ExplSyntaxOn \NewDocumentCommand{\xslantobject}{mm} { \draw_begin: \draw_transform_xslant:n { #2 } \hbox_set:Nn \l_tmpa_box { #1 } \draw_box_use:N \l_tmpa_box \draw_end: } \NewDocumentCommand{\slhat}{m} { \mathord{ \mkern-5mu \vbox{ \offinterlineskip \halign{\hfil##\hfil\cr \xslantobject{$\hat{\phantom{x}}$}{0.3}\cr \noalign{\kern-.95ex} $#1$\cr } } \mkern0mu } } \ExplSyntaxOff \begin{document} \[ {S}_{a}^{\mathbf{(CGS)}}=\frac{q^2 a^2 \sin^2\theta}{4 \pi c^{3}\rcurs^2}\boldsymbol{[}\slhat{\brcurs}\boldsymbol{]} \] \begin{equation}\label{rayd49} \begin{aligned} & |\slhat{\brcurs}\times\{(\slhat{\brcurs}-\beta \hat{z})\times\hat{\mathbf{x}}\}|^2\\ & = |\slhat{\brcurs}-\beta\hat{\mathbf{z}}|^2 (\slhat{\brcurs}\cdot\hat{\mathbf{x}})^2+(1-\beta \hat{\mathbf{z}}\cdot\slhat{\brcurs})^2 -2 (\slhat{\brcurs}\cdot\hat{\mathbf{x}})(1-\beta\hat{\mathbf{z}}\cdot\slhat{\brcurs})\{ \hat{\mathbf{x}}\cdot (\slhat{\brcurs}-\beta\hat{\mathbf{z}})\}= \\ & = |\slhat{\brcurs}-\beta \hat{\mathbf{z}}|^2(\slhat{\brcurs}\cdot\hat{\mathbf{x}})^2+(1-\beta \hat{\mathbf{z}}\cdot\slhat{\brcurs})^2 -2 (\slhat{\brcurs}\cdot\hat{\mathbf{x}}) (1-\beta\hat{\mathbf{z}}\cdot\slhat{\brcurs}) (\hat{\mathbf{x}}\cdot\slhat{\brcurs}) \end{aligned} \end{equation} \end{document}

  • How to ignore space in sorting order of biblatex + biber?
    by Denis Bitouzé on July 11, 2026 at 9:00 am

    At least in French, spaces should be ignored in sorting order of strings. But, as shown by the following MCE, that's not by default the case with biblatex + biber: just as “AB”, “A B” should appear after “AA”. How to fix this problem? \begin{filecontents}[overwrite]{\jobname.bib} @article{ab, author = {A B, Jane}, } @article{aa, author = {AA, Jane}, } \end{filecontents} \documentclass[french]{article} \usepackage{biblatex} \usepackage{babel} \addbibresource{\jobname.bib} \nocite{*} \begin{document} \printbibliography \end{document} The original, realistic, case is the following one where “El Kacimi” should appear after “Eliahou” (in “El Kacimi”, “El” should not be considered as a prefix). \begin{filecontents}[overwrite]{\jobname.bib} @article{elka, author = {El Kacimi, Aziz}, } @article{elia, author = {Eliahou, Shalom}, } \end{filecontents} \documentclass[french]{article} \usepackage{biblatex} \usepackage{babel} \addbibresource{\jobname.bib} \nocite{*} \begin{document} \printbibliography \end{document}

  • Nesting tikzcd (specifically) within tikzpicture
    by Just Some Old Man on July 10, 2026 at 7:34 pm

    I would like to have a tikzcd within tikzpicture. The reason for this is I want to have a standard commutative diagram from tikzcd, but then also put lines, text, and shapes in the "background" of the diagram using tikzpicture treating the diagram as static and without interacting with the diagram at all (allowing for overlap, for example). A solution for tikzpicture within tikzpicture is using \newsavebox, but this doesn't work for tikzcd within tikzpicture. Specifically, \UseRawInputEncoding \documentclass[11pt]{article} \renewcommand{\baselinestretch}{1.05} \usepackage{tikz-cd} \begin{document} \newsavebox{\mybox} \sbox{\mybox}{ \begin{tikzpicture} \end{tikzpicture} } \end{document} compiles, but \UseRawInputEncoding \documentclass[11pt]{article} \renewcommand{\baselinestretch}{1.05} \usepackage{tikz-cd} \begin{document} \newsavebox{\mybox} \sbox{\mybox}{ \begin{tikzcd} A \arrow[r] & B \end{tikzcd} } \end{document} does not compile and throws the following error. Moreover, \UseRawInputEncoding \documentclass[11pt]{article} \renewcommand{\baselinestretch}{1.05} \usepackage{tikz-cd} \begin{document} \newsavebox{\mybox} \sbox{\mybox}{ \begin{tikzpicture} \begin{tikzcd} A \arrow[r] & B \end{tikzcd} \end{tikzpicture} } \end{document} does not compile and throws the following error. How can I have a tikzcd within tikzpicture?

  • Slight shift when exchanging TikZ node and line by exchanging some of their characteristics
    by Denis Bitouzé on July 10, 2026 at 3:02 pm

    Thanks to https://tex.stackexchange.com/a/764554/18401, I can easily have a (TikZ) node followed by a line, the total width of them being fixed (40mm below). In the following MCE, I use code from the link above (not optimizing in order to make it clearer) and: for the first case, I use: the east anchor, draw to the right, the west anchor of the node considered for the total width, and the result is as expected; for the second case, I want to exchange the node and the line (not mirroring them), so my code exchanges: east anchor → west anchor, draw to the right → draw to the left, west anchor → east anchor of the node considered for the total width. But, for the second case, there is slight shift (about 1pt) to the right I can't explain. How to get rid of it? \documentclass{article} \usepackage{tikz} \usepackage[showframe]{fgruler} \usepackage{geometry} \geometry{ paperwidth=60mm, paperheight=50mm, margin=1cm, marginparwidth=0mm, textwidth=40mm, } \newcommand{\test}[3]{% \noindent% \tikz \draw[line width=2pt] (0,0) node[line width=0pt,inner sep=0pt,draw, anchor=#1, ] (foo) {Foo} -- ([shift=(#2:40mm)]foo.#3);% } \begin{document} \test{east}{right}{west} \test{west}{left}{east} \end{document}

  • How to place footnote into scrletter's signature?
    by lAtExFaN on July 10, 2026 at 11:09 am

    I use texlive 2025 and try to set a footnote into scrletter's signature. The following code seems to work, but isn't: The footnotemark/footnotetext-pair appears but the footnote's numbering is off by +1 and the implementation is ugly (due to the loose distribution of code: footnotemark and footnotetext) \documentclass{scrartcl} \usepackage{scrletter} \setkomavar{signature}{Alfred E. Neumann\footnotemark{}} %<- works, but ugly \begin{document} \begin{letter}{You} \opening{Dear You,} Hello World! \closing{Best regards,} \footnotetext{MAD} %<- uhhh, that's really ugly! 😉 \end{letter} \end{document} Thus I tried to get rid of the distribution of code, using this: \documentclass{scrartcl} \usepackage{scrletter} \setkomavar{signature}{Alfred E. Neumann\footnote{MAD}} %<- preferred solution \begin{document} \begin{letter}{You} \opening{Dear You,} Hello World! \closing{Best regards,} \end{letter} \end{document} But I can't get it to work: only the footnote mark appears, but the footnotetext doesn't. The mark is off by +1, too. Could someone please help me and demonstrate how to solve this? Thanks!

  • Why adding breqn package allows one to use underscore in text mode with no error?
    by Nasser on July 10, 2026 at 5:03 am

    We all know that in latex one needs to escape _ when not in math mode. So this MWE gives error as expected because there is _quadrature in the first column of this longtable. (column type is p) \documentclass[12pt]{article} \usepackage{longtable} \begin{document} \begin{longtable}{|p{3.5in}|p{.5in}|p{.6in}|p{.6in}|p{.6in}|}\hline [_quadrature]&$1588$&97.04&99.31&90.55\\ \hline \end{longtable} \end{document} Compiling using lualatex >lualatex B.tex This is LuaHBTeX, Version 1.26.3 (TeX Live 2027/dev) restricted system commands enabled. (./B.tex LaTeX2e <2025-11-01> L3 programming layer <2026-03-20> (/usr/local/texlive/2026/texmf-dist/tex/latex/base/article.cls Document Class: article 2025/01/22 v1.4n Standard LaTeX document class (/usr/local/texlive/2026/texmf-dist/tex/latex/base/size12.clo)) (/usr/local/texlive/2026/texmf-dist/tex/latex/tools/longtable.sty) (/usr/local/texlive/2026/texmf-dist/tex/latex/l3backend/l3backend-luatex.def) (./B.aux) ! Missing $ inserted. <inserted text> $ l.10 [_ quadrature]&$1588$&97.04&99.31&90.55\\ \hline ? But adding \usepackage{breqn} to the preamble, now it compiles with no error !! >lualatex B.tex This is LuaHBTeX, Version 1.26.3 (TeX Live 2027/dev) restricted system commands enabled. (./B.tex LaTeX2e <2025-11-01> L3 programming layer <2026-03-20> (/usr/local/texlive/2026/texmf-dist/tex/latex/base/article.cls Document Class: article 2025/01/22 v1.4n Standard LaTeX document class (/usr/local/texlive/2026/texmf-dist/tex/latex/base/size12.clo)) ...... (/usr/local/texlive/2026/texmf-dist/tex/context/base/mkii/supp-pdf.mkii [Loading MPS to PDF converter (version 2006.09.02).] ) (/usr/local/texlive/2026/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty (/usr/local/texlive/2026/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg)) Overfull \hbox (89.16727pt too wide) in alignment at lines 9--11 [][][][][] [1 Non-PDF special ignored!{/usr/local/texlive/2026/texmf-var/fonts/map/pdftex/upd map/pdftex.map}] (./B.aux)) (see the transcript file for additional information) 574 words of node memory still in use: 6 hlist, 2 vlist, 2 rule, 2 glue, 4 kern, 1 glyph, 6 attribute, 70 glue_spec , 6 attribute_list, 1 write nodes avail lists: 1:1,2:122,3:38,4:1,5:22,6:10,7:252,8:4,9:152,11:2 </usr/local/texlive/2026/texmf-dist/fonts/opentype/public/lm/lmroman12-regular. otf></usr/local/texlive/2026/texmf-dist/fonts/type1/public/amsfonts/cm/cmr12.pf b> Output written on B.pdf (1 page, 11974 bytes). Transcript written on B.log. And gives How does this happen and why? I was going to make the first column \verb|| in order to make it compile, when I noticed that simply adding the breqn package made it compile without having to do anyting. Is this documented and known feature of breqn ? TL 2026 on WSL 1.0 Ubuntu.

  • Optical illusion that depicts objects which appear to move, but don't, due to a repeating pattern within the static fill. I want to reproduce it
    by Jasper on July 10, 2026 at 4:14 am

    I saw a cool optical illusion while surfing the web. It depicts objects which appear to move, but aren't, due to a repeating pattern within the static fill. I want to reproduce it in TikZ. This is the graphic: The source I originally viewed I did not post deliberately due to the use of a swear word in the subreddit's name. David provides an alternative source, which is likely the source of the Reddit post, though they never listed one. https://www.sciencealert.com/this-colorful-new-spin-on-a-classic-illusion-has-brains-tripping-again This is the static color wheel: \documentclass{article} \usepackage{tikz} \usetikzlibrary{shadings} \begin{document} \begin{tikzpicture} \shade[ shading=color wheel, even odd rule ] (0,0) circle[radius=1] (0,0) circle[radius=2] ; \end{tikzpicture} \end{document}

  • TikZ pic is not handling pgfkeys
    by PaulTanenbaum on July 10, 2026 at 2:50 am

    I'm trying to use a pic to produce diamonds of a fixed width and height (specified by a parameter) and of specified line and fill colors. My first attempt was based on code I copied and pasted from Google in response to the search "can tikzpicture pic macros have arguments." Google responded with what seemed to be just what I needed (under a heading of "Default Values and Keyword Arguments"). But I have not been able to get my tweak of it to work. (But having typed that last sentence, I've now tried the code verbatim as Google provided it, and I got a pgfkeys error. Sigh). In my attempts, I have gotten the default values to work: if I change the default values, then those changes are reflected in the output. But for some reason when I pass my pic key-value pairs, they seem to have no effect. Oh, and when (by way of debugging) I try commenting out the lines that set the defaults, I get error messages about the resulting "undefined control sequences." I've also looked at various answers here on SE and tried adjusting my code to resemble theirs. No such adjustments have made any difference. Nor, I'm sorry to say, has the PGF/TikZ manual been of any help. I'm confident that the problem is some fairly simple thing that I'm too bone-headed to find. So here's a MWE: \documentclass{article} \usepackage{tikz} \usetikzlibrary{shapes.geometric} \tikzset{ pics/mydiamond/.style={ code={ \node[ draw, diamond, color=\mydiamondcolor, fill=\mydiamondfill, minimum width=\mydiamondradius*2, minimum height=\mydiamondradius*2, align=center] (0,0) {}; } }, % Set defaults pics/mydiamond/.cd, color/.store in=\mydiamondcolor, color=purple, fill/.store in=\mydiamondfill, fill=yellow!30, radius/.store in=\mydiamondradius, radius=2mm, } \tikzset{blue thing/.style={color=blue,fill=blue!20}} \begin{document} These three diamonds should be of different sizes and colors, \begin{tikzpicture} \draw (0,0) pic {mydiamond}; \draw[radius=5cm, color=red, fill=green] (1,0) pic {mydiamond}; \draw (2,0) pic {mydiamond={radius=10cm, color=blue, fill=white}}; \end{tikzpicture} But they are not. Nor do such diamonds seem to pick up on .styles (\begin{tikzpicture} \draw (0,0) pic[blue thing] {mydiamond}; \end{tikzpicture}, see what I mean?), although things like garden-variety nodes and geometric shapes (\begin{tikzpicture} \draw[blue thing] (0,0) node {Blue Thing!}; \end{tikzpicture} and \begin{tikzpicture} \draw[blue thing, radius=2mm] (1.2,0) circle; \end{tikzpicture}) do. \end{document} The output I get from that MWE is As my MWE illustrates, among the variants I've tried is taking the key-value pairs out of the brackets appended to the \draw command and putting them into ={} appended to the pic name. But no dice.

  • Simulating a granular concrete surface texture in TikZ
    by Sebastiano on July 9, 2026 at 4:06 pm

    I have this my image in Adobe Illustrator. How can I simulate a coarse-grained concrete surface with the libraries? \documentclass{article} \usepackage{tikz} \usetikzlibrary{patterns} \begin{document} \begin{tikzpicture}[scale=1] \draw[->,thick] (-3.2,-1.65)--(4.3,-1.65) node[below right] {$x$}; % ground \fill[pattern=north east lines,pattern color=gray] (-3.2,-1.9) rectangle (4,-1.65); \end{tikzpicture} \end{document}

  • issue: cleveref and unicode-math print the label below figures
    by mayonnaise on July 9, 2026 at 3:28 pm

    I have the following MWE: \documentclass[]{article} \usepackage{fontspec} \usepackage{unicode-math} \usepackage[colorlinks=false,linktocpage=true]{hyperref} \usepackage{cleveref} \listfiles \begin{document} \begin{figure}[htbp] \centering \caption{Here is a caption} \label{thelabel} \end{figure} \end{document} and in the PDF, below the caption is printed "helabel", centered and in the same font family. If I disable either cleveref or unicode-math, the problem disappears (though it seems to come back with certain packages, such as \usepackage{mhchem}) Here is the list of files from the logs: *File List* article.cls 2025/01/22 v1.4n Standard LaTeX document class size10.clo 2025/01/22 v1.4n Standard LaTeX file (size option) fontspec.sty 2024/05/11 v2.9e Font selection for XeLaTeX and LuaLaTeX xparse.sty 2024-08-16 L3 Experimental document command parser expl3.sty 2025-05-26 L3 programming layer (loader) l3backend-luatex.def 2025-04-14 L3 backend support: PDF output (LuaTeX) fontspec-luatex.sty 2024/05/11 v2.9e Font selection for XeLaTeX and LuaLaTeX fontenc.sty 2024/12/21 v2.1c Standard LaTeX package fontspec.cfg unicode-math.sty 2023/08/13 v0.8r Unicode maths in XeLaTeX and LuaLaTeX unicode-math-luatex.sty 2023/08/13 v0.8r Unicode maths in XeLaTeX and LuaLaTeX l3keys2e.sty 2024-08-16 LaTeX2e option processing using LaTeX3 keys fix-cm.sty 2020/11/24 v1.1t fixes to LaTeX ts1enc.def 2001/06/05 v3.0e (jk/car/fm) Standard LaTeX file amsmath.sty 2025/05/18 v2.17x AMS math features amstext.sty 2024/11/17 v2.01 AMS text amsgen.sty 1999/11/30 v2.0 generic functions amsbsy.sty 1999/11/29 v1.2d Bold Symbols amsopn.sty 2022/04/08 v2.04 operator names lualatex-math.sty 2022/01/01 v1.12 Patches for mathematics typesetting with LuaLaTeX etoolbox.sty 2025/02/11 v2.5l e-TeX tools for LaTeX (JAW) hyperref.sty 2025-05-20 v7.01m Hypertext links for LaTeX iftex.sty 2024/12/12 v1.0g TeX engine tests keyval.sty 2022/05/29 v1.15 key=value parser (DPC) kvsetkeys.sty 2022-10-05 v1.19 Key value parser (HO) kvdefinekeys.sty 2019-12-19 v1.6 Define keys (HO) pdfescape.sty 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) ltxcmds.sty 2023-12-04 v1.26 LaTeX kernel commands for general use (HO) pdftexcmds.sty 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO) infwarerr.sty 2019/12/03 v1.5 Providing info/warning/error messages (HO) hycolor.sty 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) nameref.sty 2023-11-26 v2.56 Cross-referencing by name of section refcount.sty 2019/12/15 v3.6 Data extraction from label references (HO) gettitlestring.sty 2019/12/15 v1.6 Cleanup title references (HO) kvoptions.sty 2022-06-15 v3.15 Key value format for package options (HO) stringenc.sty 2019/11/29 v1.12 Convert strings between diff. encodings (HO) pd1enc.def 2025-05-20 v7.01m Hyperref: PDFDocEncoding definition (HO) intcalc.sty 2019/12/15 v1.3 Expandable calculations with integers (HO) puenc.def 2025-05-20 v7.01m Hyperref: PDF Unicode definition (HO) url.sty 2013/09/16 ver 3.4 Verb mode for urls, etc. bitset.sty 2019/12/09 v1.3 Handle bit-vector datatype (HO) bigintcalc.sty 2019/12/15 v1.5 Expandable calculations on big integers (HO) atbegshi-ltx.sty 2021/01/10 v1.0c Emulation of the original atbegshi package with kernel methods hluatex.def 2025-05-20 v7.01m Hyperref driver for luaTeX atveryend-ltx.sty 2020/08/19 v1.0a Emulation of the original atveryend package with kernel methods rerunfilecheck.sty 2022-07-10 v1.10 Rerun checks for auxiliary files (HO) uniquecounter.sty 2019/12/15 v1.4 Provide unlimited unique counter (HO) cleveref.sty 2018/03/27 v0.21.4 Intelligent cross-referencing I'm using ubuntu, texlive 2025 and VScode with the Latex Workshop extension. Thank you for your help