aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Readers/Man.hs
AgeCommit message (Collapse)AuthorFilesLines
2018-10-27Roff tokenizer: check for first-column before parsing macro.John MacFarlane1-2/+2
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-26Rename Groff -> Roff.John MacFarlane1-19/+19
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 MacFarlane1-11/+12
Closes #5020.
2018-10-25Man reader: allow empty simple table cells.John MacFarlane1-2/+4
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-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: Add structured repr of table options.John MacFarlane1-1/+1
2018-10-25Implemented groff table lexing.John MacFarlane1-23/+28
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 MacFarlane1-0/+1
2018-10-25Man reader: fixed nested emphasis.John MacFarlane1-7/+44
2018-10-24T.P.Readers.Groff: use FontSpec, not list of FontKind.John MacFarlane1-8/+7
2018-10-24Man reader: improve source posiiton info.John MacFarlane1-1/+2
2018-10-24T.P.Readers.Groff: improve LinePart.John MacFarlane1-28/+15
Separate font change and font size change tokens. With this change, emphasis no longer works. This needs to be implemented in the parser, not the lexer.
2018-10-24Added Text.Pandoc.Readers.Groff.John MacFarlane1-465/+6
This is an internal module that exports a tokenizer for groff formats. Closes #4998.
2018-10-23Man reader: Add placeholder for table token.John MacFarlane1-0/+10
2018-10-23Man reader: ALlow empty definition list definitions.John MacFarlane1-2/+2
2018-10-23Man reader: handle implicitly closed RS, nf, EX.John MacFarlane1-8/+13
These are implicitly closed by a new section command. (See e.g. tiffcp.1)
2018-10-23Man reader: handle .if.John MacFarlane1-0/+1
2018-10-23Man reader: ignore `\s` font size changes.John MacFarlane1-0/+10
2018-10-23Man reader: primitive conditional support.John MacFarlane1-6/+37
We skip conditionals in general, except .ie n which is used commonly in man pages to test for nroff. For these we evaluate the 'if' portion. Closes #4996.
2018-10-23Man reader: support .nop.John MacFarlane1-13/+16
2018-10-23Man reader: allow any nonspace char for macro name.John MacFarlane1-2/+3
2018-10-23Man reader: handle \fS as a no-op.John MacFarlane1-0/+1
This changes font, but to what? Can't find in documentation.
2018-10-23Man reader: allow lowercase b,i etc. for font commands.John MacFarlane1-6/+7
These seem to work.
2018-10-22Man reader: Handle optional argument in ME, UE macros.John MacFarlane1-4/+10
Closes #4995.
2018-10-22Man reader: improved combining accents.John MacFarlane1-15/+37
We now handle e.g. `\[A ho]`.
2018-10-22Man reader: don't parse \[ul] as unicode escape.John MacFarlane1-1/+3
2018-10-22Man reader: Support .EX/.EE macros.John MacFarlane1-3/+2
2018-10-22Man reader: support .TQ macro.John MacFarlane1-1/+6
2018-10-22Man reader: handle `\~` for nonbreaking space.John MacFarlane1-0/+1
2018-10-22Man reader: Hlint.John MacFarlane1-15/+13
2018-10-22Man reader: fix source position output with --verbose.John MacFarlane1-23/+23
We now encode SourcePos in the MMacro token. Closes #5001.
2018-10-22Man reader: fixed spurious newlines in code blocks.John MacFarlane1-7/+7
These were caused by lines that just changed to typewriter font. The lexer has been adjusted so these no longer show up as blank lines. Closes #5005.
2018-10-21Man reader: fix code block tests.John MacFarlane1-0/+1
They incorporated a spurious newline which needs to be removed.
2018-10-21Man reader: Fix spacing requirement for macro arguments.John MacFarlane1-18/+20
This is allowed: .BR "hello"x"hello".
2018-10-21Man reader: .IP can also be used for list continuations.John MacFarlane1-2/+3
2018-10-21Man reader: support .ds, .ds1; also fix macro arguments.John MacFarlane1-2/+14
Closes #4997.
2018-10-21Man reader: add predefined strings (e.g. `\*[R]`).John MacFarlane1-12/+12
2018-10-21Man reader: Remove handling of .HF.John MacFarlane1-2/+0
2018-10-21Man reader: clarify comment.John MacFarlane1-1/+1
2018-10-21Man reader: support .SY, .OP macros.John MacFarlane1-10/+23
Closes #4994.
2018-10-21Man reader: improved escaping code.John MacFarlane1-79/+86
We're now set up to handle user string substitutions `\*(xy` better. The present approach has some inefficient list concatenation, but we can fix that later.
2018-10-21Man reader: slightly improved handling of `\*` escapes.John MacFarlane1-100/+118
2018-10-21Man reader: Support .so for include files.John MacFarlane1-0/+17
Closes #4986.
2018-10-21Man reader: moved all lexer functions to the front.John MacFarlane1-29/+29
2018-10-21Man reader: Moved handling of P, PP, LP to parser phase.John MacFarlane1-5/+7
2018-10-21Man reader: added type synonym for Arg.John MacFarlane1-9/+11