LHS и Markdown: кодовые блоки - PullRequest
17 голосов
/ 13 августа 2010

Мне очень нравится Markdown (возможно, из-за SO), и мне нравится программировать на Haskell.Недавно я обнаружил Literate Haskell (LHS), и я хочу использовать Markdown и LHS вместе.Позвольте мне привести этот тупой пример:

Crazy Literate Haskell
======================

This is an example of some literate Haskell Code:

> module Main where

Look at that IO Monad work:

> main = return 2 >>= print

Wasn't that cool?

Это пример грамотного файла на Haskell, написанного для последующего анализа Markdown.Тем не менее, я хочу, чтобы код действительно отображался в HTML-блоках кода и без> перед ними.Поэтому я не могу просто сделать отступ всех строк кода на четыре, потому что это приведет к уценке, которую вы видите выше.По сути, я хочу, чтобы html получился таким:

<h1>Crazy Literate Haskell</h1>

<p>This is an example of some literate Haskell Code:</p>

<pre><code>module Main where

Посмотрите на работу IO Monad:

main = return 2 &gt;&gt;= print

Разве это не круто?1014 *

Следует отметить, что в нем нет символов.Как бы я это сделал?

1 Ответ

17 голосов
/ 13 августа 2010

Использование Pandoc .У него есть режим markdown + lhs для использования markdown в литеральных файлах на Haskell, и если вам не нравится созданный html, есть api для изменения структуры документа.1007 *

Установите его с

cabal install pandoc
...