Age | Commit message (Collapse) | Author | Files | Lines |
|
Closes #3703.
|
|
in Text.Pandoc.Lua. Also to pushPandocModule.
This change allows users to override pandoc.lua with a file
in their local data directory, adding custom functions, etc.
@tarleb, if you think this is a bad idea, you can revert this.
But in general our data files are all overridable.
|
|
Now these functions return a pair of a reader/writer and an
Extensions, instead of building the extensions into the
reader/writer. The calling code must explicitly set
readerExtensions or writerExtensions using the Extensions
returned.
The point of the change is to make it possible for the
calling code to determine what extensions are being used.
See #3659.
|
|
This specifies the subdirectory in the OCF container that
holds the EPUB specific content.
Closes #3720.
|
|
The readers previously assumed that CRs had been filtered
from the input. Now we strip the CRs in the readers themselves,
before parsing. (The point of this is just to simplify the
parsers.)
Shared now exports a new function `crFilter`. [API change]
And `tabFilter` no longer filters CRs.
|
|
|
|
Text.Pandoc.App: trap LuaException and issue a PandocFilterError.
|
|
Formerly tracing was just log messages with a DEBUG log
level. We now make these things independent. Tracing
can be turned on or off in PandocMonad using `setTrace`;
it is independent of logging.
* Removed `DEBUG` from `Verbosity`.
* Removed `ParserTrace` from `LogMessage`.
* Added `trace`, `setTrace` to `PandocMonad`.
|
|
This will ensure that we only need to update these in one place.
(Currently, for example, the mathjax URL is used in both
App and trypandoc.)
Closes #3685.
|
|
This should fix the appveyor failures.
|
|
* XML.toEntities: changed type to Text -> Text.
* Shared.tabFilter -- fixed so it strips out CRs as before.
* Modified writers to take Text.
* Updated tests, benchmarks, trypandoc.
[API change]
Closes #3731.
|
|
Readers: Renamed StringReader -> TextReader.
Updated tests.
API change.
|
|
|
|
|
|
|
|
|
|
|
|
We also export the set of known `schemes`.
The new function replaces the function of the same name
from `Network.URI`, as the latter did not check whether a scheme is
well-known. E.g. MediaWiki wikis frequently feature pages with names
like `User:John`. These links were interpreted as URIs, thus turning
internal links into global links. This is prevented by also checking
whether the scheme of a URI is frequently used (i.e. is IANA registered
or an otherwise well-known scheme).
Fixes: #2713
Update set of well-known URIs from IANA list
All official IANA schemes (as of 2017-05-22) are included in the set of
known schemes. The four non-official schemes doi, isbn, javascript, and
pmid are kept.
|
|
Add `Native` to the `LineEnding` type.
Make `optEol` a `Native` rather than `Maybe Native`.
|
|
This can be used e.g. to pass options via web interface,
such as trypandoc.
|
|
* Default is just working directory.
* Working directory must be explicitly specifide if
`--resource-path` option is used.
|
|
SEARCHPATH is separated by the usual character,
depending on OS (: on unix, ; on windows).
Note: This does not yet work for PDF output, because the
routine that creates PDFs runs outside PandocMonad.
(This has to do with its use of inTemporaryDirectory and
its interaction with our exceptions.)
The best solution would be to figure out how to move the
PDF creation routines into PandocMonad. Second-best,
just pass an extra parameter in?
See #852.
|
|
* Add `--eol=crlf|lf` CLI option.
* Add `optEol` to `WriterOptions` [API change]
* In `Text.Pandoc.UTF8`, add new functions parameterized on `Newline`:
`writeFileWith`, `putStrWith`, `putStrLnWith`, `hPutStrWith`,
`hPutStrLnWith`. [API change]
* Document option in MANUAL.txt.
Closes #3663.
Closes #2097.
|
|
This follows the suggestions given by the FSF for GPL licensed software.
<https://www.gnu.org/prep/maintain/html_node/Copyright-Notices.html>
|
|
|
|
Also generalized type of fillMedia to any instance of PandocMonad.
|
|
Closes #3646.
|
|
Report warning instead and change image to its alt text.
|
|
If `--extract-media` is supplied with a non-binary input format,
pandoc will attempt to extract the contents of all linked images,
whether in local files, data: uris, or external uris.
They will be named based on the sha1 hash of the contents.
Closes #1583, #2289.
Notes:
- One thing that is slightly subideal with this commit is that
identical resources will be downloaded multiple times. To improve
this we could have mediabag store an original filename/url +
a new name.
- We might think about reusing some of this code, since more or less the
same thing is done in the Docx, EPUB, PDF writers (with slight
variations).
|
|
|
|
Closes #3548.
|
|
Use this instead of PandocAppError when appropriate.
Removed exit code from PandocAppError, use 1 for all.
|
|
|
|
|
|
|
|
- PandocSyntaxMapError String
- PandocFailOnWarningError
- PandocPDFProgramNotFoundError String
|
|
|
|
|
|
|
|
These are caught (and lead to exit) in pandoc.hs, but
other uses of Text.Pandoc.App may want to recover in another
way.
Added PandocAppError to PandocError (API change).
This is a stopgap: later we should have a separate constructor
for each type of error.
Also fixed uses of 'exit' in Shared.readDataFile, and
removed 'err' from Shared (API change).
Finally, removed the dependency on extensible-exceptions.
See #3548.
|
|
Also include a sample, `default.theme`, in `data/`.
|
|
New URL: https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js
Announcement: https://www.mathjax.org/cdn-shutting-down/
NOTE: The new URL requires a version number, which we'll have
to update manually in subsequent pandoc releases in order to
take advantage of mathjax improvements.
Closes #3544.
|
|
|
|
See #3334.
* Add writerSyntaxMap to WriterOptions.
* Highlighting: added parameter for SyntaxMap to highlight.
* Implemented --syntax-definition option.
TODO:
[ ] Figure out whether we want to have the xml parsing
depend on the dtd (it currently does, and fails unless
the language.dtd is found in the same directory).
[ ] Add an option to read a KDE syntax highlighting theme
as a custom style.
[ ] Add tests.
|
|
|
|
This way people can do
pandoc -s -t jats --filter pandoc-citeproc
and it will just work. If they want to specify a stylesheet,
they still can.
|
|
|
|
pandoc -t ms -o output.pdf input.txt
|
|
* New module: Text.Pandoc.Writers.Ms.
* New template: default.ms.
* The writer uses texmath's new eqn writer to convert math
to eqn format, so a ms file produced with this writer
should be processed with `groff -ms -e` if it contains
math.
|
|
* Add `--lua-filter` option. This works like `--filter` but takes pathnames of special lua filters and uses the lua interpreter baked into pandoc, so that no external interpreter is needed. Note that lua filters are all applied after regular filters, regardless of their position on the command line.
* Add Text.Pandoc.Lua, exporting `runLuaFilter`. Add `pandoc.lua` to data files.
* Add private module Text.Pandoc.Lua.PandocModule to supply the default lua module.
* Add Tests.Lua to tests.
* Add data/pandoc.lua, the lua module pandoc imports when processing its lua filters.
* Document in MANUAL.txt.
|