aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc
AgeCommit message (Collapse)AuthorFilesLines
2017-11-21Change Generic JSON instances to TemplateHaskell (#4085)Jasper Van der Jeugt2-51/+22
2017-11-21Add comment explaining why TH is used in Text.Pandoc.App.John MacFarlane1-0/+2
2017-11-21Change JSON instances for Opt to TemplateHaskell (#4083)Jasper Van der Jeugt1-10/+6
The `Generic` JSON instances for `Text.Pandoc.App.Opt` seem to tickle a particulary bad quadratic complexity case (Generics complexity is worse than quadratic with respect to the number of fields in the datatype). This is with GHC-8.2.1, I didn't test it using 8.0 but I assume it is similar. Using `Generic`, compilation of the `Text.Pandoc.App` module takes minutes and often gets killed due to out of memory on slower machines with "only" 8GB of accessible memory. This is particularly annoying to me since it means I cannot build pandoc on Travis. TemplateHaskell is a little uglier, but the module seems to compile within a few seconds, and compilation doesn't take more than 1GB of memory. Should I also change the other JSON instances throughout the codebase for consistency?
2017-11-21Muse reader: add inline <literal> supportAlexander Krotov1-0/+11
2017-11-21Muse reader: chop newlines after <literal> and before </literal>Alexander Krotov1-9/+13
2017-11-21Muse reader: <literal> has "style" attribute, not "format"Alexander Krotov1-1/+2
2017-11-21Recognize ".muse" file extensionAlexander Krotov1-0/+2
2017-11-19Allow spaces after `\(` and before `\)` with `tex_math_single_backslash`.John MacFarlane1-2/+2
Previously `\( \frac{1}{a} < \frac{1}{b} \)` was not parsed as math in `markdown` or `html` `+tex_math_single_backslash`.
2017-11-19Muse reader: count only one space as part of list item markerAlexander Krotov1-2/+2
2017-11-19Muse reader: produce SoftBreaks on newlinesAlexander Krotov1-18/+28
Now wrapping can be preserved with --wrap=preserve
2017-11-18HTML reader: ensure we don't produce level 0 headers,John MacFarlane1-5/+5
even for chapter sections in epubs. This causes problems because writers aren't set up to expect these. This fixes the most immediate problem in #4076. It would be good to think more about how to propagate the information that top-level headers are chapters from the reader to the writer.
2017-11-18Lua filters: preload text module (#4077)Albert Krewinkel1-0/+2
The `text` module is preloaded in lua. The module contains some UTF-8 aware string functions, implemented in Haskell. The module is loaded on request only, e.g.: text = require 'text' function Str (s) s.text = text.upper(s.text) return s end
2017-11-18Muse reader: Add Text::Amuse footnote extensionsAlexander Krotov1-6/+29
Footnote end is indicated by indentation, so footnotes can be placed anywhere in the text, not just at the end of it.
2017-11-16Introduce `HasSyntaxExtensions` typeclass (#4074)Alexander2-15/+20
+ Added new `HasSyntaxExtensions` typeclass for `ReaderOptions` and `WriterOptions`. + Reimplemented `isEnabled` function from `Options.hs` to accept both `ReaderOptions` and `WriterOptions`. + Replaced `enabled` from `CommonMark.hs` with new `isEnabled`.
2017-11-15Creole reader: Fix performance issue for longer lists. (#4075)Sascha Wilde1-1/+1
Fixes #4067.
2017-11-14Text.Pandoc.Parsing.uri: allow `&` and `=` as word characters.John MacFarlane1-1/+1
This fixes a bug where pandoc would stop parsing a URI with an empty attribute: for example, `&a=&b=` wolud stop at `a`. (The uri parser tries to guess which punctuation characters are part of the URI and which might be punctuation after it.) Closes #4068.
2017-11-14RST reader: better support for 'container' directive.John MacFarlane1-1/+3
Create a div, incorporate name attribute and classes. Closes #4066.
2017-11-14EPUB writer: Fixed path for cover image.John MacFarlane1-1/+1
It was previously `media/media/imagename`, and should have been `media/imagename`.
2017-11-14EPUB writer: fix paths for cover image.John MacFarlane1-2/+2
Closes #4069.
2017-11-13LaTeX reader: allow optional arguments on `\footnote`.John MacFarlane1-2/+2
Closes #4062.
2017-11-13Markdown writer: fix bug with doubled footnotes in grid tables.John MacFarlane1-12/+22
Closes #4061.
2017-11-13Replace "emacs" extension with "amuse" extensionAlexander Krotov2-2/+5
It makes clear that extension is related to Muse markup.
2017-11-12Fix comment that confuses haddock.John MacFarlane1-1/+1
2017-11-12LaTeX reader: support column specs like `*{2}{r}`.John MacFarlane1-3/+13
This is equivalent to `rr`. We now expand it like a macro. Closes #4056.
2017-11-12LaTeX reader: allow optional args for parbox.John MacFarlane1-1/+1
See #4056.
2017-11-12Muse reader: accept Emacs Muse definition listsAlexander Krotov1-1/+2
Emacs Muse does not require indentation.
2017-11-12Add emacs extensionAlexander Krotov1-0/+1
2017-11-11Functor instance to fix ghc 7.8 warning.John MacFarlane1-1/+1
2017-11-11Add lua filter functions to walk inline and block elements.John MacFarlane3-148/+192
Refactored some code from Text.Pandoc.Lua.PandocModule into new internal module Text.Pandoc.Lua.Filter. Add `walk_inline` and `walk_block` in pandoc lua module.
2017-11-11Fixed YAML metadata with "chomp" (`|-`).John MacFarlane1-2/+2
Previously if a YAML block under `|-` contained a blank line, pandoc would not parse it as metadata.
2017-11-11MediaWiki reader: hlintAlexander Krotov1-13/+13
2017-11-10Txt2Tags reader: hlintAlexander Krotov1-27/+25
2017-11-10Vimwiki reader: hlintAlexander Krotov1-17/+17
2017-11-09Allow fenced code blocks to be indented 1-3 spaces.John MacFarlane1-2/+6
This brings our handling of them into alignment with CommonMark's. Closes #??.
2017-11-10HTML reader: hlintAlexander Krotov1-31/+30
2017-11-08Fix regression with --metadata.John MacFarlane1-4/+10
It should replace a metadata value set in the document itself, rather than creating a list including a new value. Closes #4054.
2017-11-08EPUB writer: fixed modified paths for raw HTML tagsJohn MacFarlane1-2/+2
(src, poster, etc.) This had not been updated for the new EPUB container layout, with a separate text/ subdirectory. Closes #4050. Closes #4055.
2017-11-07Deprecated ancient HTML math methods.John MacFarlane1-24/+38
`--latexmathml`, `--gladtex`, `--mimetex`, `--jsmath`
2017-11-07EPUB writer: fixed EPUB OCF structure.John MacFarlane1-65/+82
The structure of the EPUBs was messed up, and #3720 was improperly implemented. This commit fixes things.
2017-11-07EPUB writer: fix image paths with empty `--epub-subdirectory`.John MacFarlane1-3/+9
2017-11-06Spellcheck commentsAlexander Krotov2-6/+6
2017-11-04Logging: issue INFO, not WARNING, if LaTeX .sty file can't be read.John MacFarlane1-1/+4
Normally this is not a situation requiring a fix from the user, so a warning is inappropriate.
2017-11-04Revert "Better indentation under headers in org mode output."John MacFarlane1-26/+14
This reverts commit 1a81751cef330d875cc34f11cde4a0d478969db7.
2017-11-04Better indentation under headers in org mode output.John MacFarlane1-14/+26
See #4036. Close examination by org experts needed, to ensure that nothing breaks.
2017-11-04Fix strikethrough in gfm writer.John MacFarlane1-1/+1
Previously we got a crash, because we were trying to print a native cmark STRIKETHROUGH node, and the commonmark writer in cmark-github doesn't support this. Work around this by using a raw node to add the strikethrough delimiters. Closes #4038.
2017-11-02Improved support for columns in HTML.John MacFarlane1-5/+2
* Move as much as possible to the CSS in the template. * Ensure that all the HTML-based templates (including epub) contain the CSS for columns. * Columns default to 50% width unless they are given a width attribute. Closes #4028.
2017-11-02Support `lineAnchors` (or `line-anchors`) in code blocks, for HTML.John MacFarlane1-0/+2
2017-11-02Use latest skylighting; ensure no duplicate ids on code lines.John MacFarlane2-5/+16
The line identifiers are built using the code block's identifier as a prefix. If the code block has null identifier, we use "cb1", "cb2", etc. Closes #4031.
2017-11-02Fixed revealjs slide column width issues.John MacFarlane1-2/+7
* Remove "width" attribute which is not allowed on div. * Remove space between `<div class="column">` elements, since this prevents columns whose widths sum to 100% (the space takes up space). Closes #4028.
2017-11-02hlintAlexander Krotov7-28/+25