5:51 AM
@UlrikeFischer, @DavidCarlisle \MakeUppercase{\roman 123} now working

2 hours later…
7:43 AM
@JosephWright it is by design that the color module doesn't truncate or check color values? E.g. \color_select:nn {rgb}{3, 0.5,-0.6} ends up as 3.0 0.5 -0.6 rg 3.0 0.5 -0.6 RG in the pdf.

@UlrikeFischer That would be an oversight: I guess I should check the values
@UlrikeFischer I'll adjust: just fixing an siunitx bug (on the list today is the ={text} business: want it done this week)
@UlrikeFischer I see you are enjoying \MakeTitlecase

@JosephWright the question is if one should error or silently truncate?
@JosephWright it is nice if one has "repaired" something just before someone ask about it ;-)

@UlrikeFischer Indeed
@UlrikeFischer I think error: it is out-of-scope and we should tell users to fix their source

@JosephWright what about rounding errors triggering the error?

@UlrikeFischer Example?

7:55 AM
@JosephWright I haven't one, I only assumed that if you do something like color1!39!color2  values could get over the range in the calculations through rounding.

@UlrikeFischer No, you might round to zero but not below it ...

@JosephWright can you get over 1 somewhere?

@UlrikeFischer I don't think so, no: that would be an fault in the FPU and I'm sure Bruno tested the required behaviours

8:11 AM
@JosephWright can we assume that all color models use values between 0 and 1?

@UlrikeFischer At the PDF level?

@JosephWright PDF doesn't restrict that as far as I can see. I know that we have ranges like HSB or RGB, but I was wondering about the spotcolors. But probably we can assume here [0,1].

8:59 AM
@UlrikeFischer siunitx bugs done .. will look at l3color over lunch

9:38 AM
@JosephWright ooh a transfer

@JosephWright I saw that regression-test.tex is dead old in the latex2e/support folder. Could that be updated? Tests involving tagging don't work correctly with the current one.

@UlrikeFischer Of course

9:54 AM
@UlrikeFischer We could just use the system l3build version to be honest
@UlrikeFischer (I still think we should rename it to l3build-<something>.tex)

10:10 AM
Please, is there a clear reason why \setbox fails within tikzpicture? Is this worth asking on the site?

@yo' “fails” as in “the box is empty”, or as in “it explodes”?

@PhelypeOleinik it doesn't contain anything after \setbox
\documentclass{article}
\usepackage{tikz}
\begin{document}

\newbox\TESTBOX

\setbox\TESTBOX\hbox{ABC}
\the\wd\TESTBOX % 21.8056pt
\box\TESTBOX % "ABC"

\bigskip

\begin{tikzpicture}
\setbox\TESTBOX\hbox{ABC}
\node{\the\wd\TESTBOX}; % 0.0pt
\node at (3,0) {\box\TESTBOX} % nothing
\end{tikzpicture}

\bigskip

\setbox\TESTBOX\hbox{ABC}
\the\wd\TESTBOX % 21.8056pt
\box\TESTBOX % "ABC"

\end{document}

@yo' In a tikzpicture the font is \nullfont, so nothing gets typeset by default. Same as if you just do \begin{tikzpicture}i'm invisible\end{tikzpicture}

@PhelypeOleinik gosh! That's ... funny ... Thanks!

@yo' that's why tikzpictures are forgiving of stray text

10:14 AM
@JosephWright which is something I have never noticed tbh...

@yo' You have to explicitly set a font, or better, use a node or some TikZ-y construct

@PhelypeOleinik yeah, less than optimal, but thanks anyway! It makes sense now.

10:42 AM
@JosephWright tikzpicture may be forgiving of stray text, but @barbarabeeton will find the warning in the log file :)

@samcarter :)

@JosephWright sometimes it would be easier. I was quite baffled about the test results, even more as it doesn't really announce its version. On the other side, pulling from the system has its drawbacks too. Will you move it?

(I once had a stray ; in some tikz code, nobody but the fantastic editors of the tugboat found it)

@UlrikeFischer I'll look it over lunch (about an hour)

@JosephWright oh no
@JosephWright sorry, mentions to meals are triggers :)

11:05 AM
@JosephWright in view that the file is used in many test, we could only make copy. But that would actually already help for newer tests. They can enable texmf search and then always get the newest version, and latex2e can stick to the older file.

@UlrikeFischer Perhaps: one to see what everyone thinks :)
@UlrikeFischer Like I said, I will update the frozen version shortly

11:43 AM
@UlrikeFischer Running tests locally now to be sure this is safe

12:03 PM
@UlrikeFischer Just wondering where the best place is to pick this up: right at the point of passing to the backend, on a per-model basis earlier, ..?

12:14 PM
@JosephWright hm. As the values differ by model, it must be on a per-model basis doesn't it? Beside this it should be done imho as seldom as possible, you don't want to test values all the time, so probably most of the tests should be done directly at definition time, in \color_set:nnn, and only for \color_select:nnn when used.

@UlrikeFischer OK, I'll think about where makes most sense

1:06 PM
@UlrikeFischer In other news, I've tried to clarify that \text_map_inline:n works the same for all engines

1:54 PM
@JosephWright davidcarlisle.github.io/latex-beginners-course gh-pages build without jekyll but with make + pdflatex + tex4ht

@DavidCarlisle Oooh

@JosephWright ooh

@PauloCereda lunch

@DavidCarlisle oh no
@DavidCarlisle no typing tutor? I am disappointed :)

@PauloCereda extra servings

1:58 PM
@DavidCarlisle oh no

@PauloCereda ym tping is grate and nedes now tuter
3

@DavidCarlisle ooh
@DavidCarlisle also, one on't cross beams gone owt askew on treddle

@PauloCereda better than your usual English:-)

@DavidCarlisle ooh :)

1 hour later…
3:12 PM
@PhelypeOleinik Hi! Please, this looks like a template of yours, and it's failing on our TL2022 version. Any chance you could look into it? If you create a project from the template and write me to support@overleaf.com I can switch it to TL2022 for you :) Thanks! overleaf.com/latex/templates/…

3:40 PM
@yo' ew, that...
@yo' I'll check

@PhelypeOleinik :D
@PhelypeOleinik thanks!

3:56 PM
@yo' Aw crap! I messed up \bool_const:Nn \c_smth_bool { 1 } when I fixed this...

@PhelypeOleinik Ooops

@PhelypeOleinik and also the test for etex seems failing for some reason (but that's possibly on us...)

@JosephWright What's more surprising is that no one used \bool_const:Nn with a 1 in two months!
@yo' I guess the main issue is with \bool_const:Nn, but I'll write you to do a checkup on the whole thing so it runs smoothly

@PhelypeOleinik cool, thanks!

4:11 PM
@PhelypeOleinik who writes theses in the beginning of a semester? :)

@PauloCereda nerds silly people

@PhelypeOleinik OOH

@PauloCereda Hm... Should I change the default page numbering style on that template?
decisions, decisions

@PhelypeOleinik YES

@PauloCereda 😈

4:14 PM
@PhelypeOleinik ooh-nicode

@PauloCereda I'm modern!

@PhelypeOleinik ooh lmodern
:)

4:28 PM
@PhelypeOleinik replied :)

5:25 PM
@UlrikeFischer I made the ucs actives \protected, do you have a simple failing hyperref test?

5:58 PM
@DavidCarlisle does l3build work or do one have to call make first?

Perhaps a dumb question. When you type \ and [ and ] etc, which finger do you use?
I struggle using my little finger typing all of -=[]\', plus backspace

@Symbol1 If I'm concentrating, little finger but I don't always have my mind to touch-typing, so often right-hand index

@Symbol1 On Swedish keyboards \ is on alt gr + +, { is on alt gr + 7 and } is on altgr + 0. So, alt gr with the thumb and the other one with the middle finger (right hand both).

@Symbol1 Since I am using a German keyboard with Windows, I use right thumb on AltGr and right middle finger on ß/? for \

@JasperHabicht Cheers! :)

6:06 PM
@mickep Yay! Seems we're in the same club of non-English typing acrobats. My fingers get especially knotted with {, [, ] and } because those are on AltGr in combination with 7, 8, 9 and 0 resepectively

@Symbol1 (UK English layout on the Mac: on Windows a different little finger for the slash)

@JosephWright ducks do not have fingers :)

@PauloCereda Oh no!

@JasperHabicht oh no
@JasperHabicht but we are very good typists :)

@PauloCereda So they need really large keys?

6:09 PM
@JasperHabicht Yes, same here.

good to know. I thought I use middle and ring finger too much. But they are just irreplaceably long =|

@Symbol1 I think, it is really totally okay to use whatever finger(s) you are comforable with. I guess, with coding, you are really beyond any ten-finger system standards ...

@PauloCereda Hah, I first thought it was Darkwing Duck ... Let's get dangerous! .. But it is Cluck Trent very obviously =D

@JasperHabicht ooh darkwing duck
I am the terror that hunts in the night! I am the undefined control sequence in your TeX document...
5

6:22 PM
@PauloCereda \duck[body=black!10,strawhat=darkgray,ribbon=black,mask=violet,tshirt=green!50!blue,jacket=violet,buttons=yellow,cape=violet!50!black] ... not completely undefined: tikzducks has him

@JasperHabicht ooh

@UlrikeFischer ah that works now as utf8x does nothing but blows up if I add ucs package, but "Yes that is known. I wrote the maintainer of ucs some weeks ago and told them what they must do if they want to stay compatible with the changes in hyperref (which followed changes in the utf8 handling in latex)." could you forward that mail:-)
@JosephWright @UlrikeFischer what's the most idiomatic way of getting l3build install (or unpack ?) to do this before whatever else it was going to do?
cp  /usr/local/texlive/2022/texmf-dist/tex/generic/unicode-data/UnicodeData.txt .
mkdir -p data
perl -w makeunidef.pl --nocomments --targetdir=data config/*.ucf
rm UnicodeData.txt

@DavidCarlisle Oh, the \bumpeq: stats.stackexchange.com/q/67348

6:39 PM
@mickep yes I'd read it as approx equal (but had no refs to back that up:-)

@DavidCarlisle Oh, then what about \Bumpeq (a bump down as well)?

@DavidCarlisle Needs to be on install?

         <Elsevier grid="brr" ent="bump">
<desc>bumpy equals; geometrically equiv. to; appr. equal</desc>
</Elsevier>
@mickep I don't think I have ever seen it

@DavidCarlisle In fact, \equipollence could be a better name for the goemetry one en.wikipedia.org/wiki/Equipollence_(geometry)

@DavidCarlisle I only said they should redefine \HyPsd@expand@utfvii to do nothing. But if the chars are now protected that is probably no longer the right thing?

6:45 PM
@JosephWright it makes all the .def files that are needed to install (and to produce the doc) If we are not planning on updating we could dump the perl and treat the (Unicode 14) .def as fixed source, but it seems more polite to keep it running

@DavidCarlisle My experience with Perl scripts is drop them and do the parsing/setup in TeX ;)
@DavidCarlisle That's how \uccode used to be set up and it was slow and awkward

@UlrikeFischer I protected as testing with MakeUppercase showed it never really worked, so revertig \MakeUppercase did not help.

@DavidCarlisle Probably easiest to redefine install() - I don't think we have a hook at the level you want

@JosephWright yes but it's 1571 lines of perl with no spec and reverse engineering and re-implementing that is more than "emergency update to utf8x"

@DavidCarlisle I can see that :)
@DavidCarlisle Honestly, I'd fix the support and not provide any updates - surely we don't need new Unicode chars in what is a fix for documents that are better to update other ways?

6:50 PM
@DavidCarlisle what is the problem with keeping it running?

@UlrikeFischer not a lot just fitting it in to l3build

@DavidCarlisle I can always add a hook ...

@DavidCarlisle I think it is not a problem to run first make and then l3build only to install the files / upload to ctan.

Was explaining today to my PhD student what I do in my spare time ... tried to explain about UTF-8 ... complicated as he's just learning Python
@UlrikeFischer Yup

@JosephWright yes I started by fixing the perl so it runs and ran make as copied from ctan and then git-deleted every file that was generated just on principle. But now I have a better idea of what is generating what so I could check the def files in and lose the generator, I'll see. I need to fix hyperref first (or persuade @UlrikeFischer to do so:-)

7:01 PM
@DavidCarlisle awwww
@JosephWright I quack in despair most of my spare time
4

@DavidCarlisle how can one test with the new version?

@UlrikeFischer just run make then run a test tex file in that directory (or make a lvt and run l3build check after runing make)

7:25 PM
@DavidCarlisle hm, the following works with the ucs on ctan, but while it doesn't error the bookmarks aren't right. So how do one unprotect them correctly again?
\documentclass{article}
\usepackage{ucs}
\usepackage[utf8x]{inputenc}

\makeatletter
\makeatother
\usepackage[unicode]{hyperref}

\begin{document}
\section{grüße}
Dummy text here

\end{document}

@UlrikeFischer we could loop again but ideally the protected versions would work:-) let me try in a bit need to eat...

1 hour later…
8:29 PM
\documentclass{article}
\usepackage{ucs}
\usepackage[utf8x]{inputenc}

\makeatletter
\def\HyPsd@expand@utfvii{%
\count@"C2
\@tempcnta"E0
\def\UTFviii@tmp{%
\expandafter\def\expandafter~\expandafter####\expandafter1\expandafter{~{####1}}%
}%
\UTFviii@loop
\count@"E0
\@tempcnta"F0
\def\UTFviii@tmp{%
\expandafter\def\expandafter~\expandafter####\expandafter1\expandafter####\expandafter2\expandafter{~{####1}{####2}}%
}%
\UTFviii@loop
@UlrikeFischer ^^^ we really ought to make the protected ones work, but ^^^

8:43 PM

@DavidCarlisle high expandafter level, but seems to work.

@UlrikeFischer rather than looping and unprotecting everything then presumably edef, we should make hyperref use \text_expand/purify/something:n and so get @JosephWright to expand the protected versions (I suspect)

@DavidCarlisle yes. I basically have something in the new driver. But I haven't tried it yet with bookmarks, one would have to rewrite the bookmark code first.

@UlrikeFischer still if new hyperref code doesn't call \HyPsd@expand@utfvii having it defined in the hook does not hurt, so this looks OK I think.

8:59 PM
@DavidCarlisle yes, it should work. And \MakeUppercase looks good too.

mail ctan and beg update rights? also me or l3 team as maintainer?
@UlrikeFischer I had better write something in the doc as well

@DavidCarlisle doc? which doc?

@UlrikeFischer I am told there is something. I think it has to do with the [1] [2]... that flashes past when building. (by the way you don't need make any more)

@DavidCarlisle l3build install errors here:
C:\texlive\2022\bin\win32\runscript.tlu:935: ...22/texmf-dist/scripts/l3build/l3build-file-functions.lua:182: Unable to change working directory to './build/local'

9:22 PM
@UlrikeFischer hmm works here I'll look what those lines are doing...

@DavidCarlisle it does something after I created a build/local folder. But I'm not sure what ...

9:39 PM
-- Return an absolute path from a relative one
-- Due to chdir, path must exist and be accessible.
function abspath(path)
@UlrikeFischer ^^ line 182

@DavidCarlisle why don't I get this error more often?

@UlrikeFischer try removing cp("UnicodeData.txt",string.match(kpse.lookup("UnicodeData.txt"),"(.*[/])"),".")

10:04 PM
@DavidCarlisle that doesn't change anything. But as creating the folder works one can leave it. Shouldn't there be a gitignore file?

@UlrikeFischer yes although I was letting git warn me about what had been generated so I could git remove, I need to make sure l3build ctan packages the right things I'll add a gitignore as well
speeking of git should we split pdfthing from oberdiek?

@DavidCarlisle how to you let git warn you?

@UlrikeFischer git status -uno should show no changes so initially it showed lots of things so I removed them so now git status -uno is clean, but git status shows lots of untracked files unless I add to gitignore (but I almost always use git status -uno so I don't notice:-)
$l3build install .../davidc/texmf/scripts/l3build/l3build-file-functions.lua:182: Unable to change working directory to './build/local' No such file or directory @UlrikeFischer ^^ :-) $ git commit -a -m "ensure build/local exists in time"
[main f544f84] ensure build/local exists in time
1 file changed, 2 insertions(+)

10:22 PM
@DavidCarlisle oh you could reproduce it.

@UlrikeFischer yes I deleted my build directory and tried a fresh l3build install

@DavidCarlisle good strategy ;-). It works now.

@UlrikeFischer oh l3build ctan doesn't error but doesn't make a zip. I may have broken something:-)