aboutsummaryrefslogtreecommitdiff
path: root/pandoc.hs
AgeCommit message (Collapse)AuthorFilesLines
2017-01-25pandoc.hs: moved main loop to beginning of file.John MacFarlane1-368/+371
2017-01-25Refactored pandoc.hs so that all the runIO' part comes at the end.John MacFarlane1-50/+50
2017-01-25pandoc.hs - moved some utility functions out of main loop.John MacFarlane1-28/+30
2017-01-25More refactoring of pandoc.hs for clarity.John MacFarlane1-28/+21
2017-01-25Put filter running code into MonadIOJohn MacFarlane1-11/+12
2017-01-25Fixed a misleading comment.John MacFarlane1-1/+1
2017-01-25Added a type signatureJohn MacFarlane1-1/+2
2017-01-25More refactoring of pandoc.hs for clarity.John MacFarlane1-22/+25
2017-01-25Slight code rearrangement in preparation for...John MacFarlane1-45/+47
...passing mediabag in the PandocIO monad.
2017-01-25Removed deprecated `--no-wrap` option.John MacFarlane1-7/+0
2017-01-25Removed deprecated `--chapters` option.John MacFarlane1-7/+0
2017-01-25Simplified reference-docx/reference-odt to reference-doc.John MacFarlane1-18/+7
* 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-25Process.pipeProcess: stream stderr rather than capturing.John MacFarlane1-2/+1
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-25Added `--fail-if-warnings` option.John MacFarlane1-5/+20
2017-01-25LaTeX reader: Proper include file processing.John MacFarlane1-12/+2
* 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-25Added a `--quiet` option to suppress warnings.John MacFarlane1-10/+19
Use this also in Tests.Old.
2017-01-25New withWarningsToStderr exported from Text.Pandoc.Class.John MacFarlane1-5/+12
And use this in pandoc.hs so that messages actually get printed.
2017-01-25Remove redundant import.Jesse Rosenthal1-1/+1
2017-01-25Finish converting readers over.Jesse Rosenthal1-8/+9
2017-01-25Have to do some work to get the mediabag out.Jesse Rosenthal1-13/+20
2017-01-25Deleted whitespace at end of source lines.John MacFarlane1-1/+1
2017-01-25Clean up Text.PandocJesse Rosenthal1-5/+5
We had primed versions of all the Writer types and getWriter functions, as we transitioned. Now that we're using the new ones exclusively, we'll get rid of the old ones, and get rid of the primes in the names.
2017-01-25Convert all writers to use PandocMonad.Jesse Rosenthal1-18/+21
Since PandocMonad is an instance of MonadError, this will allow us, in a future commit, to change all invocations of `error` to `throwError`, which will be preferable for the pure versions. At the moment, we're disabling the lua custom writers (this is temporary). This requires changing the type of the Writer in Text.Pandoc. Right now, we run `runIOorExplode` in pandoc.hs, to make the conversion easier. We can switch it to the safer `runIO` in the future. Note that this required a change to Text.Pandoc.PDF as well. Since running an external program is necessarily IO, we can be clearer about using PandocIO.
2017-01-19Some fixes to permit breezeDark style.John MacFarlane1-2/+2
2017-01-19Add breezeDark to the list of highlighting styles.John MacFarlane1-0/+1
2016-12-23Updates to use skylighting rather than highlighting-kate.John MacFarlane1-4/+7
So far this just reproduces capacity. Later we'll be able to add features like warning messages, dynamic loading of xml syntax definitions, and dynamic loading of themes.
2016-12-09We no longer need the MathMLInHTML.js shim from 2004!John MacFarlane1-3/+0
2016-12-08Set PANDOC_VERSION environment variable for filters.John MacFarlane1-2/+4
Closes #2640.
2016-12-07Fixed bash completion for filenames with spaces.John MacFarlane1-2/+3
Closes #2749.
2016-11-30Options: Removed writerStandalone, made writerTemplate a Maybe.John MacFarlane1-5/+4
Previously setting writerStandalone = True did nothing unless a template was provided in writerTemplate. Now a fragment will be generated if writerTemplate is Nothing; otherwise, the specified template will be used and standalone output generated. [API change]
2016-11-27Refactor top-level division selection (#3261)Albert Krewinkel1-6/+9
The "default" option is no longer represented as `Nothing` but via a new type constructor, making the `Maybe` wrapper superfluous. The default behavior of using heuristics can now be enabled explicitly by setting `--top-level-division=default`. API change (`Text.Pandoc.Options`): The `Division` type was renamed to `TopLevelDivision`. The `Section`, `Chapter`, and `Part` constructors were renamed to `TopLevelSection`, `TopLevelChapter`, and `TopLevelPart`, respectively. An additional `TopLevelDefault` constructor was added, which is now also the new default value of the `writerTopLevelDivision` field in `WriterOptions`.
2016-11-26Allow to overwrite top-level division type heuristics (#3258)Albert Krewinkel1-4/+4
Pandoc uses heuristics to determine the most resonable top-level division type when emitting LaTeX or Docbook markup. It is now possible to overwrite this implicitly set top-level division via the `top-level-division` command line parameter. API change (`Text.Pandoc.Options`): the type of the `writerTopLevelDivision` field in of the `WriterOptions` data type is altered from `Division` to `Maybe Division`. The field's default value is changed from `Section` to `Nothing`. Closes: #3197
2016-11-21Cleaned up filter-finding.John MacFarlane1-40/+27
* Removed a hardcoded '/' that may have caused problems with Windows paths. * Cleaned up the logic.
2016-11-21Changed resolution of filter paths.John MacFarlane1-12/+15
- We now first treat the argument of `--filter` as a full (absolute or relative) path, looking for a program there. If it's found, we run it. - If not, and if it is a simple program name or a relative path, we try resolving it relative to `$DATADIR/filters`. - If this fails, then we treat it as a program name and look in the user's PATH. Previously if you did `--filter foo` and you had `foo` in your path and also an executable `foo` in your working directory, the one in the path would be used. Now the one in the working directory is used. In addition, when you do `--filter foo/bar.hs`, pandoc will now find a filter `$DATADIR/filters/foo/bar.hs` -- assuming there isn't a `foo/bar.hs` relative to the working directory. @jkr note the slight revision of what we had before. This was motivated by the idea that one might clone filter repositories into the filters subdirectory; it is nice to be able to run them as `reponame/filtername`.
2016-11-18In --version, trap error in getAppUserDataDirectory.John MacFarlane1-1/+4
This fixes a crash with `pandoc --version` on unusual systems with no real user (e.g. SQL Server 2016). Closes #3241.
2016-11-05Allow `file://` URIs as arguments.John MacFarlane1-0/+4
Also improved default reader format detection. Previously with a URI ending in .md or .markdown, pandoc would assume HTML input. Now it treats these as markdown. Closes #3196.
2016-11-03Improved error if they give wrong arg to --top-level-division.John MacFarlane1-1/+1
2016-10-26Print highlighting-kate version in --version.John MacFarlane1-1/+1
2016-10-24Export Text.Pandoc.Error in Text.Pandoc.John MacFarlane1-1/+0
[API change]
2016-10-24Fixed typo in deprecation warning.John MacFarlane1-1/+1
2016-10-23Allow binary formats to be written to stdout unless tty output.John MacFarlane1-5/+15
Only works on posix. On Windows, pandoc works as before and requires an output file parameter for binary formats. Closes #2677.
2016-10-23Added --list-* options.John MacFarlane1-28/+63
Added `--list-input-formats`, `--list-output-formats`, `--list-extensions`, `--list-highlight-languages`, `--list-highlight-styles`. Removed list of highlighting languages from `--version` output. Removed list of input and output formats from default `--help` output. Closes #3173.
2016-10-19Add option for top-level division typeAlbert Krewinkel1-13/+14
The `--chapters` option is replaced with `--top-level-division` which allows users to specify the type as which top-level headers should be output. Possible values are `section` (the default), `chapter`, or `part`. The formats LaTeX, ConTeXt, and Docbook allow `part` as top-level division, TEI only allows to set the `type` attribute on `div` containers. The writers are altered to respect this option in a sensible way.
2016-09-06Add --parts command line option to LaTeX writer.Oliver Matthews1-0/+9
Add --parts command line argument. This only effects LaTeX writer, and only for non-beamer output formats. It changes the output levels so the top level is 'part', the next 'chapter' and then into sections.
2016-10-11Add reference-location options to executable.Jesse Rosenthal1-0/+17
2016-10-06Replace Google Chart API by CodeCogsKolenCheung1-1/+1
2016-10-03Update KaTeX to v0.6.0KolenCheung1-2/+2
2016-09-30Execute .js filters with nodeJakob Voß1-0/+1
2016-09-27Check `$DATADIR/filters` for filtersJesse Rosenthal1-5/+20
If the `$DATADIR/filters` is present, pandoc will look in it for filters specified without a path, before looking in the $PATH. Note that unlike executables in $PATH, the `filters` dir may contain scripts that are not executable (pandoc will try to execute them using an associated interpreter, if possible). Note: the `filters` dir has priority over the user path. In order of preference, pandoc will look in: 1. a specified full or relative path (executable or non-executable) 2. `$DATADIR/filters` (executable or non-executable) 3. `$PATH` (executable only) This closes #3127.
2016-08-16synchronize spacing of footnotes in help outputWaldir Pimenta1-2/+2
- remove a space between `[` and `*` in the list of input formats, to match the list of output formats - add space after the `*`s, for improved readability