aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2018-10-15LaTeX reader: small verbatim mode cleanups.John MacFarlane1-17/+15
2018-10-15LaTeX reader: withVerbatimMode now does nothing if already inJohn MacFarlane1-4/+8
verbatim mode. Previously nested uses wouldn't work properly.
2018-10-15LaTeX reader: simplified type on doMacros'.John MacFarlane2-12/+9
2018-10-15LaTeX reader: small efficiency improvement.John MacFarlane1-1/+2
2018-10-15LaTeX reader: tokenize before pulling tokens,John MacFarlane2-15/+16
rather than after. This has some performance penalty but is more reliable. Closes #4408.
2018-10-15LaTeX reader: more care with verbatim mode in macro definitions.John MacFarlane1-17/+20
This solves some of the issues in #4408, but it is fragile and may introduce new problems. We really need to change the approach fundamentally and expand macros before pulling tokens from the stream, rather than after.
2018-10-15LaTeX reader: more careful placement of withVerbatimMode.John MacFarlane1-14/+16
for macros
2018-10-15LaTeX reader: make macroDef polymorphic and allow in inline context.John MacFarlane1-10/+4
Otherwise we can't parse something like ``` \lowercase{\def\x{Foo}} ``` I have actually seen tex like this in the wild.
2018-10-15LaTeX reader: improved parsing of `\def`, `\let`.John MacFarlane2-27/+41
We now correctly parse: ``` \def\bar{hello} \let\fooi\bar \def\fooii{\bar} \fooi +\fooii \def\bar{goodbye} \fooi +\fooii ```
2018-10-15LaTeX reader: Fix small regression in pattern argumnents...John MacFarlane1-1/+2
introduced in last commit.
2018-10-15More refactoring of LaTeX reader code.John MacFarlane2-34/+37
2018-10-15T.P.R.LaTeX.Parsing: moved more functions.John MacFarlane1-57/+64
2018-10-15LaTeX reader: improve parsing of `\def` argspec.John MacFarlane1-4/+4
2018-10-15T.P.R.LaTeX.Parsing: moved some functions up a level.John MacFarlane1-20/+21
2018-10-15Lua filters: rename ReaderOptions fields, use snake_caseAlbert Krewinkel1-5/+28
Snake case is used in most variable names, using camelCase for these fields was an oversight. A metatable is added to ensure that the old field names remain functional.
2018-10-14LaTeX reader: skip `\PackageError` commands.John MacFarlane1-0/+2
See #4408. But this doesn't fix the issue.
2018-10-14Markdown writer: ensure blank between raw block and normal content.John MacFarlane1-0/+7
Otherwise a raw block can prevent a paragraph from being recognized as such. Closes #4629.
2018-10-14Markdown reader: Fix awkward soft break movements before abbreviations.John MacFarlane1-5/+10
Closes #4635.
2018-10-14Custom writer: provide PANDOC_DOCUMENT instead of Setup functionAlbert Krewinkel1-18/+26
Custom writers have access to the global variable `PANDOC_DOCUMENT`. The variable contains a userdata wrapper around the full pandoc AST and exposes two fields, `meta` and `blocks`. The field content is only marshaled on-demand, performance of scripts not accessing the fields remains unaffected.
2018-10-14Markdown reader: Added updateStrPos in a couple places where needed.John MacFarlane1-1/+2
2018-10-13Custom writer: give full access to doc in optional Setup function (#4967)Albert Krewinkel1-1/+16
Custom writers can specify an optional `Setup` function. The function takes the full Pandoc document as input and should not return any value. Users can use this function to configure the writer depending on the given document's content or its metadata. data/sample.lua: add sample use of Setup function. The change allows to control the image format used to encode the image produced from dot code. Closes #4957
2018-10-13Lua filter internals: push Shared.Element as userdataAlbert Krewinkel1-19/+24
Hierarchical Elements were pushed to Lua as plain tables. This is simple, but has the disadvantage that marshaling is eager: all child elements will be marshaled as part of the object. Using a Lua userdata object instead allows lazy access to fields, causing content marshaling just (but also each time) when a field is accessed. Filters which do not traverse the full element contents tree become faster as a result.
2018-10-12Lua filters: push ListAttributes via constructorAlbert Krewinkel2-2/+17
This ensures that ListAttributes, as present in OrderedList elements, have additional accessors (viz. *start*, *style*, and *delimiter*).
2018-10-11HTML reader: fix htmlTag and isInlineTag to accept processing instructions.John MacFarlane1-8/+10
Fixes regression #3123 (since 2.0). Added regression test.
2018-10-11Muse reader internals: don't use "choice" with static listAlexander Krotov1-18/+16
2018-10-11Muse reader: use indentWith to parse indentationAlexander Krotov1-2/+2
2018-10-11Muse reader: move museInPara from state to environmentAlexander Krotov1-34/+25
2018-10-10Pandoc.Parsing: rewrite nonspaceChar using noneOfAlexander Krotov1-1/+1
2018-10-10Vimwiki reader: get rid of F, runF and stateMeta' in favor of stateMetaAlexander Krotov1-6/+6
2018-10-10Muse reader internals: merge link and explicit link parsers into one functionAlexander Krotov1-13/+5
2018-10-10Muse reader: rewrite code parser in applicative styleAlexander Krotov1-8/+5
2018-10-10Muse reader: fix parsing of empty cellsAlexander Krotov1-1/+1
2018-10-10Reimplement mapLeft using Bifunctor.firstAlexander Krotov1-2/+2
2018-10-10Muse reader: simplify table parsingAlexander Krotov1-10/+6
2018-10-09Docx writer: added framework for custom properties.John MacFarlane2-1/+21
So far, we don't actually write any custom properties, but we have the infrastructure to add this. See #3034.
2018-10-09Get rid of mapLeft in Muse readerAlexander Krotov1-3/+3
2018-10-09hlint Muse writerAlexander Krotov1-4/+4
2018-10-09Muse reader: rewrite parseHtmlContent, verseTag and lineBlock in applicative ↵Alexander Krotov1-18/+12
style
2018-10-09Get rid of unnecessary bind "res"Alexander Krotov1-2/+1
2018-10-08LaTeX writer with `--listings`: don't pass through org-babel attributes.John MacFarlane1-1/+4
So far: just, tangle, exports, results which are used by org mode. It might be better to use a whitelist of legal listings attributes, but there are a large number, and these may change. Closes #4889.
2018-10-08Add helpful suggestion to missing title warning.John MacFarlane1-1/+2
Tell users what to add to the command line to avoid the warning. Closes #4909.
2018-10-08LaTeX writer: with `--biblatex`, use `\autocite` when possible.John MacFarlane1-13/+21
`\autocites{a1}{a2}{a3}` will not collapse the entries. So, if we don't have prefixes and suffixes, we use instead `\autocite{a1;a2;a3}`. Closes #4960.
2018-10-08ODT writer: improve metadata.John MacFarlane1-7/+26
- Author, date added to metadata. - Remaining metadata properties (besides author, date, title, lang) are added as meta:user-defined tags.
2018-10-07Docx writer: handle tables in table cells.John MacFarlane1-2/+7
Although this is not documented in the spec, some versions of Word require a 'w:p' element inside every table cell. Thus, we add one when the contents of a cell do not already include one (e.g. when a table cell contains a table). Closes #4953.
2018-10-07RST reader: don't allow single-dash separator in headerless table.John MacFarlane1-1/+3
Closes #4382.
2018-10-07LaTeX reader: fix bugs omitting raw tex.John MacFarlane1-2/+7
The default is `-raw_tex`, so no raw tex should result unless we explicitly say `+raw_tex`. Previously some raw commands did make it through. Closes #4527.
2018-10-07RST reader: pass through fields in unknown directives as div attributes.John MacFarlane1-17/+20
This commit also adds support for `class` and `name` attributes to directives in general. Closes #4715.
2018-10-07Revert export of hasSimpleCells from T.P.Writers.Shared.John MacFarlane1-18/+0
This wasn't necessary.
2018-10-06RST writer: use simple tables when possible.John MacFarlane2-4/+52
Closes #4750. Text.Pandoc.Writers.Shared now exports hasSimpleCells [API change].
2018-10-06Moved Haddock comment in Muse readerAlexander Krotov1-4/+3