Hot
- stacking diacritics to small capitalsby Antonis on June 28, 2026 at 1:36 pm
A user ask to stack diacritics at small capitals in NewCM. Small Capitals are accessible with scmp from lowercase and with c2sc from uppercase. But stacking fails. When say A is followed by U+0304 (combining macron) with c2sc enabled the letter switches to the plain capital A. When U+0304 is removed the A in small capital is produced. NewCM contains information for stacking at its small capitals too but it seems that there is a but in the engine or something else happens which I do not understand. Here is a MWE: \documentclass{article} \usepackage[default]{fontsetup} \begin{document} \addfontfeatures{RawFeature=+c2sc} \textsc{ā, ī, ū, ṭ, ḍ, ḷ, ṁ, ṃ, ṇ, ṅ, ñ} \textsc{a}̄ \textsc{a} A Ā \end{document} Notice that sc n with tilde works because this character is precomposed in the font. But we can not expect the font to have all characters precomposed. This is why we have stacking. The output is erratic. The line \textsc{a}̄ is not a result of stacking but of negative width of the macron, this is why it is not centered. Notice that you may find another font that gives correct output. But this will happen just because it has the above characters precomposed. Stacking still fails. We cannot precompose everything.
- Straight lines in a matrixby Andy Fletcher on June 28, 2026 at 12:14 pm
I'm trying to draw straight lines in a matrix using nicematrix, and I achived the code: \documentclass{article} \usepackage{nicematrix,tikz} \begin{document} \begin{equation*} \begin{bNiceMatrix} \CodeBefore[create-cell-nodes] \begin{tikzpicture} %\draw[blue,-] (3-1) -- (4-2) ; %\draw[blue,-] (4-2) -- (3-4) ; \draw[blue,-] (3-1.north west) -- (4-2.south east) ; \draw[blue,-] (4-2.south east) -- (3-4.north east) ; \end{tikzpicture} \Body a_{11} & a_{12} & a_{13} & a_{14} \\ a_{21} & a_{22} & a_{23} & a_{24} \\ a_{31} & a_{32} & a_{33} & a_{34} \\ a_{41} & a_{42} & a_{43} & a_{44} \end{bNiceMatrix} \end{equation*} \end{document} My problem is the straight lines are not centered in the entries of the matrix (see image below); I considered also \draw[blue,-] (3-1) -- (4-2) ; \draw[blue,-] (4-2) -- (3-4) ; instead of \draw[blue,-] (3-1.north west) -- (4-2.south east) ; \draw[blue,-] (4-2.south east) -- (3-4.north east) ; but in this case the two line are not linked. Any hint (desirably keeping the matrix created by nicematrix)? Thanks.
- 'atableau.ini' not foundby Sebastiano on June 28, 2026 at 11:29 am
I use the v. 2.2.1 of atableau. Using this code this morning \documentclass{article} \usepackage{tikz} \usepackage{atableau} \begin{document} \Tableau[color theme=classic,box style={minimum size=4mm}]{123,456,789} \end{document} I get the error: ! LaTeX Error: File 'atableau.ini' not found. For immediate help type H <return>. ... l.59 \ior_open:Nn \g_tmpa_ior { atableau.ini } ? What happened?
- ! TeX capacity exceeded, sorry [save size=500000]. How to increase limit?by Nasser on June 28, 2026 at 7:16 am
I have large document with many \label{} and another document which does reference on these. This below is MWE to produce this error I get on my real document ! TeX capacity exceeded, sorry [save size=500000]. I tried to increase it in texmf.cnf but had no effect. (did rehash and rebuild formats, etc...) Is this hardcoded in lualatex? Is there a way to increase it? I know how to rebuild lualatex from source. I just now do not know where to look for this limit if it is hardcoded there or not to change it. \documentclass{book} \usepackage{hyperref} \begin{document} \chapter{A} \directlua{ for i = 1, 800000 do tex.print("\\section{" .. i .. "}\\label{".. i .."}") tex.print("some text") end } \end{document} Compile with lualatex gives (/usr/local/texlive/2026/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty (/usr/local/texlive/2026/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty ))) (/usr/local/texlive/2026/texmf-dist/tex/latex/l3backend/l3backend-luatex.def) (./A.aux) (./A.out) (./A.out ! TeX capacity exceeded, sorry [save size=500000]. \Hy@pstringdef ...->\begingroup \edef ~{\string ~} \xdef \Hy@gtemp {\pdf@esca... l.499937 ...4\0009\0009\0009\0003\0006}{chapter.1} % 499937 382 words of node memory still in use: 2 hlist, 1 rule, 1 dir, 3 kern, 1 glyph, 3 attribute, 49 glue_spec, 3 attrib ute_list, 1 if_stack, 1 write nodes avail lists: 2:12,3:2,4:1,5:3,6:1,7:2,9:3 ! ==> Fatal error occurred, no output PDF file produced! Transcript written on A.log. > info >which lualatex /usr/local/texlive/2026/bin/x86_64-linux/lualatex >lualatex --version This is LuaHBTeX, Version 1.24.0 (TeX Live 2026) Development id: 7724 I asked google AI but it did not know.
- How to draw a diagram in math-mode or in-line LaTeX?, for example, the following kind of diagram? What packages do I require?by Sagnik Roy on June 28, 2026 at 7:04 am
I need to draw the following and similar kind of diagrams with labels inside an LaTeX article.
- How to remove the `:n` specifier when calling `\getdata:n { h }`?by xcn on June 28, 2026 at 4:41 am
If I replace in: \cs_new:Nn \getdata:n { \prop_item:Nn \g_landingslab_data_prop {#1} } \cs_set:Npn \getdata #1 { \prop_item:Nn \g_landingslab_data_prop {#1} } then I can use \getdata{ h } instead of \getdata:n { h } , is it the correct way to do this ? \documentclass[12pt]{article} \usepackage[UTF8]{ctex} \usepackage{amsmath,siunitx} \ExplSyntaxOn \prop_new:N \g_landingslab_data_prop \cs_new:Nn \getdata:n { \prop_item:Nn \g_landingslab_data_prop {#1} } \cs_new:Nn \putdata:nn { \prop_put:Nnn \g_landingslab_data_prop {#1} {#2} } \keys_define:nn { landingslab } { width .code:n = { \putdata:nn { width } {#1} }, length .code:n = { \putdata:nn { length } {#1} }, h .code:n = { \putdata:nn { h } {#1} }, c .code:n = { \putdata:nn { c } {#1} }, d .code:n = { \putdata:nn { d } {#1} }, s .code:n = { \putdata:nn { s } {#1} }, frontfaceload .code:n = { \putdata:nn { frontfaceload } {#1} }, rearfaceload .code:n = { \putdata:nn { rearfaceload } {#1} }, } \cs_new_protected:Nn \l_landingslab_calc:n { \keys_set:nn { landingslab } {#1} \putdata:nn { h0 } { \fp_eval:n { \getdata:n { h } - \getdata:n { c } - \getdata:n { d } / 2 } } landing~slab~thickness: ~$ h = \getdata:n { h } \, \unit{mm} $\par slab~effective~depth:~$ h\sb 0 = \getdata:n { h0 }\, \unit{mm} $\par } \NewDocumentCommand{\stairPTB}{m}{ \l_landingslab_calc:n {#1} } \ExplSyntaxOff \begin{document} \begin{center}{\large\bfseries civil air\ defence\ stair }\end{center} \stairPTB{ width = 1.5, length = 2.9, h = 120, c = 20, d = 12, s = 200, frontfaceload = 60, rearfaceload = 30 } \end{document}
- Formatting long division without the longdivision packageby Matt on June 28, 2026 at 3:59 am
I'm trying to make a worksheet where students need to fill out parts of a long division statement. I usually use the longdivision package, but realized that I can't cover up parts of it for students to fill out. Any suggestions? I've attached an image for reference.
- Auto-calculate max/min/average for blood glucose table with longtblr, stats auto refresh after compilingby mike on June 28, 2026 at 3:59 am
I want to create a blood glucose monitoring log with longtblr. The core requirement is: after I input glucose numbers inside table cells, the weekly and monthly statistical results (max value, min value, average value) can be automatically recalculated and updated every time I compile the document. My original code uses static text for statistics, which means I have to rewrite all stats manually every time I add new glucose data. This is inefficient. I hope to use LaTeX built-in calculation packages to extract all valid numbers from table cells and generate statistics automatically. Full original code below: \documentclass[a4paper,landscape,10pt]{article} \usepackage{ctex} \usepackage{geometry} \usepackage{array} \usepackage{tabularray} \usepackage{ninecolors} \usepackage{xcolor} \geometry{left=1.2cm,right=1.2cm,top=1.8cm,bottom=1.8cm} \newcommand{\zz}[1]{\ifnum#1<10 0#1\else#1\fi} \pagecolor{cyan!10} \begin{document} \title{\Large Blood Glucose Monitoring Log} \author{Name: \underline{\hspace{4cm}} \quad Normal fasting range:4.4~7.0 mmol/L} \date{} \maketitle {\centering \begin{longtblr}[caption={Blood Glucose Log}] { colspec = {c c c c c c c c c Q[8cm,c]}, rowhead = 1, column{3} = {bg=pink!15}, column{4-5} = {bg=green!15}, column{6-7} = {bg=orange!15}, column{8-9} = {bg=blue!15}, vlines, hlines } Date &Weekday &Fasting &1h After Breakfast &2h After Breakfast &1h After Lunch &2h After Lunch &1h After Dinner &2h After Dinner & Remarks \\ % Week 1, Jun 1–7 2026-\zz{6}-\zz{1} & Monday & & & & & & & & \\ 2026-\zz{6}-\zz{2} & Tuesday & & & & & & & & \\ 2026-\zz{6}-\zz{3} & Wednesday & & & & & & & & \\ 2026-\zz{6}-\zz{4} & Thursday & & & & & & & & \\ 2026-\zz{6}-\zz{5} & Friday & & & & & & & & \\ 2026-\zz{6}-\zz{6} & Saturday & & & & & & & & \\ 2026-\zz{6}-\zz{7} & Sunday & & & & & & & & \\ \SetCell[c=10]{l}{\textbf{【Jun 1–7】No measurements recorded this week}} & & & & & & & & & \\ % Week 2, Jun 8–14 2026-\zz{6}-\zz{8} & Monday & & & & & & & & \\ 2026-\zz{6}-\zz{9} & Tuesday & & & & & & & & \\ 2026-\zz{6}-\zz{10}& Wednesday & & & & & & & & \\ 2026-\zz{6}-\zz{11}& Thursday & & & & & & & & \\ 2026-\zz{6}-\zz{12}& Friday & & & & & & & & \\ 2026-\zz{6}-\zz{13}& Saturday & & & & & & & & \\ 2026-\zz{6}-\zz{14}& Sunday & & & & & & & & \\ \SetCell[c=10]{l}{\textbf{【Jun 8–14】No measurements recorded this week}} & & & & & & & & & \\ % Week 3, Jun 15–21 2026-\zz{6}-\zz{15}& Monday & & & & & & & & \\ 2026-\zz{6}-\zz{16}& Tuesday & & & & & & & & \\ 2026-\zz{6}-\zz{17}& Wednesday & & & & & & & & \\ 2026-\zz{6}-\zz{18}& Thursday & & & & & & & & \\ 2026-\zz{6}-\zz{19}& Friday & & & & & & & & \\ 2026-\zz{6}-\zz{20}& Saturday & & & & & & & & \\ 2026-\zz{6}-\zz{21}& Sunday & & & & & & & & \\ \SetCell[c=10]{l}{\textbf{【Jun 15–21】No measurements recorded this week}} & & & & & & & & & \\ % Week 4, Jun 22–28 (with sample data) 2026-\zz{6}-\zz{22}& Monday & & & & & & & & \\ 2026-\zz{6}-\zz{23}& Tuesday & & & & & & & & \\ 2026-\zz{6}-\zz{24}& Wednesday & & & & & & & & \\ 2026-\zz{6}-\zz{25}& Thursday & & & & & & & & \\ 2026-\zz{6}-\zz{26}& Friday &6.7(8:56) & & &7.3(13:41) & & &6.2(21:17) & Brisk walking for 40 minutes after lunch \\ 2026-\zz{6}-\zz{27}& Saturday &6.7(8:55) & & &6.8(14:09) & &7.0(20:44) & & Brisk walking after breakfast & lunch; aerobic exercise after dinner \\ 2026-\zz{6}-\zz{28}& Sunday &6.0(9:12) & & & & & & &Aerobic exercise after breakfast \\ \SetCell[c=10]{l}{\textbf{【Jun 22–28】Weekly stats: Fasting max 6.7, min 6.0, avg 6.47; 1h postprandial max 7.3, min 6.8, avg 7.05; 2h postprandial max 6.2, min 6.2, avg 6.2}} & & & & & & & & & \\ % Jun 29–30 2026-\zz{6}-\zz{29}& Monday & & & & & & & & \\ 2026-\zz{6}-\zz{30}& Tuesday & & & & & & & & \\ \SetCell[c=10]{l}{\color{blue}\textbf{【Whole June】Monthly stats: Fasting max 6.7, min 6.0, avg 6.47; 1h postprandial max 7.3, min 6.8, avg 7.05; 2h postprandial max 6.2, min 6.2, avg 6.2}} & & & & & & & & & \\ % July empty 2026-\zz{7}-\zz{1} & Wednesday & & & & & & & & \\ 2026-\zz{7}-\zz{2} & Thursday & & & & & & & & \\ 2026-\zz{7}-\zz{3} & Friday & & & & & & & & \\ 2026-\zz{7}-\zz{4} & Saturday & & & & & & & & \\ 2026-\zz{7}-\zz{5} & Sunday & & & & & & & & \\ 2026-\zz{7}-\zz{6} & Monday & & & & & & & & \\ 2026-\zz{7}-\zz{7} & Tuesday & & & & & & & & \\ \SetCell[c=10]{l}{\textbf{【Jul 1–7】No measurements recorded this week}} & & & & & & & & & \\ 2026-\zz{7}-\zz{8} & Wednesday & & & & & & & & \\ 2026-\zz{7}-\zz{9} & Thursday & & & & & & & & \\ 2026-\zz{7}-\zz{10}& Friday & & & & & & & & \\ 2026-\zz{7}-\zz{11}& Saturday & & & & & & & & \\ 2026-\zz{7}-\zz{12}& Sunday & & & & & & & & \\ 2026-\zz{7}-\zz{13}& Monday & & & & & & & & \\ 2026-\zz{7}-\zz{14}& Tuesday & & & & & & & & \\ \SetCell[c=10]{l}{\textbf{【Jul 8–14】No measurements recorded this week}} & & & & & & & & & \\ 2026-\zz{7}-\zz{15}& Wednesday & & & & & & & & \\ 2026-\zz{7}-\zz{16}& Thursday & & & & & & & & \\ 2026-\zz{7}-\zz{17}& Friday & & & & & & & & \\ 2026-\zz{7}-\zz{18}& Saturday & & & & & & & & \\ 2026-\zz{7}-\zz{19}& Sunday & & & & & & & & \\ 2026-\zz{7}-\zz{20}& Monday & & & & & & & & \\ 2026-\zz{7}-\zz{21}& Tuesday & & & & & & & & \\ \SetCell[c=10]{l}{\textbf{【Jul 15–21】No measurements recorded this week}} & & & & & & & & & \\ 2026-\zz{7}-\zz{22}& Wednesday & & & & & & & & \\ 2026-\zz{7}-\zz{23}& Thursday & & & & & & & & \\ 2026-\zz{7}-\zz{24}& Friday & & & & & & & & \\ 2026-\zz{7}-\zz{25}& Saturday & & & & & & & & \\ 2026-\zz{7}-\zz{26}& Sunday & & & & & & & & \\ 2026-\zz{7}-\zz{27}& Monday & & & & & & & & \\ 2026-\zz{7}-\zz{28}& Tuesday & & & & & & & & \\ \SetCell[c=10]{l}{\textbf{【Jul 22–28】No measurements recorded this week}} & & & & & & & & & \\ 2026-\zz{7}-\zz{29}& Wednesday & & & & & & & & \\ 2026-\zz{7}-\zz{30}& Thursday & & & & & & & & \\ 2026-\zz{7}-\zz{31}& Friday & & & & & & & & \\ \SetCell[c=10]{l}{\color{blue}\textbf{【Whole July】No valid measurement data}} & & & & & & & & & \\ % August empty 2026-\zz{8}-\zz{1} & Saturday & & & & & & & & \\ 2026-\zz{8}-\zz{2} & Sunday & & & & & & & & \\ 2026-\zz{8}-\zz{3} & Monday & & & & & & & & \\ 2026-\zz{8}-\zz{4} & Tuesday & & & & & & & & \\ 2026-\zz{8}-\zz{5} & Wednesday & & & & & & & & \\ 2026-\zz{8}-\zz{6} & Thursday & & & & & & & & \\ 2026-\zz{8}-\zz{7} & Friday & & & & & & & & \\ \SetCell[c=10]{l}{\textbf{【Aug 1–7】No measurements recorded this week}} & & & & & & & & & \\ 2026-\zz{8}-\zz{8} & Saturday & & & & & & & & \\ 2026-\zz{8}-\zz{9} & Sunday & & & & & & & & \\ 2026-\zz{8}-\zz{10}& Monday & & & & & & & & \\ 2026-\zz{8}-\zz{11}& Tuesday & & & & & & & & \\ 2026-\zz{8}-\zz{12}& Wednesday & & & & & & & & \\ 2026-\zz{8}-\zz{13}& Thursday & & & & & & & & \\ 2026-\zz{8}-\zz{14}& Friday & & & & & & & & \\ \SetCell[c=10]{l}{\textbf{【Aug 8–14】No measurements recorded this week}} & & & & & & & & & \\ 2026-\zz{8}-\zz{15}& Saturday & & & & & & & & \\ 2026-\zz{8}-\zz{16}& Sunday & & & & & & & & \\ 2026-\zz{8}-\zz{17}& Monday & & & & & & & & \\ 2026-\zz{8}-\zz{18}& Tuesday & & & & & & & & \\ 2026-\zz{8}-\zz{19}& Wednesday & & & & & & & & \\ 2026-\zz{8}-\zz{20}& Thursday & & & & & & & & \\ 2026-\zz{8}-\zz{21}& Friday & & & & & & & & \\ \SetCell[c=10]{l}{\textbf{【Aug 15–21】No measurements recorded this week}} & & & & & & & & & \\ 2026-\zz{8}-\zz{22}& Saturday & & & & & & & & \\ 2026-\zz{8}-\zz{23}& Sunday & & & & & & & & \\ 2026-\zz{8}-\zz{24}& Monday & & & & & & & & \\ 2026-\zz{8}-\zz{25}& Tuesday & & & & & & & & \\ 2026-\zz{8}-\zz{26}& Wednesday & & & & & & & & \\ 2026-\zz{8}-\zz{27}& Thursday & & & & & & & & \\ 2026-\zz{8}-\zz{28}& Friday & & & & & & & & \\ \SetCell[c=10]{l}{\textbf{【Aug 22–28】No measurements recorded this week}} & & & & & & & & & \\ 2026-\zz{8}-\zz{29}& Saturday & & & & & & & & \\ 2026-\zz{8}-\zz{30}& Sunday & & & & & & & & \\ 2026-\zz{8}-\zz{31}& Monday & & & & & & & & \\ \SetCell[c=10]{l}{\color{blue}\textbf{【Whole August】No valid measurement data}} & & & & & & & & & \\ \end{longtblr} } \section{Blood Glucose Statistical Summary} \subsection{Weekly Stats: Jun 22–28} \begin{itemize} \item Fasting glucose: Max 6.7, Min 6.0, Average 6.47 \item 1-hour postprandial glucose: Max 7.3, Min 6.8, Average 7.05 \item 2-hour postprandial glucose: Max 6.2, Min 6.2, Average 6.2 \end{itemize} \subsection{Whole June Monthly Stats} \begin{itemize} \item Fasting glucose: Max 6.7, Min 6.0, Average 6.47 \item 1-hour postprandial glucose: Max 7.3, Min 6.8, Average 7.05 \item 2-hour postprandial glucose: Max 6.2, Min 6.2, Average 6.2 \end{itemize} \subsection{July, August} No valid measurement data available. \end{document} My problems & requirements All current statistical texts are hard-coded static text. Every time I add or modify glucose values inside table cells, I have to manually recalculate and rewrite all max/min/average lines, which is tedious and error-prone. I need an automatic calculation mechanism: extract all decimal glucose numbers from specific table columns (Fasting, 1h postprandial, 2h postprandial), filter empty cells out, then compute maximum, minimum and average automatically. The computed weekly and monthly statistics should refresh automatically every time I compile the PDF, without manually editing statistic text blocks. The table uses longtblr for multi-page breaking and colored column backgrounds; please keep the original table layout, coloring and Chinese support (ctex package). Numbers inside cells have time suffix like 6.7(8:56); the parser only needs to extract the float value before the parenthesis and ignore time text. What packages/methods are suitable? Is it possible to use xfp, expl3 or pgfmath to collect numbers from longtblr cells and do batch statistics? If longtblr cannot expose cell contents to global macros, what alternative structure can I adopt to separate raw data storage and table display while retaining auto-statistics?
- Display and execute Latex code with Pitonby Mariuslp on June 27, 2026 at 10:36 pm
I am trying to replicate an example in the nicematrix guide, using piton to display latex code, execute it, and add an annotation with the code. However, while the code gets correctly displayed and annotated, the matrix is not displayed. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%% MUST USE LuaLatex %%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \documentclass{article} \usepackage{amsmath} \usepackage{piton} % using github version from 2026-06-27 since 'annotation' key comes from oct. 2025 and is not available on overleaf yet % copy-pasted files piton.lua and piton.sty % Taken from https://github.com/fpantigny/nicematrix/blob/master/nicematrix.tex#L78 \let\myrlap\rlap \PitonOptions{language = verbatim, detected-commands = {myrlap, emph,textsl}, splittable = 4} \SetPitonStyle{ Number = , Comment = } \ExplSyntaxOn \dim_new:N \l__pantigny_width_dim \keys_define:nn { pantigny } { width .dim_set:N = \l__pantigny_width_dim , annotation .code:n = \PitonOptions { annotation = #1 } } \NewPitonEnvironment { Code } { O { } } { \char_set_catcode_other:N | \cs_set_eq:NN \emph \emphase \dim_zero:N \l__pantigny_width_dim \PitonOptions { annotation,indent-broken-lines,continuation-symbol=\empty,end-of-broken-line=\empty, continuation-symbol-on-indentation=\hspace{2em} } \keys_set:nn { pantigny } { #1 } \color{gray} \dim_compare:nNnT \l__pantigny_width_dim > \c_zero_dim { \PitonOptions { width = \l__pantigny_width_dim } \begin{minipage}[c]{\l__pantigny_width_dim} } } { \dim_compare:nNnT \l__pantigny_width_dim > \c_zero_dim { \end{minipage} } } \ExplSyntaxOff \begin{document} displays the code but not the matrix: \begin{Code}[width=9cm] $\begin{pmatrix} \frac{1}{2} & -\frac{1}{2}\\ \frac{1}{3} & \frac{1}{4} \\ \end{pmatrix}$ \end{Code} matrix can get normally displayed: $\begin{pmatrix} \frac{1}{2} & -\frac{1}{2}\\ \frac{1}{3} & \frac{1}{4} \\ \end{pmatrix}$ \end{document} What am I doing wrong? Alternatively, if there is a way to obtain a similar result with tcblisting (code displayed and executed + pdf annotation using e.g. pdfcomment, that works for me too. Bonus points for latex syntax highlighting.
- Beamer frame command without environment [duplicate]by Skeeve on June 27, 2026 at 7:37 am
I would like to write two commands, \bframe and \eframe, so that \bframe Lorem ipsum \eframe is equivalent to \begin{frame} Lorem ipsum \end{frame} However the straightforward solution \newcommand{\bframe}{\begin{frame}} \newcommand{\eframe}{\end{frame}} leads to the error File ended while scanning use of \beamer@collect@@body, which I cannot understand. Any hints? P.S. The environment works just fine (but I don't understand why the separate commands behave in a different way): \newenvironment{myframe}{\begin{frame}}{\end{frame}}
- Using two different fonts in math mode with LuaLaTeXby rahotep on June 27, 2026 at 5:55 am
I'm trying to do the following in LuaLaTeX: having the main font be Arial; having the upper case letters in math font be Arial (if posible, not a strong requierement); having the lower case letters in math font be latin modern; having the numbers in math font be in Arial. To achieve these goals, I found out that the package mathastext could be a solution (as mentionned in a previous post), if used with the option "noletters". However, this option doesn't work as intended (or maybe I didn't understand what it was meant to do). Here is a MWE, with the result % !TEX TS-program = lualatex \documentclass[12pt,a4paper,french]{article} \usepackage{mathtools,amsfonts} % amsthm \usepackage[margin=1.5cm]{geometry} \usepackage{babel} \usepackage[no-math]{fontspec} % [no-math] \setmainfont{Arial} \usepackage[noletters,frenchmath*]{mathastext} % \MTmathstandardletters % \MTversion*{sans} \usepackage{lipsum} \begin{document} \lipsum[11] 1234567890 $1234567890$ $ABCDEFGHIKLMNOPQRSTUVWXYZ$ $abcdefghijklmnopqrstuvwxyz$ \end{document}
- Arbitrary string for date ("saec\adddotspace 5") in biblatex-philosophyby Alexander Wittmann on June 27, 2026 at 1:05 am
I want to include a manuscript in my bibliography. The date of the manuscript is "5. century (CE)", somewhere between 400 and 499, which reads as "saec. 5". That's all we know. The other entries are as usual. \documentclass{scrartcl} \begin{filecontents}{VergiliusRomanus.bib} @Book{Conte:VergilAeneis, editor = {Gian Biagio Conte}, title = {Publius Vergilius Maro \mkbibemph{Aeneis}}, publisher = {de Gruyter}, address = {Berlin}, year = 2019 } @Misc{VergiliusRomanus, author = {\mkbibemph{Vergilius Romanus}}, title = {Codex Vaticanus Latinus 3867}, date = {{saec\adddotspace 5}}, % <-- location = {Bibliotheca Apostolica Vaticana}, url = {https://commons.wikimedia.org/wiki/Category:Roman_Vergil} } \end{filecontents} \usepackage[main=german]{babel} \usepackage[style=philosophy-modern,sortlocale=de_DE,sorting=nyvt,% alldates=terse, labeldateparts=true, language=german,% origdate=comp, datezeros=false, backend=biber, % noroman=true, %? ]{biblatex} \addbibresource{VergiliusRomanus.bib} \begin{document} bla \nocite{*} \printbibliography{} \end{document}
- Context: How to add small font verbatim text to image caption?by Nasser on June 26, 2026 at 11:59 pm
I have been working with google AI on this for one hr, the AI even gave up and suggested I try tex stackexchange. I simply want to add caption to an image. Easy, right? but the trick part is that part of the caption is verbatim and in small font. Here is the latex version \documentclass{article} \usepackage{graphicx} \begin{document} \begin{figure} \centering \includegraphics[width=0.7\textwidth]{example-image-a} \caption[]{verview of EJB security concepts. \tiny{ejb\_sec\_1.vsd}} \end{figure} \end{document} Compiled with lualatex gives The problem is how to translate the caption to context. Here are two trials out of dozen or so and none of them worked. \starttext \placefigure {verview of EJB security concepts. {\tpx ejb\_sec\_1.vsd}}%caption {\externalfigure[dummy][width=0.7\textwidth]} \placefigure {verview of EJB security concepts. {\tpx\type{ejb_sec_1.vsd}}}%caption {\externalfigure[dummy][width=0.7\textwidth]} \stoptext Both give long compile errors. This below works \starttext \placefigure {verview of EJB security concepts. \type{ejb_sec_1.vsd}} {\externalfigure[dummy][width=0.7\textwidth]} \stoptext But I want the text ejb_sec_1.vsd to be in small/tiny font. And this is where google AI could not figure how to do it. It tried to explain to me why this works in Latex something related to immediate macro expansion but in context it is passing things to lua engine and all that. All of it was over my head. Is there a simple way to do this in context? TL 2026 on linux
- Spacing TikZ pictures with \hspace and \vspaceby LMPogoda on June 26, 2026 at 8:42 pm
I have several TikZ pictures. These are a set of rectangles with some nodes inside, creating a grid on a page. These are spaced by \hspace horizontally and \vspace vertically. It mostly works unless \hspace is just after the \vspace. When I want to push a TikZ picture toward right margin after \vspace, \hspace doesn't work. I think it is related to a switch from vertical to horizontal mode, but I haven't mastered it yet. I removed the nodes from TikZ code, but what matters (and does not work) is left intact. \documentclass[a4paper]{article} \usepackage{geometry} \geometry{a4paper,top=10mm,bottom=27mm,hmargin=10.0mm} \usepackage{tikz} \usepackage{graphicx} \pagestyle{empty} \setlength\parindent{0pt} \begin{document} \begin{tikzpicture} \draw[rounded corners=2pt] (0,0) rectangle (60.00mm,60.00mm); \end{tikzpicture}\hspace{5mm} \begin{tikzpicture} \draw[rounded corners=2pt] (0,0) rectangle (60.00mm,60.00mm); \end{tikzpicture}\hspace{5mm} \begin{tikzpicture} \draw[rounded corners=2pt] (0,0) rectangle (60.00mm,60.00mm); \end{tikzpicture}\vspace{5mm} \hspace{65mm}\begin{tikzpicture} \draw[rounded corners=2pt] (0,0) rectangle (60.00mm,60.00mm); \end{tikzpicture}\hspace{5mm} \begin{tikzpicture} \draw[rounded corners=2pt] (0,0) rectangle (60.00mm,60.00mm); \end{tikzpicture}\vspace{5mm} \end{document} Edit: I replaced code snippet with complete document for better clarity.
- tcolorbox: Using tikz pattern for drop shadowby Craig on June 26, 2026 at 6:21 pm
MWE: \documentclass{standalone} \usepackage{tcolorbox,tikz} \usetikzlibrary{patterns,patterns.meta} \begin{document} \begin{tcolorbox}[ sharp corners, rounded corners=downhill, ] Hello world \end{tcolorbox} \end{document} I have a tcolorbox. I would like the drop shadow to be made of the tikz pattern north east lines. I know tikz patterns can be used to fill parts of the tcolorbox itself (such as with title style={preaction={fill=white},pattern=crosshatch dots,pattern color=black}), but can this same trick also be used for drop shadows?
- How can I prevent align from overflowing the box?by D G on June 26, 2026 at 4:06 pm
align overlows the box. How to avoid this? \documentclass[12pt]{article} \usepackage[a5paper,portrait]{geometry} \usepackage[poster]{tcolorbox} \usepackage{amsmath} \pagestyle{empty} \AddToHook{env/tcbposter/begin}{% \abovedisplayskip=0pt\relax \belowdisplayskip=0pt\relax \abovedisplayshortskip=0pt\relax \belowdisplayshortskip=0pt\relax } \begin{document} \begin{tcbposter}[ coverage = {spread}, poster ={showframe=true,columns=5,spacing=5pt}, boxes={arc=0pt,top=0pt,bottom=0pt,left=0pt,right=0pt,boxsep=0pt}, ] \posterbox{name=A,column=1,span=5,below=top}{% \noindent \begin{align*} (a + b)^2 &= a^2 + 2ab + b^2 & (a - b)^2 &= a^2 - 2ab + b^2 \end{align*} } \posterbox{name=B,column=1,span=5,below=A}{% \noindent \[ (a + b)^2 = a^2 + 2ab + b^2 \hspace{4cm} (a - b)^2 = a^2 - 2ab + b^2 \] } \end{tcbposter} \end{document}
- Ordinal Date Suffixes not appearing using \datetime2 packageby TheBeeTee on June 26, 2026 at 2:42 pm
My document must display the date in US "long" format for all instances except the notary line where they want the fancy legalese "Sworn before me this Nth day of month, YYYY. I'm trying to define a new date format that does this and does not impact the day number as displayed in other instances. The global command \DTMlangsetup[en-US]{ord=raise} changes all instances, so not a solution. \documentclass[12pt, english]{article} \usepackage{babel} \usepackage[en-US]{datetime2} %\DTMlangsetup[en-US]{ord=raise}% This does not solve my problem. \DTMnewdatestyle{myFancyStyle}{% \renewcommand{\DTMdisplaydate}[4]{% \DTMenglishordinal{##3} day of % \DTMenglishmonthname{##2},~% \number##1% }% } \begin{document} Today's date in US long format: \textbf{\today} Today's date in pretentious legal format: \textbf{{\DTMsetdatestyle{myFancyStyle}\today}} It's supposed to be: \textbf{26\textsuperscript{th} day of June, 2026} \end{document}
- auto placement of tables based on table width in single and two column formatby MadyYuvi on June 26, 2026 at 1:46 pm
In continue with my previous post: Auto placement of Tables in single and twocolumn format somewhat I achieved by using the below tags: \documentclass[twocolumn]{article} \usepackage{tabulary} \usepackage{showframe} \usepackage{lipsum} \begin{document} \makeatletter \setlength{\textwidth}{502pt}\setlength{\columnwidth}{245pt} \setlength{\columnsep}{12pt} \newlength{\tabboxwidth}% \newdimen\tempdime \newbox\temptbox \newenvironment{splprocesstable}[3]{\setbox\temptbox=\hbox{\sffamily{#2}}% \tempdime\wd\temptbox\@splprocesstable{#1}{#2}{#3}{\tempdime}} {\relax} \newlength{\tablebotadjustskip}% \setlength{\tablebotadjustskip}{\z@}% \newenvironment{@splprocesstable}[4]{% \setbox4=\hbox to \textwidth{\vbox{\begin{center}\begin{minipage}[t]{#4}% \sffamily% \caption{#1}{#2}% \vskip4pt\noindent% \parbox{#4}{\sffamily\fontsize{8bp}{10bp}\selectfont% #3\par}% \vspace*{\tablebotadjustskip}% \end{minipage}\end{center}}}% \box4} {\relax} \newbox\tabwdbox% \newdimen\tabwddimen% \newcommand{\processtable}[4][tb!]{\bgroup% \setbox\tabwdbox=\hbox{#3}% \tabwddimen=\wd\tabwdbox% \ifdim\tabwddimen = 245\p@%actual size 241 and fix buffer upto 4pts \begin{table}[#1]% \splprocesstable{sar#2}{#3}{#4}% \end{table}% \else% \ifdim\tabwddimen < 245\p@% \begin{table}[#1]% \splprocesstable{#2}{#3}{#4}% \end{table}% \else%%End of Single column Table \ifdim\tabwddimen = 502\p@%actual size 241 and fix buffer upto 4pts \begin{table*}[#1]% \splprocesstable{#2}{#3}{#4}% \end{table*}% \else% \ifdim\tabwddimen < 502\p@%actual size 241 and fix buffer upto 4pts \begin{table*}[#1]% \splprocesstable{#2}{#3}{#4}% \end{table*}% \fi\fi\fi\fi% \egroup}% \makeatother \lipsum[1-4] \processtable{For Single column Testing.\label{sara1}} {\begin{tabulary}{\columnwidth}{@{\extracolsep\fill}LLLLL@{\extracolsep\fill}} \hline 1 &2 &3 &4 &5 \\ 1 &2 &3 &4 &5 \\ 1 &2 &3 &4 &5 \\ \hline 1 &2 &3 &4 &5 \\ \end{tabulary}}{} \processtable{For Two column Testing.\label{sara2}} {\begin{tabulary}{\textwidth}{@{\extracolsep\fill}LLLLL LLLLL LLLLL LLLLL LLLLL LLLLL@{\extracolsep\fill}} \hline 1 &2 &3 &4 &5 &6 &7 &8 &9 &10 &11 &12 &13 &14 &15 &16 &17 &18 &19 &20 &21 &22 &23 &24 &25 &26 &27 &28 &29 &30\\ 1 &2 &3 &4 &5 &6 &7 &8 &9 &10 &11 &12 &13 &14 &15 &16 &17 &18 &19 &20 &21 &22 &23 &24 &25 &26 &27 &28 &29 &30\\ 1 &2 &3 &4 &5 &6 &7 &8 &9 &10 &11 &12 &13 &14 &15 &16 &17 &18 &19 &20 &21 &22 &23 &24 &25 &26 &27 &28 &29 &30\\ 1 &2 &3 &4 &5 &6 &7 &8 &9 &10 &11 &12 &13 &14 &15 &16 &17 &18 &19 &20 &21 &22 &23 &24 &25 &26 &27 &28 &29 &30\\ \hline \end{tabulary}}{} \lipsum[1-9] \lipsum[1-4] \processtable{For Single column Testing.\label{sara3}} {\begin{tabulary}{\columnwidth}{@{\extracolsep\fill}LLLLL@{\extracolsep\fill}} \hline 1 &2 &3 &4 &5 \\ 1 &2 &3 &4 &5 \\ 1 &2 &3 &4 &5 \\ \hline 1 &2 &3 &4 &5 \\ \end{tabulary}}{} \end{document} Now the tables placed both in single/two column based on its width on its own, but in single column tables couldn't able to make into column width size, please advise what mistake I did or to suggest how to achieve this.
- Interaction between drawing something in the background and a page of floatsby Werner on June 26, 2026 at 3:59 am
In the following setup, I have a couple of images that forms part of a very large figure. The float ends up on a page of floats (on its own), because of the size. I plan on drawing some elements in the background, simulated by the background fill being the example images via \AddToHookNext{shipout/background}{<background drawing>}: \documentclass{article} \usepackage{lipsum,tikz} \begin{document} \lipsum[1-2] \begin{figure} \centering \tikz [remember picture] \node [inner sep = 10pt] (image-a) {\includegraphics[width = 0.5\linewidth]{example-image-a}}; \bigskip \tikz [remember picture] \node [inner sep = 10pt] (image-b) {\includegraphics[width = 0.5\linewidth]{example-image-b}}; \bigskip \tikz [remember picture] \node [inner sep = 10pt] (image-c) {\includegraphics[width = 0.5\linewidth]{example-image-c}}; \caption{A large figure} \AddToHookNext{shipout/background}{% \begin{tikzpicture}[remember picture, overlay] \filldraw [draw = red, fill = red!10!white, thick] (image-a.south west) rectangle (image-a.north east); \filldraw [draw = blue, fill = blue!10!white, thick] (image-b.south west) rectangle (image-b.north east); \filldraw [draw = green, fill = green!10!white, thick] (image-c.south west) rectangle (image-c.north east); \end{tikzpicture}} \end{figure} \lipsum[3-10] \end{document} Using this approach, however, puts the background drawing on the page where the original figure is processed, rather than where the actual figure is placed. How can I adjust the code so that the background content is placed correctly on the page where the float ends up? Ideally I'd like to keep the code as part of the figure as it semantically belongs with the figure, rather than placing it at some other bizarre place in the document just to make sure it fits there.
- Remove default minipage paddingby iacchi on June 26, 2026 at 1:08 am
Minipages are so common that I can't believe this hasn't been answered before, however I googled for about an hour and I came up with nothing, so here I am. I noticed that the minipage environment has some sort of default inner padding (about 2.5 mm or 1/10 in), which I would like to remove. How can I do it, using options or another elegant way, without using some odd negative \hspace or something similar? To explain what I'm talking about, I made the MWE below comparing a minipage to a tcolorbox. Se how the tcolorbox of the same declared length of the minipage is shorter due to the absence of padding, and see how a tcolorbox of the same visual length of the minipage is actually 5 mm wider in its declaration. Notice also how the pink minipage with the envelope is narrower than the envelope itself, so the envelope doesn't get properly centred by \centering and it stays within the pink area only thanks to the margin. The left margin can be clearly seen also in the yellow minipage. \documentclass[a4paper,11pt]{article} \usepackage{fontawesome7} \usepackage{xcolor} \usepackage{tcolorbox} \setlength{\parindent}{0pt} \begin{document} \colorbox{lightgray}{ \begin{minipage}{8.6cm} \colorbox{pink}{ \begin{minipage}{2mm}\centering \faEnvelope{} \end{minipage} } \colorbox{yellow}{ \begin{minipage}{7.35cm} lperson@email.org \end{minipage} } \end{minipage} } \vskip 2mm \begin{tcolorbox}[boxsep=0pt,top=4pt,left=0pt,right=0pt,bottom=4pt,arc=0pt,colback=lightgray,frame empty,width=9.1cm] actual minipage width \end{tcolorbox} \vskip 2mm \begin{tcolorbox}[boxsep=0pt,top=0pt,left=0pt,right=0pt,bottom=0pt,arc=0pt,colback=lightgray,frame empty,width=8.6cm] \begin{tcolorbox}[boxsep=0pt,top=0pt,left=0pt,right=0pt,bottom=0pt,arc=0pt,colback=pink,frame empty,width=6mm,,after=\hspace{0mm}]\centering \faEnvelope{} \end{tcolorbox} \begin{tcolorbox}[boxsep=0pt,top=0pt,left=0pt,right=0pt,bottom=0pt,arc=0pt,colback=yellow,frame empty,width=7cm,before=\hspace{0mm}] lperson@email.org \end{tcolorbox} \end{tcolorbox} \end{document} This is the visual result of the code above:
- How can I generate random numbers that are unique using pgftikz?by Matt on June 25, 2026 at 7:50 pm
I am trying to generate worksheets where each time \A is called for in the document, a random number is generated. I use \NewNumbers to make sure each \A within a section is identical. How can I make it so that each \A after the \NewNumbers command is different? \documentclass[addpoints, 12pt, answers]{exam} \usepackage[margin=1in]{geometry} \usepackage{amsmath, amssymb, lmodern, pgfmath, tikz, tcolorbox, multicol} \renewcommand{\familydefault}{\sfdefault} \pointformat{} \renewcommand{\TheSolution}[1]{ \pgfmathparse{#1 <= 1 ? "Neither" : (isprime(#1) ? "Prime" : "Composite")} \pgfmathresult } \pgfmathsetseed{1} \newcommand{\NewNumbers}{ \pgfmathsetmacro{\A}{random(0,100)} } \begin{document} \printanswers \begin{questions} \begin{multicols}{3} \NewNumbers \question[1] $\A$ \fillin[\TheSolution{\A}] \NewNumbers \question[1] $\A$ \fillin[\TheSolution{\A}] \NewNumbers \question[1] $\A$ \fillin[\TheSolution{\A}] \end{multicols} \end{questions} \end{document}
- Using TikZ-CD's "shift left" outside TikZ-CD (in a "\draw")by Eduardo Ochs on June 25, 2026 at 7:11 pm
The manual for TikZ-CD has a section called "3.3 Drawing diagrams directly with TikZ" that shows how to use the TikZ-CD styles "outside Tikz-CD". For example, "shift left" and "shift right" are styles defined in tikzlibrarycd.code.tex, and by default they only work inside a \begin{tikzcd}...\end{tikzcd} block; the tricks from section 3.3 should make "shift left" and "shift right" work inside a \begin{tikzpicture}...\end{tikzpicture} block, but the last example below shows that that doesn't work, or at least don't work inside a \draw, with the syntaxes that I've tried... What am I missing? Any hints? \documentclass{article} \usepackage{tikz} \usepackage{tikz-cd} \begin{document} Tikz-CD: % \begin{tikzcd}[baseline=(A4.base)] |[alias=A4]| B & |[alias=A5]| A \arrow [from=A4, to=A5, <-, "L", shift left=1] \arrow [from=A4, to=A5, ->, "R"', shift right=1] \end{tikzcd} Tikzpicture, 1: % \begin{tikzpicture}[baseline=(A4.base)] \node [anchor=center] (A4) at (0,0) {$\textstyle B$}; \node [anchor=center] (A5) at (1.25,0) {$\textstyle A$}; \draw [<-] (A4) -- (A5) node[midway,above] {$\scriptstyle L$}; \draw [->] (A4) -- (A5) node[midway,below] {$\scriptstyle R$}; \end{tikzpicture} Tikzpicture, 2: % \begin{tikzpicture}[baseline=(A4.base), commutative diagrams/.cd,every arrow,every label] \node [anchor=center] (A4) at (0,0) {$\textstyle B$}; \node [anchor=center] (A5) at (1.25,0) {$\textstyle A$}; \draw [<-, commutative diagrams/shift left=1] (A4) -- (A5) node[midway,above] {$\scriptstyle L$}; \draw [->, commutative diagrams/shift right=1] (A4) -- (A5) node[midway,below] {$\scriptstyle R$}; \end{tikzpicture} \end{document} Update after egreg's answer... My question was a pgfkeys question in disguise! I am adding a TikZ backend to Dednat6/Dednat7 (big example), and I'm looking for a solution that at some point will have a readable syntax, like this one... \draw [<-,shift left=1] (A4) -- (A5) node[midway,above] {$\scriptstyle L$}; \draw [->,shift right=1] (A4) -- (A5) node[midway,below] {$\scriptstyle R$}; ...and to get there I will probably need several steps, like starting by copying some definitions around and then calling shift left and shift right with explicit pgfkeys paths, discovering the pgfkeys paths used by \draw, and defining a shift left and a shift right in the pgfkeys path for \draw that will call that shift left and the shift right in pgfk@/tikz/commutative diagrams/... By the way, if we run this: \documentclass{article} \usepackage{tikz} \usepackage{tikz-cd} \begin{document} \directlua{ for i,name in pairs(tex.hashtokens()) do local pat = "shift left" if name:match(pat) then print(name, token.get_macro(name)) end end } \end{document} The output in stdout is this (abbreviated): pgfk@/tikz/commutative diagrams/shift left/.@def +0.56ex pgfk@/tikz/commutative diagrams/shift left/.@cmd \pgfkeysalso (...)
- Availability of Scotch Modern font in MiKTeXby Sebastiano on June 25, 2026 at 6:58 pm
I am trying to use the Scotch Modern font with XeLaTeX and mathspec: \usepackage{mathspec} \defaultfontfeatures{Mapping=tex-text, Numbers=OldStyle} \setmainfont{Scotch Modern} \setmathsfont(Greek)[Uppercase=Regular,Lowercase=Italic]{Scotch Modern} \setmathsfont(Digits)[Numbers=OldStyle]{Scotch Modern} \setmathsfont(Latin)[Uppercase=Italic,Lowercase=Italic]{Scotch Modern} Before investigating further, I would like to clarify a basic point: is Scotch Modern included in either TeX Live or MiKTeX, or is it a font that must be obtained and installed separately? If it is not distributed with TeX Live/MiKTeX, where can it be obtained, and what is the correct procedure for making it available to XeLaTeX? In particular, should it be installed at the operating-system level, or can it be added directly to a local/user TeX tree? Any information about the availability and installation of this font would be appreciated. XeLaTeX doesn't compile: This is XeTeX, Version 3.141592653-2.6-0.999998 (MiKTeX 26.5) (preloaded format=xelatex.fmt) restricted \write18 enabled. entering extended mode (C:/Users/sebys/OneDrive/Desktop/scotch/scotch.tex LaTeX2e <2026-06-01> L3 programming layer <2026-05-26> (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/base\article.cls Document Class: article 2025/01/22 v1.4n Standard LaTeX document class (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/base\size12.clo)) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/geometry\geometry.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/graphics\keyval.sty) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/generic/iftex\ifvtex.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/generic/iftex\iftex.sty)) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/geometry\geometry.cfg)) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/graphics\graphicx.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/graphics\graphics.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/graphics\trig.sty) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/graphics-cfg\graphics.c fg) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/graphics-def\xetex.def) )) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/amsfonts\amssymb.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/amsfonts\amsfonts.sty)) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/amsmath\amsmath.sty For additional information on amsmath, use the `?' option. (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/amsmath\amstext.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/amsmath\amsgen.sty)) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/amsmath\amsbsy.sty) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/amsmath\amsopn.sty)) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/scalerel\scalerel.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/tools\calc.sty) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/etoolbox\etoolbox.sty)) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/xelatex/mathspec\mathspec.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/generic/iftex\ifxetex.sty) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/fontspec\fontspec.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/l3packages/xparse\xpars e.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/l3kernel\expl3.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/l3backend\l3backend-xet ex.def))) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/fontspec\fontspec-xetex .sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/base\fontenc.sty) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/fontspec\fontspec.cfg)) ) (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/latex/xkeyval\xkeyval.sty (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/generic/xkeyval\xkeyval.tex (C:\Users\sebys\AppData\Local\Programs\MiKTeX\tex/generic/xkeyval\xkvutils.tex) )))Running miktex-makemf.exe... Sorry, but miktex-makemf did not succeed. The log file hopefully contains the information to get MiKTeX going again: C:\Users\sebys\AppData\Local\MiKTeX\miktex\log\miktex-makemf.log Running miktex-hbf2gf.exe... Couldn't open `Scotch Mode.cfg' hbf2gf (CJK ver. 4.8.4) Sorry, but miktex-maketfm did not succeed. The log file hopefully contains the information to get MiKTeX going again: C:\Users\sebys\AppData\Local\MiKTeX\miktex\log\miktex-maketfm.log ! Package fontspec Error: (fontspec) The font "Scotch Modern" cannot be found; this may (fontspec) be but usually is not a fontspec bug. Either there (fontspec) is a typo in the font name/file, the font is not (fontspec) installed (correctly), or there is a bug in the (fontspec) underlying font loading engine (XeTeX/luaotfload). For immediate help type H <return>. ... l.13 \setmathsfont (Greek)[Uppercase=Regular,Lowercase=Italic]{Scotch Modern} ? 2026-06-25 21:22:37,221+0200 INFO miktex-hbf2gf - this process (13132) started by miktex-maketfm in directory C:\Users\sebys\AppData\Local\Temp\mik46915 with command line: miktex-hbf2gf.exe --miktex-disable-maintenance --miktex-disable-diagnose -g "Scotch Modern" 300 2026-06-25 21:22:37,221+0200 INFO miktex-hbf2gf - running on Windows 10.0.19045 2026-06-25 21:22:37,222+0200 INFO miktex-hbf2gf - this process (13132) finishes with exit code 1 2026-06-25 21:24:43,283+0200 INFO miktex-hbf2gf - this process (3704) started by miktex-maketfm in directory C:\Users\sebys\AppData\Local\Temp\mik78759 with command line: miktex-hbf2gf.exe --miktex-disable-maintenance --miktex-disable-diagnose -g "Scotch Modern" 300 2026-06-25 21:24:43,284+0200 INFO miktex-hbf2gf - running on Windows 10.0.19045 2026-06-25 21:24:43,285+0200 INFO miktex-hbf2gf - this process (3704) finishes with exit code 1 2026-06-25 21:22:32,442+0200 INFO texify - this process (6128) started by miktex-texworks in directory C:\Users\sebys\OneDrive\Desktop\scotch with command line: C:\Users\sebys\AppData\Local\Programs\MiKTeX\miktex\bin\x64\texify.exe --pdf --engine=xetex --synctex=1 --clean scotch.tex 2026-06-25 21:22:32,442+0200 INFO texify - running on Windows 10.0.19045 2026-06-25 21:22:32,453+0200 INFO texify.core - start process: xelatex --synctex=1 C:/Users/sebys/OneDrive/Desktop/scotch\scotch.tex 2026-06-25 21:22:36,482+0200 INFO miktex-makemf - this process (5776) started by miktex-maketfm in directory C:\Users\sebys\AppData\Local\Temp\mik46915 with command line: miktex-makemf.exe --miktex-disable-maintenance --miktex-disable-diagnose --verbose "Scotch Modern" 2026-06-25 21:22:36,482+0200 INFO miktex-makemf - running on Windows 10.0.19045 2026-06-25 21:22:36,489+0200 FATAL miktex-makemf - The Scotch Modern source file could not be found. 2026-06-25 21:22:36,489+0200 FATAL miktex-makemf - The Scotch Modern source file could not be found. 2026-06-25 21:22:36,489+0200 FATAL miktex-makemf - Info: 2026-06-25 21:22:36,489+0200 FATAL miktex-makemf - Source: 2026-06-25 21:22:36,489+0200 FATAL miktex-makemf - Line: 0 2026-06-25 21:22:36,497+0200 INFO miktex-makemf - this process (5776) finishes with exit code 1 2026-06-25 21:24:42,548+0200 INFO miktex-makemf - this process (2876) started by miktex-maketfm in directory C:\Users\sebys\AppData\Local\Temp\mik78759 with command line: miktex-makemf.exe --miktex-disable-maintenance --miktex-disable-diagnose --verbose "Scotch Modern" 2026-06-25 21:24:42,548+0200 INFO miktex-makemf - running on Windows 10.0.19045 2026-06-25 21:24:42,555+0200 FATAL miktex-makemf - The Scotch Modern source file could not be found. 2026-06-25 21:24:42,555+0200 FATAL miktex-makemf - The Scotch Modern source file could not be found. 2026-06-25 21:24:42,555+0200 FATAL miktex-makemf - Info: 2026-06-25 21:24:42,555+0200 FATAL miktex-makemf - Source: 2026-06-25 21:24:42,555+0200 FATAL miktex-makemf - Line: 0 2026-06-25 21:24:42,563+0200 INFO miktex-makemf - this process (2876) finishes with exit code 1 2026-06-25 21:22:32,964+0200 INFO xelatex - this process (3336) started by texify in directory C:\Users\sebys\AppData\Local\Temp\mik23515\_src with command line: xelatex --synctex=1 C:/Users/sebys/OneDrive/Desktop/scotch\scotch.tex 2026-06-25 21:22:32,964+0200 INFO xelatex - running on Windows 10.0.19045 2026-06-25 21:22:32,969+0200 INFO xelatex - this is MiKTeX-XETEX 4.18.0 (0.999998) (MiKTeX 26.5) 2026-06-25 21:22:32,975+0200 INFO xelatex - allowing known shell commands 2026-06-25 21:22:35,475+0200 INFO xelatex.core - start process: miktex-maketfm --verbose "Scotch Modern" 2026-06-25 21:24:37,512+0200 INFO xelatex - this process (3336) finishes with exit code 1 2026-06-25 21:24:37,537+0200 WARN xelatex.core - still open: C:/Users/sebys/OneDrive/Desktop/scotch/scotch.tex 2026-06-25 21:24:39,231+0200 INFO xelatex - this process (4440) started by texify in directory C:\Users\sebys\AppData\Local\Temp\mik58186\_src with command line: xelatex --synctex=1 C:/Users/sebys/OneDrive/Desktop/scotch\scotch.tex 2026-06-25 21:24:39,231+0200 INFO xelatex - running on Windows 10.0.19045 2026-06-25 21:24:39,234+0200 INFO xelatex - this is MiKTeX-XETEX 4.18.0 (0.999998) (MiKTeX 26.5) 2026-06-25 21:24:39,238+0200 INFO xelatex - allowing known shell commands 2026-06-25 21:24:41,580+0200 INFO xelatex.core - start process: miktex-maketfm --verbose "Scotch Modern" 2026-06-25 21:25:47,108+0200 INFO xelatex - this process (4440) finishes with exit code 1 2026-06-25 21:25:47,130+0200 WARN xelatex.core - still open: C:/Users/sebys/OneDrive/Desktop/scotch/scotch.tex Related: An Exquisite Mathematical Font
- Marking the intersection of two wires in a circuitby Jarvis on June 25, 2026 at 6:02 pm
I am drawing a circuit using relative coordinates in which it contains a part like this. I used the following sample code to generate the above: \begin{circuitikz} \draw (0,0) node[op amp](OA){}; \draw (OA.-) to[R] ++(-4,0); \draw (OA.+) to[R] ++(-4,0); \draw (-2,-4) to[R] ++(0,2) |- (OA.-); \end{circuitikz} How do I place a dot where the vertical wire intersects inverting terminal input wire? Although I can find the coordinates in this example, the actual circuit I am drawing does not directly give away the coordinates. For reference, the actual circuit goes like below. (M1.D) to [R, l=$R8$, a=\SI{47}{k\ohm}] ++(0,2) |- (U2.-);
- babel giving font warnings if I want to use a different series as defaultby David Purton on June 25, 2026 at 4:21 pm
I want to use a lighter series of a font by default with babel, but I get annoying warnings: LaTeX Font Warning: Font shape `TU/lmr/ul/n' undefined (Font) using `TU/lmr/m/n' instead on input line 7. LaTeX Font Warning: Font shape `TU/lmss/ul/n' undefined (Font) using `TU/lmss/m/n' instead on input line 7. LaTeX Font Warning: Font shape `TU/lmtt/ul/n' undefined (Font) using `TU/lmtt/m/n' instead on input line 7. This code without babel is ok: \documentclass{article} \usepackage{fontspec} \newfontfamily{\notosans}{Noto Sans}[ NFSSFamily = notosans , FontFace = {ul}{n}{Font=Noto Sans Thin} ] \renewcommand*{\familydefault}{notosans} \renewcommand*{\seriesdefault}{ul} \begin{document} zzz \end{document} But this code with babel gives warnings: \documentclass{article} \usepackage{babel} \babelprovide[import, main]{english} \babelfont{notosans}[FontFace = {ul}{n}{Font=Noto Sans Thin}]{Noto Sans} \renewcommand*{\familydefault}{\notosansdefault} \renewcommand*{\seriesdefault}{ul} \begin{document} zzz \end{document} Having to define dummy series for every font seems like it should not be necessary. Is there a way around this?
- tikz stops working when using a style in \tikzsetby Harry on June 25, 2026 at 12:02 pm
I have gotten a code (given below the question) which produces this: It is fine, but I want to modify the refracted ray by changing \draw[very thick, ray] (C) -- (b); to \draw[very thick, ray2] (C) -- (b); (to plot the red dots less in refracted ray). However, once I do this, my Texwoks throws out Runaway argument? ! Paragraph ended before \pgfkeys@addpath was complete. <to be read again> \par l.76 \draw[very thick, ray2] (C) -- (b); ? I checked my ray2/.style and it seems everything is fine. How can I solve this? The whole code is here \documentclass{beamer} % 4:3 \usetheme{Madrid} \usecolortheme{seahorse} \usepackage{amsmath} \usepackage{amssymb} \usepackage{physics} \usepackage{tikz} \usepackage{tikz-3dplot} \usetikzlibrary{calc, decorations.markings, arrows.meta, angles, quotes, decorations.pathreplacing, shapes.geometric, bending} \usetikzlibrary{patterns,decorations.pathmorphing, shapes.symbols, shadings, positioning} \usepackage{amsfonts} \usepackage[utf8]{inputenc} \usepackage{fontenc} \usepackage[safe]{tipa} \usepackage{xcolor} \usepackage{booktabs} % 用于绘制专业的表格线 \usepackage{setspace} %\setmainfont{Times New Roman} % 或者任意支持音标的字体 \usepackage{array} %% Rays \begin{document} \begin{frame}[fragile] \frametitle{Polarization in Reflection and Refraction} \begin{tikzpicture}[line cap=round, line join=round] % ====================== 所有定义都在这里 ====================== % TikZ Styles (integrated) \tikzset{ ray/.style = { postaction=decorate, decoration={ markings, mark=at position .52 with \arrow{stealth}, mark=between positions 0.1 and 1.2 step 0.5cm with { \draw[fill=red, draw=red] circle[radius=1pt]; \draw[red, {Latex[length=1.3mm, width=1.5mm]}-{Latex[length=1.3mm, width=1.5mm]}] (0,-7pt) -- (0,7pt); } } }, ray2/.style={ postaction=decorate, decoration={ markings, % 所有位置画箭头 draw arrow mark=between positions 0.1 and 1.4 step 0.5cm with { \draw[red, {Latex[length=1.3mm,width=1.5mm]}- {Latex[length=1.3mm,width=1.5mm]}] (0,-7pt)--(0,7pt); }, % 每隔一个位置画点 draw point mark=between positions 0.1 and 1.4 step 1.0cm with { \fill[red] (0,0) circle[radius=1pt]; } } }, polray/.style = { postaction=decorate, decoration={ markings, mark=at position .52 with \arrow{stealth}, mark=between positions 0.1 and 0.4 step 0.5cm with { \draw[fill=red, draw=red] circle[radius=1pt]; }, mark=between positions 0.6 and 0.9 step 0.5cm with { \draw[fill=red, draw=red] circle[radius=1pt]; } } } } % Right Angle Mark (local definition) \def\MarkRightAngle[size=#1](#2,#3,#4){ \draw[thick] ($(#3)!#1!(#2)$) -- ($($(#3)!#1!(#2)$)!#1!90:(#2)$) -- ($(#3)!#1!(#4)$) } % Coordinates \coordinate (A) at (4,5); \coordinate (B) at (4,0); \coordinate (a) at (1,4.6); \coordinate (C) at (4,3); \coordinate (a') at (7,4.6); \coordinate (b) at (5.5,0); % Second Material (interface) \node[rectangle, top color=black!30, bottom color=white, minimum width=7cm, minimum height=3cm] at (4,1.5) {}; % Incident ray \draw[dashed] (A) -- (B); \draw[very thick, ray] (a) -- (C); % Reflected ray (polarized) \draw[very thick, polray] (C) -- (a'); % Refracted ray \draw[very thick, ray] (C) -- (b); % Right angle mark \MarkRightAngle[size=6pt](b,C,a'); % Angle labels \pic[draw, thick, "\small$\theta_\text{b}$", angle radius=0.5cm, angle eccentricity=1.7] {angle = A--C--a}; \pic[draw, thick, "\small$\theta_\text{r}$", angle radius=0.7cm, angle eccentricity=1.5] {angle = a'--C--A}; \pic[draw, thick, "\small$\theta_\text{t}$", angle radius=0.7cm, angle eccentricity=1.6] {angle = B--C--b}; % Labels \node at (1,3.3) {$n_1$}; \node at (1,2.7) {$n_2$}; % Explanatory text \end{tikzpicture} \end{frame} \end{document}
- Expanding token listby sgmoye on June 25, 2026 at 9:40 am
Clearly I'm missing something basic. I have a token list (expanded, I think) to \foo, that I want to use as an argument to the \SplitList macro, but apparently it is not expanded enough... \documentclass{article} \usepackage[papersize={5.5in,8.5in},margin=0.6in]{geometry} \usepackage{pgffor} \newcounter{expnum} \newtoks\revsett \NewDocumentCommand{\tohsett}{ >{\SplitList{,}}m }{\ProcessList{#1}{\tohsettaux}} \NewDocumentCommand{\tohsettaux}{m}{\stepcounter{expnum}\preit{#1}} \def\preit#1{\edef\bar{\global\revsett={#1,\the\revsett}}\bar}% reverses order \parindent0pt \begin{document} \toks0={1,2,3} \edef\foo{\the\toks0} This does not work, picks up only one argument:\\ \tohsett{\foo}\theexpnum, \the\revsett \revsett={} \setcounter{expnum}{0} This works, finds all three arguments...\\ \tohsett{1,2,3}\theexpnum, \the\revsett \revsett={} ...as does this\\ \foreach \n in \foo {\preit{\n}}\the\revsett \thispagestyle{empty} \end{document} I feel dumb, overlooking something embarrassingly basic...
- Vertically Center Text in Figure Environmentby nebulisx on June 25, 2026 at 2:54 am
I am trying to vertically center text in an figure in relation to the graphic inserted in the environment Here is the figure environment code I am using \begin{document} ... \begin{figure}[h] \includegraphics[scale=0.15]{test.jpg} \begin{minipage}[c][\columnsep][c]{1.0\linewidth} \hspace{2em} {\Large \today} \end{minipage} \end{figure} \newpage \includepdf[pages=-]{pdf.pdf} \newpage \end{document} This is the result: I can't entirely tell, but from playing with the position options the height of the figure environment may be different from the height of the images. Also this is a problem I am less worried about but for some reason if the figure goes off the page, it goes to the page after the inserted pdf from \includepdf rather than to the next page.
- command within TikZ does not workby Sven on June 24, 2026 at 8:05 pm
I need to set multiple rows in TikZ matrices that are different ranges from the alphabet. \documentclass[tikz]{standalone} \usepackage{etoolbox} \usepackage{tikz} \usetikzlibrary{matrix} \newcommand{\setrowA}[1]{% \let\myrowA\empty \foreach \j in {#1}{ \begingroup\edef\x{\endgroup \noexpand\gappto\noexpand\myrowA{ \j \&}}\x }% \gappto\myrowA{\\}% } \begin{document} \begin{tikzpicture} \setrowA{A,...,Q,Z,...,R} % here it works \matrix (a) [ampersand replacement=\&,matrix of nodes ]{ % \setrowA{A,...,Q,Z,...,R} % here it does not work \myrowA }; \end{tikzpicture} \end{document} I would like to insert multiple rows into the matrix. But even if I move a single \setrowA{A,...,Q,Z,...,R} into the matrix, latex hangs.
- Coloring a region of a sphere in 3D using TikZby John on June 23, 2026 at 11:15 am
I have just started using the 3d library in TikZ (and I'm quite new to the tikz package itself). I am modelling a physics problem; I want to draw a sphere that represents my system. The particularity of that sphere is to have regions delimited by parallel circles around the North and South poles; I would like to color these regions in a different shade than the rest of the sphere. I have been looking everywhere and I can't find how to do this (if it is possible); using \path and \fill doesn't seem to work. Sorry if it's a stupid question, thanks for your help! Here is my code (I'm also showing the θ,φ parametrization in my sketch; in commentary, my failed attempts for coloring the North Pole): \documentclass{article} \usepackage{tikz} \usepackage{tikz-3dplot} \usepackage{pgfplots} \begin{document} \begin{tikzpicture}[scale=3,tdplot_main_coords] \def\rvec{1.2} \def\thetavec{55} \def\phivec{35} \def\thetaRC{10} \shadedraw[tdplot_screen_coords,ball color = white] (0,0) circle (\rvec); \coordinate (O) at (0,0,0); \tdplotsetcoord{C}{\rvec}{\thetavec}{\phivec} \tdplotsetcoord{UD}{\rvec}{\thetaRC}{90} \tdplotsetcoord{UG}{\rvec}{\thetaRC}{-90} \draw[thick,->] (0,0,0) -- (1.7,0,0) node[anchor=north east]{$x$}; \draw[thick,->] (0,0,0) -- (0,1.7,0) node[anchor=north west]{$y$}; \draw[thick,->] (0,0,0) -- (0,0,1.7) node[anchor=south]{$z$}; \draw[-stealth,very thick,color=green!60!black] (O) -- (C) node[above right=-2] {P}; \draw[dashed, color=green!60!black] (O) -- (Cxy); \draw[dashed, color=green!60!black] (C) -- (Cxy); \tdplotdrawarc[color=green!40!black]{(O)}{0.4}{0}{\phivec}{anchor=north}{\(\varphi\)} \tdplotsetthetaplanecoords{\phivec} \tdplotdrawarc[color=green!40!black,tdplot_rotated_coords]{(0,0,0)}{0.7}{0}{\thetavec}{anchor=south west}{\(\theta\)} \draw[dashed] (\rvec,0,0) arc (0:360:\rvec); \draw[thick] (\rvec,0,0) arc (0:110:\rvec); \draw[thick] (\rvec,0,0) arc (0:-70:\rvec); %\tdplotdrawarc[fill=green!40!black]{(0,0,.995*\rvec)}{.0998}{0}{360}{anchor=south west}{\(\theta\)}; %\path[fill=red,fill opacity=0.5] (0,0,\rvec) -- plot[variable=\t,domain=0:360] (xyz spherical cs:radius=\rvec,longitude=\t,latitude=90-\thetaRC); \end{tikzpicture} \end{document}