Closed Martin521 closed 5 months ago
Curious why custom scripts and not something like mdBook and/or pandoc? Former can also help in publishing it as versioned interactive "website" with search and all. Latter might help producing custom formats (pdf, djvu, tex, doc(x), you name it).
Curious why custom scripts and not something like mdBook and/or pandoc? Former can also help in publishing it as versioned interactive "website" with search and all. Latter might help producing custom formats (pdf, djvu, tex, doc(x), you name it).
The F# spec contains more than 250 cross-references like "see §15.1". The main function of the build script is to keep these cross-references working in both development (where we have a collection of markdown chapters) and in the complete doc (markdown or html derived from it), even if chapters are added or removed. I took the idea and format from the C# spec/standard. For the original F# spec, MS Word handled this. As far as I can tell, neither mdBook nor pandoc provide this functionality. Next to handling the cross-references, the build script also provides the most basic mdBook functionality (namely combining the chapters and providing a ToC).
Going forward I see the following options.
This PR should be reviewed and merged first. Separate PRs will follow for the chapters of the spec. This PR contains the project infrastructure (build script etc) and the preface page of the spec (spec/front-matter.md).