Month
- Evolution of “Computer Modern” or who lowered the dot on the “i”?by Alain Stalder on December 14, 2025 at 12:27 pm
In the process of hopefully migrating some documents from pdflatex that use Computer Modern fonts (mostly Sans) to LuaLaTeX, I am looking at the different variants that have evolved since the original METAFONT Computer Modern family. The good news for me is that the differences seem to be smaller than it first appeared, both regarding glyphs and metrics. The most prominent difference in Latin Modern with “plain English characters” is that the dot on the lowercase letter “i” is a bit lower, at least in the Sans variants (except in ligatures like “fi” where the height of the dot matches the too of the “f”). Was that a conscious choice in Latin Modern? Or maybe already in an earlier variant which I could not find, yet? (Computer Modern Unicode and CM-Super seem to have the original height of the dot on the “i”.) CTAN does list various Computer Modern variants and there is also some info in its external references, but I was wondering if there is maybe additional historical info about the evolution of “Computer Modern” variants, maybe a TUGboat article about that or maybe that someone who was already somewhat involved at the time would still remember? Below some examples with sources and — to make sure — the font that was actually used from the console log, and some differences noticed in the example text. pdflatex / Computer Modern (the reference; same result with \usepackage{amsfonts}, as expected): % !TEX TS-program = pdflatex \documentclass{article} \renewcommand\familydefault{\sfdefault} \begin{document} Liegenstraße 95 in “larger” Wil… % </usr/local/texlive/2025/texmf-dist/fonts/type1/public/amsfonts/cm/cmss10.pfb> \end{document} pdflatex / CM-Super: % !TEX TS-program = pdflatex \documentclass{article} \usepackage[T1]{fontenc} \renewcommand\familydefault{\sfdefault} \begin{document} Liegenstraße 95 in “larger” Wil… % </usr/local/texlive/2025/texmf-dist/fonts/type1/public/cm-super/sfss1000.pfb> \end{document} (Different “ß” and different spacing before “, rest same incl. “i”.) LuaLaTeX / Computer Modern Unicode: % !TEX TS-program = lualatex \documentclass{article} \usepackage{fontspec} \setmainfont{CMU Sans Serif} \begin{document} Liegenstraße 95 in “larger” Wil… % </usr/local/texlive/2025/texmf-dist/fonts/opentype/public/cm-unicode/cmunss.otf> \end{document} (Same alternative “ß” as CM-Super, different space after ”, denser ellipsis, rest same incl. “i”) LuaLaTeX / AMS Type 1 converted to OpenType (using FontLab 8 on Mac): % !TEX TS-program = lualatex \documentclass{article} \usepackage{fontspec} \setmainfont{ams-cmss10.ttf} \begin{document} % emulated ellipsis… Liegenstraße 95 in “larger” Wil.\,.\,. % <./ams-cmss10.ttf> \end{document} (Almost identical to Computer Modern (as expected), except line overall a bit denser and had to emulate the ellipsis, same “i”.) LuaLaTeX / Latin Modern: % !TEX TS-program = lualatex \documentclass{article} \renewcommand\familydefault{\sfdefault} \begin{document} Liegenstraße 95 in “larger” Wil… % </usr/local/texlive/2025/texmf-dist/fonts/opentype/public/lm/lmsans10-regular.otf> \end{document} Here the dot on the “i” is a bit lower. Also, the “a” has the same metric but is shifted a bit to the right. Also, more space inside “...”, and also denser ellipsis. Diff between LM and AMS OpenType (would be practically the same to pdflatex / Computer Modern, but wanted to stick to OpenType, into the future): The dot on the “i” is lowered and the “a” is shifted, otherwise letters just shifted a tiny little bit, but maybe that would be just a rendering artefact/limitation, at some point becomes the princess and the pea… But overall, seems like an “AMS to OpenType x Latin Modern” (as new font or maybe a virtual font on-the-fly) could already come close to the original pdflatex / Computer Modern look and feel for texts that could already be typset with the limitations regarding language support of pdflatex / Computer Modern. Added same day: Here’s a diff between LuaLaTeX / Latin Modern and pdflatex / Computer Modern, almost only the dot on the ”i” and the shift of the “a” are different, the other letters shifted in the diff above was just that was more condensed with LuaLaTeX / ”AMS OpenType” as I had mentioned but forgot about again.
- Graphing the function y=x^2sin(1/x)by azetina on December 13, 2025 at 6:50 pm
Consider the following MWE: \documentclass{article} \usepackage{amsmath} \usepackage{pgfplots} \pgfplotsset{compat=1.18} \begin{document} \begin{tikzpicture} \begin{axis}[ axis equal, axis lines = middle, xlabel = $x$, ylabel = $y$, xmin = -0.4, xmax = 0.4, ymin = -0.4, ymax = 0.4, grid = both, grid style = {line width=.1pt, draw=gray!10}, major grid style = {line width=.2pt, draw=gray!50}, samples = 200, legend pos = north west, width = 10cm, height = 8cm ] % Plot the curve \addplot[domain=-0.4:0.4, thick, blue] {x^2*sin(1/x)}; \addlegendentry{$y = x^2\sin(1/x)$} % Tangent line at (1, -2) \addplot[domain=-0.5:0.5, thick, red] {x^2}; \addplot[domain=-0.5:0.5, thick, red] {-x^2}; \addlegendentry{$y=\pm x^2$} \end{axis} \end{tikzpicture} \end{document} Currently, I am getting: But I would like the curve to show like in the following image: What am I missing?
- Strange spacing on a matrixby Knudsen on December 13, 2025 at 6:46 pm
Why would the vertical spacing between the 2nd and 3rd lines in this matrix be larger than the others? \documentclass{report} \usepackage{amsmath} \begin{document} \[ \begin{pmatrix} 1 & 0 & \cdots & 0 \\ 0 & 1 & \cdots & 0 \\ \vdots&\vdots&\ddots&\vdots\\ 0 & 0 & \cdots & 1 \end{pmatrix} \] \end{document}
- How to draw a pattern within a path that features a visible decorated path and also invisible paths? OR How to visualize the ground?by Simon on December 12, 2025 at 6:13 pm
How does the following MWE need to be modified to only visualize the decorated path but not the remaining path and draw the top right-hand corner not rounded? \documentclass{standalone} \usepackage{tikz} \usetikzlibrary{decorations.pathmorphing} \usetikzlibrary{patterns} \begin{document} \begin{tikzpicture} \path[draw,pattern=north west lines] decorate[decoration={random steps,segment length=1,amplitude=.2},rounded corners=.2] {(-1,0) -- (0,0) -- (1,0)} -- (1,-.25) -- (-1,-.25) -- cycle; \end{tikzpicture} \end{document} Thanks in advance!
- What is the minimum set of commands to compile a plain tex file with UTF-8 Chinese characters to PDF?by merlin2011 on December 12, 2025 at 4:42 am
Consider the following minimum Tex example with Chinese characters: 你好 \bye I tried to compile it the traditional way, and it produces an blank document: tex Hello.tex dvipdf Hello.dvi I tried to compile it with xetex and get an error: sudo apt install texlive-xetex xetex Hello.tex This is XeTeX, Version 3.141592653-2.6-0.999995 (TeX Live 2023/Debian) (preloaded format=xetex) restricted \write18 enabled. kpathsea: Running mktexfmt xetex.fmt mktexfmt: mktexfmt is using the following fmtutil.cnf files (in precedence order): mktexfmt: /usr/share/texmf/web2c/fmtutil.cnf mktexfmt: /usr/share/texlive/texmf-dist/web2c/fmtutil.cnf mktexfmt: mktexfmt is using the following fmtutil.cnf file for writing changes: mktexfmt: /home/hq6/.texlive2023/texmf-config/web2c/fmtutil.cnf mktexfmt [INFO]: writing formats under /home/hq6/.texlive2023/texmf-var/web2c mktexfmt [INFO]: Did not find entry for byfmt=xetex skipped mktexfmt [INFO]: not selected formats: 8 mktexfmt [INFO]: total formats: 8 mktexfmt [INFO]: exiting with status 0 I can't find the format file `xetex.fmt'! I tried running the command suggested in a different question and it completed successfully, but I still get the same error: sudo fmtutil-sys --all ... ... 50 preloaded fonts No pages of output. Transcript written on dviluatex.log. fmtutil [INFO]: log file copied to: /var/lib/texmf/web2c/luatex/dviluatex.log fmtutil [INFO]: /var/lib/texmf/web2c/luatex/dviluatex.fmt installed. fmtutil [INFO]: successfully rebuilt formats: 8 fmtutil [INFO]: total formats: 8 fmtutil [INFO]: exiting with status 0 How might I fix this error and compile the UTF-8 to PDF?
- Theorem numbers in smallcapsby xryophile on December 11, 2025 at 6:04 pm
I have sectioning elements in my documents in bold smallcaps of various sizes. I was hoping to be able to achieve this with my theorems, remarks, etc. as well. However, while this works for the labels (i.e. "Theorem", "Definition", etc.) for some reason the numbers remain in upshape (although they are bolded). Is there some way to "smallcap" the number too? Here is a minimal (not) working example: \documentclass{article} \usepackage{tgpagella} % Need a font with scshape \usepackage{amsthm,thmtools} \declaretheoremstyle[ headfont=\scshape\normalsize\bfseries, ]{definition} \declaretheorem[style=definition] {definition} \begin{document} \setcounter{definition}{2} % Difference is clear with 3 \begin{definition} Number is bold, but not \\smallcaps. Bold \emph{and} small caps: \textbf{\textsc{3}}. \end{definition} \end{document} The result is N.B. I've tried using the headformat key of declaretheoremstyle too, passing things like \textsc{\NUMBER}, but this doesn't seem to help. [Although it does work with \NAME.] N.B.B. I'm using thmtools for reasons I've omitted from this MWE, so if an answer is possible within the framework of this package that would be excellent. Of course, if it can be done internally in amsthm or ntheorem that would be fine too. On the other hand, even though it may be possible to simply write a whole theorem environment from scratch, I'm not at this point inclined to fix this (minor) issue in this way.
- How to avoid `\phantom{}` and empty groups in this array, while maintaining the same alignment?by tmc on December 8, 2025 at 2:44 pm
I'm working on creating a specific two-column table in \LaTeX. The second column, $f(n)$, contains expressions that are linear combinations of $\alpha$, $\beta$, and $\gamma$, but not all terms are present in every row. My goal is to achieve a consistent column alignment for the coefficients of $\alpha$, $\beta$, and $\gamma$ across all rows, with consistent spacing around the $+$ signs. The terms $\alpha$, $\beta$, $\gamma$ themselves should also align. To achieve this alignment, I currently rely heavily on \phantom{} and empty {} groups, which feels overly complicated. I suspect there is a much cleaner, more idiomatic approach that I am missing. Since I'm not very proficient, could you please critique my current approach and suggest a more robust method to achieve this specific alignment? Here is my current code snippet: \documentclass{article} \begin{document} \[ \begin{array}{@{}c|c@{}} n & f(n) \\ \hline 1 & \phantom{0}\alpha\phantom{{}+0\beta+0\gamma} \\ \hline 2 & 2\alpha+\phantom{0}\beta\phantom{{}+0\gamma} \\ 3 & 2\alpha\phantom{{}+0\beta}+\phantom{0}\gamma \\ \hline 4 & 4\alpha+3\beta\phantom{{}+0\gamma} \\ 5 & 4\alpha+2\beta+\phantom{0}\gamma \\ 6 & 4\alpha+\phantom{0}\beta+2\gamma \\ 7 & 4\alpha\phantom{{}+0\beta}+3\gamma \\ \hline 8 & 8\alpha+7\beta\phantom{{}+0\gamma} \\ 9 & 8\alpha+6\beta+\phantom{0}\gamma \end{array} \] \end{document}
- How to layout the two-side notes using Latexby xuehao on December 8, 2025 at 4:49 am
The following is an example from an English book. I'm planning to rewrite it in latex. The layout is with an itemize of points in the middle, and with "CONNECTIONS" notes along the two sides. I tried to solve it using TikZ, but the vertical align is hard to control. \documentclass{article} \usepackage{graphicx} % Required for inserting images \usepackage{tikz} \begin{document} \begin{center} \begin{tikzpicture} \node[draw,text width=3.1cm] at (0cm,0) {CONNECTIONS Because \\ \vspace{\baselineskip} It \\ and \\ Though \\ Since ... not \\ only \\ but also \vspace{\baselineskip} }; \node[draw,text width=6.3cm] at (5.1cm,0) {\begin{center} POINTS \end{center} 1. Brazil needs to be developed. \\ 2. New city, Brasilia, built 600 miles, Rio. \\ 3. Designed Lucio Costa. \\ 4. Became capital 1960. \\ 5. Planned for modern living. \\ 6. People at first reluctant to go. \\ 7. 1960 - population increasing. \\ 8. Established as capital. }; \node[draw,text width=3.1cm] at (10.2cm,0) {CONNECTIONS \vspace{\baselineskip} which was built \\ and which \\ \vspace{\baselineskip} It \\ but \\ However, with the increase }; \end{tikzpicture} \end{center} \end{document} Anyone could give me any clever solution for this task?
- Drawing a sphere and ellipsoid togetherby Knudsen on December 8, 2025 at 4:00 am
I would like to draw a sphere, of radius 3, and an ellipsoid of semi-axis 2, 3 and 4 together. They intersect at two great circles on the sphere (marked in red). I started out with the sphere and the great circles: \documentclass[border=2mm]{standalone} \usepackage{tikz} \usetikzlibrary{3dtools}% https://github.com/marmotghost/tikz-3dtools \begin{document} \begin{tikzpicture}[3d/install view={phi=120,theta=70},line cap=butt, line join=round,declare function={R=3;},c/.style={circle,fill,inner sep=1pt}] \path (0,0,0) coordinate (O) ; \draw[blue,3d/screen coords] (O) circle[radius=R]; \shade[ball color=white,3d/screen coords,opacity=0.7] (O) circle[radius=R]; % \shade[ball color=blue!30,3d/screen coords,opacity=0.7,xscale=2,yscale=3,zscale=4] (O) circle[radius=1]; \path pic[blue]{3d/circle on sphere={R=R,C={(O)}}}; \path pic[red]{3d/circle on sphere={R=R, n={(0.592,0,-1)}}}; % plane x = sqrt{7/10) z \path pic[red]{3d/circle on sphere={R=R, n={(0.592,0,1)}}}; % plane x = sqrt{7/10) z \draw[3d/hidden] (0,0,0) -- (0,0,R) (O)--(R,0,0) (O)--(0,R,0) (O)--(0,-R,0); \draw[3d/visible, -stealth] (R,0,0) -- (R + 4,0,0) node[below]{$x$}; \draw[3d/visible, -stealth] (0,R,0) -- (0,R + 1,0) node[right]{$y$}; \draw[3d/visible, -stealth] (0,0,R) -- (0,0,R + 1.5) node[above]{$z$}; \end{tikzpicture} \end{document} and everything is right so far: but when I remove the comment on the line that I would expect to draw the ellipsoid \shade[ball color=blue!30,3d/screen coords,opacity=0.7,xscale=2,yscale=3,zscale=4] (O) circle[radius=1]; I get something that is far from what I expected, including the fact that the zscale is not understood. How can one add the intersecting elipsoide to this image?
- How to add a mirror like shadow effect to a title?by Cham on December 8, 2025 at 12:44 am
I would like to add a reversed gray shadow under a title to mimmic a mirror effect. How can we do that with standard pdflatex (the live tex distribution)? Currtently, the code below only add a dull projected shadow under the title. Is there a way to vertically reverse the shadow? Here's a MWE to edit and play with: \documentclass[11pt,twoside]{book} \usepackage[T1]{fontenc} \usepackage[tt=false]{libertinus} \usepackage[french]{babel} \usepackage[stretch=50]{microtype} \usepackage[letterpaper,left=1.25in,right=1in,top=0.5in,bottom=0.5in,includeheadfoot,headheight=15pt]{geometry} \usepackage[dvipsnames]{xcolor} \usepackage{shadowtext} \begin{document} \begin{titlepage} \shadowoffsetx{2.5pt} \shadowoffsety{3.5pt} \shadowcolor{gray!40} \centering \vspace*{\baselineskip} \vfill {\textcolor{black}{\fontsize{26}{0}\selectfont\sffamily\textbf{\shadowtext{DOCUMENT TITLE}}}} \\[2.5\baselineskip] \vfill {\textcolor{black}{\huge\sffamily Author}} \vfill \end{titlepage} Text \end{document}
- How to set font family in `minted` style to an arbitrary font?by yury10578 on December 6, 2025 at 8:36 pm
I'm trying to set up tcolorbox blocks using minted engine. I want to use a font of my choice in those, not the default monospaced one (or tt or helvetica, per minted manual). Let's say I want 'Code New Roman'. In the following MWE the commented out style-setting line works, but requires of me knowing that (internal?) format. The line without \exfont works but sets the document's default font for tcolorbox blocks. If the line with \exfont is set last and so is actually used in listings, listings do not compile. At the same time, this tex fragment works in the main body of document. Is it possible to make the line with \exfont work? Or do that auto-adjustment to a specific font in some other way? \documentclass{article} \usepackage{fontspec} \usepackage[all]{tcolorbox} \newfontfamily\exfont{Code New Roman} \newtcblisting{exprog}{ listing only, listing engine=minted,. % minted options={ fontfamily={CodeNewRoman(0)} }, % minted expects that sort of string minted options={ fontfamily={\exfont\csname f@family\endcsname} }, % doesn't work minted options={ fontfamily={\csname f@family\endcsname} }, % works but sets the default font for tcolorbox blocks } \begin{document} {\exfont\csname f@family\endcsname} % works \begin{exprog} ts( n : integer ) : function: double; \end{exprog} \end{document}
- Accented character type \e`by Sebastiano on December 6, 2025 at 6:02 pm
Sometimes I see the accented è written in LaTeX sources as a command like this: \`e I've always wondered the reason. On my laptop (a modern machine), I can type è directly using the keyboard, and the document compiles without any issues. Is the use of "`e" due to a specific keyboard layout (for example on Mac), or is it just a historical LaTeX convention?
- TikZ word search diagram v2by yannis on December 4, 2025 at 7:16 pm
As a continuation of TikZ word search diagram here is the problem I'm facing. I did what Explorer suggested and it worked fine except that my rounded rectangles look like sausages or like Hieroglyphic cartouches because at their narrow ends they have lines on the secondary axis: Here is the code: \documentclass{article} \usepackage[cmyk]{xcolor} \definecolor{myPB}{cmyk}{0.85,0.75,0,0} \definecolor{myLB}{cmyk}{0.1,0.06,0,0} \usepackage{tikz} \usetikzlibrary{matrix,backgrounds} \newlength{\mydrawlinewidth} \setlength{\mydrawlinewidth}{1pt} \NewDocumentCommand{\markA}{ O{red} m m }{% \draw[rounded corners=6mm,opacity=.5, line width=2pt,myPB,fill=myLB] ([xshift=5pt,yshift=-5pt]yannis-#2.north west) rectangle ([xshift=-5pt,yshift=5pt]yannis-#3.south east); } \NewDocumentCommand{\markB}{ O{red} m m }{% \draw[rounded corners=6mm,opacity=.5,line width=2pt,myPB,fill=myLB] ([yshift=2pt]yannis-#2.north) -- ([xshift=2pt]yannis-#3.east) -- ([yshift=-2pt]yannis-#3.south) -- ([xshift=-2pt]yannis-#2.west) -- cycle; } \NewDocumentCommand{\markC}{ O{red} m m }{% \draw[rounded corners=6mm,opacity=.5,line width=2pt,myPB,fill=myLB] ([xshift=2pt]yannis-#2.east) -- ([yshift=-2pt]yannis-#3.south) -- ([xshift=-2pt]yannis-#3.west) -- ([yshift=2pt]yannis-#2.north) -- cycle; } \begin{document} \begin{tikzpicture} \matrix (yannis) [% matrix of nodes,% column sep=0mm,% row sep=0mm, nodes={ % draw, rectangle,anchor=center, line width=0.5pt, inner sep=2pt,outer sep=0pt, %font=\bfseries\huge, minimum size=1.1cm, } ] { S & G & A & Q & Q & T & C & E & F & R & E & P & Y & W & R \\ W & L & Q & E & L & B & A & R & A & P & M & O & C & E & L \\ Y & I & T & S & X & E & L & I & Y & A & H & U & W & R & A \\ B & K & E & E & Y & C & W & L & J & T & M & A & K & B & F \\ J & E & R & I & O & R & T & M & K & E & R & L & Q & E & T \\ P & N & P & L & S & B & R & W & H & D & U & U & E & H & E \\ E & E & R & R & E & W & V & S & S & M & L & N & K & E & R \\ H & S & E & E & H & T & A & P & H & Y & S & I & C & A & L \\ S & S & T & D & S & H & E & U & Q & V & L & V & R & Z & I \\ O & R & N & N & I & F & L & L & A & S & N & E & E & K & F \\ M & T & I & U & N & L & G & E & P & H & U & R & A & S & E \\ W & K & O & Q & U & P & U & H & A & M & G & S & T & M & I \\ A & F & A & R & P & J & M & S & L & R & O & E & E & H & C \\ B & X & H & C & A & I & H & S & A & M & S & C & D & F & G \\ I & P & R & O & P & H & E & T & S & N & S & I & F & X & Q \\ }; \begin{scope}[on background layer] \markA{1-6}{1-12} \markA{1-14}{6-14} \markC{1-15}{7-9} \markA{2-2}{9-2} \markA{2-4}{2-13} \markA{3-3}{11-3} \markA{3-4}{11-4} \markA{3-6}{3-12} \markA{3-15}{11-15} \markC{4-11}{9-6} \markA{6-5}{13-5} \markA{6-12}{13-12} \markA{7-1}{11-1} \markB{7-5}{14-12} \markA{8-8}{8-15} \markA{8-13}{14-13} \markB{10-7}{15-12} \markB{11-2}{15-6} \markA{14-3}{14-10} \markA{15-2}{15-9} \end{scope} \end{tikzpicture} \end{document} How can I fix this? @mickep I replaced the snippets by a complete minimal example.
- Is there a way in TikZ or Lua to make a short function which converts letters to their corresponding alphabetical position (and vice versa)?by Jasper on December 2, 2025 at 5:38 pm
Is there a way in TikZ or Lua to make a short function which converts letters to their corresponding alphabetical position (and vice versa)? The only way I can think of it so string check each letter, but that sounds too computationally expensive. M(non)WE: \documentclass[tikz,border=1cm]{standalone} \newcommand{\letterpos}[1]{ \pgfmathparse{#1 == a} \ifnum\pgfmathresult=1 1 \fi \pgfmathparse{#1 == ab} \ifnum\pgfmathresult=1 2 \fi \pgfmathparse{#1 == c} \ifnum\pgfmathresult=1 3 \fi \pgfmathparse{#1 == d} \ifnum\pgfmathresult=1 4 \fi \pgfmathparse{#1 == e} \ifnum\pgfmathresult=1 5 \fi } \begin{document} \begin{tikzpicture} \foreach \letter in {a,b,...,e} { \node at (\letterpos{\letter},0) {\letter}; } \end{tikzpicture} \end{document}
- xcolor not fully colouring commutative diagrams drawn by tikzcdby Ishan Deo on December 2, 2025 at 3:12 am
I'm using xcolor in a table whose cells contain commutative diagrams drawn by tikzcd. However, the colour from xcolor is not fully going through these commutative diagrams, as can be seen by the image below Here is a MWP for the code \documentclass[12pt]{article} \usepackage[svgnames,table]{xcolor} \usepackage{tikz-cd} \begin{document} \begin{table} \centering \rowcolors{1}{Gray!10}{} \begin{tabular}{c} $\displaystyle \begin{tikzcd}[column sep=huge, ampersand replacement=\&] * \arrow[r, bend left = 40, "\,", ""{name=U, inner sep=1pt, below}] \arrow[r, bend right = 40, "\,"{below}, ""{name=D, inner sep=1pt}] \& \arrow[Rightarrow, from=U, to=D, "\alpha"] * \end{tikzcd}$ \end{tabular} \end{table} \end{document} Why is this error happening? And how can I fix it?
- French spacing conflicts with cleverefby Erwann on December 1, 2025 at 5:41 am
In this example I must choose between \cref{sec:bar} and French spacing (o/w disabled using \NoAutoSpace; I presume because sec:bar is read sec\thinspacing:bar. Is there a solution? \documentclass{article} \usepackage[T1]{fontenc} \usepackage[french]{babel} %\NoAutoSpacing \usepackage{cleveref} \begin{document} \section{Foo} bonjour: monde; oui? non! «aujourd'hui» % Voir~\cref{sec:bar} %(./debug-108.aux) %! Missing \endcsname inserted. %<to be read again> % \unskip %l.14 Voir~\cref{sec:bar} % %? \section{Bar}\label{sec:bar} bonjour: monde; oui? non! « aujourd'hui » \end{document}
- What are CTAN package modifications that don't affect the package files and why do they happen?by schtandard on November 30, 2025 at 11:25 pm
Today, I updated my TeX Live installation and noticed that a lot of packages were updated where the old and the new version number were identical. Looking into some examples, it seems like the packages are indeed unchanged. There seems to have been a modification in the CTAN catalogue that did not affect the package files at all. What is it and why did it happen? An example: One of the "updated" packages was lipsum, from version 2.7 to version 2.7. Looking at its directory page, all files date from 2021, so there was no recent change justifying an update. However, when I search for lipsum, the search result is marked as "Last modified in Catalogue: 2025-11-11 12:35". This modification must be what triggered the update. However, I could not find this date or any reference to this modification on the package page this search result entry links to (or anywhere else, for that matter).
- Status of the tabularray package?by albert on November 28, 2025 at 9:20 am
I saw something worrying on gthub regarding the status of the package tabularay: Does anyone know how the future will look like for this package? Will there someone who will take over its maintenance?
- Why does LaTeX put the PDF tags for floats at the end of the document?by Mörkö on November 28, 2025 at 8:34 am
Background I am trying to produce a reasonably accessible document template at work. I have worked out basic tagging, reasonably structured tables, alt text for images and mathml output for inline and block math envs. I have been testing this document with NVDA + MathCAT + Adobe Acrobat, which I understand to be a "known good" reader + screen reader combo. (I am sighted and don't use screen readers in my daily life: please correct me if this is an unreasonable test setup!) I have also been inspecting the thing with PAC and the ngpdf editor. Everything I'm showing here is compiled with the lualatex-dev demo here https://latex3.github.io/tagging-project/documentation/wtpdf/small-example (though I did also test it with overleaf's newest release and got the same outcomes) Issue with tagging structure My issue concerns floats (at least tables and figures): whereas LaTeX places them among the text in the visual part of the pdf, the relevant accessibility tags are at the very end of the document. Specifically (per the ngpdf editor) the document ends with a tables element that contains both tables (see screenshot below; I collapsed the table structure itself to save space). Therefore, when just reading the document using a screen reader from top to bottom, the float doesn't get read in the relevant chapter. If I navigate past the end of the document, I can find (and read) my floats there. I believe this not to be a problem with my reader setup, because the ngpdf editor also places these items at the end of the document and the html derivation algorithm implemented by ngpdf places them at the end of the document. I have created what I think of as a minimal repro: \DocumentMetadata{ lang = en, pdfstandard = ua-2, pdfstandard = a-4f, %or a-4 tagging=on, tagging-setup={math/setup=mathml-SE}, testphase={math} } \documentclass{article} \usepackage{graphicx} % Required for inserting images \usepackage{hyperref} \title{Figure repro} \begin{document} \maketitle This document has multiple floats (\ref{tab:A} and \ref{tab:B}). \begin{table}[h] \centering \begin{tabular}{c|c} A & B \\ C & D \end{tabular} \caption{Letters} \label{tab:A} \end{table} Then it has a paragraph of text \begin{table}[h] \centering \begin{tabular}{c|c} 1 & 2 \\ 3 & 4 \end{tabular} \caption{Numbers} \label{tab:B} \end{table} In conclusion: lorem ipsum. \url{https://ctan.org} \end{document} Corresponding html output: https://ngpdf.com/resources/html/df185aa3-feee-4946-8d0d-6ed438c568cd/2f659711-f19d-454c-a710-165dc27b36fd.html ngpdf editor: https://ngpdf.com/editor/editFile Accessibility ramifications As I read the repro with NVDA from top to bottom, I get: figure repro november twenty-eighth this document has multiple floats link go to destination table dot struct dot fourteen and link go destination link table dot struct dot thirty then it has a paragraph of text in conclusion [small pause] lorem ipsum [long pause] link https slash slash ctan dot org caption table one letters out of caption table with two rows and two columns row one column one a [pronouced ey] column two b [pronounced bee] row two column one c [pronounced cee] row two column two d [pronounced dee] out of table caption table two numbers out of caption table with two rows and two columns row one column one one column two two row two column one three row two column two four If I press k (go to next link) at "this document has multiple floats link go to destination table dot struct dot fourteen and link go destination", NVDA announces "link go to destination table dot struct dot fourteen link". When I then press enter, the box surrounding the link in acrobat changes from the purple that hyperref sets it to to a black-on-white dotted line: I would interpret that as having been visited. The same k-and-then-enter maneuver seems to work for the url link and opens a browser. I am therefore reasonably confident this activates the link. However, after activating the table link, I get silence. Then when I press down again, I get "link table dot struct dot thirty" and so on: it does not navigate me to the table. Actual questions Is having all the floats at the end the expected behaviour? I as a sighted person that isn't used to screen readers feel that the floats being at the end of the document makes navigating the document significantly harder. If the floats being at the end is not the expected behaviour, should I report a bug? Is there a known work-around to this? Besides trying to produce reasonable pdf output, I am also interested in deriving HTML / epub (potentially using the html derivation algorithm) for more general ergonomics and access reasons. I would at least want to have the figure placement controllable in that case. (Though in the html produced by ngpdf, the links do at least work) Am I missing something with the non-followable links in acrobat or is acrobat just broken? Can the link titles be made more human readable? The HTML output for reference I don't know how long the ngpdf links last so here is the html output: <!DOCTYPE html> <html lang="en"><head> <title>Figure repro</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <meta name="derivation-algorithm-version" content="1.1"/> <meta name="derivation-algorithm-producer" content="ngPDF"/> <style> li > span[data-pdf-se-type=Lbl] { font-style: bold;margin-right:.5em;display:inline-block;vertical-align:top;} div[data-pdf-se-type=LBody] > div { vertical-align:top;} div[data-pdf-se-type=LBody] > div:first-child > p:first-child { margin-top:0} </style> <style> mtable.align > mtr > mtd:nth-child(2n), mtable.flalign > mtr > mtd:nth-child(2n), mtable.alignat > mtr > mtd:nth-child(2n), mtable.aligned > mtr > mtd:nth-child(2n+1), mtable.alignedat > mtr > mtd:nth-child(2n+1), mtable.split > mtr > mtd:nth-child(2n+1) { padding-right:0;text-align:right;text-align:-moz-right;text-align:-webkit-right; } mtable.align > mtr > mtd:nth-child(2n+3), mtable.flalign > mtr > mtd:nth-child(2n+3), mtable.alignat > mtr > mtd:nth-child(2n+3), mtable.aligned > mtr > mtd:nth-child(2n), mtable.alignedat > mtr > mtd:nth-child(2n), mtable.split > mtr > mtd:nth-child(2n) { padding-left:0;text-align:left;text-align:-moz-left;text-align:-webkit-left; } /* use float right for safari */ @supports (-webkit-appearance:none) and (stroke-color:transparent) { mtable.align > mtr > mtd:nth-child(2n), mtable.flalign > mtr > mtd:nth-child(2n), mtable.alignat > mtr > mtd:nth-child(2n), mtable.aligned > mtr > mtd:nth-child(2n+1), mtable.alignedat > mtr > mtd:nth-child(2n+1), mtable.split > mtr > mtd:nth-child(2n+1) { padding-right:0;text-align:right;float:right:display:math; } } mtable.align > mtr > mtd:nth-child(2n) {border margin-left:1em; padding-left:1em; } mtable.alignat > mtr > mtd { margin-left:0em; margin-right:0em; padding-left:0em; padding-right:0em;} mtable.flalign {width:100%} mtd[intent=":no-equation-label"], mtd[intent=":equation-label"] { position:relative; left:-2em; } </style> </head> <body lang="en"><nav hidden id="PDF-PageNavigation" role="doc-pagelist"><a href="#page-0">1</a></nav><div data-pdf-se-type="Document" id="ID.002"><div data-pdf-se-type-original="text-unit" data-pdf-se-type="Part" id="ID.005"><div data-pdf-se-type="Title" id="ID.006"><p data-pdf-se-type-original="text" data-pdf-se-type="P" class="center" style="text-align:center;" id="ID.007"><span id="page-0" role="doc-pagebreak" aria-label="1"></span>Figure repro</p></div><p data-pdf-se-type-original="text" data-pdf-se-type="P" class="center" style="text-align:center;" id="ID.008"></p><p data-pdf-se-type-original="text" data-pdf-se-type="P" class="center" style="text-align:center;" id="ID.009">November 28, 2025</p></div><div data-pdf-se-type-original="text-unit" data-pdf-se-type="Part" id="ID.010"><p data-pdf-se-type-original="text" data-pdf-se-type="P" class="justify" style="text-align:justify;" id="ID.011">This document has multiple floats (<a href="#ID.014" data-pdf-se-type="Link" id="ID.012">1</a> and <a href="#ID.030" data-pdf-se-type="Link" id="ID.013">2</a>).</p></div><div data-pdf-se-type-original="text-unit" data-pdf-se-type="Part" id="ID.028"><p data-pdf-se-type-original="text" data-pdf-se-type="P" class="justify" style="text-align:justify;" id="ID.029">Then it has a paragraph of text</p></div><div data-pdf-se-type-original="text-unit" data-pdf-se-type="Part" id="ID.044"><p data-pdf-se-type-original="text" data-pdf-se-type="P" class="justify" style="text-align:justify;" id="ID.045">In conclusion: lorem ipsum. <a href="https://ctan.org" data-pdf-se-type="Link" id="ID.046">https://ctan.org</a></p></div><section data-pdf-se-type-original="tables" data-pdf-se-type="Sect" id="ID.004"><aside data-pdf-se-type-original="float" data-pdf-se-type="Aside" id="ID.014"><div data-pdf-se-type="Caption" id="ID.025"><span data-pdf-se-type="Lbl" id="ID.026">Table 1: </span><p data-pdf-se-type-original="text" data-pdf-se-type="P" class="center" style="text-align:center;" id="ID.027">Letters</p></div><div data-pdf-se-type-original="text-unit" data-pdf-se-type="Part" id="ID.015"><p data-pdf-se-type-original="text" data-pdf-se-type="P" class="center" style="text-align:center;" id="ID.016"></p><table data-pdf-se-type="Table" id="ID.017"><tr data-pdf-se-type="TR" id="ID.018"><td data-pdf-se-type="TD" id="ID.019">A</td><td data-pdf-se-type="TD" id="ID.020">B</td></tr><tr data-pdf-se-type="TR" id="ID.021"><td data-pdf-se-type="TD" id="ID.022">C</td><td data-pdf-se-type="TD" id="ID.023">D</td></tr></table><p data-pdf-se-type-original="text" data-pdf-se-type="P" id="ID.024"></p></div></aside><aside data-pdf-se-type-original="float" data-pdf-se-type="Aside" id="ID.030"><div data-pdf-se-type="Caption" id="ID.041"><span data-pdf-se-type="Lbl" id="ID.042">Table 2: </span><p data-pdf-se-type-original="text" data-pdf-se-type="P" class="center" style="text-align:center;" id="ID.043">Numbers</p></div><div data-pdf-se-type-original="text-unit" data-pdf-se-type="Part" id="ID.031"><p data-pdf-se-type-original="text" data-pdf-se-type="P" class="center" style="text-align:center;" id="ID.032"></p><table data-pdf-se-type="Table" id="ID.033"><tr data-pdf-se-type="TR" id="ID.034"><td data-pdf-se-type="TD" id="ID.035">1</td><td data-pdf-se-type="TD" id="ID.036">2</td></tr><tr data-pdf-se-type="TR" id="ID.037"><td data-pdf-se-type="TD" id="ID.038">3</td><td data-pdf-se-type="TD" id="ID.039">4</td></tr></table><p data-pdf-se-type-original="text" data-pdf-se-type="P" id="ID.040"></p></div></aside></section></div></body></html>
- How to make a long cases equation more compact and clearer?by mingabua on November 27, 2025 at 10:12 am
I am currently writing my master's thesis. In it, I have to specify a case equation. I can present the formula clearly and comprehensibly, but somehow I find the formatting not quite right. I can't tell you exactly how I would like it to look, but I would like it to be a little clearer and perhaps take up less space vertically. This is my code: \documentclass[11pt]{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{lipsum} \usepackage[margin=1in]{geometry} \usepackage{amsmath,amssymb} \usepackage{mathtools} \usepackage{lmodern} \begin{document} \lipsum[2] \begin{align}\label{eq:qt_recursion} Q_{t+1}\bigl(\Omega_{t+1},\alpha_{t+1},\mathbf{l}_{t+1}\bigr) = \min\!\begin{cases} Q_t(\delta_t) - \pi_{jt}, & \text{if R2: } \Omega_{t+1}=\Omega_t+1,\ \alpha_{t+1}=\alpha_t, \\[-1mm] & \qquad\qquad\ \ \mathbf{l}_{t+1}=(1,l_{t,1},\dots,l_{t,MS-2}), \\[0.5mm] Q_t(\delta_t), & \text{if R1: } \Omega_{t+1}=\Omega_t+\theta(\alpha_t),\ \alpha_{t+1}=\alpha_t+1, \\[-1mm] & \qquad\qquad\ \ \mathbf{l}_{t+1}=(0,l_{t,1},\dots,l_{t,MS-2}). \end{cases} \end{align} \lipsum[3] \end{document}
- TikZ word search diagramby yannis on November 26, 2025 at 11:50 pm
How can I draw such a "word-search" diagram in TikZ? I need to place the letters on a grid and then to add red horizontal, vertical, diagonal or antidiagonal highlighting boxes as in the picture.
- macTeX suddenly installs a lot of updates and takes huge disk spaceby F'x on November 26, 2025 at 7:10 pm
I've been using macTeX for many years, installing the new version each year, and updating (with tlmgr update --all) about every two weeks. Every time, it updates a few dozen packages. But about two weeks ago, the update command decided to update several hundred packages. I was in a hurry, so I said yes, and though maybe I had forgotten to update for a long time. But today I run another update, and it updated 459 packages. I wondered what happened, and I looked at my /usr/local/texlive/2025/texmf-dist, and now it's whooping 8.6 GB. I don't have a number for before, but all info I find online says it should be a few GB, not that much. So, in that context: how can I check the logs of past updates, see how many packages were updated each time? has something changed in the last few months about texlive updates?
- Wild Turkeys in TikZby karlh on November 25, 2025 at 4:20 pm
I have an annual scavenger hunt at Thanksgiving in which the TikZlings and TikZ ducks (and related fauna) guide my nieces and nephew through the course. Given that it is Thanksgiving, I wanted to include a turkey munching on pie and sipping wine, but the closest I can come is \documentclass{article} \usepackage{tikzlings} \begin{document} \begin{tikzpicture} \chicken[cake=orange!50!brown,wine] \end{tikzpicture} \end{document} and that just doesn't have the same ring to it. I found a good wild turkey drawn in MetaPost (Draw a turkey, a pumpkin pie, or any other object traditionally associated with Thanksgiving), but since the holiday is only two days away, I thought I'd see whether anyone was interested in making a picture of Meleagris gallopavo.
- Why do expl3 setting commands use \edef?by jlab on November 24, 2025 at 9:21 am
Looking at the definition of \tl_set:Nn (for example, with latexdef \tl_set:Nn), we find \tl_set:Nn: \protected\long macro:#1#2->\__kernel_tl_set:Nx #1{\__kernel_exp_not:w {#2}} where \__kernel_tl_set:Nx is simply \edef; and \__kernel_exp_not:w is \unexpanded. So, \tl_set:Nn \l_my_tl {...} means \edef \l_my_tl {\unexpanded {...}} that is to say: \edef requests for the expansion of the macro definition, but this expansion is prevented by \unexpanded. I'm curious, why not using instead \def \l_my_tl {...} ?
- Plans for evolution/support of {Xe|Lua[node|harf]}LaTeX?by Alain Stalder on November 23, 2025 at 7:44 am
Let me first give some context: As far as I can see, the original TeX/LaTeX including rendering with pdflatex has been very reliably producing the same visual output for decades now and presumably will for many more decades into the future, while there can be glitches due to various optional packages influencing each other. If you plan to or need to support a series of possibly evolving documents with a shared *TeX source code base, that is a very important feature, often close to an absolute necessity. However, I guess still due to Donald E. Knuth’s decision of 1990 in a TUGboat article titled The Future of TeX and METAFONT to not allow especially METAFONT to evolve into the future, and with in parallel newer font features broadly needed and desired, new variants/"variants" of LaTeX emerged that use especially OpenType fonts, I presume having evolved partially via ConTeXt to now XeLaTeX and LuaLaTeX. As far as I understand, XeLaTeX uses the HarfBuzz library (C++, the basis of font support in modern web browsers, Android and a lot more), which is also used by LuaLaTeX with the HarfBuzz renderer, while LuaLaTeX with the default Node renderer is doing it in some other way (maybe native Lua or C?). These three "engines" (XeLaTeX, LuaLaTeX/HarfBuzz and LuaLaTeX/Node) seem to produce similar output in many typical use cases, but in border cases differ. In contrast, as Knuth writes in the above article, at least at the time he wrote it there were tests called TRIP and TRAP that specifically focus on border/edge cases, again a very desirable feature in the context of long-term reliability. Since I write software for a living and partially also as a hobby, I am well aware that for all that it appears the situation is not easy or simple: The three "engines" are broadly used (except maybe LuaLaTeX/HarfBuzz?) so that I presume even making small meaningful changes or small bug fixes would often be close to impossible. Now to the main question (which I presume is of interest to many *TeX users): What are the plans and/or the likely outcome for the three "engines" and thus what is the recommendation which of those three (if any) to use if you want long-term reliable output and need features beyond pdflatex? Related questions that could at least make it easier to decide individually for users: • Any plans to freeze one or some of the "engines"? (Has XeLaTeX already been essentially frozen? And maybe LuaLaTeX/HarfBuzz less future than LuaLaTeX/Node? Or the other way round? Or both to evolve? If several "engines" are planned to keep evolving, any plans to harmonize their output a bit further? Or plans for a new "engine" that would be largely compatible with "the best of all three" but have a more stringent design and tests? Maybe a new renderer "..." for LuaLaTeX?) • Are there tests similar to "TRIP and TRAP" for any of those "engines" or plans to implement more of that in the future? • Any helpful links around the planned/envisioned future of *TeX would be appreciated... Questions on the side: • Did anybody recently ask Donald E. Knuth if he would maybe be willing to change his mind regarding the Computer Modern font under some circumstances, like maybe a well-defined and well-tested environment, like maybe in a future "engine" out of or derived from the mentioned three? (In my personal view, the quality of the font is unparalleled, but it is also tied to it being typeset as intended, which I why I can understand his decision in 1990.)
- Refactor AI code for a forest diagramby projetmbc on November 22, 2025 at 9:40 pm
In the code below, made using the "AI" Claude, there is too much copying and pasting of lines like the ones shown below. What is the best way to refactor the full code? archivefile/.style={ before typesetting nodes={ content/.wrap value={ \textcolor{orange!80}{\faFileArchive}\ ##1 } } } Here is the full code. \documentclass{article} \usepackage{forest} \usepackage{fontawesome5} \definecolor{foldercolor}{RGB}{124,166,198} \definecolor{filecolor}{RGB}{88,88,88} \forestset{ dir tree/.style={ for tree={ font = \sffamily, grow' = 0, child anchor = west, parent anchor= south, anchor = west, calign = first, inner ysep = 1pt, inner xsep = 1.75pt, text depth = 0pt, edge path = { \noexpand \path[draw, \forestoption{edge}] (!u.south west) +(7.5pt,0) |- (.child anchor)\forestoption{edge label}; }, before typesetting nodes={ if n=1 {insert before={[,phantom]}} {} }, fit = band, before computing xy = {l = 15pt}, } }, open/.style={ before typesetting nodes={ content/.wrap value={ \textcolor{foldercolor}{\faFolderOpen}\ ##1 } } }, closed/.style={ before typesetting nodes={ content/.wrap value={ \textcolor{foldercolor}{\faFolder}\ ##1 } } }, file/.style={ before typesetting nodes={ content/.wrap value={ \textcolor{filecolor}{\faFile}\ ##1 } } }, codefile/.style={ before typesetting nodes={ content/.wrap value={ \textcolor{filecolor}{\faFileCode}\ ##1 } } }, pdffile/.style={ before typesetting nodes={ content/.wrap value={ \textcolor{red!70}{\faFilePdf}\ ##1 } } }, textfile/.style={ before typesetting nodes={ content/.wrap value={ \textcolor{filecolor}{\faFile*}\ ##1 } } }, imagefile/.style={ before typesetting nodes={ content/.wrap value={ \textcolor{blue!70}{\faFileImage}\ ##1 } } }, archivefile/.style={ before typesetting nodes={ content/.wrap value={ \textcolor{orange!80}{\faFileArchive}\ ##1 } } }, } \begin{document} \subsection*{Exemple d'arborescence de fichiers} \begin{forest} dir tree [system, open [config, closed [settings.conf, textfile] [database.yml, codefile] ] [doc, open [manual.pdf, pdffile] [README.md, textfile] [images, closed [logo.png, imagefile] [banner.jpg, imagefile] ] ] [lib, closed [utils.py, codefile] [helpers.js, codefile] [archive.zip, archivefile] ] [test, open [test\_unit.py, codefile] [test\_integration.py, codefile] [fixtures, closed [data.json, file] ] ] ] \end{forest} \subsection*{Exemple simple} \begin{forest} dir tree [system, open [config, closed] [Dog, closed] [lib, closed] [test, closed] ] \end{forest} \end{document}
- Randomize an enumerate list containing lstlistingby Dimitrios ANAGNOSTOU on November 19, 2025 at 10:52 am
I would like to create a randomized enumerate list whose items may contain lstlisting environments. So far, I can successfully randomize ordinary items, but items containing a lstlisting environment break the mechanism. I have a workaround, but it forces all listings to stay in fixed positions, which defeats the purpose of randomization. I would like all items—including those containing listings—to be included in the shuffle performed by \additem. Here is an example of my 'workaround' solution. \documentclass{article} % ---------- Packages ---------- \usepackage[french]{babel} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{lmodern} \usepackage{enumitem} \usepackage{xcolor} \usepackage{listings} % ----------- Style Matlab ----------- \lstdefinestyle{stylematlab}{ language=Matlab, basicstyle=\ttfamily\small, keywordstyle=\color{blue}, commentstyle=\color{green!60!black}, numbers=left, numberstyle=\tiny, stepnumber=1, frame=single } % ----------- Randomized items ----------- \usepackage{pgffor} \usepackage{pgf} \usepackage{xparse} \ExplSyntaxOn % Sequence storing the items \seq_new:N \g_myitems_seq % Add item \NewDocumentCommand{\additem}{m}{ \seq_put_right:Nn \g_myitems_seq {#1} } % Shuffle and typeset \NewDocumentCommand{\shuffleitems}{}{ \pgfmathsetseed{\number\pdfrandomseed} \seq_shuffle:N \g_myitems_seq \begin{enumerate} \seq_map_inline:Nn \g_myitems_seq {##1} \end{enumerate} } \ExplSyntaxOff \begin{document} Indiquer si chaque affirmation est vraie (V) ou fausse (F). % ---- Ajout des items ---- \additem{ \item En programmation numérique, une complexité algorithmique en $\mathcal{O}(n^2)$ est toujours préférable à une complexité en $\mathcal{O}(n \ln n)$. } \additem{ \item Les fonctions anonymes en \textsc{Matlab} ne peuvent pas être passées comme arguments à d'autres fonctions. } \additem{ \item En général, dans un problème d’optimisation, une solution optimale locale est garantie d’être aussi une solution optimale globale. } % ---- Mélange des items ---- \shuffleitems % ---- Items supplémentaires (non randomisés) ---- \begin{enumerate}[start=4] \item Exemple avec listing Matlab : \begin{lstlisting}[style=stylematlab] f = @(x) x.^2 + 1; x = -5:0.1:5; plot(x,f(x)) \end{lstlisting} \end{enumerate} \end{document} Items containing lstlisting do not behave well inside the token storage. They seem to prevent the shuffle from working properly. My temporary workaround is to keep such items outside the randomized block, but this defeats the point. Is there a way to fully integrate items containing lstlisting into the randomization process performed by \additem, without switching to the exam class and eventually exam-randomizechoices?
- Link with many %by Sebastiano on November 18, 2025 at 5:27 pm
Generally, I don't include many links in my PDFs. Until now I’ve never had problems with \href from the hyperref package: when the URL contains % characters, I escape them using \% and everything works fine. I suppose to have a URL with many % https://www.emathhelp.net/calculators/calculus-2/series-calculator/?f=n%5E%280.9999%29*%281%2F%28n-2%29-1%2F%28n-1%29%29&var=n&a=3&b=%2Binf \documentclass[12pt]{article} \usepackage{hyperref} \begin{document} \href{https://www.emathhelp.net/calculators/calculus-2/series-calculator/?f=n\%5E\%280.9999\%29*\%281\%2F\%28n-2\%29-1\%2F\%28n-1\%29\%29&var=n&a=3&b=\%2Binf}{t} \end{document} I put for every % the symbol \ thus the \href work correctly. If I use the original link provides me with an incomplete URL because the first % acts as a comment (see the picture below). But if a URL contains, for example, twenty % characters, what is the correct way to handle them so that \href works properly without put manually twenty \?
- help with 3D Surface plot TikZby Mark Roelands on November 16, 2025 at 9:20 pm
Can someone please help with coding the surface plot for $\sqrt{(x - 1)^2 + y^2} + \sqrt{(x + 1)^2 + y^2} - 4 = -|z|$ in TikZ for my article in LateX? I have been trying, but can't seem to manage it. This is what I have so far, it only plots one half of the surface on a square but not within the disk: \begin{tikzpicture} \begin{axis}[ hide axis, colormap/cool, ] \addplot3[ mesh, samples=50, domain=-2:2, ] {deg(sqrt((x - 1)^2 + y^2) + sqrt((x + 1)^2 +y^2) - 4)}; \end{axis} \end{tikzpicture}
- fourier-otf font package: incorrect size of integral symbol in \displaystyle math modeby jowe_19 on November 15, 2025 at 2:51 pm
For the past few weeks, my integrals have not been displaying in display-style math mode. I can reproduce the issue with this small minimal example. How can I fix this? \documentclass[11pt]{report} \usepackage{mathtools} \usepackage{fourier-otf} \begin{document} Test \( \int_0^1 \). Test \( \displaystyle\int_0^1 \). \end{document}