aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc
AgeCommit message (Collapse)AuthorFilesLines
2017-04-18Lua: drop useless filter function type parameterAlbert Krewinkel1-28/+20
The return-type parameter for lua filter functions is removed. It only complicated the code without introducing any additional type safety.
2017-04-16Org reader: allow emphasized text to be followed by `[`Albert Krewinkel1-1/+1
Closes: #3577
2017-04-16Read image size of Inkscape SVGs (#3580)schrieveslaach1-4/+4
2017-04-16Org reader: convert markup at beginning of footnotesAlbert Krewinkel1-1/+1
Closes: #3576
2017-04-15Lua filter: revert to non-destructuring filtersAlbert Krewinkel1-66/+46
We want to provide an interface familiar to users of other filtering libraries.
2017-04-15Small fix to error reporting in App.John MacFarlane1-4/+2
Closes #3548.
2017-04-15Avoid parsing "Notes:**" as a bare URI.John MacFarlane1-0/+2
This avoids parsing bare URIs that start with a scheme + colon + `*`, `_`, or `]`. Closes #3570.
2017-04-15Error: Added PandocCouldNotFindDataFileError.John MacFarlane3-7/+9
Use this instead of PandocAppError when appropriate. Removed exit code from PandocAppError, use 1 for all.
2017-04-15Fixed shadowing warningsJohn MacFarlane1-5/+5
2017-04-15Docx reader: removed readDocxWithWarnings (API change).John MacFarlane1-9/+1
No longer necessary with pandoc 2.0 framework.
2017-04-15App: use PandocOptionError instead of PandocAppError where appropriate.John MacFarlane1-16/+16
2017-04-15Error: Added PandocFilterError.John MacFarlane2-8/+7
2017-04-15Error: Added PandocPDFErrorJohn MacFarlane2-1/+3
2017-04-15Text.Pandoc.Error: added new constructors.John MacFarlane2-9/+13
- PandocSyntaxMapError String - PandocFailOnWarningError - PandocPDFProgramNotFoundError String
2017-04-15Revised error message for pandoc -t pdf.John MacFarlane1-4/+4
2017-04-15Lua filter: use Attributes constructor for AttrsAlbert Krewinkel1-14/+26
Element attributes are pushed to the stack via the `Attributes` function. `Attributes` creates an Attr like triple, but the triple also allows table-like access to key-value pairs.
2017-04-14Lua filter: allow shorthand functions for math and quotedAlbert Krewinkel1-3/+23
Allow to use functions named `SingleQuoted`, `DoubleQuoted`, `DisplayMath`, and `InlineMath` in filters.
2017-04-14Lua filter: Re-order code of stack value instancesAlbert Krewinkel1-106/+122
2017-04-14Lua filter: use lua strings for nullary constructorsAlbert Krewinkel1-80/+19
Lua string are used to represent nullary data constructors. The previous table-based representation was based on the JSON serialization, but can be simplified. This also matches the way those arguments are passed to custom writers.
2017-04-14Avoid repeating StackValue instances definitionsAlbert Krewinkel4-156/+165
The lua filters and custom lua writer system defined very similar StackValue instances for strings and tuples. These instance definitions are extracted to a separate module to enable sharing.
2017-04-14Extract lua helper functions into Lua.Util moduleAlbert Krewinkel4-131/+151
2017-04-14Use lua bools and strings for MetaBool, MetaStringAlbert Krewinkel1-2/+2
Native lua booleans and strings are used to represent MetaBool and MetaString values. This is more natural than the previous table-based representation. The old lua representation can still be read back to haskell, ensuring compatibility with the `pandoc.MetaBool` and `pandoc.MetaString` lua constructors.
2017-04-14Lua filter: use destructured functions for block filtersAlbert Krewinkel1-17/+23
Filtering functions take element components as arguments instead of the whole block elements. This resembles the way elements are handled in custom writers.
2017-04-14Drop dependency on hslua-aesonAlbert Krewinkel2-19/+15
Pushing values to the lua stack via custom functions is faster and more flexible.
2017-04-14Push blocks via lua constructors and constantsAlbert Krewinkel1-37/+102
All element creation tasks are handled by lua functions defined in the pandoc module.
2017-04-14Push inlines via lua constructors and constantsAlbert Krewinkel1-41/+29
All element creation tasks are handled in the lua module.
2017-04-13Use lua constructors to push meta valuesAlbert Krewinkel2-32/+150
2017-04-12Lua filter: use destructured functions for inline filtersAlbert Krewinkel1-33/+58
Instead of taking the whole inline element, forcing users to destructure it themselves, the components of the elements are passed to the filtering functions.
2017-04-14s/safed/saved/Alexander Krotov1-1/+1
2017-04-12Man writer: Fix handling of nested font commands.John MacFarlane1-9/+37
Previously pandoc emitted incorrect markup for bold + italic, for example, or bold + code. Closes #3568.
2017-04-11Lua filter: use custom StackValue Inline instanceAlbert Krewinkel2-27/+156
Inline elements are no longer pushed and pulled via aeson's Value.
2017-04-10Docx writer: don't take "distArchive" from datadir.John MacFarlane1-2/+3
The docx writer takes components from the distribution's version of reference.docx when it can't find them in a user's custom reference.docx. (This sometimes happens because Word will sometimes omit components needed for larger documents when saving a simple one.) Previously, we allowed a reference.docx in the data directory (e.g. `~/.pandoc`) to be used as the distribution's reference.docx. This led to a bizarre situation where pandoc would produce a good docx using `--template ~/.pandoc/ref.docx`, but if `ref.docx` were moved to `~/.pandoc/reference.docx`, it would then produce a corrupted docx. Closes #3322 (I think).
2017-04-07Lua filter: improve doc filter performanceAlbert Krewinkel1-36/+47
Pandoc elements are pushed and pulled from the lua stack via custom instances.
2017-04-06Lua filter: Improve block filter performanceAlbert Krewinkel1-7/+44
Reading of simple block values from the lua stack is handled manually, but most block constructors are still handled via instances of aeson's Value type.
2017-04-06Lua filter: Improve inline filter performanceAlbert Krewinkel1-7/+73
Getting inline instances from the lua stack is handled manually for some simple inline constructors, including the `Str` constructor. This avoids the indirect route through aeson's Value type and improves performance considerably (approx. 30% speedup for some filters).
2017-04-04Use lua registry instead of named globalsAlbert Krewinkel1-5/+11
This is slightly cleaner while keeping performance approximately the same.
2017-04-06Ms writer: wider indents for lists.John MacFarlane1-5/+6
Previously some indents weren't wide enough, leading the list item to start on a line after the marker.
2017-04-06Allow raw latex commands starting with `\start` in Markdown.John MacFarlane1-1/+2
Previously these weren't allowed because they were interpreted as starting ConTeXt environments, even without a corresponding \stop... Closes #3558.
2017-04-05Ms writer: respect text wrapping options.John MacFarlane1-1/+6
2017-04-04Ms writer improvements:John MacFarlane1-4/+3
- added some variables to the default template. - cleaner output for images (stringify alt text).
2017-04-04Ms writer: ensure that @ is escaped in URIs.John MacFarlane1-1/+5
Otherwise we may get unescaped @s that give eqn fits, with @ as the delimiter character.
2017-04-04Error: Added PandocOptionError.John MacFarlane2-1/+3
2017-04-04Add original classes to JS obfuscated links (#3554)Timm Albers1-1/+4
HTML links containing classes originally now preserve them when using javascript email obfuscation. Fixes #2989
2017-04-03Add class to footnote back referencesTimm Albers1-1/+1
The HTML writer now also adds the class footnoteBack to back references of footnotes. This allows for easier CSS styling.
2017-04-03Include \VerbatimFootnotes for highlighted code blocksTimm Albers1-2/+5
Updated the LaTeX writer to also include \VerbatimFootnotes in the preamble for highlighted code blocks. Previously this was only done for raw code blocks.
2017-04-03Removed unused import.John MacFarlane1-1/+0
2017-04-03Merge pull request #3550 from tarleb/lua-readers-submoduleJohn MacFarlane3-30/+150
Lua module: add readers submodule
2017-04-02Make sure docx/_rels/.rels gets into data files.John MacFarlane1-1/+5
embedDir in file-embed excludes hidden files, so we need to add this manually.
2017-04-02Revert "Revert "Use file-embed instead of hsb2hs to embed data files.""John MacFarlane1-4/+5
This reverts commit 1fa15c225b515e1fa1c6566f90f1be363a4d770f.
2017-04-02Text.Pandoc.App: Throw errors rather than exiting.John MacFarlane4-55/+68
These are caught (and lead to exit) in pandoc.hs, but other uses of Text.Pandoc.App may want to recover in another way. Added PandocAppError to PandocError (API change). This is a stopgap: later we should have a separate constructor for each type of error. Also fixed uses of 'exit' in Shared.readDataFile, and removed 'err' from Shared (API change). Finally, removed the dependency on extensible-exceptions. See #3548.