LHS e Markdown: CodeBlocks
-
28-09-2019 - |
Pergunta
Por acaso, gosto muito de Markdown (provavelmente por causa disso) e gosto de programar em Haskell. Eu descobri recentemente Literado Haskell (LHS) e eu quero usar o Markdown e o LHS juntos. Deixe -me dar este exemplo idiota:
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?
Esse é um exemplo de um arquivo haskell alfabetizado escrito para ser analisado por Markdown posteriormente. No entanto, eu quero que o código seja realmente aparecer nos blocos de código HTML e sem o> antes deles. Portanto, não posso apenas recuar todas as linhas de código por quatro, porque isso produziria a remarca que você vê acima. Basicamente, quero que o HTML saia assim:
<h1>Crazy Literate Haskell</h1>
<p>This is an example of some literate Haskell Code:</p>
<pre><code>module Main where
</code></pre>
<p>Look at that IO Monad work:</p>
<pre><code>main = return 2 >>= print
</code></pre>
<p>Wasn't that cool?</p>
A coisa a perceber é que não tem> símbolos. Como eu faria isso?
Solução
Usar Pandoc. Tem um Markdown+LHS modo para usar o Markdown em arquivos literais haskell e, se você não gosta do HTML que produz, existe uma API para modificar a estrutura do documento.
Instale com
cabal install pandoc