summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Lua module: provide simple `read` format parserAlbert Krewinkel2017-04-26
| | | | | | A single `read` function parsing pandoc-supported formats is added to the module. This is simpler and more convenient than the previous method of exposing all reader functions individually.
* API change: move writer functions to Text.Pandoc.WritersAlbert Krewinkel2017-04-26
| | | | | | Writer helper functions were defined in the top-level Text.Pandoc module. These functions are moved to the Writer submodule as to enable reuse in other submodules.
* API change: move reader functions to Text.Pandoc.ReadersAlbert Krewinkel2017-04-26
| | | | | | Reader helper functions were defined in the top-level Text.Pandoc module. These functions are moved to the Readers submodule as to enable reuse in other submodules.
* API change: move extension handling to Text.Pandoc.ExtensionsAlbert Krewinkel2017-04-26
| | | | | | Extension parsing and processing functions were defined in the top-level Text.Pandoc module. These functions are moved to the Extensions submodule as to enable reuse in other submodules.
* Lua filter: allow filtering of meta data onlyAlbert Krewinkel2017-04-26
|
* Lua filter: allow natural access to meta elementsAlbert Krewinkel2017-04-26
| | | | | | | | Meta elements that are treated as lua tables (i.e. MetaList, MetaInlines, MetaBlocks, and MetaMap), are no longer wrapped in an additional table but simply marked via a metatable. This allows treating those meta values just like normal tables, while still making empty elements of those values distinguishable.
* LaTeX reader: Add basic support for hyphenat package (#3603)schrieveslaach2017-04-26
|
* Simplify linkText in Text.Pandoc.Readers.TWiki (#3605)Alexander Krotov2017-04-26
| | | | Avoid constructing list of one element ([B.str url]) just to flatten it back with mconcat.
* LaTeX reader: Add support for \vdots (#3607)schrieveslaach2017-04-26
|
* HTML line block: Use class instead of style attribute.John MacFarlane2017-04-25
| | | | | | | | | We now issue `<div class="line-block">` and include a default definition for `line-block` in the default templates, instead of hard-coding a `style` on the div. Closes #1623.
* LaTeX writer: fix error with line breaks after empty content.John MacFarlane2017-04-25
| | | | | | | LaTeX requires something before a line break, so we insert a `~` if no printable content has yet been emitted. Closes #2874.
* LaTeX reader: better support for subfigure package.John MacFarlane2017-04-24
| | | | | | | | A figure with two subfigures turns into two pandoc figures; the subcaptions are used and the main caption ignored, unless there are no subcaptions. Closes #3577.
* TWiki reader: remove unnecessary $ (#3597)Alexander Krotov2017-04-24
|
* Org reader: allow multi-word arguments to src block paramsAlbert Krewinkel2017-04-23
| | | | | | | The reader now correctly parses src block parameter list even if parameter arguments contain multiple words. Closes: #3477
* Org reader: stop adding rundoc prefix to src paramsAlbert Krewinkel2017-04-23
| | | | | | | | | | | Source block parameter names are no longer prefixed with *rundoc*. This was intended to simplify working with the rundoc project, a babel runner. However, the rundoc project is unmaintained, and adding those markers is not the reader's job anyway. The original language that is specified for a source element is now retained as the `data-org-language` attribute and only added if it differs from the translated language.
* Org reader: handle line numbering switch for src blocksAlbert Krewinkel2017-04-23
| | | | | | | The line-numbering switch that can be given to source blocks (`-n` with an start number as an optional parameter) is parsed and translated to a class/key-value combination used by highlighting and other readers and writers.
* HTML reader: Revise treatment of li with id attribute.John MacFarlane2017-04-23
| | | | | | | | | | | | | | | | Previously we always added an empty div before the list item, but this created problems with spacing in tight lists. Now we do this: If the list item contents begin with a Plain block, we modify the Plain block by adding a Span around its contents. Otherwise, we add a Div around the contents of the list item (instead of adding an empty Div to the beginning, as before). Closes #3596.
* Add siunitx Support (#3588)schrieveslaach2017-04-22
| | | | | | | | | | | For example: ```latex \SI[round-precision=2]{1}{m} is equal to \SI{1000}{mm}. \SI[round-precision=2]{1}[\$]{} is equal to \SI{0.938094}{\euro} ```
* Lua: drop useless filter function type parameterAlbert Krewinkel2017-04-18
| | | | | The return-type parameter for lua filter functions is removed. It only complicated the code without introducing any additional type safety.
* Org reader: allow emphasized text to be followed by `[`Albert Krewinkel2017-04-16
| | | | Closes: #3577
* Read image size of Inkscape SVGs (#3580)schrieveslaach2017-04-16
|
* Org reader: convert markup at beginning of footnotesAlbert Krewinkel2017-04-16
| | | | Closes: #3576
* Lua filter: revert to non-destructuring filtersAlbert Krewinkel2017-04-15
| | | | | We want to provide an interface familiar to users of other filtering libraries.
* Small fix to error reporting in App.John MacFarlane2017-04-15
| | | | Closes #3548.
* Avoid parsing "Notes:**" as a bare URI.John MacFarlane2017-04-15
| | | | | | | This avoids parsing bare URIs that start with a scheme + colon + `*`, `_`, or `]`. Closes #3570.
* Error: Added PandocCouldNotFindDataFileError.John MacFarlane2017-04-15
| | | | | Use this instead of PandocAppError when appropriate. Removed exit code from PandocAppError, use 1 for all.
* Fixed shadowing warningsJohn MacFarlane2017-04-15
|
* Docx reader: removed readDocxWithWarnings (API change).John MacFarlane2017-04-15
| | | | No longer necessary with pandoc 2.0 framework.
* App: use PandocOptionError instead of PandocAppError where appropriate.John MacFarlane2017-04-15
|
* Error: Added PandocFilterError.John MacFarlane2017-04-15
|
* Error: Added PandocPDFErrorJohn MacFarlane2017-04-15
|
* Text.Pandoc.Error: added new constructors.John MacFarlane2017-04-15
| | | | | | - PandocSyntaxMapError String - PandocFailOnWarningError - PandocPDFProgramNotFoundError String
* Revised error message for pandoc -t pdf.John MacFarlane2017-04-15
|
* Lua filter: use Attributes constructor for AttrsAlbert Krewinkel2017-04-15
| | | | | | 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.
* Lua filter: allow shorthand functions for math and quotedAlbert Krewinkel2017-04-14
| | | | | Allow to use functions named `SingleQuoted`, `DoubleQuoted`, `DisplayMath`, and `InlineMath` in filters.
* Lua filter: Re-order code of stack value instancesAlbert Krewinkel2017-04-14
|
* Lua filter: use lua strings for nullary constructorsAlbert Krewinkel2017-04-14
| | | | | | | 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.
* Avoid repeating StackValue instances definitionsAlbert Krewinkel2017-04-14
| | | | | | 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.
* Extract lua helper functions into Lua.Util moduleAlbert Krewinkel2017-04-14
|
* Use lua bools and strings for MetaBool, MetaStringAlbert Krewinkel2017-04-14
| | | | | | | | 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.
* Lua filter: use destructured functions for block filtersAlbert Krewinkel2017-04-14
| | | | | | Filtering functions take element components as arguments instead of the whole block elements. This resembles the way elements are handled in custom writers.
* Drop dependency on hslua-aesonAlbert Krewinkel2017-04-14
| | | | | Pushing values to the lua stack via custom functions is faster and more flexible.
* Push blocks via lua constructors and constantsAlbert Krewinkel2017-04-14
| | | | | All element creation tasks are handled by lua functions defined in the pandoc module.
* Push inlines via lua constructors and constantsAlbert Krewinkel2017-04-14
| | | | All element creation tasks are handled in the lua module.
* Use lua constructors to push meta valuesAlbert Krewinkel2017-04-13
|
* Lua filter: use destructured functions for inline filtersAlbert Krewinkel2017-04-12
| | | | | | Instead of taking the whole inline element, forcing users to destructure it themselves, the components of the elements are passed to the filtering functions.
* s/safed/saved/Alexander Krotov2017-04-14
|
* Man writer: Fix handling of nested font commands.John MacFarlane2017-04-12
| | | | | | | Previously pandoc emitted incorrect markup for bold + italic, for example, or bold + code. Closes #3568.
* Lua filter: use custom StackValue Inline instanceAlbert Krewinkel2017-04-11
| | | | Inline elements are no longer pushed and pulled via aeson's Value.
* Docx writer: don't take "distArchive" from datadir.John MacFarlane2017-04-10
| | | | | | | | | | | | | | | | | 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).