after about 20+ years I finally got around taking a closer look at doc
package and one ore the other extension that has been written based on it.
Given that on one hand doc is missing a lot of useful functionality but
on the other hand 2/3 of the LaTeX packages use .dtx based code I
thought it isn't advisable to change anything that exists but only
provide a modest update that offers some in my opinion useful features
without rendering existing documentation obsolete.
Speaking of not changing anything: of course any addition is a change
and while \NewDocElement is probably safe other bits may not be and that
might call for some adjustments.
So basically I added
hyperref support out of the box
and integrated some of the ideas from the dox package by Didier Verna
(though I didn't keep his interfaces). The latter allows addition
doc-elements so that you can structure the documentation properly and
obtain a more useful index according to your needs, eg document options,
counters lengths etc and have them indexed in various ways.
Out of the box, doc will still only offer Macro and Env but this way it
is now trivial to customize this on a per package basis. I have tested
this on various documentation already, but of course some wider tests
are advisable before I will move that (or rather a later version as I'm
still working on code and documentation) into the main LaTeX distribution.
So I'm looking for people trying this out on their own packages and
report any problems or suggestions back to me, preferably via the github
The code is located at
for those who want to give it a try
ps the new code uses the new rollback functionality of the 2018-04
release of LaTeX, even though you can use the package with an older
LaTeX release. But if you have a current one then
should always get you back the older version and thus should run any old
package code. (Of course that only works if you use the 2018 version of
the LaTeX kernel)