aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Writers
AgeCommit message (Collapse)AuthorFilesLines
2018-11-11Text.Pandoc.Shared: add parameter to uniqueIdent, inlineListToIdentifier.John MacFarlane7-10/+13
The parameter is Extensions. This allows these functions to be sensitive to the settings of `Ext_gfm_auto_identifiers` and `Ext_ascii_identifiers`. This allows us to use `uniqueIdent` in the CommonMark reader, replacing some custom code. It also means that `gfm_auto_identifiers` can now be used in all formats. Semantically, `gfm_auto_identifiers` is now a modifier of `auto_identifiers`; for identifiers to be set, `auto_identifiers` must be turned on, and then the type of identifier produced depends on `gfm_auto_identifiers` and `ascii_identifiers` are set. Closes #5057.
2018-11-07Merge pull request #5054 from lierdakil/docx-image-bookmarksJohn MacFarlane1-26/+17
Docx image and code block bookmarks
2018-11-07Texinfo writer: add blank line before `@menu` section.John MacFarlane1-1/+2
Closes #5055.
2018-11-07[Docx Writer] Add bookmarks to code blocksNikolay Yakimov1-2/+2
2018-11-07[Docx Writer] Add bookmarks to imagesNikolay Yakimov1-2/+2
2018-11-07[Docx Writer] Refactor common bookmark creation code into a functionNikolay Yakimov1-22/+13
2018-11-07ICML writer: fix missing type signature warningAlbert Krewinkel1-3/+4
2018-11-06ICML writer: consolidate adjacent strings, inc. spaces.John MacFarlane1-15/+15
This avoids chunking up the output unnecessarily into separate elements.
2018-11-06hlint Muse writerAlexander Krotov1-1/+1
2018-11-05CommonMark writer: make sure --ascii affects quotes, super/subscript.John MacFarlane1-6/+12
2018-11-05CommonMark writer: respect --ascii (#5043)quasicomputational1-1/+18
2018-11-05Muse writer: add support for --reference-location=Alexander Krotov1-6/+44
Address #107
2018-11-03AsciiDoc writer: prevent illegal nestings.John MacFarlane1-1/+9
In asciidoc you can only have level n+1 headers directly under level n headers.
2018-11-03AsciiDoc writer: use single-line section headers.John MacFarlane1-29/+9
The underline style is now deprecated. Previously `--atx-headers` would enable the single-line style; now the single-line style is always used. Closes #5038.
2018-11-01Change 'groff' -> 'roff'.John MacFarlane3-9/+9
These formats (man, ms) are not groff-specific.
2018-11-01Implement --ascii for Markdown writer.John MacFarlane1-23/+35
2018-11-01HTML writer: use character entities references when possible for HTML5.John MacFarlane1-2/+8
2018-11-01LaTeX writer: remove unused local bindAlexander Krotov1-1/+1
2018-10-31ZimWiki writer: number ordered list items sequentially...John MacFarlane1-28/+24
rather than always with 1.
2018-10-31LaTeX writer: add newline if math ends in a comment.John MacFarlane1-2/+12
This prevents the closing delimiter from being swalled up in the comment. Closes #4880.
2018-10-29ZimWiki writer: remove extra indentation on lists.John MacFarlane1-8/+8
Closes #4963.
2018-10-28EPUB writer: use metadata field `css` instead of `stylesheet`mb211-3/+4
closes #4990
2018-10-28T.P.Lua: expose more useful internals (API change)Albert Krewinkel1-3/+2
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 Krewinkel1-2/+2
2018-10-26Rename Groff -> Roff.John MacFarlane3-5/+5
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-26Text.Pandoc.Lua: move globals handling to separate moduleAlbert Krewinkel1-30/+8
2018-10-26Man writer: don't wrap .SH and .SS lines.John MacFarlane1-1/+1
Closes #5019.
2018-10-25Muse writer: add support for grid tablesAlexander Krotov1-23/+35
2018-10-24Ms writer - removed old escapeBar.John MacFarlane1-8/+2
We don't need this now that we use @ for delim.
2018-10-24Rename manEscapes -> standardEscapesJohn MacFarlane1-2/+2
2018-10-23Groff writer character escaping changes.John MacFarlane3-46/+56
T.P.GroffChar: replaced `essentialEscapes` with `manEscapes`, which includes all the escapes mentioned in the groff_man manual. T.P.Writers.Groff: removed escapeCode; changed parameter on escapeString from Bool to new type `EscapeMode`. Rewrote `escapeString`.
2018-10-23Fix Muse writer styleAlexander Krotov1-42/+42
2018-10-23Muse writer: use length instead of realLength to calculate definition ↵Alexander Krotov1-1/+2
indentation Muse parsers don't take character width into account when calculating indentation.
2018-10-22Groff writers escaping changes.John MacFarlane1-22/+24
- Improve escaping of accented characters with `--ascii`. Combining accents are now handled properly. - Don't escape spaces and tabs in code blocks. This doesn't seem to be necessary.
2018-10-22T.P.Writers.Groff - don't export escapeChar.John MacFarlane2-2/+1
2018-10-23Muse writer: do not insert newline before listsAlexander Krotov1-3/+3
2018-10-23Muse writer: code cleanupAlexander Krotov1-4/+2
2018-10-22Reduce code duplication in Muse writerAlexander Krotov1-34/+18
2018-10-22hlint Muse writerAlexander Krotov1-5/+3
2018-10-21Muse writer: use lightweight markup after </em> tagAlexander Krotov1-0/+1
2018-10-20Powerpoint: Support raw openxml in pptx writer.Jesse Rosenthal2-12/+25
This allows raw openxml blocks and inlines to be used in the pptx writer. A few caveats: 1. It's up to the user to write well-formed openxml. The chances for corruption, especially with such a brittle format as pptx, is pretty high. 2. Because of the tricky way that blocks map onto shapes, if you are using a raw block, it should be the only block on a slide (otherwise other text might end up overlapping it). 3. The pptx ooxml namespace abbreviations are different from the docx ooxml namespaces. Again, it's up to the user to get it right. Unzipped document and ooxml specification should be consulted. Closes: #4976
2018-10-19Man writer: avoid unnecessary `.RS`/`.RE` pair in defn lists.John MacFarlane1-1/+3
When the definition is just one paragraph, we don't need the `.RS\n.RE`.
2018-10-18Remove unneeded import.John MacFarlane1-1/+0
2018-10-18Groff escaping changes.John MacFarlane3-48/+54
- `--ascii` is now turned on automatically for man output, for portability. All man output will be escaped to ASCII. - In T.P.Writers.Groff, `escapeChar`, `escapeString`, and `escapeCode` now take a boolean parameter that selects ascii-only output. This is used by the Ms writer for `--ascii`, instead of doing an extra pass after writing the document. - In ms output without `--ascii`, unicode is used whenever possible (e.g. for double quotes). - A few escapes are changed: e.g. `\[rs]` instead of `\\` for backslash, and `\ga]` instead of `` \` `` for backtick.
2018-10-18Add Text.Pandoc.GroffChar.John MacFarlane1-20/+2
This will hold common escaping data for groff characters.
2018-10-17man/ms writers: use `\[at]` for escaped `@`.John MacFarlane1-1/+1
2018-10-17Move common groff functions to Text.Pandoc.Writers.GroffJohn MacFarlane4-151/+155
(unexported module). These are used in both the man and ms writers. Moved groffEscape out of Text.Pandoc.Writers.Shared [cancels earlier API change from adding it, which was after last release]. This fixes strong/code combination on man (should be `\f[CB]` not `\f[BC]`), mentioned in #4973. Updated tests. Closes #4975.
2018-10-17Man writer: use \f[R] instead of \f[] to reset fontAlexander Krotov1-2/+2
Fixes #4973
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-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.