Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Closes #3314
|
|
|
|
|
|
The parsing functions `tableWith` and `gridTableWith` are generalized to
work with more parsers. The parser state only has to be an instance of
the `HasOptions` class instead of requiring a concrete type. Block
parsers are required to return blocks wrapped into a monad, as this
makes it possible to use parsers returning results wrapped in `Future`s.
|
|
Previously the Markdown writer would sometimes create links where there
were none in the source. This is now avoided by selectively escaping bracket
characters when they occur in a place where a link might be created.
Closes #3619.
|
|
|
|
Fixes #3630 (#3631).
Previously the attributes in link reference definitions did not have a space preceding.
|
|
Use this instead of PandocIOError when a resource is not
found in path.
This improves the error message in this case, see #3629.
|
|
|
|
Ensure that we do not generate reference links
whose labels differ only by case.
Also allow implicit reference links when the link
text and label are identical up to case.
Closes #3615.
|
|
|
|
The implicitly defined global filter (i.e. all element filtering
functions defined in the global lua environment) is used if no filter is
returned from a lua script. This allows to just write top-level
functions in order to define a lua filter. E.g
function Emph(elem) return pandoc.Strong(elem.content) end
|
|
Attributes was written to behave much like a normal table, in order to
simplify working with it. However, all Attr containing elements were
changed to provide panflute-like accessors to Attr components, rendering
the previous approach unnecessary.
|
|
Attributes are always passed as the last element, making it possible to
omit this argument. Argument order for `Header` was wrong and is fixed.
|
|
The `F` monads used for delayed evaluation of certain values in the
Markdown and Org readers are based on a shared data type capturing the
common pattern of both `F` types.
|
|
|
|
|
|
Previously the LaTeX writer created invalid LaTeX
when `--listings` was specified and a code span occured
inside emphasis or another construction.
This is because the characters `%{}\` must be escaped
in lstinline when the listinline occurs in another
command, otherwise they must not be escaped.
To deal with this, adoping Michael Kofler's suggestion,
we always wrap lstinline in a dummy command `\passthrough`,
now defined in the default template if `--listings` is
specified. This way we can consistently escape the
special characters.
Closes #1629.
|
|
If you do, the contents of item disappear or are misplaced.
Use `\texttt` instead.
Closes #645.
|
|
|
|
Directives at the beginning of documents cannot
span multiple lines so they must not be reflown.
|
|
A single `read` function parsing pandoc-supported formats is added to
the module. This is simpler and more convenient than the previous method
of exposing all reader functions individually.
|
|
Writer helper functions were defined in the top-level Text.Pandoc
module. These functions are moved to the Writer submodule as to enable
reuse in other submodules.
|
|
Reader helper functions were defined in the top-level Text.Pandoc
module. These functions are moved to the Readers submodule as to enable
reuse in other submodules.
|
|
Extension parsing and processing functions were defined in the top-level
Text.Pandoc module. These functions are moved to the Extensions
submodule as to enable reuse in other submodules.
|
|
|
|
Meta elements that are treated as lua tables (i.e. MetaList,
MetaInlines, MetaBlocks, and MetaMap), are no longer wrapped in an
additional table but simply marked via a metatable. This allows
treating those meta values just like normal tables, while still making
empty elements of those values distinguishable.
|
|
|
|
Avoid constructing list of one element ([B.str url]) just to flatten it
back with mconcat.
|
|
|
|
We now issue `<div class="line-block">` and include a
default definition for `line-block` in the default
templates, instead of hard-coding a `style` on the
div.
Closes #1623.
|
|
LaTeX requires something before a line break, so we insert a
`~` if no printable content has yet been emitted.
Closes #2874.
|
|
A figure with two subfigures turns into two pandoc
figures; the subcaptions are used and the main caption
ignored, unless there are no subcaptions.
Closes #3577.
|
|
|
|
The reader now correctly parses src block parameter list even if
parameter arguments contain multiple words.
Closes: #3477
|
|
Source block parameter names are no longer prefixed with *rundoc*. This
was intended to simplify working with the rundoc project, a babel
runner. However, the rundoc project is unmaintained, and adding those
markers is not the reader's job anyway.
The original language that is specified for a source element is now
retained as the `data-org-language` attribute and only added if it
differs from the translated language.
|
|
The line-numbering switch that can be given to source blocks (`-n` with
an start number as an optional parameter) is parsed and translated to a
class/key-value combination used by highlighting and other readers and
writers.
|
|
Previously we always added an empty div before the list
item, but this created problems with spacing in tight
lists. Now we do this:
If the list item contents begin with a Plain block,
we modify the Plain block by adding a Span around
its contents.
Otherwise, we add a Div around the contents of the
list item (instead of adding an empty Div to the
beginning, as before).
Closes #3596.
|
|
For example:
```latex
\SI[round-precision=2]{1}{m} is equal to \SI{1000}{mm}.
\SI[round-precision=2]{1}[\$]{} is equal to \SI{0.938094}{\euro}
```
|
|
The return-type parameter for lua filter functions is removed. It only
complicated the code without introducing any additional type safety.
|
|
Closes: #3577
|
|
|
|
Closes: #3576
|
|
We want to provide an interface familiar to users of other filtering
libraries.
|
|
Closes #3548.
|
|
This avoids parsing bare URIs that start with a scheme
+ colon + `*`, `_`, or `]`.
Closes #3570.
|
|
Use this instead of PandocAppError when appropriate.
Removed exit code from PandocAppError, use 1 for all.
|
|
|
|
No longer necessary with pandoc 2.0 framework.
|