| Age | Commit message (Collapse) | Author |
|
|
|
T.P.Parsing now exports `fromParsecError`, which can be used
to turn a parsec ParseError into a regular PandocParseError
(the appearance to the user should be unchanged in every case).
[API change]
Closes #8382.
|
|
highlighting CSS and citations CSS in the source.
|
|
|
|
Closes #8383.
Previously when converting HTML with headings nested under
section elements, pandoc would produce HTML div tags and
a span with an identifier duplicating the one on the div.
It seems better just to omit the superstructure of section
divs, so that's what this commit does, yielding more
normal MediaWiki output.
|
|
|
|
With this change, we reduce the amount of inline CSS used
for EPUBs. Almost everything is now in the default EPUB
CSS (`data/epub.css`), which can be overridden either by
putting `epub.css` in the user data directory or by using
`--css` on the command line. Inline styles are only used
for syntax highlighting (which depends on the style specified,
and is only included on pages with highlighted code) and
for bibliography formatting (which can depend on the CSL
style, and is only used in the page containing the bibliography).
Note that, for compatibility with older readers, we don't
use flexbox to style `column/columns` divs by default, as
we do in HTML. Instead, we use an older method which only
works when there are two `column` divs inside a `columns`
div. If you need more than two columns and aren't worried
about support for older EPUB readers, you can modify the
default CSS (there is a comment in the CSS telling you what to do).
Closes #8379.
|
|
|
|
|
|
[API change]
|
|
We were exporting Parser, ParserT as synonyms of Parsec, ParsecT.
There is no good reason for this and it can cause confusion.
Also, when possible, we replace imports of Text.Parsec with
T.P.Parsing. The idea is to make it easier, at some point,
to switch to megaparsec or another parsing engine if we want to.
T.P.Parsing new exports: Stream(..), updatePosString, SourceName,
Parsec, ParsecT [API change].
Removed exports: Parser, ParserT [API change].
|
|
|
|
Also a small performance optimization.
Closes #8380.
|
|
|
|
|
|
Otherwise the `Error running Lua` message can be prepended multiple
times.
|
|
This allows:
alias pandoc=`make binpath`
for convenient local testing of a build.
|
|
|
|
Rename quick-cabal -> all, quick-test -> test.
Add binpath target.
|
|
String error messages were incorrectly popped of the stack when
retrieving a PandocError.
|
|
|
|
|
|
|
|
The change in template handling was reverted via #8372.
|
|
Custom writers can define a default template via a global `Template`
function; the data directory is no longer searched for a default
template.
Writer authors can restore the old lookup behavior with
``` lua
Template = function ()
local template
return template.compile(template.default(PANDOC_SCRIPT_FILE))
end
```
|
|
|
|
|
|
|
|
This implementation would allow us (if we wanted) to add
an extensible Ext_custom Text constructor.
|
|
|
|
|
|
|
|
|
|
Rolls back 0ab014ed1e5890e338792fab98aecc45cd889f99.
We don't need this because we aren't needing to print the Lua
version in options any more; we're handling `--version` now at
the pandoc-cli level.
|
|
The functions converts Meta values to template contexts; the intended
use is in combination with `pandoc.template.apply`.
|
|
Like custom readers, like writers, can define the set of supported
extensions by setting a global. E.g.:
``` lua
reader_extensions = {
smart = true,
citations = false,
}
```
|
|
The specialized peeker and pusher function for `Context Text` values
does not go via JSON, and thus keeps Doc values unchanged during
round-tripping.
|
|
The new function applies a context, containing variable assignments, to
a template.
|
|
The default template of a custom writer `/path/to/my-writer.lua` is
expected in the `templates/default.my-writer.lua` data file. Note that
templates are *not* applied automatically to the output of custom
writers; custom writer authors must ensure that the template is applied
if one is present in the writer options.
Closes: #8137
|
|
The function `getDefaultTemplate` no longer splits off extension
modifers from the given format, as that conflicts with using custom
writers as formats. Haskell library users should use `getDefaultTemplate
<=< (fmap formatName . parseFlavoredFormat)` if the input format can
still contain extensions. The same is true for `compileDefaultTemplate`,
which calls `getDefaultTemplate` internally.
|
|
|
|
Custom writers can define the extensions that they support via the
global `writer_extensions`. The variable's value must be a table with
all supported extensions as keys, and their default status as values.
E.g., the below specifies that the writer support the extensions `smart`
and `sourcepos`, but only the `smart` extension is enabled by default:
writer_extensions = {
smart = true,
sourcepos = false,
}
|
|
|
|
|
|
So far, `orgStateLastPreCharPos` wasn't updated appropriately after each
parsing to native Str (by the parser `str`). In addition to solving
this, the guard `notAfterString` in `emphasisStart` is removed to allow
emphasis after Str at the first place.
|
|
|
|
|
|
|
|
|
|
Previously we got two separate `class` attributes in the `p`
tag. Closes #8363.
|