7:42 AM
@DavidCarlisle, @UlrikeFischer So who's dealing with this one

@JosephWright Joseph

@JosephWright öh. Which one?

@UlrikeFischer The text case one
@UlrikeFischer On another topic, you have \prg_set_conditonal: in tagpdf :(

@JosephWright I wondered about that during the meeting but didn't dare to check yet if my memory was correct ;-). But I can change that.

@UlrikeFischer Please :) I think we should address all of the uses we control before changing status - I'll try to sort team-related ones

7:46 AM
@JosephWright I think @DavidCarlisle will handle that.

@UlrikeFischer Good plan

@JosephWright but I can't change it before the gset version is there, or do you see a way? (the conditional is defined in tagpdf-base to return false and then changed to do something if the package is really loaded.)

@UlrikeFischer Er, well the point in the meeting was that we didn't see a use case for set/gset, so we were going to just keep new ...

@JosephWright @UlrikeFischer Yes I'll make a PR later, I wonder if we should have a 2e name for \tl_put_right:Nn \l_text_case_exclude_arg_tl such as \AddToNoCaseArgList so amsmath could do \AddToNoCaseArgList (\eqref) after defining it. We could have it in the initial kernel list but having undefined commands there is a bit odd

@DavidCarlisle Would be fine with me
@DavidCarlisle Probably a good long-term idea, yes

7:59 AM
@JosephWright should a PR against main bump the PL number or is that best done on main when tagging the actual release?

@JosephWright I thought we don't see a use case for set, but imho switching a conditional from always false or true to something more sophisticated later is happening in various places, doesn't it? So gset is needed?

8:13 AM
@DavidCarlisle I think it's clearer if the PL change is done separately - if we end up needing multiple changes for a PL, for example, having each hotfix branch without the level is easier
@UlrikeFischer Does sound like a use case: I don't think we have an issue adding it, was only that we didn't have a good reason

@JosephWright OK

@DavidCarlisle I hope the way I've done the recent ones, with an explicit merge and separate update-PL-and-merge-to-dev, has been clear in the history

2 hours later…
10:17 AM
@JosephWright I just realized that I don't have the newest sty of packages in build/doc when doing l3build doc. There is only the dtx but it is not unpacked. Do you have any idea what is wrong here?

2 hours later…
12:12 PM
@Rmano :D I've been waiting for Halloween since last Halloween :Þ

@Plergux ooh spooky scary skeletons

12:38 PM

@UlrikeFischer Unpacking is in build/unpacked and then moved to build/local

12:54 PM
@DavidCarlisle \coloneq \Coloneq \eqcolon and \Eqcolon renamed in mathtools. I'll release it some time this week. At least now the manual shows the output of each symbol.

@JosephWright ah right, it adds that to the search path.

@UlrikeFischer Yup

1:13 PM
@daleif thanks, I still have not heard anything re newtxmath

@DavidCarlisle I was just testing an added warning about loading order with unicode-math. unicode-math takes over \Coloneqq but lualatex gives me the warning: Missing character: There is no ⩴ (U+2A74) in font [latinmodern-math.otf]: which would actually then be typesetable by mathtools.

@PauloCereda and vampires, mmmm.... :þ

@PauloCereda send shivers down my spine!

@Skillmon ooh
@Plergux ooh Das Vampir

@PauloCereda Der Vampir oder Die Vampirin :P

1:21 PM
@Skillmon oh :)

@PauloCereda counter-ooh

@daleif well yes as I wrote above the definitions would be better in the font package as they know which characters are available. Acually, in general unicode-math does not check if the font has each of the thousands of characters it defines so that warning is essentially by design. It could check but it's already quite slow in setup and that would be another 2000 checks....
@daleif I think (but I could be persuaded otherwise) that is better than mathtools unconditionally defining it to be a constructed ::= even if the font has that as a character. Perhaps Will or @JosephWright hav a view....

1:41 PM
@DavidCarlisle I think mathtools is doing the right thing here (by using provide), but it was a situation like this I thought the \MT... macros being visible might be useful. But a user can always use
\makeatletter
\AtBeginDocument{
\renewcommand\Coloneqq{\MT@dblcoloneq}
}
\makeatother
BTW: given that I newer use unicode-math is there an option for it to display the unknown char char when it cannot find a symbol in the font.

1:56 PM
@daleif it doesn't check so I think it depends on the font having a visible .notdef character unless @UlrikeFischer knows more. Unicode one reason we have increased\tracinglostchars so it shows on the terminal and not just the log, it is a lot more likely to happen in Unicode as no font can be complete
@MarcelKrüger will know about luatex at least (in denial about xetex:-)

@DavidCarlisle Genuine question: is there today any reason to use xetex over luatex. I always have font issues with it that I don't have with lualatex.

@daleif you need to configure font config to look in texmf-dist then basically no, it is almost always better to use luatex, possibly have to enable harf mode, unless you are using CJK packages and some hard to replace uses of xetex text character classes

@daleif there are a few packages which are xetex only (partly for no real reason, partly because they rely on the character classes).

2:14 PM
@DavidCarlisle That was what I thought

2:35 PM
@daleif There might be reasons, but no good ones...

@Rmano ooh squirrel streamer

@daleif Regarding LuaTeX: Not really. Missing glyphs in math mode have rather special handling (e.g. circumventing the glyph_not_found callback) and therefore can't be handled without some trouble. It could be implemented by preprocessing the math nodes, but determining the right fonts on that level is not quite trivial and would add some overhead.

3:09 PM
@MarcelKrüger thanks, was just wondering about the result.

@JosephWright ah you mean "will work in f context" not use f expansion themselves, which more or less same as making :x be the same as :e, isn't it?

3:31 PM
@PauloCereda Oh, where?

@Rmano starred GH project :)

Ah! Yes...

@DavidCarlisle I mean that something like \clist_map_function:nN is currently not f-type expandable as it spits out results one at a time. If you set it up so it internally uses \expanded as a wrapper around the code, then it can be used in an f-type context without issue.

Have to prepare video to explain to the other professors how to do a bunch of bureaucratic things (the sad news that people don't read but want videos is not a teenager's thing... :-( )

@Rmano oh

3:40 PM
@JosephWright yes after your comment that was clear (perhaps it should have been clear originally but it read it as saying we would make commands using x expansion use f expansion
@JosephWright like my bug report? "textcase was brilliant, and the new latex release broke it"

@DavidCarlisle Didn't see that

@DavidCarlisle ooh

@JosephWright sent just now

@DavidCarlisle Ah :)

@Rmano you could make a video which looks like a book and every n minutes a page would be turned :)

3:46 PM
@samcarter hmmm.... ;-)

3:58 PM
@DavidCarlisle You asked over the weekend about a 'non-stack' color in l3color: I think you are after \color_math:nn

4:09 PM
@JosephWright no actually I meant "at outer level so don't try to \aftergroup\restore@color

@DavidCarlisle It is not a bad refinement

@DavidCarlisle why did you ask yesterday about this and now there is an issue?

@UlrikeFischer He's a witch

4:33 PM
@JosephWright A WITCH

@PauloCereda He (tried to) turn me into a newt

@JosephWright oh no

@UlrikeFischer "thousands of top level color switch"
4

\documentclass{article} \usepackage{xeCJK} \usepackage{xcolor} \colorlet{color1}{blue!50!black} \colorlet{color2}{green!50!black} \usepackage{etoolbox} \newtoggle{col} \providecommand{\tog}% {% \iftoggle{col}% {\color{color1}\togglefalse{col}}% {\color{color2}\toggletr...

@DavidCarlisle ah. Do you know if pdflatex has some limit here too?

@UlrikeFischer no but it probably does

4:52 PM
@UlrikeFischer I suspect we'd have to read the source

1 hour later…
6:19 PM
\documentclass{article}

\usepackage[T2A]{fontenc}

\begin{document}

\CYRA\CYRB\CYRV

\MakeUppercase{\cyra\cyrb\cyrv}

\ExplSyntaxOn
\text_uppercase:n{\cyra\cyrb\cyrv}
\ExplSyntaxOff
\end{document}
@JosephWright wasn't the edef to expand away LICR when using legacy encodings, but they seem to work now without....

@DavidCarlisle Yes: I suspect we were thinking of the older code before I covered this sort of thing

@JosephWright what is about 8bit encodings?

7:20 PM
@UlrikeFischer That's what I'm worried about - really need some good test files
\documentclass{article}

\RequirePackage[latin1]{inputenc}
\RequirePackage[T1]{fontenc}
\begin{document}

\ExplSyntaxOn
\text_uppercase:n{Mi^^dfbr^^e4uche}
\MakeUppercase{Mi^^dfbr^^e4uche}
\end{document}
@UlrikeFischer, @DavidCarlisle ^^^ An example showing we do need the \protected@edef

7:51 PM
But perhaps:
\cs_gset:Npn \__text_expand_explicit:N #1
{
\token_if_cs:NTF #1
{\__text_expand_exclude:N #1}
{
\token_if_active:NTF #1
{ \exp_after:wN \__text_expand_loop:w #1 }
{ \__text_expand_store:n {#1} \__text_expand_loop:w }

}
}
Better ...
\cs_gset:Npn \__text_expand_explicit:N #1
{
\token_if_cs:NTF #1
{\__text_expand_exclude:N #1}
{
\bool_lazy_and:nnTF
{ \token_if_active_p:N #1 }
{
! \bool_lazy_or_p:nn
{ \token_if_protected_macro_p:N #1 }
{ \token_if_protected_long_macro_p:N #1 }
}
{ \exp_after:wN \__text_expand_loop:w #1 }
{ \__text_expand_store:n {#1} \__text_expand_loop:w }

}
}
seems to work with UTF-8 and more classical
@DavidCarlisle, @UlrikeFischer ^^^ I think that would sort things without needing \protected@edef, and would therefore moke things a bit easier

8:20 PM
oh chat is back

@DavidCarlisle it wasn't gone for me.

@DavidCarlisle Never went away

@JosephWright did here, main site Ok but chat gone for 20 mins or so