Commit graph

5441 commits

Author SHA1 Message Date
Jesse Rosenthal
6fa6b6a5f2 Powerpoint writer: Change references to Notes to SpeakerNotes
This is to avoid confusion with {foot,end}notes.
2018-02-18 16:31:32 -05:00
Andrew Pritchard
bb7681a85a EMF Image size support (#4375) 2018-02-18 11:12:58 -08:00
John MacFarlane
377640402f LaTeX reader: Fixed comments inside citations. Closes #4374. 2018-02-17 23:06:54 -08:00
John MacFarlane
3535af0197 Markdown writer: properly escape @ to avoid capture as citation.
Closes #4366.
2018-02-16 15:59:03 -08:00
John MacFarlane
c75740e22c Make image size detection for PDFs more robust.
See #4322.
2018-02-16 13:45:15 -08:00
John MacFarlane
036767ea80 TEI writer: more attribute fixes.
- Ensure that id prefix is always used.
- Don't emit `role` attribute; that was a leftover from the
  Docbook writer.
2018-02-16 10:47:46 -08:00
John MacFarlane
ded2e211ca TEI writer: Use 'xml:id', not 'id' attribute.
Closes #4371.
2018-02-16 10:41:22 -08:00
Alexander Krotov
0e4b8ae362 Muse reader: prioritize lists with roman numerals over alphabetical lists
This is to make sure "i." starts a roman numbered list,
instead of a list with letter "i" (followed by "j", "k", ...").
2018-02-16 12:53:41 +03:00
danse
e6ff7f7986 Docx reader: Pick table width from the longest row or header
This change is intended to preserve as much of the table content as
possible

Closes #4360
2018-02-15 15:06:01 -05:00
Alexander Krotov
82a0ceaf18 Muse reader: fix directive parsing
This fixes bugs introduced in commit 4bfab8f04c.
2018-02-15 18:17:24 +03:00
Alexander Krotov
9131d62c9b Muse writer: use unicode quotes for quoted text 2018-02-15 14:33:25 +03:00
Alexander Krotov
6dcb974423 AsciiDoc writer: do not output implicit heading IDs
Convert to asciidoc-auto_identifiers for old behaviour.

Fixes #4363
2018-02-13 23:19:34 +03:00
Alexander Krotov
650b30737f Muse reader: remove listItemContents function 2018-02-13 15:58:22 +03:00
Alexander Krotov
e02b7d2b38 Muse reader: hlint 2018-02-13 14:43:44 +03:00
Alexander Krotov
42e39fbd26 Muse reader: parse definition lists with multiple descriptions 2018-02-13 14:34:45 +03:00
Alexander Krotov
5a304360d0 Muse reader: parse next list item before parsing more item contents 2018-02-13 14:14:43 +03:00
Alexander Krotov
8aed3652c2 Muse reader: refactor to avoid reparsing
Lists are parsed in linear instead of exponential time now.

Contents of block tags, such as <quote>, is parsed directly,
without storing it in a string and parsing with parseFromString.

Fixed a bug: headers did not terminate lists.
2018-02-12 17:30:57 +03:00
Alexander Krotov
10c8b9f4bb Muse reader: move indentation parsing from definitionListItem to definitionList 2018-02-12 14:57:18 +03:00
Alexander Krotov
3480a8acc2 Muse reader: paragraph indentation does not indicate nested quote
Muse allows indentation to indicate quotation or alignment,
but only on the top level, not within a <quote> or list.

This patch also simplifies the code by removing museInQuote
and museInList fields from the state structure.
Headers and indented paragraphs are attempted to be parsed
only at the topmost level, instead of aborting parsing with guards.
2018-02-12 04:57:56 +03:00
Alexander Krotov
30cd636c21 Muse reader: replace optionMaybe with optional 2018-02-12 01:40:55 +03:00
Alexander Krotov
cadcf62ff3 Muse reader: move para definition into blockElements 2018-02-11 19:35:52 +03:00
Alexander Krotov
02cb6eb477 Muse reader: move end-of-line parsing to paraUntil 2018-02-11 19:30:01 +03:00
Alexander Krotov
5b3247d0b2 Muse reader: rename "literal" to "literalTag" 2018-02-06 01:35:41 +03:00
Alexander Krotov
fe5fd12812 Muse reader: avoid reparsing at the top level
Blocks following paragraphs are parsed only once at the top level.
Lists still take exponential time to parse, but this time is not
doubled anymore when this list terminates paragraph.
2018-02-06 01:35:41 +03:00
Alexander Krotov
e645510d54 Muse reader: implement paraUntil
paraUntil does not discard the result of the following block parsing.
This change is a part of Muse reader refactoring to avoid reparsing.
2018-02-06 01:35:41 +03:00
Alexander Krotov
c74d2064a7 Muse reader: avoid parsing newline after paragraph twice
Removed lookAhead from blankline, so it is consumed.
2018-02-05 02:57:03 +03:00
Alexander Krotov
1a06f0ecfb Muse reader: make block parsers responsible for parsing newline
Block parsers must always stop after newline or at the end of file.
2018-02-05 01:44:31 +03:00
Alexander Krotov
ca4a61a348 Muse reader: simplify listItemContents' with sepBy1 2018-02-04 19:19:55 +03:00
John MacFarlane
5439e29dd9 C -> c. 2018-02-03 11:22:25 -08:00
Alexander Krotov
d777fe8bbe Muse writer: write image width specified in percent in Text::Amuse mode 2018-02-03 18:36:38 +03:00
John MacFarlane
eeafb3fa77 Determine image size for PDFs.
Closes #4322.
2018-02-02 10:00:14 -08:00
John MacFarlane
8bdbdc24de TEI writer: Use height instead of depth for images.
Closes #4331.
2018-02-01 11:38:33 -08:00
Alexander Krotov
00b7ab8d00 Muse reader: replace ParserState with MuseState 2018-01-31 01:38:42 +03:00
Alexander Krotov
309595aff3 Export list marker parsers from Text.Pandoc.Parsing 2018-01-31 01:33:11 +03:00
Alexander Krotov
9ff8bc64f9 Muse writer: don't wrap displayMath into <verse>
<verse> is a block tag and displayMath is an inline element.
Writing <verse> around displayMath could result in nested
<verse> tags.
2018-01-30 00:33:02 +03:00
Alexander Krotov
b7d8930dc0 Muse writer: escape nonbreaking space ("~~") 2018-01-29 12:54:43 +03:00
Alexander Krotov
37271fabee Muse reader: simplify block tag parsing code 2018-01-29 12:07:40 +03:00
Alexander Krotov
ff31602267 Muse reader: parse inline <literal> without parseFromString 2018-01-29 04:58:43 +03:00
Alexander Krotov
60b2863e90 Muse reader: parse <comment> and <verbatim> without parseFromString 2018-01-29 04:52:51 +03:00
Alexander Krotov
264a25e5e9 Muse reader: parse verse tag contents without parseFromString 2018-01-28 22:09:47 +03:00
Alexander Krotov
05275be2cb Muse reader: make verseLine return Inlines, not String 2018-01-28 08:49:55 +03:00
Alexander Krotov
4bfab8f04c Muse reader: parse directives without parseFromString 2018-01-28 07:51:38 +03:00
Alexander Krotov
248f6076bc Muse reader: fix parsing of trailing whitespace
Newline after whitespace now results in softbreak
instead of space.
2018-01-28 03:18:29 +03:00
Alexander Krotov
75762ee0dc Muse reader: simplify paragraph parsing
Blank lines are already handled by blockElements.
2018-01-28 02:32:41 +03:00
Jesse Rosenthal
9cf9f1f89d Docx writer: make more deterministic to facilitate testing
This will allow us to compare files directly in a golden test. Times
are still based on IO, but we will be able to safely skip those.

Changes:

 - `getUniqueId` now calls to the state to get an incremented digit,
   instead of calling to P.uniqueHash.

 - we always start the PRNG in mkNumbering/mkAbstractNum with the same
   seed (1848), so our randoms should be the same each time.
2018-01-27 07:44:53 -05:00
Jesse Rosenthal
ae2157fe8b Docx writer: Fix ids in comment writing
Comments from `--track-changes=all` were producing corrupt docx,
because the writer was trying to get id from the `(ID,_,_)` field of
the attributes, and ignoring the "id" entry in the key-value pairs. We
now check both.

There is a larger conversation to be had about the right way to treat
"id" and "class" entries in kvs, but this fix will correctly interpret
the output of the docx reader work.
2018-01-27 07:41:55 -05:00
Henri Menke
751b5ad010 ConTeXt writer: new section syntax and --section-divs (#4295)
Fixes #2609.

This PR introduces the new-style section headings: `\section[my-header]{My Header}` -> `\section[title={My Header},reference={my-header}]`.

On top of this, the ConTeXt writer now supports the `--section-divs` option to write sections in the fenced style, with `\startsection` and `\stopsection`.
2018-01-25 11:56:28 -08:00
Jesse Rosenthal
0d7aedca58 Dock writer: Fix deletion track changes
This had been mistakenly written as a second insertion function.

Closes: #4303
2018-01-25 10:42:01 -05:00
Alexander Krotov
6337539e32 Muse reader: fix matching of closing inline tags 2018-01-24 14:16:56 +03:00
Alexander Krotov
763126dae0 Muse reader: remove block function 2018-01-24 13:58:43 +03:00