Я был бы более склонен придумать общие средства для расширения синтаксиса Markdown, а затем использовать его для обеспечения поддержки функции включения. Так, например, вы могли бы определить синтаксис как (я на самом деле не предлагаю этот конкретный синтаксис, просто пример):
[[command: arg arg arg...]]
.. где command
относится к команде, которую анализатор уценки не понимает, но может перезвонить чему-то другому для ее обработки. Затем вы можете создать функцию включения, которая будет работать с уценкой, но на самом деле не будет ее частью. Что-то вроде:
[[include: src/foo/bar.md]]
Да, и если вы сделаете это, я бы, вероятно, не предоставил средства для включения частичного файла, по крайней мере, без использования номеров строк - поскольку это означает, что вы должны вернуться назад и отредактировать все включенные вызовы, если вы измените длина документа, что на самом деле затрудняет повторное использование (если вы можете придумать способ пометить разделы, это может работать лучше).