executablebooks / markdown-it-docutils

A markdown-it plugin for implementing docutils style roles/directives.
https://executablebooks.github.io/markdown-it-docutils/
MIT License
12 stars 9 forks source link

Block elements (target, comment, block-break) #16

Closed rowanc1 closed 2 years ago

rowanc1 commented 3 years ago

Describe the enhancement you'd like

There are three block elements to implement here:

Does this solve a specific problem?

No response

What alternatives exist?

There is some prior art here:

Additional context

Target

Then we also have the target syntax in myst: (label)= (a reference implementation is currently here: https://github.com/executablebooks/myst-vs-code/blob/83460fc5f14517e8d6c6b7eb5581d814389fbc7c/src/mdPlugins.ts#L32, but perhaps we should move that into this package, they also get a little trick as we also need to "propagate" them down to the next block token, see: https://github.com/chrisjsewell/rst-language-server#transformsreferencespropagatetargets).

Essentially we want to be able to easily "scan" down the markdown-it token stream, and pull out all these targets and references, along with their map (a.k.a. position in the source text) and probably index in the token stream

Originally from #10

rowanc1 commented 2 years ago

@chrisjsewell looking at the library that you have opened up here (myst-extras) are you thinking these shouldn't be in this repo? It looks like you have moved the targets/blocks/comments over there.

rowanc1 commented 2 years ago

These have been moved to the https://github.com/executablebooks/markdown-it-myst-extras repository.