aboutsummaryrefslogtreecommitdiff
path: root/src/Text
AgeCommit message (Collapse)AuthorFilesLines
2018-04-05FB2 writer: represent HorizontalRule as empty lineAlexander Krotov1-7/+4
HorizontalRule corresponds to <hr> element in the default output format, HTML. Current HTML standard defines <hr> element as "paragraph-level thematic break". In typography it is often represented by extra space or centered asterism ("⁂"), but since FB2 does not support text centering, empty line (similar to extra space) is the only solution. Line breaks, on the other hand, don't generate <empty-line /> anymore. Previously line breaks generated <empty-line /> element inside paragraph, which is not allowed. So, this commit addresses issue #2424 ("FB2 produced by pandoc doesn't validate"). FB2 does not have a way to represent line breaks inside paragraphs. They are replaced with LF character, which is not rendered by FB2 readers, but at least preserves some information.
2018-04-05Muse writer: escape horizontal rule only if at the beginning of the lineAlexander Krotov1-3/+8
2018-04-05Muse writer: simplify escaping in inlineToMuse Image{}Alexander Krotov1-2/+1
2018-04-05CommonMark writer: correctly ignore LaTeX raw blocks when not raw_tex (#4533)quasicomputational1-1/+1
Issue #4527.
2018-04-04FB2 writer: allow emphasis and notes in titlesAlexander Krotov1-6/+4
Only <p> and <empty-line /> are allowed in titles, but <p> has the same type as an ordinary paragraphs. Therefore, there is no need to remove emphasis from titles. Also, don't intersperse paragraph with empty lines.
2018-04-03Muse reader: code cleanupAlexander Krotov1-34/+17
2018-04-03Muse reader: rewrite museOrderedListMarker without "do"Alexander Krotov1-10/+9
2018-04-03Muse reader: refactor parseAnchorAlexander Krotov1-3/+1
2018-04-03Muse reader: rewrite parseDirectiveKey without doAlexander Krotov1-3/+1
2018-04-03Muse writer: rewrite noteToMuse without doAlexander Krotov1-4/+4
2018-04-02LaTeX reader: parse sloppypar environment (#4517)Marc Schreiber1-0/+1
2018-04-02Muse reader: add <math> tag supportAlexander Krotov1-0/+5
2018-04-02hlint Muse writerAlexander Krotov1-6/+6
2018-04-02Muse writer: place header IDs before headerAlexander Krotov2-4/+3
See https://github.com/melmothx/text-amuse/issues/39
2018-04-01Muse writer: only escape brackets when necessaryAlexander Krotov1-11/+34
It includes cases when they can be mistaken for footnotes and links, as well as inside link description.
2018-03-31Muse writer: do not escape list markers unless preceded by spaceAlexander Krotov1-20/+34
2018-03-30Textile reader: fixed tables with no body rows.John MacFarlane1-1/+1
Previously these raised an exception. Closes #4513.
2018-03-30Powerpoint writer: code cleanupJesse Rosenthal1-4/+1
Since we're using mapM_ instead of mapM, we can get rid of the return statement. We also don't need the `unless` statement anymore.
2018-03-30Set default extensions for "beamer" same as "latex".John MacFarlane1-0/+4
2018-03-30EPUB writer: add epub:type="footnotes" to notes section in EPUB3.John MacFarlane1-0/+5
Closes #4489.
2018-03-29Removed unused extensions (#4506)Anabra10-28/+16
2018-03-28Mediawiki reader: improve table parsing.John MacFarlane1-5/+18
This fixes detection of table attributes and also handles `!` characters in cells. Closes #4508.
2018-03-28Muse writer: implement Default for WriterStateAlexander Krotov1-8/+11
2018-03-28Muse writer: move options, stTopLevel and stInsideBlock to WriterEnvAlexander Krotov1-30/+33
2018-03-28Muse writer: define Muse typeAlexander Krotov1-16/+18
2018-03-28Muse writer: escape semicolons and markers after line breakAlexander Krotov1-1/+1
2018-03-26Cleanup Muse reader and writerAlexander Krotov2-42/+24
2018-03-25Muse writer: remove unused bindingAlexander Krotov1-6/+6
2018-03-25Muse reader: allow links to have empty descriptionsAlexander Krotov1-1/+1
2018-03-25Muse writer: escape ordered list markersAlexander Krotov1-14/+52
Also reduced amount of <verbatim> tags in output to avoid escaping every "-" and word that ends in a full stop.
2018-03-25Muse reader: require block <literal> tags to be on separate linesAlexander Krotov1-2/+8
2018-03-25Powerpoint writer: code cleanup.Jesse Rosenthal1-39/+17
2018-03-25Muse writer: improve span writingAlexander Krotov1-3/+5
Test more cases when span has or hasn't anchor, class and contents in different combinations.
2018-03-25Muse writer: do not join Span's doing normalizationAlexander Krotov1-2/+1
Separate spans may have different semantics, for example if spans indicate syllables in a word.
2018-03-24Powerpoint writer: simplify code with `ParseXml`Jesse Rosenthal1-23/+2
There were some artifact code blocks around from before `reference-doc` functionality was implemented. This led to ignoring the reference-doc in places. Though I fixed this, I kept the old hacked-up functions instead of replacing them with `parseXml` (imported from Writers.OOXML) which does this in a consistent manner. This commit corrects that oversight.
2018-03-24Powerpoint writer: Allow fallback options when looking for placeholder type.Jesse Rosenthal1-9/+17
2018-03-24Revert "Powerpoint writer: Remove spPr tag from non-body layouts"Jesse Rosenthal1-5/+1
This reverts commit 99fa850a37cc3e56b415754c70ea2d98da709584.
2018-03-24Powerpoint reader: Check reference-doc for all layouts.Jesse Rosenthal1-2/+6
There were a few layouts where we were still just checking the built in pptx doc, instead of the supplied reference doc.
2018-03-23Powerpoint writer: Remove spPr tag from non-body layoutsJesse Rosenthal1-1/+5
This was causing headers to be misaligned when some templates were used.
2018-03-23PDF: with xelatex, don't compress images til the last run.John MacFarlane1-1/+6
This saves time for image-heavy documents. Closes #4484.
2018-03-23EPUB writer: ensure that pagetitle is always set...John MacFarlane1-6/+12
even when structured titles are used. This prevents spurious warnings about empty title elements. Closes #4486.
2018-03-23Powepoint writer: Simplify speaker notesJesse Rosenthal1-27/+31
We now pull the filtered blocks and speaker notes out at the top of the `blocksToSlide` function, and then make SpeakerNotes into a parameter of the `blocksToSlide'` subfunction. The output is the same, but the logic should be easier to follow now.
2018-03-23Powerpoint writer: change notes state to a simpler per-slide valueJesse Rosenthal1-18/+7
We used to keep a map of the slideId-to-notes for each slide. Since we now extract them at the slide level, this is overcomplicated, and we can just extract them before converting a slide and then clear the state after.
2018-03-23Powerpoint writer: Remove `Maybe` from `SpeakerNotes` in `Slide`.Jesse Rosenthal2-71/+71
Previously, we had treated it as a `Maybe`. But there is no difference between not having speaker notes and having empty speaker notes. So we make the SpeakerNotes newtype into a monoid, and test for memptiness instead of testing for Just/Nothing.
2018-03-21Parsing: Fix romanNumeral parser.John MacFarlane1-3/+3
We previously accepted 'DDC' as 1100. Closes #4480.
2018-03-21Muse writer: don't align ordered list itemsAlexander Krotov1-4/+1
It leads to problems with round-trip test, because aligned line blocks can't be read back.
2018-03-21Powerpoint writer: handle speaker notes earlier in the conversion processJesse Rosenthal1-15/+23
Internal change: We were getting bad results with the empty text box created by the conversion of notes into an empty paragraph. So we now convert the notes at the `blocksToSlide` stage, by `walkM`ing a function over the blocks that returns `()`, and then filters the notes out. This avoids the need to have a return value for speaker notes, and thus avoids the empty TextBox. Together with the previous commit (256f14c5a), closes #4477.
2018-03-21Powerpoint writer: Keep notes with related blocksJesse Rosenthal1-8/+17
Some blocks automatically split slides (imgs, tables, `column` divs). We assume that any speaker notes immediately following these are connected to these elements, and keep them with the related blocks, splitting after them.
2018-03-20Muse writer: escape "]" in image titleAlexander Krotov1-1/+2
2018-03-20Muse writer: remove key-value pairs from attributes before normalizationAlexander Krotov1-1/+8