Ответ
andylars 24.10.2015 21:04
/ 24.10.2015 21:25
Если экранировать ^#, теряется прямая совместимость с разметкой Markdown
Вы хотите прогнать код с одним синтаксисом через два разных языка.
сначала через синтаксис Парсера,
а потом через синтаксис Markdown,
но вас не устраивает что их синтаксисы не совместимы.
Вы же пишите метод @body[] а значит тот, кто пишет текст ниже
по сути пишет код на Парсер.
Если шаблон/текст для Markdown пассивный (не содержит кода на Парсер) то просто положите его в отдельный файл и прочитайте.
Он не исполнится как код на Парсер.
Например так:
$_tpl[^file::load[text;markdown.tpl]]
$f[^file::exec[Markdown.pl;$.stdin[$_tpl.text]]]
$f.text
Соответственно внутри markdown.tpl
все что угодно
# Заголовок
Текст
А если вы хотите и код на Парсере внутри, то тут как ни крути.
Вас же не смущает, что когда вы пишите HTML внутри JS-скрипта - вам приходится экранировать какие-то символы, т.к. вы находитесь
в окружении синтаксиса JS, хотя номинально всё "происходит" в одном файле.