summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* HTML reader: Ensure that paragraphs are closed properly...John MacFarlane2017-07-11
| | | | | | when the parent block element closes, even without `</p>`. Closes #3794.
* COPYRIGHT: clarify that pandoc-types is BSD3 licensed.John MacFarlane2017-07-10
|
* COPYRIGHT: clarify that templates are dual-licensed.John MacFarlane2017-07-10
|
* Use takeP in LaTeX reader.John MacFarlane2017-07-07
|
* Parsing: added takeP, takeWhileP for efficient parsing of [Char].John MacFarlane2017-07-07
|
* Rewrote LaTeX reader with proper tokenization.John MacFarlane2017-07-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This rewrite is primarily motivated by the need to get macros working properly. A side benefit is that the reader is significantly faster (27s -> 19s in one benchmark, and there is a lot of room for further optimization). We now tokenize the input text, then parse the token stream. Macros modify the token stream, so they should now be effective in any context, including math. Thus, we no longer need the clunky macro processing capacities of texmath. A custom state LaTeXState is used instead of ParserState. This, plus the tokenization, will require some rewriting of the exported functions rawLaTeXInline, inlineCommand, rawLaTeXBlock. * Added Text.Pandoc.Readers.LaTeX.Types (new exported module). Exports Macro, Tok, TokType, Line, Column. [API change] * Text.Pandoc.Parsing: adjusted type of `insertIncludedFile` so it can be used with token parser. * Removed old texmath macro stuff from Parsing. Use Macro from Text.Pandoc.Readers.LaTeX.Types instead. * Removed texmath macro material from Markdown reader. * Changed types for Text.Pandoc.Readers.LaTeX's rawLaTeXInline and rawLaTeXBlock. (Both now return a String, and they are polymorphic in state.) * Added orgMacros field to OrgState. [API change] * Removed readerApplyMacros from ReaderOptions. Now we just check the `latex_macros` reader extension. * Allow `\newcommand\foo{blah}` without braces. Fixes #1390. Fixes #2118. Fixes #3236. Fixes #3779. Fixes #934. Fixes #982.
* Logging: added MacroAlreadyDefined.John MacFarlane2017-07-06
|
* MANUAL: document ibooks specific epub metadata.John MacFarlane2017-06-30
|
* Allow ibooks-specific metadata in epubs. Closes #2693.John MacFarlane2017-06-30
| | | | | | | | | | | | | | | | | | You can now have the following fields in your YAML metadata, and it will be treated appropriately in the generated EPUB. ``` ibooks: version: 1.3.4 specified-fonts: false ipad-orientation-lock: portrait-only iphone-orientation-lock: landscape-only binding: true scroll-axis: vertical ``` This commit also fixes a regression in stylesheet paths.
* Updated stack.pkg.yaml.John MacFarlane2017-06-30
|
* Removed `hard_line_breaks` extension from `markdown_github`.John MacFarlane2017-06-30
| | | | | | | | | | | | | GitHub has two Markdown modes, one for long-form documents like READMEs and one for short things like issue coments. In issue comments, a line break is treated as a hard line break. In README, wikis, etc., it is treated as a space as in regular Markdown. Since pandoc is more likely to be used to convert long-form documents from GitHub Markdown, `-hard_line_breaks` is a better default. Closes #3594.
* Make `east_asian_line_breaks` affect all readers/writers.John MacFarlane2017-06-30
| | | | Closes #3703.
* Updated jats tests for new texmath version.John MacFarlane2017-06-30
|
* Use latest texmath.John MacFarlane2017-06-30
|
* Markdown writer: Ensure that `+` and `-` are escaped properly...John MacFarlane2017-06-30
| | | | | | | so they don't cause spurious lists. Previously they were only if succeeded by a space, not if they were at end of line. Closes #3773.
* Added parameter for user data directory to runLuaFilter.John MacFarlane2017-06-29
| | | | | | | | | | in Text.Pandoc.Lua. Also to pushPandocModule. This change allows users to override pandoc.lua with a file in their local data directory, adding custom functions, etc. @tarleb, if you think this is a bad idea, you can revert this. But in general our data files are all overridable.
* data/pandoc.lua: regularize constructors.John MacFarlane2017-06-29
| | | | | | We now use Pandoc instead of Doc (though Doc remains a deprecated Synonym), and we deprecate DoubleQuoted, SingleQuoted, InlineMath, and DisplayMath.
* Text.Pandoc.Lua: more code simplification.John MacFarlane2017-06-29
| | | | | | | | Also, now we check before running walkM that the function table actually does contain something relevant. E.g. if your filter just defines Str, there's no need to run walkM for blocks, meta, or the whole document. This should help performance a bit (and it does, in my tests).
* Lua filters: Remove special treatment of Quoted, Math.John MacFarlane2017-06-29
| | | | | | No more SingleQuoted, DoubleQuoted, InlineMath, DisplayMath. This makes everything uniform and predictable, though it does open up a difference btw lua filters and custom writers.
* Text.Pandoc.Lua: refactored to remove duplicated code.John MacFarlane2017-06-29
|
* Text.Pandoc.Lua: use generics to reduce boilerplate.John MacFarlane2017-06-29
| | | | | | | | | | | I tested this with the str.lua filter on MANUAL.txt, and I could see no significant performance degradation. Doing things this way will ease maintenance, as we won't have to manually modify this module when types change. @tarleb, do we really need special cases for things like DoubleQuoted and InlineMath?
* Added link-table example to doc/lua-filters.md.John MacFarlane2017-06-28
|
* Make `papersize: a4` work regardless of the case of `a4`.John MacFarlane2017-06-28
| | | | It is converted to `a4` in LaTeX and `A4` in ConTeXt.
* LaTeX template: added `natbiboptions` variable.John MacFarlane2017-06-28
| | | | Closes #3768.
* Muse reader: parse indented blockquotes (#3769)Alexander Krotov2017-06-28
|
* LaTeX writer: fixed detection of otherlangs.John MacFarlane2017-06-28
| | | | | | We weren't recursing into inline contexts. Closes #3770.
* Text.Pandoc.Lua: catch lua errors in filter functionsAlbert Krewinkel2017-06-27
| | | | Replace lua errors with `LuaException`s.
* Text.Pandoc.Lua: keep element unchanged if filter returns nilAlbert Krewinkel2017-06-27
| | | | | This was suggested by jgm and is consistent with the behavior of other filtering libraries.
* Text.Pandoc.Lua: simplify filter function runnerAlbert Krewinkel2017-06-27
| | | | | | | The code still allowed to pass an arbitrary number of arguments to the filter function, as element properties were passed as function arguments at some point. Now we only pass the element as the single arg, so the code to handle multiple arguments is no longer necessary.
* data/pandoc.lua: add accessors to Table elementsAlbert Krewinkel2017-06-27
|
* Require nonempty alt text for `implicit_figures`.John MacFarlane2017-06-27
| | | | | | A figure with an empty caption doesn't make sense. Closes #2844.
* RST reader: support anchors.John MacFarlane2017-06-27
| | | | | | | | | | | | | | | E.g. `hello` .. _hello: paragraph This is supported by putting "paragraph" in a Div with id `hello`. Closes #262.
* RST reader: Handle chained link definitions.John MacFarlane2017-06-27
| | | | | | | | | | | For example, .. _hello: .. _goodbye: example.com Here both `hello` and `goodbye` should link to `example.com`. Fixes the first part of #262.
* Docx writer: Allow 9 list levels.John MacFarlane2017-06-27
| | | | Closes #3519.
* Removed redundant element from data/docx/word/numbering.xml.John MacFarlane2017-06-27
| | | | | The elements we need are generated when the document is compiled; this didn't do anything.
* HTML reader: Use the lang value of <html> to set the lang meta value. (#3765)bucklereed2017-06-27
| | | | | | * HTML reader: Use the lang value of <html> to set the lang meta value. * Fix for pre-AMP environments.
* OpenDocument/ODT writer: Added support for table of contents.John MacFarlane2017-06-26
| | | | | | Closes #2836. Thanks to @anayrat.
* Support `--toc` in `opendocument`/`odt`.John MacFarlane2017-06-26
|
* Use `table-of-contents` for contents of toc, make `toc` a boolean.John MacFarlane2017-06-26
| | | | | | | | | | | | | | 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.
* Muse writer: fix hlint errors (#3764)Alexander Krotov2017-06-26
|
* LaTeX writer: use BCP47 parser.John MacFarlane2017-06-26
|
* parseBCP47: Parse extensions and private-use as variants.John MacFarlane2017-06-26
| | | | | Even though officially they aren't. This suffices for our purposes.
* minor updates to vimwiki reader. (#3759)Yuchen Pei2017-06-26
| | | | | - updated comments in Vimwiki.hs to reflect current status of implementation - added vimwiki to trypandoc
* Muse reader: fix horizontal rule parsing (#3762)Alexander Krotov2017-06-26
| | | Do not parse 3 dashes as horizontal rule and allow whitespace after rule
* Muse reader: simplify para implementation (#3761)Alexander Krotov2017-06-26
|
* BCP47: split toLang from getLang, rearranged types.John MacFarlane2017-06-25
|
* Refactored ConTeXt writer to use BCP47.John MacFarlane2017-06-25
| | | | | BCP47 - consistent case for BCP47 fields (e.g. uppercase for region).
* Moved BCP47 specific functions from Writers.Shared to new module.John MacFarlane2017-06-25
| | | | | Text.Pandoc.BCP47 (unexported, internal module). `getLang`, `Lang(..)`, `parseBCP47`.
* Writers.Shared: improve type of Lang and bcp47 parser.John MacFarlane2017-06-25
| | | | Use a real parsec parser for BCP47, include variants.
* Fixed log message for InvalidLang.John MacFarlane2017-06-25
|