!NuxCISwYQJuyWwNsEI:matrix.org

PGF/TikZ

54 Members
https://github.com/pgf-tikz12 Servers

Load older messages


SenderMessageTime
6 Oct 2021
@josephwright:matrix.orgjosephwright hmenke: Seems I got it from https://tex.stackexchange.com/questions/420645/tikzpicture-has-different-outputs-depending-on-the-tex-engine 07:26:31
@hmenke:matrix.orghmenke josephwright: Oh no. 08:56:03
@hmenke:matrix.orghmenkeDon't remind me of the xetex driver.08:56:12
@josephwright:matrix.orgjosephwright
In reply to @hmenke:matrix.org
Don't remind me of the xetex driver.
The l3draw one works ;)
08:56:29
@hmenke:matrix.orghmenkeThe xdvipdfmx driver in PGF is completely fucked.08:56:39
@josephwright:matrix.orgjosephwright
In reply to @hmenke:matrix.org
The xdvipdfmx driver in PGF is completely fucked.
Yes, I know there are major issues: I worked basically from scratch to get the l3draw stuff to go
08:57:02
@hmenke:matrix.orghmenkeYou also correctly implemented box_use: https://github.com/latex3/latex3/blob/335222608bea9fad19bb89b32d11d1014e40ab7e/l3backend/l3backend-draw.dtx#L349-L38608:59:31
@hmenke:matrix.orghmenkeThe implementation in the xdvipdfmx and dvips drivers of PGF are wrong which is essentially what breaks most uses of nested tikzpictures.09:00:06
@hmenke:matrix.orghmenkeBut without a comprehensive test suite I don't feel comfortable touching these drivers.09:01:53
@josephwright:matrix.orgjosephwright
In reply to @hmenke:matrix.org
You also correctly implemented box_use: https://github.com/latex3/latex3/blob/335222608bea9fad19bb89b32d11d1014e40ab7e/l3backend/l3backend-draw.dtx#L349-L386
That was quite a lot of effort testing all of the interactions!
09:02:05
@josephwright:matrix.orgjosephwright
In reply to @hmenke:matrix.org
The implementation in the xdvipdfmx and dvips drivers of PGF are wrong which is essentially what breaks most uses of nested tikzpictures.
Tom Rokici gets the credit for the dvips approach: I asked him for help
09:02:42
@josephwright:matrix.orgjosephwright
In reply to @hmenke:matrix.org
But without a comprehensive test suite I don't feel comfortable touching these drivers.
I completely understand
09:02:51
@josephwright:matrix.orgjosephwright
In reply to @hmenke:matrix.org
But without a comprehensive test suite I don't feel comfortable touching these drivers.
So we need to get that sorted? This rooms seems an ideal place to organise: a case of taking the l3draw tests as a base perhaps? The API is pretty similar
10:13:00
@hmenke:matrix.orghmenkeYes, this needs to get sorted and any help is much appreciated.10:15:23
@hmenke:matrix.orghmenkeI'm not familiar with l3build at all.10:15:36
@hmenke:matrix.orghmenkeI tried to adapt Ulrike's pdfresources scripts because they cover a wide variety of engine but I always hit a wall because at some point l3build expects the LaTeX dtx+ins workflow which PGF doesn't have.10:17:18
@hmenke:matrix.orghmenkeThen again, this was a year ago, so things likely have changed.10:17:51
@josephwright:matrix.orgjosephwright
In reply to @hmenke:matrix.org
I tried to adapt Ulrike's pdfresources scripts because they cover a wide variety of engine but I always hit a wall because at some point l3build expects the LaTeX dtx+ins workflow which PGF doesn't have.
OK, so if I set up a framework and say one or two demo tests?
10:17:56
@hmenke:matrix.orghmenkeThat would be like 80% of the work. 10:18:35
@hmenke:matrix.orghmenkeMost importantly the framework has to cover all supported engines.10:18:58
@josephwright:matrix.orgjosephwright OK, I'll see what I can do over the next few days - I do know l3draw and l3build quite well ;) 10:19:18
@hmenke:matrix.orghmenkeWe need pvt->tpf tests for driver stuff and lvt->tlg tests for engine-independent stuff like pgfkeys and pgfmath.10:20:11
@josephwright:matrix.orgjosephwright
In reply to @hmenke:matrix.org
We need pvt->tpf tests for driver stuff and lvt->tlg tests for engine-independent stuff like pgfkeys and pgfmath.
Well I can start small, also note that most of the time one can test using \showoutput (that's how I do l3draw, with one result per backend)
10:22:05
@hmenke:matrix.orghmenke Yes, \showoutput could suffice, but for patterns and other global objects we need the entire PDF. 10:23:29
@hmenke:matrix.orghmenke Also, doesn't \showoutput truncate long \specials? 10:23:53
@josephwright:matrix.orgjosephwright
In reply to @hmenke:matrix.org
Also, doesn't \showoutput truncate long \specials?
One can fiddle with line length to address that
10:24:20
@josephwright:matrix.orgjosephwright
In reply to @hmenke:matrix.org
Yes, \showoutput could suffice, but for patterns and other global objects we need the entire PDF.
Possibly: should still be in the first PDF page though - I'd have to check
10:24:42
@josephwright:matrix.orgjosephwright
In reply to @hmenke:matrix.org
Also, doesn't \showoutput truncate long \specials?
I guess the issue there is pgf writes very few lines, whereas for l3draw I've tried to keep each \special independent
10:26:00
@hmenke:matrix.orghmenke There is actually a related thing that I wanted to discuss with the L3 team at some point (probably at a future TUG/Dante/etc meeting): More and more expl3 constructs are infiltrating the LaTeX kernel which is a good thing, since they bring new robust features, but the big downside is that \tracingall becomes more and more useless because expl3 produces lots of log spam. For most users this is a non-issue but developers will have a hard time tracking down bugs. We don't have to (and probably shouldn't) discuss this now; just something to keep in mind. 10:28:16
@hmenke:matrix.orghmenke
In reply to @josephwright:matrix.org
I guess the issue there is pgf writes very few lines, whereas for l3draw I've tried to keep each \special independent
I don't know for sure whether PGF does generate very long specials.
10:29:02

Show newer messages


Back to Room ListRoom Version: 6