| Age | Commit message (Collapse) | Author |
|
This function performs a normalization of Pandoc documents. E.g.,
multiple successive spaces are collapsed, and tables are normalized such
that all rows and columns contain the same number of cells.
Closes: #10356
|
|
The function takes a MIME type and raw data from which it creates an
RFC 2397 data URI.
Closes: #10876
|
|
Key-value pairs, mapping from filename to contents, can be used to fill
the ersatz file system used in the reader sandbox.
|
|
The sandbox is now enabled if the fourth parameter is a list of files.
The files are read and then made available in the sandbox via a mock
file system.
|
|
The function `pandoc.read` is now taking an optional fourth parameter
that specifies the environment in which the parser will be run. Passing
the string `sandbox` as the argument causes the reader to run in a
sandbox, thereby preventing all access to the network and file system.
Closes: #10831
|
|
Elements of type Caption, Cell, TableHead, and TableFoot can now be
stringified.
Fixes: #10450
|
|
Lua type names were inconsistent with regard to the use of prefixes; all
prefixes are removed now, and Lua types now have the same name as the
Haskell types.
The use of app-specific prefixes is suggested by the Lua manual to avoid
collisions. However, this shouldn't be a problem with pandoc, as it
cannot be used as a Lua package.
Closes: #8574
|
|
It is now possible to return a single filter from a filter file, e.g.
``` lua
-- Switch single- and double quotes
return {
Quoted = function (q)
elem.quotetype = elem.quotetype == 'SingleQuote'
and 'DoubleQuote' or 'SingleQuote'
return elem
end
}
The filter must not contain numerical indexes, or it might be treated as
a list of filters.
|
|
The function allows to specify a template with the same argument value
that would be used with the `--template` command line parameter.
Closes: #9854
Co-authored-by: Carsten Gips <[email protected]>
|
|
The state is an internal value and should be treated as such. The
`PANDOC_STATE` global is merely a copy; unsetting the global no longer
breaks the Lua engine.
|
|
|
|
The default is now to use a *copy* of the global environment when running a
filter; this ensures better separation when `run_lua_filter` is used multiple
times. A custom environment can be specified via the optional third parameter.
|
|
Lists created by `pandoc.json.decode` now behave like lists generated
via `pandoc.List`. This also ensures that `pandoc.List` tables are
encoded as JSON arrays when passed to `pandoc.json.encode`.
Fixes: #9834
|
|
|
|
The module provides basic querying functions for image properties.
|
|
+ When the optional base level parameter is provided, we no
longer ensure that the sequence of heading levels is gapless
[behavior change]. Instead, we set the lowest heading level to
the specified base level, and adjust the others accordingly. If
an author wants to skip a level, e.g. from level 1 to level 3,
they can do that. In general, the heading levels specified
in the source document are preserved; `makeSections` only
puts them into a hierarchical structure. Closes #9398.
+ Section numbers are now assigned so that the top level
gets `1`, no matter what heading level is used. So, even
if the top heading level is 2, numbers will be `1`, `2`, etc.
rather than `0.1`, `0.2`, as in the past. Closes #5071.
+ We revert to the old behavior when the `--number-offset` option
is used. So, for example, if a document begins with a level-3
heading, and `--number-offset=1,2` is used, the top-level section
numbers will be `1.2.1`, `1.2.2`, etc. This is mainly for
backwards-compatibility.
|
|
|
|
Ensures that objects with nested AST elements can be encoded as JSON.
|
|
This only affects the name in the Lua-internal documentation. It is
still possible to load the modules via `require 'text'`, although this
is deprecated.
|
|
|
|
Closes: #8605
|
|
The PathTemplate type exported from Text.Pandoc.Chunks is now an
instance of the ToJSON and FromJSON classes.
Closes: #8607
|
|
This simplifies the creation of custom readers and writers that are
based on built-in formats.
|
|
+ Re-use `toTocTree` in constructing `chunkedTOC`.
Previously we used an entirely different function toTOCTree'.
+ Improve `tocToList` so that it avoids empty lists of
items that are omitted because they are below the toc depth.
pandoc-lua-engine:
+ Fix structure tests in light of last change.
T.P.Writers.ChunkedHTML:
+ Reuse `tocToList` in `buildTOC`.
T.P.Writers.EPUB:
+ Adjust EPUB writer for Chunks changes.
|
|
Adds support for table of contents and chunks handling. The function
`make_sections` has been given a friendlier interface and was moved to
the new module; the old `pandoc.utils.make_sections` has been
deprecated.
|
|
|
|
Rationale: we need this splitting level now not just in
EPUB but in chunked HTML.
`--epub-chapter-level` will still function as a deprecated
synonynm. `epub-chapter-level` will also continue to work in
defaults files, ande `epub_chapter_level` will still work for
Lua marshalling.
[API changes]
Text.Pandoc.App.Opt: remove `optEpubChapterLevel`, add
`optSplitLevel`.
Text.Pandoc.Options: remove `writerEpubChapterLevel`, add
`writerSplitLevel`.
|
|
This change also affects the `pandoc.utils.blocks_to_inlines` Lua
function.
Closes: #8499
|
|
This allows to pass structured values as format specifiers to
`pandoc.write` and `pandoc.read`.
|
|
This Unicode char (U+2029) is intended as a semantic separator between
paragraphs; it is cleaner and less intrusive than the pilcrow sign that
we used before. This also changes the default `sep` value used in the
`pandoc.utils.blocks_to_inlines` Lua function.
|
|
|
|
This allows to use a string as parameter to `pandoc.template.apply` and
in the WriterOptions `template` field.
Closes: #8321
|
|
The new function applies a context, containing variable assignments, to
a template.
|
|
The module provides functions and types for format spec parsing and
processing.
The function `parseFormatSpec` was moved from Text.Pandoc.Extensions to
the new module and renamed to `parseFlavoredFormat`. It now operates in
a PandocMonad and is based on the updated types.
|
|
|
|
Errors are reported in Lua in the same words in which they would be
reported in the terminal.
|
|
The module provides functions to query the set of extensions supported
by formats, and the set of extension enabled per default.
|
|
The flag 'lua53` must now be used with that package if pandoc is to be
compiled against Lua 5.3.
|