Разрешить необработанный HTML в коде LaTeX с помощью Pandoc
Я знаю, что включение необработанного HTML в документы Markdown с помощью Pandoc возможно, поэтому мне было интересно, есть ли способ разрешить это в документах LaTeX.
Pandoc преобразует символы меньше и больше, чем символы, в сущности HTML, если они включены в документ LaTeX (даже если они находятся внутри дословно). это имеет смысл, но это не то, что я хочу.
1 ответ
Лучше всего использовать специально отмеченные verbatim
окружение, которое затем можно преобразовать в желаемый целевой формат через фильтр Lua. Например, добавить %%%html
пометьте в качестве первой строки стенографическое окружение, затем вставьте HTML-код, который вы хотите сохранить:
\begin{verbatim}
%%%html
<aside>Embedding raw HTML can be helpful</aside>
\end{verbatim}
Pandoc будет читать это как обычный блок кода, но нам нужен необработанный блок HTML. Мы используем фильтр, чтобы преобразовать его:
function CodeBlock(cb)
local rawHtml = cb.text:match('^%s*%%%%%%html\n(.*)')
if rawHtml then
return pandoc.RawBlock('html', rawHtml)
end
end
Сохраните вышеупомянутое в файл и используйте это как аргумент pandoc's --lua-filter
вариант.