aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc
AgeCommit message (Collapse)AuthorFilesLines
2017-06-26Use `table-of-contents` for contents of toc, make `toc` a boolean.John MacFarlane3-6/+18
Changed markdown, rtf, and HTML-based templates accordingly. This allows you to set `toc: true` in the metadata; this previously produced strange results in some output formats. Closes #2872. For backwards compatibility, `toc` is still set to the toc contents. But it is recommended that you update templates to use `table-of-contents` for the toc contents and `toc` for a boolean flag.
2017-06-26Muse writer: fix hlint errors (#3764)Alexander Krotov1-17/+13
2017-06-26LaTeX writer: use BCP47 parser.John MacFarlane1-89/+105
2017-06-26parseBCP47: Parse extensions and private-use as variants.John MacFarlane1-4/+20
Even though officially they aren't. This suffices for our purposes.
2017-06-26minor updates to vimwiki reader. (#3759)Yuchen Pei1-7/+6
- updated comments in Vimwiki.hs to reflect current status of implementation - added vimwiki to trypandoc
2017-06-26Muse reader: fix horizontal rule parsing (#3762)Alexander Krotov1-2/+4
Do not parse 3 dashes as horizontal rule and allow whitespace after rule
2017-06-26Muse reader: simplify para implementation (#3761)Alexander Krotov1-3/+1
2017-06-25BCP47: split toLang from getLang, rearranged types.John MacFarlane4-48/+55
2017-06-25Refactored ConTeXt writer to use BCP47.John MacFarlane2-39/+39
BCP47 - consistent case for BCP47 fields (e.g. uppercase for region).
2017-06-25Moved BCP47 specific functions from Writers.Shared to new module.John MacFarlane5-87/+125
Text.Pandoc.BCP47 (unexported, internal module). `getLang`, `Lang(..)`, `parseBCP47`.
2017-06-25Writers.Shared: improve type of Lang and bcp47 parser.John MacFarlane3-41/+79
Use a real parsec parser for BCP47, include variants.
2017-06-25Fixed log message for InvalidLang.John MacFarlane1-1/+1
2017-06-25Writers.Shared: refactored getLang, splitLang...John MacFarlane4-36/+55
into `Lang(..)`, `getLang`, `parceBCP47`.
2017-06-25Fixed support for `lang` attribute in OpenDocument and ODT writers.John MacFarlane1-20/+15
This improves on the last commit, which didn't work in some important ways. See #1667.
2017-06-25Support `lang` attribute in OpenDocument and ODT writers.John MacFarlane3-18/+72
This adds the required attributes to the temporary styles, and also replaces existing language attributes in styles.xml. Support for lang attributes on Div and Span has also been added. Closes #1667.
2017-06-25Added InvalidLang to LogMessage.John MacFarlane1-0/+7
2017-06-25Text.Pandoc.Writers.Shared: export splitLang.John MacFarlane1-0/+19
2017-06-25Text.Pandoc.Writers.Shared: added getLang.John MacFarlane1-2/+13
2017-06-25Muse reader: Require space before and after '=' for code (#3758)Alexander Krotov1-3/+10
2017-06-24Readers.getReader, Writers.getWriter API change.John MacFarlane4-22/+20
Now these functions return a pair of a reader/writer and an Extensions, instead of building the extensions into the reader/writer. The calling code must explicitly set readerExtensions or writerExtensions using the Extensions returned. The point of the change is to make it possible for the calling code to determine what extensions are being used. See #3659.
2017-06-24Extensions: Monoid instance for Extensions.John MacFarlane1-1/+5
[API change]
2017-06-23Added comment in source.John MacFarlane1-0/+3
2017-06-23Markdown reader: interpret YAML metadata as Inlines when possible.John MacFarlane1-12/+13
If the metadata field is all on one line, we try to interpret it as Inlines, and only try parsing as Blocks if that fails. If it extends over one line (including possibly the `|` or `>` character signaling an indented block), then we parse as Blocks. This was motivated by some German users finding that date: '22. Juin 2017' got parsed as an ordered list. Closes #3755.
2017-06-23Markdown writer: make sure `plain`, `markdown_github`, etc. work for raw.John MacFarlane1-5/+9
Previously only `markdown` worked. Note: currently a raw block labeled `markdown_github` will be printed for any `markdown` format.
2017-06-23HTML writer: make sure html4, html5 formats work for raw blocks/inlines.John MacFarlane1-14/+26
2017-06-23Text.Pandoc.Extensions: Added `Ext_raw_attribute`.John MacFarlane2-9/+37
Documented in MANUAL.txt. This is enabled by default in pandoc markdown and multimarkdown.
2017-06-22EPUB writer: put title_page.xhtml in text/.John MacFarlane1-2/+2
2017-06-22EPUB writer: Fixed various things with new EPUB structure.John MacFarlane1-6/+6
2017-06-22Added `--epub-subdirectory` option.John MacFarlane1-0/+10
This specifies the subdirectory in the OCF container that holds the EPUB specific content. Closes #3720.
2017-06-22Added `writerEpubSubdirectory` to `WriterOptions`.John MacFarlane3-8/+13
[API change] The EPUB writer now takes its EPUB subdirectory from this option. Also added `PandocEpubSubdirectoryError` to `PandocError`. This is raised if the EPUB subdirectory is not all ASCII alphanumerics. See #3720.
2017-06-21Change default EPUB directory structure in OCF container.John MacFarlane1-11/+22
See #3720. We now put all EPUB related content in an EPUB/ subdirectory by default (later this will be configurable). mimetype META-INF/ com.apple.ibooks.display-options.xml container.xml EPUB/ <<--configurable-->> fonts/ <<--static-->> font.otf media/ <<--static-->> cover.jpg fig1.jpg styles/ <<--static-->> stylesheet.css content.opf toc.ncx text/ <<--static-->> ch001.xhtml
2017-06-20Removed an 'error' bomb.John MacFarlane1-1/+4
2017-06-20Writers: adjusted for renderTemplate' changes.John MacFarlane25-47/+51
Now we raise a proper error on template failure.
2017-06-20Odt reader: replaced collectRights with rights from Data.Either.John MacFarlane2-6/+2
2017-06-20Text.Pandoc.Templates: change type of renderTemplate'.John MacFarlane1-10/+14
Now it runs in PandocMonad and raises a proper PandocTemplateError if there are problems, rather than failing with uncatchable 'error'.
2017-06-20Text.Pandoc.Error: added PandocTemplateError.John MacFarlane1-0/+2
2017-06-20Move CR filtering from tabFilter to the readers.John MacFarlane16-100/+115
The readers previously assumed that CRs had been filtered from the input. Now we strip the CRs in the readers themselves, before parsing. (The point of this is just to simplify the parsers.) Shared now exports a new function `crFilter`. [API change] And `tabFilter` no longer filters CRs.
2017-06-20Text.Pandoc.Lua - added DeriveDataTypeable for ghc 7.8.John MacFarlane1-3/+4
2017-06-20Lua: use registry to store function referencesAlbert Krewinkel1-29/+19
Using the registry directly instead of a custom table is cleaner and more efficient. The performance improvement is especially noticable when filtering on frequent elements like Str.
2017-06-20Lua: apply hslint suggestionsAlbert Krewinkel1-33/+32
2017-06-20Removed redundant import.John MacFarlane1-1/+0
2017-06-20App: issue proper errors instead of using 'error'.John MacFarlane1-2/+3
2017-06-20Text.Pandoc.Lua: throw LuaException instead of using 'error'.John MacFarlane2-8/+25
Text.Pandoc.App: trap LuaException and issue a PandocFilterError.
2017-06-20Muse reader: check that headers start at the first column (#3749)Alexander Krotov1-0/+2
2017-06-20Docbook, JATS, TEI writers: print INFO message when omitting interior header.John MacFarlane3-8/+14
This only applies to section headers inside list items, e.g., which were otherwise silently omitted. See #3750.
2017-06-20FB2 writer: don't fail with an error on interior headers (e.g. in list).John MacFarlane1-3/+5
Instead, omit them with an INFO message. Closes #3750.
2017-06-20Fixed footnotes in table captions.John MacFarlane1-16/+18
Note that if the table has a first page header and a continuation page header, the notes will appear only on the first occurrence of the header. Closes #2378.
2017-06-19Tracing: give less misleading line information with parseWithString.John MacFarlane2-3/+9
Previously positions would be reported past the end of the chunk. We now reset the source position within the chunk and report positions "in chunk."
2017-06-19Vimwiki reader: adjusted for changes in trace.John MacFarlane1-5/+3
2017-06-19Separated tracing from logging.John MacFarlane9-39/+40
Formerly tracing was just log messages with a DEBUG log level. We now make these things independent. Tracing can be turned on or off in PandocMonad using `setTrace`; it is independent of logging. * Removed `DEBUG` from `Verbosity`. * Removed `ParserTrace` from `LogMessage`. * Added `trace`, `setTrace` to `PandocMonad`.