Why do we need \fp_new_function:n?
According to the l3 interface document, \fp_new_function:n {⟨identifier⟩}Declares the ⟨identifier⟩ as a function, which allows it to be used in floating pointexpressions. ... If the declaration was...
View Article\IfNoValueTF - How to force "no value" if there (are brackets but there) is...
This code uses LaTeX3, the xparse-package and in particular the \IfNoValueTF command as explained in Will Robertson's answer to the OP "Different command definitions with and without optional...
View ArticleNew official LaTeX3 packages like ltproperties
Is there a list of new LaTeX3 packages (with documentation) useful for package/class authors? For example, the ltproperties package seems useful which is, however, not listed on the official...
View ArticleHow to iterate through control sequence assignments
I am going to try to ask this question without the benefit of a MWE because I am hardpressed at this point to create one. Is it possible to create a command that loops through a list of assignments of...
View ArticleWhy does the LaTeX kernel define 'purify' equivalents for text font macros...
The LaTeX kernel defines a slew of 'purify' equivalents for standard font commands, both switches (\bfseries) and argument-absorbers (\textbf{}).Why?The switches would be removed anyway.The...
View ArticleWhat is the e specifier for LaTeX3 and where is it documented?
Pages 1-2 of interface3.pdf, "The LaTeX3 Interfaces" released 2018-10-31, only lists specifiers of c,D, F, f, N, n, o, p, T, V, v, w and x. The e specifier of \str_if_eq:eeTF is not in that list. What...
View ArticleHow to generate a comma-separated list of commands and assign them to a command
Below is a MWE that should run out of the box. I would like to build a function called \buildcommandsequence that generates a comma-separated list of commands named like those being generated by...
View ArticleHow to name a `\bfseries`-type macro according to LaTeX3 convention?
I am writing a dtx file using LaTeX3, and I have a macro \@@_my_style:n that works like {\bfseries …} rather than \textbf{…}.(It's a wrapper for macros similar to \bfseries.)How should I name it...
View ArticleLaTeX 3 for newbies: simple environments do not work
I needed to create a custom environment with more than one optional argument, so I tried with LaTeX 3 (my first experience). However, I can't seem to create not even the simplest environment. Here is...
View Articlemu unit not working in l3keys... "Illegal unit of measure (pt inserted)"
I am writing a package in expl3 that defines custom spacing for logical formula. I recently swapped all of my spacing commands from hspace to mkern and mskip (after learning they were what was intended...
View ArticleEvaluating a function
Consider the following MWE:\documentclass{article}\usepackage{amsmath}\usepackage{siunitx}\ExplSyntaxOn\NewDocumentCommand{\evalfunction}{O{} O{10} m } { \num[#1]{\fp_eval:n {...
View ArticleCJK characters are not available in l3regex with (u)pLaTeX
With (u)pLaTeX, CJK characters are not available in l3regex.For example, the following code (test.tex)\documentclass{article}\begin{document}\ExplSyntaxOn\regex_match:nnTF { \x{3042} } { あ } { True } {...
View ArticleChoose between Latex3 and lualatex
I have recently used Latex3 to write a customized environment and I discovered that I can write also some functions. To improve my workflow, I will implement some functions or some customized...
View ArticleWhy are there so many underscores in LaTeX3 commands?
This question springs from a comment of mine and the subsequent discussion in chat.I don't know anything about TeX, but I can easily understand a command...
View ArticleLaTeX3 and clist
How can I expand \files from \sys_get_query to get it as a csv list?up-to-date TL2024.\documentclass{article}\usepackage{l3sys-query}\begin{document}\ExplSyntaxOn\def\files{foo.bar,foo.baz}% no...
View Articledoclicense incompatibility with pdfmanagement
Package doclicense is now incompatible with the new pdfmanagement when the latter is, as I understand it, invoked automatically by the \DocumentMetadata command. And the cause seems to be that...
View ArticleThe L3 programming layer in the LaTeX format is outdated [closed]
I'm submitting my manuscript to a journal. It required me to provide the .tex file. Everything is ok when I compile the source file on overleaf or my local texlive. But the submission system failed to...
View ArticleHow can I get a collection of my custom msg_warning?
I am writing a new documentclass in which I am implementing some msg_warning etc.To help the user getting a quick overview of any potential warnings and issues that come from the documentclass I would...
View ArticleHow to bypass \ExplSyntaxOn handling of spaces [duplicate]
I am dealing with some key-value interface definitions using \ExplSyntaxOn and \ExplSyntaxOff and I have encountered an issue that I managed to narrow down to a simple MWE. As far as I understand, the...
View ArticleExpanding Multiple expl3 control sequences within tables (specifically...
The below follows from the related (solved) issue of Expanding expl3 control sequences within tables (specifically tabularray tables).When this is now extended to multiple control sequences, I get...
View Articlehyperref links passing unwanted PDF metadata (#[0,{%22name%22.%22Fit%22}}])
Below is a MWE of a much larger project. I require passing through a control sequence into \href as below:\documentclass{article}\usepackage{hyperref}\ExplSyntaxOn%— module “ptlink”: all names begin...
View ArticleBuild a `tabularray` content with LaTeX3
What is the problem in the following code which says Misplaced alignment tab character &. \l_cookbook_orsteps_tblr_tl...
View Article`\clist_if_in` not executing as expected
I am trying to perform a check whether an argument for a command is one of a few that should be treated differently from the rest. For that the best solution I found is using expl3's \clist_if_in in...
View Articlel3str-convert: how to define a custom encoding?
I am working on an extension of the qrcode package. The current qrcode is a restriction of the QRcode specification. For instance, there are 4 supported modes, that can be switched:Digits 0-9 (10...
View ArticleIs that possible to check the element in latex3's "type"?
I want to develop the following command to customly assign the bibitem's color:\documentclass[12pt]{article}\bibliographystyle{plain}\usepackage{xcolor}\usepackage{etoolbox}\ExplSyntaxOn\seq_new:N...
View ArticleConditionally formating tasks and evaluating `\alph*` in a macro expansion...
This questions follows on from Tasks: Styling Individual Items (without using \item[#1] explictly), where I have now used expl3 to govern exactly which tasks get formatted (rather than this being fixed...
View ArticleCorrect implementation of optional argument (comma-separated) in expl3
I'm trying to implement a command of the form s O m using ltcmd/xparse to refresh counters and reset internal variables.My attempts using \SplitArgument weren't the best, so I opted for clist. Valid...
View ArticleIn LaTeX3, how to iterate on all tokens, including spaces?
In LaTeX3, token lists collapse spaces. Is there a way to avoid that and call a function on all tokens, without collapsing spaces. For example, I would like the following function to display the...
View ArticleHow to make `value_required` accept a macro?
When I'm defining key-values in LaTeX3, is there a way to make value_required accept a macro? For example:\documentclass{article}\ExplSyntaxOn\bool_new:N \g__test_umath_not_bool\bool_set_true:N...
View Article