aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2018-10-28Roff tokenizer: refactor escString.John MacFarlane1-15/+6
2018-10-28Roff tokenizer: revamped font parsing using escapeArg.John MacFarlane1-62/+59
Add support for \C'...' escapes.
2018-10-28Roff tokenizer: abstract out patterns: escapeArg, quoteArg.John MacFarlane1-27/+27
2018-10-28Roff tokenizer: allow space before ( in table options.John MacFarlane1-1/+2
2018-10-28EPUB writer: use metadata field `css` instead of `stylesheet`mb211-3/+4
closes #4990
2018-10-28T.P.Filter: centralize filter path expansionAlbert Krewinkel3-12/+16
2018-10-28T.P.Lua: expose more useful internals (API change)Albert Krewinkel5-30/+37
Newly exported from Text.Pandoc.Lua: - `runFilterFile` to run a Lua filter from file; - data type `Global` and its constructors; and - `setGlobals` to add globals to a Lua environment. This module also contains `Pushable` and `Peekable` instances required to get pandoc's data types to and from Lua. Low-level Lua operation remain hidden in Text.Pandoc.Lua.
2018-10-28T.P.Lua: rename `runPandocLua` to `runLua` (API change)Albert Krewinkel4-9/+9
2018-10-28T.P.Lua: merge runLuaFilter into T.P.Filter.Lua (API change)Albert Krewinkel3-52/+42
The function `runLuaFilter` was only used in Text.Pandoc.Filter.Lua, use apply from the that module instead.
2018-10-28Man reader: improved code blocks as continuation in list items.John MacFarlane1-5/+7
2018-10-28Man reader: allow both .in and .IP to indent code block.John MacFarlane1-1/+2
2018-10-28Man reader: skip .in used for indentation of code.John MacFarlane1-1/+2
2018-10-28Man reader: .PP in code blocks as blank line.John MacFarlane1-0/+1
2018-10-28Man reader: handle inline macros like .BI in code blocks.John MacFarlane1-38/+58
The font changes are discarded, but at least we keep the text.
2018-10-28Hlint changes.John MacFarlane2-10/+9
2018-10-28Roff tokenizer: better handling of table format strings.John MacFarlane1-8/+10
Particularly f and m, which require a space after their argument. Also, allow space before numerical arguments, as in his example from stty.1: ``` .TS center tab(@) box; cB cB | cB cB | cB cB lf5 2 l 6 | lf5 2 l 6 | lf5 2 l. \&^c@Value@^c@Value@^c@Value ```
2018-10-27Man reader: allow block-level content in table cells.John MacFarlane1-8/+25
Closes #5028.
2018-10-28Muse reader: try to parse lists before trying to parse tableAlexander Krotov1-3/+3
This ensures that tables inside lists are parsed correctly.
2018-10-27Muse reader: forbid whitespace after opening and before closing markup elementsAlexander Krotov1-4/+16
See https://github.com/melmothx/text-amuse/issues/44 for discussion on these rules
2018-10-27Revert "Roff tokenizer: use Seq for lineparts rather than lists."John MacFarlane1-44/+42
This reverts commit 3a5726b2cf9cdb511635209d412ccb8c50f14d6d.
2018-10-27Revert "Roff reader: use LineParts abstraction."John MacFarlane2-74/+64
This reverts commit 42ba3c0a0b15fddd51e6a4b79882ddaeccf0eb3d.
2018-10-27Roff reader: use LineParts abstraction.John MacFarlane2-64/+74
This didn't really help performance in the end.
2018-10-27Roff tokenizer: use Seq for lineparts rather than lists.John MacFarlane1-42/+44
This didn't make much measurable difference (compiled w/o optimizations), but it still seems worth doing. Eventually we may want an abstraction like RoffTokens for LineParts.
2018-10-27Remove old comment.John MacFarlane1-5/+4
2018-10-27Roff tokenizer: allow digit suffix in table cell format in any order.John MacFarlane1-11/+10
Closes #5026.
2018-10-27Roff tokenizer: check for first-column before parsing macro.John MacFarlane2-6/+10
Also add SourcePos as argument to lexRoff, so we can pass in current source pos when parsing a table cell. Closes #5025.
2018-10-27Man reader: don't throw an error if a table cell can't be parsed...John MacFarlane1-1/+1
as inlines. Instead, just have the parser fail. See #5026.
2018-10-27Man reader: allow .nf to be implicitly closed by eof.John MacFarlane1-3/+5
2018-10-27Roff reader: allow table options to be empty.John MacFarlane1-1/+1
Partially addresses #5026.
2018-10-26Roff tokenizer: further table format spec parsing improvements.John MacFarlane1-1/+3
2018-10-26Roff tokenizer: allow spaces after table row format spec.John MacFarlane1-1/+1
2018-10-26Roff tokenizer: allow . on next line after table format spec.John MacFarlane1-1/+1
2018-10-26Roff tokenizer: better handling of font inlines `\f`....John MacFarlane1-7/+4
2018-10-26Roff tokenizer: allow eof in some places we allowed only newline.John MacFarlane1-3/+3
2018-10-26Roff tokenizer: skip .sp in tables.John MacFarlane1-1/+2
2018-10-26Rename Groff -> Roff.John MacFarlane6-84/+84
Module T.P.Readers.Groff -> T.P.Readers.Roff Module T.P.Writers.Groff -> T.P.Writers.Roff Module T.P.GroffChar -> T.P.RoffChar GroffTokens -> RoffTokens GroffToken -> RoffToken.
2018-10-26Groff tokenizer: introduce TableRow type, handle .T&.John MacFarlane2-23/+41
Closes #5020.
2018-10-26Text.Pandoc.Lua: move globals handling to separate moduleAlbert Krewinkel4-69/+144
2018-10-26Always preserve tabs for man format.John MacFarlane1-1/+3
We need it for tables.
2018-10-26Groff tokenizer: Allow line comments between table rows.John MacFarlane1-0/+6
2018-10-26Man writer: don't wrap .SH and .SS lines.John MacFarlane1-1/+1
Closes #5019.
2018-10-26Muse reader: parse page breaksAlexander Krotov1-1/+9
2018-10-25Man reader: allow empty simple table cells.John MacFarlane2-3/+5
2018-10-25Man reader: be more forgiving with table options.John MacFarlane1-1/+2
2018-10-25Man reader: be more forgiving when parsing tables.John MacFarlane1-3/+4
We now look only at the last row of the format specifiers, if there is more than one row. (This is the default.)
2018-10-25Groff tokenizer: handle `\s+2`, etc.John MacFarlane1-1/+1
2018-10-25Man reader: be more forgiving in parsing table format spec.John MacFarlane1-4/+3
2018-10-25Man reader: support tables.John MacFarlane1-15/+16
Closes #4982.
2018-10-25Lua: allow access to pandoc state (#5015)Albert Krewinkel2-6/+95
* Lua: allow access to pandoc state Lua filters and custom writers now have read-only access to most fields of pandoc's internal state via the global variable `PANDOC_STATE`. * Lua: allow iterating through fields of PANDOC_STATE * Lua filters doc: describe CommonState * Lua filters doc: mention global variable PANDOC_STATE * Lua: add access to logs Log messages can currently only be printed, but not decomposed.
2018-10-25Man reader: handle tables.John MacFarlane1-17/+63
This still needs a bit of work. In particular, we should try to produce Plain cells when possible. See #4982.