Commit graph

2110 commits

Author SHA1 Message Date
John MacFarlane
937bec95a9 Removed old-locale flag and Text.Pandoc.Compat.Time.
This is no longer necessary since we no longer support ghc 7.8.
2018-03-18 11:24:29 -07:00
John MacFarlane
7e389cb3db Use NoImplicitPrelude and explicitly import Prelude.
This seems to be necessary if we are to use our custom Prelude
with ghci.

Closes #4464.
2018-03-18 10:46:28 -07:00
John MacFarlane
dfa1dc164a hlint fixes. 2018-03-17 22:00:55 -07:00
John MacFarlane
fef484c4d0 Fixed typo introduced in merge. 2018-03-17 20:41:11 -07:00
Francesco Occhipinti
ba965d1736 RST writer: filter out empty inline containers (#4434).
There is nothing in RST that corresponds to e.g. `Emph []`, so we just filter out elements like this.
2018-03-17 20:39:26 -07:00
Francesco Occhipinti
e5845f33ad Don't wrap lines in grid tables when --wrap=none (#4320)
* Annotate gridTable code with comments and abstract small functions
* Don't wrap lines in tables when `--wrap=none`.  Instead, expand cells, even if
   it results in cells that don't respect relative widths or surpass page column width.
* This change affects RST, Markdown, and Haddock writers.
2018-03-17 20:31:43 -07:00
Francesco Occhipinti
90a705c8af RST writer: separate inline transformation logic from writing logic (#4438)
This is to help enable solutions  solutions to #4434 and #4368.
2018-03-17 20:17:55 -07:00
Francesco Occhipinti
65cc909fde RST writer: strip whitespace within inlines, closes #4327 (#4329)
+ Whitespace is ignored at the beginning and end of emphasis, as per
  <http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html#inline-markup>.
+ Export `stripLeadingTrailingSpace` from `Text.Pandoc.Writers.Shared`.
2018-03-17 19:21:27 -07:00
John MacFarlane
605545e024 Work around Monoid/Semigroup-related compiler errors GHC 7.10. 2018-03-17 14:25:05 -07:00
John MacFarlane
be12ae3bca Better table handling for Haddock.
In the reader, we use the new Table type in Haddock.
Note that tables with col/rowspans will not translate
well into Pandoc.

In the writer, we now render tables always as grid tables,
since Haddock supports these.
2018-03-16 22:38:34 -07:00
John MacFarlane
f0b6e0ee49 Monoid/Semiground cleanup relying on custom Prelude. 2018-03-16 12:17:58 -07:00
Mauro Bieg
bcfc3916e9 DokuWiki writer: rewrite backSlashLineBreaks (#4445)
Rewrite for efficiency.
2018-03-13 21:41:23 -07:00
John MacFarlane
17725a0661 Beamer: put hyperlink after \begin{frame}.
and not in the title.  If it's in the title, then we get
a titlebar on slides with the `plain` attribute, when
the id is non-null.  This fixes a regression from 1.9.x.

Closes #4307.
2018-03-13 10:03:51 -07:00
Mauro Bieg
a0da1e2723 Dokuwiki writer: fix LineBreaks in Tables (#4444)
fixes #4313
2018-03-11 18:20:36 -07:00
Alexander Krotov
19fd98e452 Muse writer: support spans with anchors 2018-03-12 01:47:20 +03:00
John MacFarlane
0bdabfb09a Ms writer: asciify pdf anchors, since unicode anchors don't work.
Closes #4436.  Internal links should be converted automatically,
so this shouldn't affect users directly.
2018-03-09 09:27:44 -08:00
John MacFarlane
6173c3c830 Fixed formatting of DefaultStyle ordered lists in docx writer.
We want decimal for the top level, not lower roman.
2018-03-08 10:19:23 -08:00
Alexander Krotov
1884ee6083 Muse writer: replace smallcaps with emphasis before normalization 2018-03-07 20:10:19 +03:00
Alexander Krotov
ff8e59a174 Muse writer: output smallcaps as emphasis 2018-03-07 19:11:27 +03:00
Alexander Krotov
f8608b418a Muse writer: expand Cite before list normalization 2018-03-07 19:11:03 +03:00
Alexander Krotov
f8e255053d Muse writer: write empty inline lists as <verbatim></verbatim> 2018-03-07 18:35:04 +03:00
Alexander Krotov
39b31ef3cb Muse writer: remove empty Str from the beginning of inline lists during normalization 2018-03-07 16:25:15 +03:00
Alexander Krotov
1b1b6f02d5 Muse writer: escape "-" to avoid creating bullet lists 2018-03-07 15:19:36 +03:00
Alexander Krotov
31b4387a6b Muse writer: fix math expansion for more than one expression per paragraph 2018-03-06 12:58:20 +03:00
Nokome Bentley
7d193b2aad Remove extraneous, significant whitespace in JATS writer output (#4335)
This patch fixes some cases where the JATS writer was introducing
semantically significant whitespace by indenting and wrapping tags.
Note that the JATS spec has a content model for `<p>` tags of `(#PCDATA | ...`.
Any tag where `#PCDATA` children are possible should not have any
indentation. The same is true for `<th>`, `<td>`, `<term>`, `<label>`.
2018-03-05 09:44:34 -08:00
Alexander Krotov
7da6e4390c Muse writer: expand math before inline list normalization 2018-03-05 19:50:19 +03:00
Alexander Krotov
991b57733c hlint Muse reader and writer 2018-03-02 19:51:54 +03:00
Alexander Krotov
9dbd59a7c1 Muse writer: join strings during inline normalization 2018-03-02 01:45:01 +03:00
Alexander Krotov
e881214bf9 Org writer: fix a typo s/prettyfy/prettify/ 2018-03-02 00:35:48 +03:00
Alexander Krotov
8b1630aae0 Muse writer: change verse markup
Use "> " instead of <verse> tag
2018-02-28 14:42:43 +03:00
Alexander Krotov
1d57f7a641 Muse writer: remove empty strings during inline normalization 2018-02-28 14:26:11 +03:00
Jesse Rosenthal
0287530a67 Powerpoint writer: use trim from Shared
Instead of writing my own.
2018-02-27 11:28:15 -05:00
Jesse Rosenthal
9abcb4f201 Powerpoint writer: Use table styles
This will use the default table style in the reference-doc file. As a
result they will be easier when using in a template, and match the
color scheme.
2018-02-27 10:19:35 -05:00
Jesse Rosenthal
cdbe45e8ee Powerpoint writer: Remove empty slides
Make sure there are no empty slides in the pptx output. Because of the
way that slides were split, these could be accidentally produced by
comments after images.

When animations are added, there will be a way to add an empty slide
with either incremental lists or pauses.

Test outputs checked with MS PowerPoint (Office 2013, Windows 10,
VBox). Both files have expected output and are not corrupted.
2018-02-27 09:12:17 -05:00
Albert Krewinkel
b5bd8a9461
Lua: register script name in global variable
The name of the Lua script which is executed is made available in the
global Lua variable `PANDOC_SCRIPT_FILE`, both for Lua filters and
custom writers.

Closes: #4393
2018-02-24 22:43:28 +01:00
Alexander Krotov
8f8f0f8a60 Muse writer: don't indent nested definition lists 2018-02-23 22:07:53 +03:00
Jesse Rosenthal
788cb6e9a1 Docx writer: trim trailing whitespace. 2018-02-23 11:54:00 -05:00
laptop1\Andrew
03d8696991 Docx writer: fix #3930
Fixes an issuue regarding image sizing if the same image is included more than once.

Previously, a record was kept, indexed by image source, which would include the XML for that image. For every image element in the document, this record was checked, and if the image was the same as previous examples, the same XML would be included twice. The information in this XML incudes the image description, title text, and size on the page, thus all images from the same source would always be sized the same, and have the same description. This commit fixes this by generating unique XML every time, but keeping the image ID and path if it is the same image.
2018-02-23 11:50:33 -05:00
Jesse Rosenthal
69a7209930 Presentations: Use divs to set incremental/non-incremental
Currently, html and beamer presentations use a list-inside-blockquote
convention for setting incremental and all-at-once presentation of
lists (or reversing the command-line default). This allows the user to
set this on a per-case basis with divs, named `incremental` and
`nonincremental` respectively, as in:

    ::: incremental

    - snap

    - crackle

    - pop

    :::

Note that the former list-inside-blockquote convention still works so
as not to break any existing presentations.

Closes: #4381
2018-02-22 14:40:40 -05:00
John MacFarlane
b8f0d15a72 LaTeX writer: Put hypertarget inside figure environment.
Previously it surrounded the figure.

This works around a problem with the endfloat package and
makes pandoc's output compatible with it.

Closes #4388.
2018-02-21 17:30:28 -08:00
John MacFarlane
0690df507b LaTeX writer: Fix image height with percentage.
This previously caused the image to be resized to
a percentage of textwidth, rather than textheight.

Closes #4389.
2018-02-21 17:18:06 -08:00
Jesse Rosenthal
b9b66d3b29 Powerpoint writer: Use ph name and idx for getting layout shapes
Internal change: when we take shapes from the layout for title,
content, etc, we should use the attributes of the "ph" (placeholder)
tag -- idx and name. This is what powerpoint uses internally, and
therefore seems more dependable across reference-docs than using the
shape names, as we had previously done.

There should be no output changes as a result of this commit.
2018-02-20 06:46:45 -05:00
Jesse Rosenthal
f1146cd7ee Powerpoint writer: Add notesMaster to presentation.xml if necessary
In previous version, we only modified the notesMaster entry in the
presentation.xml file, and removed it if necessary. But if using a
template, it might not be available. So we always delete it, and then
add it back in if necessary.

We also have to make sure that we add it appropriately the .rels file
associated with presentation.xml.
2018-02-19 15:31:20 -05:00
Jesse Rosenthal
574104861f Powerpoint writer: Another attempt at avoiding compiler warnings. 2018-02-18 18:54:16 -05:00
Jesse Rosenthal
b4f43f8799 Powerpoint writer: fix compiler complaints. 2018-02-18 17:44:09 -05:00
Jesse Rosenthal
6562863ef1 Powerpoint writer: separate SpeakerNotes paragraphs with empy par
This will add a space between notes paragraphs, which seems more like
what most users would do by hand (press "enter" twice).
2018-02-18 16:31:32 -05:00
Jesse Rosenthal
07f3aa178b Powerpoint writer: Ignore links and (end)notes in speaker notes.
MS PowerPoint does not offer a way to insert links into speaker notes
text, so we match that behavior, and make our lives easier.

As for (end)notes, there is no clear solution to the question of wat
that would *mean*. The default behavior would be to add it to the
endnote slide, but that would put speaker note content into the public
presentation. The best solution would be to put the content at the
bottom of the notes page, but that would take some doing, and can be
added to the speaker notes feature later.
2018-02-18 16:31:32 -05:00
Jesse Rosenthal
575a360c6c Powerpoint writer: Output speaker notes.
There are a number of interlocking parts here. The main thing to note
is that, to match the MSPowerPoint-generated pptx files, we only
include the notesMaster and notesSlide files if there are notes. This
means we have to be careful with the rIds, and build a number of files
conditionally.
2018-02-18 16:31:32 -05:00
Jesse Rosenthal
47a399303d Powerpoint writer: modify speaker notes in presentation.xml
We remove the `notesMasterIdLst` entry in `presentation.xml` if there
no speaker notes in the presentation.
2018-02-18 16:31:32 -05:00
Jesse Rosenthal
eace2357dd Powerpoint writer: Read speaker note templates conditionally
If there are speaker notes in the presentation, we read in the
notesMasters templates from the reference pptx file.
2018-02-18 16:31:32 -05:00