Say I want to write a patch for one or some of the expl3 modules. As far as I can see, to test the patch I have to do the following:
- Edit the module's
.dtxfile; - Run
l3.insto compile (beside others)expl3-code.texfrom alll3kernelmodules; - Include package
expl3from my main testing document.
For writing more complex patches that require you to repeatedly edit and test your code, this is tedious and impractical.
Ideally, I'd like to directly modify a .dtx file and include only that updated package into the main file. As expl3 seems to include all packages, that won't work; including a separate package afterwards would cause errors because of duplicated definitions. (My first problem here is already how to properly create the .sty file from the .dtx file.)
So my questions:
Is there a way to selectively import
expl3packages on top of the already loaded ones, or prepare a special version ofexpl3that will pull in the code from individual.styfiles instead of one big kernel dump?What is the workflow of active LaTeX3 developers? Do you have special building scripts or tools?
Are there other debugging options or tools (especially for the
expl3packages) one should be aware of other that the few commands mentioned ininterface3.pdf?
gsetvariant instead ofnew, then no verification whatsoever will be done and you can load your patch afterwards as a package. Then, after you're done, you can patch-in those changes to your copy of the sources and build it normally.l3build installto install the files in a special texmf, for only l3kernel that's reasonable fast. But why are you changing the original dtx-files from expl3? Do you plan a pull request?gsetis no alternative.