cmacmackin / markdown-include

Provides syntax for Python-Markdown which allows for the inclusion of the contents of other Markdown documents.
GNU General Public License v3.0
104 stars 41 forks source link

Ability to include portions of the file #9

Open vstriz opened 7 years ago

vstriz commented 7 years ago

I'm writing a user guide and it would be nice to include section of the external file. Either by specifying line numbers or named section. I previously used asciidoc include feature and found this capability extremely useful.

Referring to actual tested code makes sure that your examples in docs are not out of date, but you also don't want to include noise like imports, etc... And often just a small part of a class demonstrate a particular aspect you're describing.

http://asciidoctor.org/docs/user-manual/#include-basics E.g.

I'm not sure how you'd specify this exactly but perhaps some variation of :

{! include filename[lines=1..20] !} {! include filename[tags=snippet1] !}

holgerbrandl commented 3 years ago

Along with the mentioned use-cases, it would be also great if the header of the included file could be stripped away (e.g. import statements)

{! include filename[skip=10] !}
tiangolo commented 3 years ago

I'm using this extension for the docs for FastAPI and Typer. And I want this feature too (in particular for a new project). So I implemented it and made the PR here: https://github.com/cmacmackin/markdown-include/pull/31