[Agda] ANN: PandocAgda 2.4.3
Peter Divianszky
divipp at gmail.com
Wed Feb 25 12:03:56 CET 2015
PandocAgda [1] is a thin wrap around Agda which interprets comments in
literate Agda files as markdown text [2].
The output of PandocAgda is similar to Agda HTML listings files [3], but
with more formatting. An example can be seen in [4].
PandocAgda was rewritten such that it is now just 129 SLOC Haskell lines
in one file [5].
This was possible after some refactoring on the Agda compiler sources.
This means that it will be quite easy to maintain PandocAgda in the future.
PandocAgda is usable right now, but if there is more interest, it can be
improved in the following ways:
A)
PandocAgda could be moved into the agda/agda GitHub repository.
Basically this would add 3 files (PandocAgda.hs [5], PandocAgda.cabal
[6], Agda.template [7]) to the repository and integrating it into the
documentation.
B)
It seems feasible to produce LaTeX output with PandocAgda.
The benefit would be that one could use the LaTeX backend with the Agda
compiler to format Agda source code with lightweight markdown syntax for
formatting comments in Agda source code.
C)
Even it seems feasible to fully integrate Pandoc into PandocAgda.
The benefit would be to use Pandoc supported input in Agda source
comments (including markdown, Textile, reStructuredText, HTML, LaTeX,
MediaWiki markup, TWiki markup, Haddock markup, OPML, Emacs Org-mode,
DocBook, txt2tags) and produce Pandoc supported output formats:
plain text, markdown, reStructuredText, XHTML, HTML 5, LaTeX (including
beamer slide shows), ConTeXt, RTF, OPML, DocBook, OpenDocument, ODT,
Word docx, GNU Texinfo, MediaWiki markup, DokuWiki markup, Haddock
markup, EPUB (v2 or v3), FictionBook2, Textile, groff man pages, Emacs
Org-Mode, AsciiDoc, InDesign ICML, and Slidy, Slideous, DZSlides,
reveal.js or S5 HTML slide shows and PDF.
Are you interested in these improvements?
Cheers,
Peter
Links:
[1]: https://github.com/divipp/PandocAgda
[2]: http://johnmacfarlane.net/pandoc/README.html#pandocs-markdown
[3]:
http://wiki.portal.chalmers.se/agda/pmwiki.php?n=Main.HowToGenerateWebPagesFromSourceCode
[4]: http://people.inf.elte.hu/divip/AgdaTutorial/Sets.Recursive.html
[5]: https://github.com/divipp/PandocAgda/blob/master/PandocAgda.hs
[6]: https://github.com/divipp/PandocAgda/blob/master/PandocAgda.cabal
[7]: https://github.com/divipp/PandocAgda/blob/master/data/Agda.template
More information about the Agda
mailing list