Commit graph

12762 commits

Author SHA1 Message Date
John MacFarlane
95a19fcff0 INSTALL instructions fix for libicu. 2019-09-08 21:56:42 -07:00
Mauro Bieg
d96a5629bc Emit warning on -f latex -o out.pdf (#5736)
add UnusualConversion to LogMessage [API change]
2019-09-08 16:03:13 -07:00
John MacFarlane
f0577fe360 Makefile: ghci target 2019-09-06 21:09:44 -07:00
John MacFarlane
212406a61d hierarchicalize: ensure that sections get ids...
even if they're in divs.  Improves #3057.
2019-09-06 09:05:52 -07:00
John MacFarlane
6e2cfd6c97 Improve detection of headings in Divs by hierarchicalize.
The structure

```
<h1>one</h1>
<div>
<h1>two</h1>
</div>
```

should create two coordinate sections, not a section with
a subsection.  Now it does.

Extends #3057.
2019-09-06 08:44:59 -07:00
John MacFarlane
345b33762e Shared.hierarchicalize: improve handling of div and section structure.
Previously Divs were opaque to hierarchicalize, so headings
inside divs didn't get into the table of contents, for
example (#3057).

Now hierarchicalize treats Divs as sections when appropriate.
For example, these structures both yield a section and a
subsection:

``` html
<div>
<h1>one</h1>
<div>
<h2>two</h2>
</div>
</div>
```
``` html
<div>
<h1>one</h1>
<div>
<h1>two</h1>
</div>
</div>
```

Note that

``` html
<h1>one</h1>
<div>
<h2>two</h2>
</div>
<h1>three</h1>
```

gets parsed as the structure

    one
      two
    three

which may not always be desirable.

Closes #3057.
2019-09-05 22:37:13 -07:00
John MacFarlane
0534258780 Roff reader: Better support for 'while'. 2019-09-05 21:13:50 -07:00
John MacFarlane
e26ef34c04 Add dependency on skylighting-core in cabal file.
Closes #5729.
2019-09-05 17:36:37 -07:00
John MacFarlane
1c35167c3a Small cleanups in Makefile. 2019-09-05 17:34:47 -07:00
John MacFarlane
4559bc257b Makefile - remove references to obsolete flag.
See #5694.
2019-09-05 15:54:46 -07:00
John MacFarlane
5d790db5cf Add CSS for hanging-indent div to epub.css.
This is for hanging indents with pandoc-citeproc, to be
supported in a later release.
2019-09-05 12:44:29 -07:00
John MacFarlane
381654a704 Add div.hanging-indent CSS to HTML templates. 2019-09-05 12:42:23 -07:00
John MacFarlane
bb362fd76c Add partial styles.html in HTML5 template.
Avoid duplication in HTML templates by using styles.html partial.
Change indentation of styles in template.
2019-09-05 12:39:50 -07:00
John MacFarlane
75f6af5c12 Roff reader: improve handling of groups. 2019-09-05 07:01:31 -07:00
John MacFarlane
0e31483d43 asciidoc writer: don't include + in code blocks for regular asciidoc.
This is asciidoctor-specific.

Amends 98ee6ca289.
2019-09-04 14:57:22 -07:00
John MacFarlane
e7b8728ad2 Roff reader: Fix problem parsing comments before macro. 2019-09-04 10:55:56 -07:00
John MacFarlane
4967fd4208 Roff reader: more improvements in parsing conditionals. 2019-09-04 10:02:49 -07:00
John MacFarlane
e4cca4cf67 Roff readers: better parsing of groups.
We now allow groups where the closing `\\}` isn't at the
beginning of a line.

Closes #5410.
2019-09-04 09:24:42 -07:00
John MacFarlane
0a3cc0be45 SelfContained: omit content-type on type attribute for <style>.
It doesn't seem to be valid for HTML5, and as a result Chrome
ignores the style element.  Closes #5725.
2019-09-03 17:26:12 -07:00
John MacFarlane
e4638170d0 Further mod to hanging indent code in latex template.
Make sure the length is always defined.
2019-09-03 12:33:25 -07:00
John MacFarlane
dc01071053 Slight improvements to hanging indent code in latex template.
See jgm/pandoc-citeproc#410.
2019-09-03 12:30:40 -07:00
John MacFarlane
513058a24e XML: change toEntities to emit numerical hex character references.
Previously decimal references were used.
But Polyglot Markup prefers hex.  See #5718.

This affects the output of pandoc with `--ascii`.
2019-09-03 11:28:20 -07:00
John MacFarlane
0fe635d3ec LaTeX writer: use cslreferences environment for csl bibliographies.
this allows bibliographies to receive special formatting.

The template now contains definition of this environment (enabled
only when CSL is used).

It also defines a `\cslhangindent` length.  This is set to
2em by default when the bibliography style specifies
a hanging indent.  To override the length, you can
use e.g.

\setlength{\cslhangindent}{7em}

in header-includes.

Closes jgm/pandoc-citeproc#410.
2019-09-02 22:14:00 -07:00
John MacFarlane
d0bddaf7b9 Use latest pandoc-citeproc. 2019-09-02 21:26:20 -07:00
John MacFarlane
6b286a1d74 LaTeX reader: don't try to parse includes if raw_tex is set.
When the `raw_tex` extension is set, we just carry through
`\usepackage`, `\input`, etc. verbatim as raw LaTeX.

Closes #5673.
2019-09-02 21:03:05 -07:00
John MacFarlane
d79242796b HTML writer: use numeric character references with --ascii.
Previously we used named character references with html5 output.
But these aren't valid XML, and we aim to produce html5 that is
also valid XHTML (polyglot markup).  (This is also needed for
epub3.)

Closes #5718.
2019-09-02 20:36:57 -07:00
John MacFarlane
5e708eb8ce LaTeX reader: properly handle optional arguments for macros.
Closes #5682.
2019-09-02 18:48:37 -07:00
John MacFarlane
3fac27b26b LaTeX writer: strip off {} around locator for biblatex/natbib output.
Closes #5722.
2019-09-02 17:07:35 -07:00
John MacFarlane
e9ba29e57f Use doctemplates 0.6. 2019-09-02 11:14:14 -07:00
John MacFarlane
716483e03a html2pdf: ensure temp file is deleted...
even if the pdf program is not found.

Closes #5720.
2019-08-31 09:18:21 -07:00
John MacFarlane
fba1296fd1 LaTeX reader: fix \\ in \parbox inside a table cell.
Closes #5711.
2019-08-27 10:48:02 -07:00
John MacFarlane
167fc4bc87 Markdown reader: Headers: don't parse content over newline boundary.
Closes #5714.
2019-08-27 10:15:00 -07:00
John MacFarlane
7c03c26d58 Add stateAllowLineBreaks to ParserState. [API change] 2019-08-27 10:04:02 -07:00
Jesse Rosenthal
4a7dad18b1 PowerPoint writer: Start numbering at appopriate numbers.
Starting numbers for ordered lists were previously ignored. Now we
specify the number if it is something other than 1.

Closes: #5709
2019-08-27 01:24:41 -04:00
John MacFarlane
62dc2f893e Comment out ghc 8.8.1 build for now. 2019-08-26 18:12:59 -07:00
John MacFarlane
ffbd690cbc Simplify stack.yaml after cabal file changes.
We don't need so many local ghc options now that they're
specified in pandoc.cabal.

I've kept `-fhide-source-paths` (in case we move this out
of pandoc.cabal) and `-Wno-missing-home-modules` (which seems
to be needed for `stack ghci` to work).
2019-08-26 17:37:06 -07:00
Albert Krewinkel
cd4b8f66bb Cabal cleanup (#5693)
* pandoc.cabal: remove conditionals for ghc < 8.0. Support for GHC 7.10 has been dropped.
* pandoc.cabal: compile with `-Wcpp-undef` when possible
* pandoc.cabal: compile with `-fhide-source-paths` if possible
2019-08-26 17:04:30 -07:00
John MacFarlane
b446c6c448 parseFromString': reset stateLastStrPos to Nothing before parse. 2019-08-26 15:52:25 -07:00
John MacFarlane
1dec5bacaa Use parseFromString' in Muse reader.
Now that it is polymorphic, this is possible, and it's a
better choice because it resets last string pos.
2019-08-26 15:30:58 -07:00
John MacFarlane
21c44da17a Fix inline parsing in grid table cells.
* T.P.Parsing: Change type of `setLastStrPos` so it takes a
  `Maybe SourcePos` rather than a `SourcePos`. [API change]
* T.P.Parsing: Make `parseFromString'` and `gridTableWith` and
  `gridTableWith'` polymorphic in the parser state, constraining it with
  `HasLastStrPosition`.  [API change]

Closes #5708.
2019-08-26 15:25:39 -07:00
John MacFarlane
180f534d21 Add test for issue #5708. 2019-08-26 15:20:22 -07:00
John MacFarlane
faae6f16c7 Add ghc 8.8.1 to CI. 2019-08-26 13:06:04 -07:00
John MacFarlane
8a26422bfc Use dev version of doctemplates. 2019-08-25 23:49:40 -07:00
John MacFarlane
2143d4d2a0 Better message for PandocTemplateError. 2019-08-25 23:49:25 -07:00
John MacFarlane
e2c4d1ccfc Makefile: add ghcid target. 2019-08-25 15:38:17 -07:00
John MacFarlane
188bd5e1e9 Update cabal.project to use released doctemplates. 2019-08-25 14:30:19 -07:00
John MacFarlane
1ee6e0e087 Use new doctemplates, doclayout.
+ Remove Text.Pandoc.Pretty; use doclayout instead. [API change]
+ Text.Pandoc.Writers.Shared: remove metaToJSON, metaToJSON'
  [API change].
+ Text.Pandoc.Writers.Shared: modify `addVariablesToContext`,
  `defField`, `setField`, `getField`, `resetField` to work with
  Context rather than JSON values. [API change]
+ Text.Pandoc.Writers.Shared: export new function `endsWithPlain` [API
  change].
+ Use new templates and doclayout in writers.
+ Use Doc-based templates in all writers.
+ Adjust three tests for minor template rendering differences.
+ Added indentation to body in docbook4, docbook5 templates.

The main impact of this change is better reflowing of content
interpolated into templates.  Previously, interpolated variables
were rendered independently and intepolated as strings, which could lead
to overly long lines.  Now the templates interpolated as Doc values
which may include breaking spaces, and reflowing occurs
after template interpolation rather than before.
2019-08-25 14:24:31 -07:00
John MacFarlane
8959c44e6a Got benchmarks working with ipynb. 2019-08-25 14:24:31 -07:00
John MacFarlane
fdb7a5b79f Don't add a newline if there's already one. 2019-08-25 14:24:31 -07:00
Owen McGrath
92debe4b9e Change optMetadataFile type from Maybe to List (#5702)
Changed optMetadataFile from `Maybe FilePath` to `[FilePath]`. This allows
for multiple YAML metadata files to be added. The new default value has
been changed from `Nothing` to `[]`.

To account for this change in `Text.Pandoc.App`, `metaDataFromFile` now
operates on two `mapM` calls (for `readFileLazy` and `yamlToMeta`) and a fold.

Added a test (command/5700.md) which tests this functionality and
updated MANUAL.txt, as per the contributing guidelines.

With the current behavior, using `foldr1 (<>)`, values within files
specified first will be used over those in later files. (If the reverse
of this behavior would be preferred, it should be fixed by changing
foldr1 to foldl1.)
2019-08-24 09:41:25 -07:00