v0.19 documentation #1453
Labels
No labels
UX
active development
backlog
blocker
bootstrap
bounty
bug
dependencies
discussion
documentation
duplicate
enhancement
flaky test
help wanted
invalid
javascript
question
release
tendentious
wontfix
No milestone
No project
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
mighty-gerbils/gerbil#1453
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
so no more js generated site -- npm is the biggest supply chain risk of modern times and i dont even install it in my computers.
But we do have a lot of docs and we want to preserve them -- in markdown.
So here is the proposal:
Once we have enough docs ready, we will write a processor to render in html and other forms as appropriate.
Here is an example document outline for a package, say the
std/iopackage living atsrc/std/io.mdAnd here is the outline for a module documentation morg:
@vyzo I've been thinking about the documentation markup language proposal . It seems like the main difference between markdown and your proposed "morg" is the ability to add attributes to headings (e.g.
#+package). I looked around to see if there are any preexisting efforts in that vein, and I found a markup language called Djot. Djot was made by the same guy who made Pandoc and co-authored the Commonmark Markdown specification (so not a nobody), and it was designed to improve upon Markdown by improving parsing ambiguities and adding some really nice additional features .Importantly, Djot allows for annotating arbitrary elements (both inline and block) with attributes. For example,
I think there could be some benefit in leaning into an existing standard (even if it’s an uncommon one) rather than creating an entirely new one and contributing to the problem of xkcd:927. For instance, Djot already has a treesitter grammar, Emacs mode, VSCode extension, and many other DX niceties.
My thinking is we could build a parser in
std/text/markupto parse Djot to an AST, and then we could built a tool that generates documentation-specific HTML using this parser and custom attributes likepackage,module, etc..What are your thoughts?
so i am not crazy for wanting annotations in my markdown 😄.
It looks good, let's use it. I would prefer if we kept the .md extension nonetheless.
on the annotation side, let's annotate what we are documenting for the export symbols, eg procedure, struct, class, interface, macro, syntax, example
another tag: we have tips in the existing documentation in the form of a vuepress extension:
we should turn those in appropriately nested subsections with a tip annotation.