1:10 AM
actually more relevant: why did Knuth use \Lambda for NULL in cweb?

1:29 AM
and in taocp too

2:15 AM
what happened to marmot?

4 hours later…
5:58 AM
@UlrikeFischer Sounds interesting. But is this also something a user could do "by hand" if desired?

6:20 AM
@FaheemMitha Sure why not. See e.g tex.stackexchange.com/a/473665/2388.

@UlrikeFischer Thank you. I see I'm running LuaTeX, Version 1.07.0 (TeX Live 2019/dev/Debian).
Apparently out of date.

@UlrikeFischer Looks interesting. Thank you.
For the latter question, what is your use case?

2 hours later…
8:50 AM
@FaheemMitha tl2019 with 1.07 ? seems a bit odd. (upstream tl2019 has 1.10)

@DavidCarlisle I think that's TeX Live 2018
Development version from 18th December 2018.
apt-cache policy texlive-binaries
texlive-binaries:
Installed: 2018.20181218.49446-1
Candidate: 2018.20181218.49446-1
Version table:
2019.20190605.51237-2 50
50 http://deb.debian.org/debian unstable/main amd64 Packages
*** 2018.20181218.49446-1 500
500 http://deb.debian.org/debian buster/main amd64 Packages
100 /var/lib/dpkg/status
Norbert's versioning.
The first field (before the decimal) denotes upstream TeX Live version, I think.

9:05 AM
@FaheemMitha odd that iit's called (TeX Live 2019/dev/Debian) if its texlve2018 but whatever
@JosephWright if I run l3build check in graphics, it runs to the end but I get this just after it makes a latex format:

@DavidCarlisle I presume the intention is that it's 2019 in development.

mv: cannot stat '../build/unpacked/latex.fmt': No such file or directory
@FaheemMitha yes but I thought he'd push out the luatex binaries as they appear in the texlive development, however if I trust anyone to supply a self-consistent set it would be Norbert so I'm sure it's fine:-)

@DavidCarlisle Hmm, odd

@DavidCarlisle I saw a similar message ("das System konnte die Datei nicht finden") but it didn't say which file it didn't found and did continue.

@DavidCarlisle I was considering moving to the more up-to-date 2019.20190605.51237-2 but I'm concerned it might break stuff. Specifically Lua stuff.
It's already been a nightmare getting this stuff working.

9:12 AM
@JosephWright hmm I get the following but I'm iterating towards a pass I think:
  Check failed with difference files
- ../../build/test/utf8-filenames-001.etex.diff
- ../../build/test/utf8-filenames-001.luatex.diff
- ../../build/test/utf8-filenames-001.xetex.diff
@JosephWright oh utf8-filenames-001.etex is just listfiles formatting differences...

@DavidCarlisle @DavidCarlisle Ah, right I think I see the issue

@JosephWright meanwhile re-running check...

@DavidCarlisle, @UlrikeFischer When building pdfLaTeX, because the .ini is pdflatex.ini the format file is already called pdlaftex.fmt. I'll add a conditional
@DavidCarlisle Yes, that's the one that fails here due to the Windows settings, so I have to disable: with that 'knocked out' everything builds

@JosephWright the failure here is just due to the quotes messing up listfiles msdos 8+3 filename alignment, I'm expecting it to pass now, I'll check it in of it does. (unrelated to the windows issue but should make it pass at travis)
Running checks on
tlb-clubpenalty-001 (1/9)
tlb-scale-001 (2/9)
tlb-scalebox-001 (3/9)
tlb0610 (4/9)
tlb3446 (5/9)
tlb3873 (6/9)
tlb4296 (7/9)
utf8-filenames-001 (8/9)
utf8-filenames-002 (9/9)

All checks passed
@JosephWright @UlrikeFischer ^^^

@DavidCarlisle So just the release number to step (it's -2?)

9:22 AM
@DavidCarlisle One starbust for you
\documentclass{article}

\begin{document}

\begin{picture}(100,100)

\put(0,0){\line(1,1){50}}
\put(50,50){\circle{5}}
\put(50,50){\line(1,0){10}}
\put(50,50){\line(1,1){10}}
\put(50,50){\line(1,2){10}}
\put(50,50){\line(1,3){10}}
\put(50,50){\line(1,4){10}}
\put(50,50){\line(1,5){10}}
\put(50,50){\line(1,6){10}}

\put(50,50){\line(-1,0){10}}
\put(50,50){\line(-1,1){10}}
\put(50,50){\line(-1,2){10}}
\put(50,50){\line(-1,3){10}}
\put(50,50){\line(-1,4){10}}
\put(50,50){\line(-1,5){10}}
\put(50,50){\line(-1,6){10}}

@JosephWright oh yes, I suppose so
@UlrikeFischer :-)
@JosephWright are you updating ltvers, or me?

10:07 AM
that's weird, it failed on travis with the opposite filecontents layout diff
*** ../../build/test/utf8-filenames-001.tlg	2019-07-21 09:58:12.862458348 +0000
--- ../../build/test/utf8-filenames-001.etex.log	2019-07-21 09:58:12.942458348 +0000
***************
*** 55,62 ****
dvips.def    ....-..-.. v... Driver-dependent file (DPC,SPQR)
one two three.tex
foo^^e2^^82^^ac^^e2^^82^^ac^^e2^^82^^ac.eps    Graphic file (type eps)
! foo bar.eps    Graphic file (type eps)
! foo bar.eps    Graphic file (type eps)
! foo bar.eps    Graphic file (type eps)
! foo bar.eps    Graphic file (type eps)
oh I see, checking again...

@DavidCarlisle yay!

10:53 AM
@DavidCarlisle I just spent a quarter of an hour trying to figure out why \chapter{Einführung} fails with ! Package inputenc Error: Invalid UTF-8 byte sequence. until I realized that the *!?!% class uses \lowercase everywhere ...

@UlrikeFischer I never have any problem with Introduction :-)
3
@UlrikeFischer invoke the secret plan and use l3 lowercasing....

@DavidCarlisle ooh the secret plan

@PauloCereda it's a secret.

@DavidCarlisle oh sorry
the secret plan

@DavidCarlisle not even expl3 can save this class. It has \font\abc=cmr10 and such stuff everywhere.

10:59 AM
@PauloCereda but if you cross it out no one knows about expl3

@DavidCarlisle ooh

11:23 AM
@JosephWright or actually -1 was never installed on ctan so shouldn't we re-issue it as -1 ?

12:01 PM
Would there be a good reason for a \footskip to change itself without being logged in the .log? It appears as expected only on the first page, unsure if this warrants a new question in the main--- found it nvm

@vlg changes in register values are not logged normally

Does texworks work better for TeX than Emacs?
And can I use Emacs key bindings?

@FaheemMitha I have never seen texworks but I assume the answer is no. (but by defining "better" you could get whatever answer you wanted)

I'm particularly thinking of highlighting, which doesn't work very well at all in Emacs with AUCTeX.
@DavidCarlisle Oh. Why?

@FaheemMitha I have a simple test of editors, if it's emacs I use it, if not, I don't.

12:08 PM
And AUCTeX is easily confused about what file it is supposed to be compiling. I suppose I should try to file a bug report.
@DavidCarlisle That's certainly a simple test.

@FaheemMitha I have applied that test several times over the years and still since 1987 emacs is the only editor that has passed, so I still use emacs.

@DavidCarlisle What would you do if Emacs ceased being developed?

@FaheemMitha I don't contemplate the unthinkable

Ok.
Might give it a try. Though it would be hard to get used to a different editor, even just for TeX.

@FaheemMitha You can't use Emacs key bindings by default, but it's open source ;)
@FaheemMitha Syntax highlighting in TeXworks is Regex/pattern based. So it won't highlight xii.tex correctly, if that's what you're after…

12:15 PM
@TeXnician Yes, people often say that. But that often means no.
@TeXnician Is that the same as AUCTeX?
I wasn't so ambitious as to try to highlight xii.tex correctly.

@FaheemMitha Well, it does mean "not yet". You could (as could anybody else) make it a "yes"…

Is it even clear what the correct highlighting is?
@TeXnician With substantial difficulty, possibly.

@FaheemMitha I don't know what AucTeX does, but it's certainly the most simply version one could do…

@TeXnician I’m pretty sure teh correct highlighting is no highlighting.

@HaraldHanche-Olsen Not even the two non-obfuscated macros?

12:24 PM
@TeXnician Nah. That’s teh beginning of a slippery slope towards trying to highlight everything. It looks best in glorious monochrome, like teh author.

@HaraldHanche-Olsen Sounds like a plan. Alternatively, we could ask @PauloCereda to write a catcode-sensitive syntax highlighter and compare the results :D

12:40 PM
@TeXnician use the latin version

1:04 PM
Actually, if LuaTeX can take apart the structure of TeX code to the extent of being able to give the layout of boxes, it could probably do intelligent syntax highlighting as well.
More intelligent than the current norm, at any rate.
AUCTeX becomes confused very easily if one departs from standard LaTeX.

1:29 PM
@TeXnician ooh

I hope I will be excused if I ask a Lua question here. The #lua channel on Freenode is not very nice, and SO is a bit too much overhead for a simple question. And they might close it, anyway.
So, is the following function correct Lua syntax?
function foo (x)
if x == '' or x == nil then
return print("gets to here1")
end
end
The return keyword would normally return whatever object follows the return keyword. But in this case, there is no object to return, just a print statement. But the print statement gets run, anyway.

@FaheemMitha Why returning print?

@PauloCereda I want to run a print when the function returns.
To tell the user what happened.

@FaheemMitha it would normally be written without the return

@FaheemMitha You are returning nil. If you want to print something before a return, you should move print one line before the return statement.

1:45 PM
@PauloCereda Oh. Would that be better style? Regardless, I was wondering why it runs. I guess Lua doesn't have any way of knowing it's not an object. Or maybe it just executes everything in the block?

@FaheemMitha do you mean syntax highlighting the source file (as I would guess from the auctex reference) or syntax highlighting typeset code?
@FaheemMitha as @PauloCereda says, print returns nil so that is what you are retunring

@DavidCarlisle The source code.
@DavidCarlisle Yes, I understand that part. I was just wondering why it runs the print code. Though I suppose there is no reason it shouldn't. It would probably run everything in the block.

@FaheemMitha how can lua syntax highlight its own source code? unless you write the whole editor in lua?

Well, dinner time.
@DavidCarlisle I was talking about TeX code.

@FaheemMitha return wibble executed wibble and returns whatever value it returns. "wibble just happens to be print(..) in your case
@FaheemMitha sorry I have no idea what you mean.

2:27 PM
@DavidCarlisle That sounds familiar...
@DavidCarlisle Well, I just meant that print() isn't technically an object, but I guess Lua just executes whatever it finds. And returns the resulting thing.
Apparently it's so small the entire language can be described in a table. You couldn't do that with many languages.
@DavidCarlisle What I was attempting to say was that, assuming the goal is to "intelligently" highlight TeX source code, one possible approach might be to have some suitable Lua code parse the TeX code, extract relevant information about the structure, and then pass that information to whatever is doing the highlighting.
Obviously, I've no idea whether this is actually possible, but at any rate, it doesn't immediately strike me as impossible.
And TeX internally actually seems to have a pretty good idea what it is doing, based on the tracing I've seen.

Lua doesn't even know if print returns something until after it has been executed. Also what do you mean with "object" or "non-object" in Lua? A function returns a list, for print this list just happens to be empty.

It's just that it isn't set up to pass that information anywhere.
@MarcelKrüger Ignore my coments about an object. I don't think I was trying to express any clear meaning.

@FaheemMitha If you write very performance sensitive code, (then you shouldn't print in the first place but otherwise) return print(...) can make sense because it allows tail-call optimization, making the code slightly faster.

@MarcelKrüger I see. Well, actually it will be texio.write_nl. I just print in there for simplicity. And of course #lua wouldn't know what texio was.
@MarcelKrüger I recall someone recently joined the LaTeX team. Was that you? Unless you are already on it.

@FaheemMitha Phelype.

2:41 PM
@PauloCereda Phelype?

@FaheemMitha certainly lua's ability to traverse the node tree in a tex box won't help with that as that is the tex output not the tex syntax

@DavidCarlisle Oh. Bummer. It has no way to relate it back to the actual character stream?

@FaheemMitha well it would be tricky. Given \def\foo{bar}\foo the resulting node list will just have three glyph nodes representing b a r with no record of the macro \foo that you want to syntax highlight.

@DavidCarlisle Hmm. Point taken.

2:57 PM
@FaheemMitha No, I'm not a team member. similar to David I also do not think that LuaTeX will help you with syntax highlighting, but if you still want to try I would recommend looking into the SyncTeX functions: They at least map TeX nodes back to input lines.

@MarcelKrüger I don't see how one would use SyncTeX to do such things.

@FaheemMitha node.get_synctex_fields tells you which source code line created a particular node. That's not a lot of information, but it is only way I can think of to relate nodes with source code information.

@MarcelKrüger Are you suggesting using SyncTeX in combination with other things?
To do syntax highlighting, I mean?

@FaheemMitha I don't think syntax highlighting using luatex works. But if there is a way, I think it would be based on the LuaTeX functions which provide access to SyncTeX information, together with directly parsing the Source file to get the correct column.

3:12 PM
@MarcelKrüger Are there LuaTeX functions that provide access to SyncTeX? Or would they have to be written?

@FaheemMitha There is node.get_synctex_fields(n), which returns (an identifier representing the) file and the line number associated with the node n.

@MarcelKrüger Oh, I didn't realise there was an existing library. Thank you for that information.
Though I agree it isn't sufficiently fine-grained information for the purposes of highlighting.

4:15 PM
Out of curiosity, started my iMac with Fedora 30 live. The hardware detection was perfect!

1 hour later…
5:35 PM
I don't suppose anyone here could confirm my theory that I can't use a long table inside a tikz node and have it span multiple pages?

@JamesDunlap a node is a box and no boxes can break over a page, but especially a tikz node how would you want it to work?

I'm making account statements and I use tikz nodes for absolute positioning for complex layouts. However, i use long tables for the data grids because they can include 50 pages of data.
I suppose my wishful thinking was that I could enjoy the artistic formatting of tikz nodes while having them just magically span multiple pages in the same way longtable does.

@JamesDunlap but "positioning by absolute coordinates" and "breaking over a page" seem to be mutually exclusive properties, but anyway it can't work with the current implementation.

I think in my exhaustion induced fantasy, the absolute positioning would indicate the x,y coordinates of where the long table began.

@JamesDunlap can't you use a separate tikzpicture for each item?

5:47 PM
Yes, that's a possibility but it would involve a fairly complex loop to know when I was reaching the end of the page and to start making pictures on the next page.
And I may get there at some point. In the meantime I'll be a touch more realistic and accept the limited formatting options of the longtable.

@JamesDunlap Why don't you adjust your margins, so that the longtable in the text body starts at x,y on every page and add everything else (formatting with absolute positioning using TikZ) as header/footer?

@JamesDunlap oh well of course you have shown no example, but I assumed you could just list them all and lets tex's normal page breaker handle the page breaking (that is how longtable works)

I can absolutely share some examples, hold one one second.

6:10 PM
Ok, that was longer than one second.
Here is how I solved this problem previously - by just accepting a very plain longtable.
The second link is actually the first page of the same document. The table at the top of the first document is an example of preferred formatting that can be achieved through using node formatting or even just a tcolorbox.
So now I'm working on making a statement report that include a formatted check on the first page.
And I'll confess I was hoping to come up with a way to make nicer looking tables that also break pages this time around.

@JamesDunlap I don't mean to be nosey, but do you actually work for a debt collection agency?

No, I do not.
But I do have customers that are. Why do you ask?

6:36 PM
Dunno. TeX and collection agencies. Somehow that's a mindblowing combination.
Very professional looking typesetting, by the way.

2 hours later…
8:16 PM
hello, is it possible to force a footnote under a tabular instead of at the end of a page?
https://imgur.com/6iloSpf

it looks really ugly and i want to remove the line above the footnote. i only found \footnoterule which seems to be global

@sollniss put the tabular in a minipage then the footnote comes at the end of the minpage, or there are several packages that do tablenotes (eg threeparttable)

the tabular is in a minipage already

@sollniss then the footnote will be at the end of the minipage not the bottom of the page unless you have done something to change that

i dont know if it is at the end of the minipage or at the end of the page since the table happens to be at the bottom of a page, but the footnote is separated by a line instead of being directly under the table

@sollniss you can put \renewcommand\footnoterule{} inside the minpage

8:24 PM
@sollniss Yes it looks like it's at the bottom of the minipage. Either use threeparttable as @DavidCarlisle suggested or remove the rule (@DavidCarlisle beat me to it...)

that works, thanks guys
another thing, would it be possible to have a number for the footnote instead of an alpha?

\renewcommand\thempfootnote{\arabic{mpfootnote}}

thank you
then i can also move the \small inside of the minipage and remove the \normalsize, since the minipage capsules everything, right

8:44 PM
@sollniss Yes, but it's generally not advisable to make the text in a table smaller (if that's what you're trying to do.) Instead figure out ways to make the columns narrower (e.g. units in the heading(

i'm using makecell which had small headers by default, but i couldnt figure out how to make the content smaller
by default the content of the table used an even bigger font size than the normal text outside of the table
which looked really weird

1 hour later…
9:54 PM
@sollniss no class would do that by default, are you using something like \resizebox` around the table?