Skip to content

Conversation

@Vierkantor
Copy link
Contributor

This PR adds a library SubDocGen that defines a pair of environment extensions, and helper functions for adding definitions to these extensions. In a follow-up PR (see my supplements branch for the work in progress), these extensions will be used to render supplement pages, in addition to API documentation. For example, Mathlib can generate an overview of all library notes, Stacks tags and norm_num extensions, without having to program support specifically into DocGen for each of them.

The environment extensions need to be imported by projects in order to add to the supplement, so I define it as its own library rather than a piece of DocGen itself.

The main open question I have right now is Verso support. The entries of the environment extension are intentionally dependent on the type of (doc)string they contain, so switching them out all at once should be easy. I wonder if it would be better to instead have two extensions: one storing Markdown strings and one for storing Verso strings?

This PR adds a library `SubDocGen` that defines a pair of environment extensions, and helper functions for adding definitions to these extensions. In a follow-up PR, these extensions will be used to render supplement pages, in addition to API documentation. For example, Mathlib can generate an overview of all library notes, Stacks tags and `norm_num` extensions, without having to program support specifically into DocGen for each of them.

The environment extensions need to be imported by projects in order to add to the supplement, so I define it as its own library rather than a piece of DocGen itself.

The main open question I have right now is Verso support. The entries of the environment extension are intentionally dependent on the type of (doc)string they contain, so switching them out all at once should be easy. I wonder if it would be better to instead have two extensions: one storing Markdown strings and one for storing Verso strings.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant