Commit graph

3900 commits

Author SHA1 Message Date
John MacFarlane
9db98550df Refactored include file handling in LaTeX reader. 2017-02-07 19:16:56 +01:00
John MacFarlane
47a16065c4 Removed --parse-raw and readerParseRaw.
These were confusing.

Now we rely on the +raw_tex or +raw_html extension with latex
or html input.

Thus, instead of

    --parse-raw -f latex

we use

    -f latex+raw_tex

and instead of

     --parse-raw -f html

we use

    -f html+raw_html
2017-02-06 23:33:23 +01:00
John MacFarlane
c604371aa4 Fix import 2017-02-06 17:03:03 +01:00
John MacFarlane
4cdb1a0891 Changed year on copyright message. 2017-02-06 14:53:31 +01:00
John MacFarlane
37e579581a Consolidated file arguments into Opt. 2017-02-06 14:52:16 +01:00
John MacFarlane
67dc15771d Further refactoring of App.
Moved option parsing code into App.
pandoc.hs is now a 2-liner.
2017-02-06 14:46:48 +01:00
John MacFarlane
b4ccb70893 Fix an unneeded import warning. 2017-02-05 23:12:58 +01:00
John MacFarlane
c93ecfc3c5 Handle language in inline code with --listings.
Closes #3422.
2017-02-05 22:22:42 +01:00
John MacFarlane
0bbea0cc76 Split pandoc.hs into a module, Text.Pandoc.App, and a small program.
The App module provides a function that does a pandoc conversion,
based on option settings.  The program (pandoc.hs) now does nothing
more than parse options and pass them to this function, which can
easily be used by other applications (e.g. a GUI wrapper).

The Opt structure has been further simplified.

API changes:

* New exposed module Text.Pandoc.App
* Text.Pandoc.Highlighting has been exposed.
* highlightingStyles has been moved to Text.Pandoc.Highlighting.
2017-02-05 21:58:45 +01:00
John MacFarlane
5f2f2efe32 Removed redundant import. 2017-02-05 11:54:05 +01:00
Thenaesh Elango
942189056d Allow user to specify User-Agent (#3421)
This commit enables users to specify the User-Agent
header used when pandoc requests a document from
a URL. This is done by setting an environment variable.
For instance, one can do:
USER_AGENT="..." ./pandoc -f html -t markdown http://example.com

Signed-off-by: Thenaesh Elango <thenaeshelango@gmail.com>
2017-02-05 11:28:39 +01:00
John MacFarlane
63b568f445 Changed writerEpubMetadata to a Maybe String.
API change.
2017-02-04 22:51:51 +01:00
John MacFarlane
7404c83fb3 Improved escaping in RST writer with smart option. 2017-02-04 22:09:06 +01:00
Albert Krewinkel
623d860be6
Org writer: reduce to two spaces after bullets
The org writer was inserting two spaces after list bullets. Emacs
Org-mode defaults to a single space, so behavior is changed to reflect
this.

Closes: #3417
2017-02-04 21:15:05 +01:00
John MacFarlane
e0abe18bb9 Markdown writer: Better escaping when +smart. 2017-02-04 21:06:42 +01:00
John MacFarlane
8418c1a7d7 Implemented +/-smart in rst writer.
Moved unsmartify to Writers.Shared.
2017-02-04 12:52:08 +01:00
John MacFarlane
76aa43c579 Docx reader: handle local namespace declarations.
Previously we didn't recognize math, for example, when
the xmlns declaration occured on the element and not the root.
Now we recognize either.

Closes #3365.

This patch defines findChildByName, findChildrenByName,
and findAttrByName in Util, and uses these in Parse.
2017-02-03 22:23:07 +01:00
John MacFarlane
23e6495624 Docx reader: Don't drop smartTag contents.
This just parses inside smartTags and yields their contents,
ignoring the attributes of the smartTag.  @jkr, you may want
to adjust this, but I wanted to get a fix in as fast as possible
for the dropped content.

Closes #2242; see also #3412.
2017-02-03 11:57:07 +01:00
Mauro Bieg
5cd475be70 HTML and DocBook writers: fix internal links with writerIdentifierPrefix opt (#3398)
closes #3397
2017-02-03 09:53:43 +01:00
Alexander Krotov
9327e70c10 Org.hs: remove misleading comment
This comment is likely copied from RST.hs where 'refs' variable indeed exists, but makes no sense here.
2017-02-02 08:58:35 +01:00
Alexander Krotov
59a2e5575a Reduce state in Org writer (#3404) 2017-02-01 12:00:40 +01:00
John MacFarlane
7018003811 --mathml and MathML in HTMLMathMethod longer take an argument.
The argument was for a bridge javascript that used to be necessary
in 2004.  We have removed the script already.
2017-01-30 11:31:50 +01:00
John MacFarlane
5e2754f515 Make epub an alias for epub3, not epub2. 2017-01-30 10:19:30 +01:00
John MacFarlane
d2e0592e01 LaTeX writer: export writeBeamer.
Removed writerBeamer from WriterOptions.
2017-01-28 09:52:45 +01:00
John MacFarlane
91cdcc796d HTML: export separate functions for slide formats.
writeS5, writeSlideous, writeRevealJs, writeDZSlides, writeSlidy.

Removed writerSlideVariant from WriterOptions.
2017-01-27 22:39:36 +01:00
John MacFarlane
5156a4fe3c Shared: rename compactify', compactify'DL -> compactify, compactifyDL. 2017-01-27 21:36:45 +01:00
John MacFarlane
56f74cb0ab Removed Shared.compactify.
Changed signatures on Parsing.tableWith and Parsing.gridTableWith.
2017-01-27 21:30:35 +01:00
John MacFarlane
4ccbdf4e8d Expose FileTree in Class 2017-01-27 11:15:42 +01:00
John MacFarlane
f5dd123819 HTML writer: export writeHtmlStringForEPUB.
Options: Remove writerEPUBVersion.
2017-01-27 10:27:34 +01:00
John MacFarlane
b6c1d491f5 Split writeDocbook into writeDocbook4, writeDocbook5.
Removed writerDocbookVersion in WriterOptions.
Renamed default.docbook template to default.docbook4.
Allow docbook4 as an output format.
But alias docbook = docbook4.
2017-01-26 22:40:57 +01:00
John MacFarlane
190943e1fd EPUB writer: split writeEPUB into writeEPUB2, writeEPUB3.
Also include explicit epub2 output format in CLI tool.
2017-01-26 22:09:21 +01:00
John MacFarlane
fce0a60f0a Provide explicit separate functions for HTML 4 and 5.
* Text.Pandoc.Writers.HTML: removed writeHtml, writeHtmlString,
  added writeHtml4, writeHtml4String, writeHtml5, writeHtml5String.
* Removed writerHtml5 from WriterOptions.
* Renamed default.html template to default.html4.
* "html" now aliases to "html5"; to get the old HTML4 behavior,
  you must now specify "-t html4".
2017-01-25 21:51:26 +01:00
John MacFarlane
2985e0ea4f Removed unneeded exports. 2017-01-25 21:10:49 +01:00
John MacFarlane
65b8570e0e Cleanups for rebase. 2017-01-25 17:07:43 +01:00
John MacFarlane
73e343cfcd Fixed small mistake in instance for logOutput. 2017-01-25 17:07:43 +01:00
John MacFarlane
70b86f48e1 Removed readerVerbosity and writerVerbosity.
API change.

Also added a verbosity parameter to makePDF.
2017-01-25 17:07:43 +01:00
John MacFarlane
bc7e846da6 More logging-related changes.
Class:

* Removed getWarnings, withWarningsToStderr
* Added report
* Added logOutput to PandocMonad
* Make logOutput streaming in PandocIO monad
* Properly reverse getLog output

Readers:

* Replaced use of trace with report DEBUG.

TWiki Reader:  Put everything inside PandocMonad m.

API changes.
2017-01-25 17:07:43 +01:00
John MacFarlane
4e97efe857 Class: Changes around logging.
* Export getLog, setVerbosity
* Add report to PandocMonad methods.
* Redefine warning and getWarnings in terms of getLog and report.
* Remove stWarnings from CommonState, add stLog and stVerbosity.
2017-01-25 17:07:43 +01:00
John MacFarlane
8280d6a489 Changes to verbosity in writer and reader options.
API changes: Text.Pandoc.Options:

* Added Verbosity.
* Added writerVerbosity.
* Added readerVerbosity.
* Removed writerVerbose.
* Removed readerTrace.

pandoc CLI:  The `--trace` option sets verbosity to DEBUG;
the `--quiet` option sets it to ERROR, and the `--verbose`
option sets it to INFO.  The default is WARNING.
2017-01-25 17:07:43 +01:00
John MacFarlane
d1efc839f1 Removed writerHighlight; made writerHighlightStyle a Maybe.
API change.

For no highlighting, set writerHighlightStyle to Nothing.
2017-01-25 17:07:43 +01:00
John MacFarlane
6f9df9b4f1 Removed vestigial writerMediaBag from WriterOptions.
API change.
2017-01-25 17:07:43 +01:00
John MacFarlane
01483f91bd Revert "Added page breaks into Pandoc."
This reverts commit f02a12aff638fa2339192231b8f601bffdfe3e14.
2017-01-25 17:07:43 +01:00
John MacFarlane
73f57daf69 Fixed shadowing warnings. 2017-01-25 17:07:43 +01:00
John MacFarlane
17916f478b Put an Integer rather than Word64 behind Extensions.
This allows us to expand indefinitely.
No measurable performance penalty.
2017-01-25 17:07:42 +01:00
John MacFarlane
4007d6a897 Removed writerIgnoreNotes.
Instead, just temporarily remove notes when generating
TOC lists in HTML and Markdown (as we already did in LaTeX).

Also export deNote from Text.Pandoc.Shared.

API change in Shared and Options.WriterOptions.
2017-01-25 17:07:42 +01:00
John MacFarlane
2d04922cd0 Factored out deNote in Shared. 2017-01-25 17:07:42 +01:00
John MacFarlane
00c6c371f2 Removed unused readerFileScope.
API change.
2017-01-25 17:07:42 +01:00
John MacFarlane
a3c3694024 Removed writerMediaBag from WriterOpts.
...since this is now handled through PandocMonad.

Added an explicit MediaBag parameter to makePDF and makeSelfContained.
2017-01-25 17:07:42 +01:00
John MacFarlane
0bcc81c0b1 Removed writerTeXLigatures.
Make `smart` extension work in LaTeX/ConTeXt writers instead.

Instead of `-t latex --no-tex-ligatures`, do `-t latex-smart`.
2017-01-25 17:07:42 +01:00
John MacFarlane
4f6e6247f9 Made smart extension default for pandoc markdown.
Updated tests.
2017-01-25 17:07:42 +01:00