Commit graph

7737 commits

Author SHA1 Message Date
John MacFarlane
49502b9a02 Added a type signature 2017-01-25 17:07:41 +01:00
John MacFarlane
1bdf23c697 More refactoring of pandoc.hs for clarity. 2017-01-25 17:07:41 +01:00
John MacFarlane
8beba65977 Slight code rearrangement in preparation for...
...passing mediabag in the PandocIO monad.
2017-01-25 17:07:41 +01:00
John MacFarlane
f1ef0e3645 Finished previous commit; removed export of toJsonFilter. 2017-01-25 17:07:41 +01:00
John MacFarlane
f91a6b541f Removed deprecated toJsonFilter.
Use toJSONFilter from Text.Pandoc.JSON.
2017-01-25 17:07:41 +01:00
John MacFarlane
87170e2af4 Removed deprecated --no-wrap option. 2017-01-25 17:07:41 +01:00
John MacFarlane
767638a54e Removed deprecated --chapters option. 2017-01-25 17:07:41 +01:00
John MacFarlane
ce1664cf2b Simplified reference-docx/reference-odt to reference-doc.
* Text.Pandoc.Options.WriterOptions: removed writerReferenceDocx
  and writerReferenceODT, replaced them with writerReferenceDoc.
  This can hold either an ODT or a Docx. In this way, writerReferenceDoc
  is like writerTemplate, which can hold templates of different
  formats. [API change]

* Removed `--reference-docx` and `--reference-odt` options.

* Added `--reference-doc` option.
2017-01-25 17:07:41 +01:00
John MacFarlane
9570f59066 Process.pipeProcess: stream stderr rather than capturing.
Signature of pipeProcess has changed: the return value is
now IO (ExitCode, ByteString) -- with only stdout. Stderr
is just inherited from the parent.

This means that stderr from filters will now be streamed
as the filters are run.

Closes #2729.
2017-01-25 17:07:41 +01:00
John MacFarlane
da2055d709 RST reader: rebase-related fixes to warnings. 2017-01-25 17:07:41 +01:00
John MacFarlane
f328cfe6a7 Removed unneeded pragmas. 2017-01-25 17:07:41 +01:00
John MacFarlane
bc61c6a632 Remove now-unnecessary lifts in Markdown writer.
Other writers still TBD.
2017-01-25 17:07:41 +01:00
John MacFarlane
4111fdbaf0 Instances of PandocMonad for common transformers. 2017-01-25 17:07:41 +01:00
John MacFarlane
54932ade67 Class: no more MonadState CommonState.
- Added getCommonState, putCommonState, getsCommonState, modifyCommonState
  to PandocMonad interface.

- Removed MonadState CommonState instances.
2017-01-25 17:07:41 +01:00
John MacFarlane
40ac0cf133 Whitespace. 2017-01-25 17:07:41 +01:00
John MacFarlane
7d21238d62 RST reader: removed now unnecessary lifts. 2017-01-25 17:07:41 +01:00
John MacFarlane
931528dba6 Markdown reader: Removed readMarkdownWithWarnings [API change]. 2017-01-25 17:07:41 +01:00
John MacFarlane
8753a91252 Add PandocMonad m instance for ParserT based on PandocMonad.
This will avoid the need for lift.
2017-01-25 17:07:41 +01:00
John MacFarlane
e1d2da4c22 Have warningWithPos take a SourcePos rather than Maybe SourcePos.
After all, we have warning if you don't want the source pos info.
2017-01-25 17:07:41 +01:00
John MacFarlane
f1cec1dd02 LaTeX reader: add warning when parsing unescaped characters
that normally need escaping in LaTeX.
2017-01-25 17:07:40 +01:00
John MacFarlane
92cc80b58b RST reader: implement start-after, end-before fields for include. 2017-01-25 17:07:40 +01:00
John MacFarlane
03ede3e312 RST reader: handle code, literal, number-lines, class, name for include. 2017-01-25 17:07:40 +01:00
John MacFarlane
d595702b17 RST reader include: handle negative values for start-, end-line. 2017-01-25 17:07:40 +01:00
John MacFarlane
223dff4d29 RST reader: support start-line and end-line in include.
Just skip other options for now.
2017-01-25 17:07:40 +01:00
John MacFarlane
ad3ff342dd RST reader: Simple .. include:: support.
TODO: handle the options (see comment in code).
See #223.
2017-01-25 17:07:40 +01:00
John MacFarlane
70aa7b0485 Added --fail-if-warnings option. 2017-01-25 17:07:40 +01:00
Jesse Rosenthal
57cff4b8ae Class: Functions for dealing with PureState
There are two states in PandocPure, but it is only easy to deal with
CommonState. In the past, to do state monad operations on
PureState (the state specific to PandocPure) you had to add (lift
. lift) to the monadic operation and then rewrap in the newtype. This
adds four functions ({get,gets,put,modify}PureState) corresponding to
normal state monad operations. This allows the user to modify
PureState in PandocPure without worrying about where it sits in the
monad stack or rewrapping the newtype.
2017-01-25 17:07:40 +01:00
Jesse Rosenthal
15708f0b0f Class: rename env* prefixed fields to st*.
This was left over from when they were part of an environment.
2017-01-25 17:07:40 +01:00
John MacFarlane
7bf0813814 Shared: changed err and warn output.
Don't print program name in either case.
Print [warning] for warnings.
2017-01-25 17:07:40 +01:00
John MacFarlane
c55a98ff0d LaTeX reader: Make sure we process includes in preamble. 2017-01-25 17:07:40 +01:00
John MacFarlane
7a68617556 LaTeX reader: further fixes to include. 2017-01-25 17:07:40 +01:00
John MacFarlane
62b30d8418 Give source position for include file loop. 2017-01-25 17:07:40 +01:00
John MacFarlane
d7583f3659 Error: change type of handleError.
It now lives in IO and gives a proper message + exit
instead of calling 'error'.

We shouldn't be making it easier for people to raise error on
pure code.  And this is better for the main application
in IO.
2017-01-25 17:07:40 +01:00
John MacFarlane
1a0d93a1d3 LaTeX reader: Proper include file processing.
* Removed handleIncludes from LaTeX reader [API change].
* Now the ordinary LaTeX reader handles includes in a way
  that is appropriate to the monad it is run in.
2017-01-25 17:07:40 +01:00
John MacFarlane
dc1bbaf58d Removed readRSTWithWarnings (now useless). 2017-01-25 17:07:40 +01:00
John MacFarlane
38064498d9 Parsing: Removed obsolete warnings stuff.
Removed stateWarnings, addWarning, and readWithWarnings.
2017-01-25 17:07:40 +01:00
John MacFarlane
1ed925ac20 TWiki reader: Remove old readTWikiWithWarnings'.
We get warnings for free now from PandocM.
(And anyway, this reader doesn't generate any!)
2017-01-25 17:07:40 +01:00
John MacFarlane
a4bd650277 Class: rename addWarning[WithPos] to warning[WithPos].
There's already a function addWarning in Parsing!

Maybe we can dispense with that now, but I still like
'warning' better as a name.
2017-01-25 17:07:40 +01:00
John MacFarlane
63dc6bd025 Added a --quiet option to suppress warnings.
Use this also in Tests.Old.
2017-01-25 17:07:40 +01:00
John MacFarlane
2710fc4261 Class: Renamed 'warn' to 'addWarning' and consolidated RTF writer.
* Renaming Text.Pandoc.Class.warn to addWarning avoids conflict
  with Text.Pandoc.Shared.warn.
* Removed writeRTFWithEmbeddedImages from Text.Pandoc.Writers.RTF.
  This is no longer needed; we automatically handle embedded images
  using the PandocM functions.  [API change]
2017-01-25 17:07:40 +01:00
John MacFarlane
5ab8909661 New withWarningsToStderr exported from Text.Pandoc.Class.
And use this in pandoc.hs so that messages actually get printed.
2017-01-25 17:07:40 +01:00
John MacFarlane
29b3975cbe Make sure texMathToInlines issues warning. 2017-01-25 17:07:40 +01:00
John MacFarlane
830be4d632 Refactored math conversion in writers.
* Remove exported module `Text.Pandoc.Readers.TeXMath`
* Add exported module `Text.Pandoc.Writers.Math`
* The function `texMathToInlines` now lives in `Text.Pandoc.Writers.Math`
* Export helper function `convertMath` from `Text.Pandoc.Writers.Math`
* Use these functions in all writers that do math conversion.

This ensures that warnings will always be issued for failed
math conversions.
2017-01-25 17:07:40 +01:00
Jesse Rosenthal
221f878c0e Class: cleanup and clarification. 2017-01-25 17:07:40 +01:00
Jesse Rosenthal
912eee362b Remove OverlappingInstances pragma.
It doesn't help to solve the problem in 7.8.
2017-01-25 17:07:40 +01:00
Jesse Rosenthal
3cda737dbd Remove redundant import. 2017-01-25 17:07:40 +01:00
Jesse Rosenthal
e35c6c9e4d Try adding OverlappingInstances pragma to parsing.
It's having trouble figuring out HasQuoteContext.
2017-01-25 17:07:40 +01:00
Jesse Rosenthal
650fa20788 Readers: pass errors straight up to PandocMonad.
Since we've unified error types, we can just throw the same error at
the toplevel.
2017-01-25 17:07:40 +01:00
Jesse Rosenthal
9d69c51527 ODT test: remove unnecessary imports. 2017-01-25 17:07:40 +01:00
Jesse Rosenthal
c4c56b8c04 Fix rebasing errors. 2017-01-25 17:07:40 +01:00