Age | Commit message (Collapse) | Author | Files | Lines |
|
The new version of doctemplates adds many features to pandoc's
templating system, while remaining backwards-compatible.
New features include partials and filters. Using template filters,
one can lay out data in enumerated lists and tables.
Templates are now layout-sensitive: so, for example, if a
text with soft line breaks is interpolated near the end of
a line, the text will break and wrap naturally. This makes
the templating system much more suitable for programatically
generating markdown or other plain-text files from metadata.
|
|
|
|
|
|
when converting SVG to PDF in the process of creating a PDF.
Closes #5721.
|
|
even if the pdf program is not found.
Closes #5720.
|
|
+ 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.
|
|
Should close #5451.
Unlike the earlier fix, this one doesn't spill out to stderr
when 'uname -o' fails.
|
|
This reverts commit 50885eabde6e9ba524d74a234154766f4c522627.
Reopens #5451.
The problem with the previous commit is that it would lead to
spurious messages on stderr on platforms like macOS.
|
|
See #5451.
|
|
Previously the TOC appeared at the end of the document,
and was not bookmarked.
If you want it to continue appearing at the end, add
`--pdf-engine-opt=--no-toc-relocation` to your command
line.
Closes #5553.
|
|
If the character isn't in the console font, the
message is pretty useless, so we show the code
point for anything non-ASCII.
Closes #5538.
|
|
This is currently possible with `mklatex` and `-outdir`, but
was not yet possible with xelatex and `-output-directory`.
Closes #5462.
|
|
We use forward-slash for a directory separator in tmpDir,
even on Windows (because that's what tex likes). So we
should not put a backslash between the tmpDir and the
filename on Windows. This is harmless enough in normal
Windows setups, but it breaks on Cygwin.
Closes #5451. Thanks to @cc2x for noticing and diagnosing
the problem.
|
|
|
|
Closes #5345
Runs tectonic on STDIN instead of a temporary .tex file, so that it
looks in the working directory for `\include` and `\input` like the rest
of the engines.
Allows overriding the output directory without messing up the args
with `--pdf-engine-opt=--outdir --pdf-engine-opt="$DIR"`.
|
|
...to allow warnings to be threaded through.
Additional fix for #5343.
|
|
Closes #5343.
|
|
The haddock module header contains essentially the
same information, so the boilerplate is redundant and
just one more thing to get out of sync.
|
|
Closes #3195.
Note that you can use --pdf-engine-opt=-outdir=bar to specify
a persistent temp dir.
|
|
Quite a few modules were missing copyright notices.
This commit adds copyright notices everywhere via haddock module
headers. The old license boilerplate comment is redundant with this and has
been removed.
Update copyright years to 2019.
Closes #4592.
|
|
Now, instead of always creating temp dirs in the home
directory on Windows, we only do it if the system tempdir
name contains tildes. (This will be the case for longer
usernames only.)
Closes #1192.
|
|
Previously the temp directory was created inside the working
directory, so that programs like epstopdf.pl would be allowed
to run in restricted mode. However, setting TEXMFOUTPUT allows
these programs to run in the tmpdir inside the system temp
directory.
This is a better solution than cd51983. Using the system
temp dir prevents problems when pandoc is run inside a synced
directory (e.g. dropbox).
Partially addresses #1192.
|
|
When rsvg-convert is not available, pandoc would tell the user to check for rsvg2pdf instead
|
|
Closes #4755.
This will mean some increase in the time it takes to
produce an image-heavy PDF with xelatex, but it will
make tables of contents correct, which is more important.
Note that the production time should also be decreased
by the previous commit, which fixed a logic error
affecting the number of runs. That change might mitigate
the effect of this one.
|
|
We were running the tex program one more time than requested.
This should speed up pdf production.
|
|
Fixes #4681.
|
|
* Revert "PDF: Use withTempDir in html2pdf." We're going back to using tmpFile instead of piping
* Revert "html2pdf: inject base tag wih current working directory (#4443)"
Fixes #4413
|
|
pdflatex converts them itself, and JuicyPixels can't do it.
See #2067.
|
|
Otherwise we can have problems with things like epstopdf.pl,
which pdflatex runs to convert eps files and which won't run
on a file above the working directory in restricted mode.
|
|
This is intended to help with #4524, a problem on Windows
where using weasyprint led to a blank PDF.
|
|
This saves time for image-heavy documents. Closes #4484.
|
|
This seems to be necessary if we are to use our custom Prelude
with ghci.
Closes #4464.
|
|
|
|
fixes #4413
|
|
|
|
|
|
|
|
|
|
|
|
- Removed writerPdfArgs from WriterOptions (API change).
- Added parameter for pdf args to makePDF.
|
|
They can be obtained from CommonState since we're
in PandocIO.
|
|
Removed `writerSourceURL` from `WriterOptions` (API change).
Added `stSourceURL` to `CommonState`.
It is set automatically by `setInputFiles`.
Text.Pandoc.Class now exports `setInputFiles`, `setOutputFile`.
The type of `getInputFiles` has changed; it now returns `[FilePath]`
instead of `Maybe [FilePath]`.
Functions in Class that formerly took the source URL as a parameter
now have one fewer parameter (`fetchItem`, `downloadOrRead`,
`setMediaResource`, `fillMediaBag`).
Removed `WriterOptions` parameter from `makeSelfContained` in
`SelfContained`.
|
|
* Rename --latex-engine to --pdf-engine
* In `Text.Pandoc.Options.WriterOptions`, rename `writerLaTeXEngine` to `writerPdfEngine` and `writerLaTeXArgs` to `writerPdfArgs`.
* Add support for `weasyprint` and `prince`, in addition to `wkhtmltopdf`, for PDF generation via HTML (closes #3906).
* `Text.Pandoc.PDF.html2pdf`: use stdin instead of intermediate HTML file
|
|
|
|
Instead, just try running it and raise the exception if it
isn't found at that point.
This improves things for users of Cygwin on Windows, where
the executable won't be found by `findExecutable` unless
`.exe` is added.
The same exception is raised as before, but at a later
point.
Closes #3819.
|
|
Closes #1793.
|
|
* Added `MissingCharacter` to `LogMessage` in Text.Pandoc.Logging.
* Parse the (xe)latex log for missing character warnings and issue
the warning.
Closes #3742.
|
|
* 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.
|
|
See #852.
|
|
|