aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Readers
AgeCommit message (Collapse)AuthorFilesLines
2018-10-28Roff tokenizer: handle e.g. `\*n`.John MacFarlane1-1/+1
2018-10-28Roff tokenizer: better handling of escapes.John MacFarlane1-10/+39
2018-10-28Roff reader: introduce normal/copy mode distinction.John MacFarlane1-4/+33
2018-10-28Roff reader: use escapeArg in macroArg.John MacFarlane1-3/+8
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-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 MacFarlane2-76/+76
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-26Groff tokenizer: Allow line comments between table rows.John MacFarlane1-0/+6
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-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.
2018-10-25Groff tokenizer: make TableFormat a structured type.John MacFarlane1-7/+21
2018-10-25Groff tokenizer: introduced type synonym for TableFormat.John MacFarlane1-3/+5
2018-10-25Groff tokenizer: Add structured repr of table options.John MacFarlane2-12/+12
2018-10-25Implemented groff table lexing.John MacFarlane2-80/+162
We don't yet actually parse the tables in man, but most of the hard work is done. Also: Export lexGroff from T.P.Readers.Groff, instead of lower-level definitions. Rename things in T.P.Readers.Groff as `*Groff` rather than `*Man`.
2018-10-25Groff reader: got `\f[]` working properly.John MacFarlane2-4/+8