Fix interaction of top-level divisions `part` or `chapter` with
unnumbered headers when emitting LaTeX. Headers are ensured to be
written using stared commands (like `\subsection*{}`).
Fixes: #3272
* Fix spelling typos:
* hightlight
* respecitively
* codeblock – inconsistent with rest of document using “code block”
* Use consistent case for proper nouns.
For example: “ASCII”, “Unicode”, “Latin”, “JavaScript”, “CSS”.
Previously setting writerStandalone = True did nothing unless
a template was provided in writerTemplate. Now a fragment
will be generated if writerTemplate is Nothing; otherwise,
the specified template will be used and standalone output
generated. [API change]
+ Removed Text.Pandoc.Readers.Docx.Fonts
+ Moved its code to texmath; we now use (from texmath 0.9)
Text.TeXMath.Unicode.Fonts
+ Use texmath 0.9 (currently from git).
+ Updated epub tests because texmath now handles more mathml.
The "default" option is no longer represented as `Nothing` but via a new
type constructor, making the `Maybe` wrapper superfluous.
The default behavior of using heuristics can now be enabled explicitly
by setting `--top-level-division=default`.
API change (`Text.Pandoc.Options`): The `Division` type was renamed to
`TopLevelDivision`. The `Section`, `Chapter`, and `Part` constructors
were renamed to `TopLevelSection`, `TopLevelChapter`, and
`TopLevelPart`, respectively. An additional `TopLevelDefault`
constructor was added, which is now also the new default value of the
`writerTopLevelDivision` field in `WriterOptions`.
We now check explicitly for non-1 rowspan or colspan
attributes, and fail when we encounter them. Previously
we checked that each row had the same number of cells,
but that could be true even with rowspans/colspans.
And there are cases where it isn't true in tables that
we can handle fine -- e.g. when a tr element is empty.
So now we just pad rows with empty cells when needed.
Closes#3027.
This reverts commit fee0b913c5.
The previous commit did not provide a good way to get increased
indentation for nested block quotes.
Rolling it back for now. @jjsheets feel free to submit something
that handles multiple levels of block quote smoothly, if you like.
* Open Document writer: set first level of blockquotes to not use indent
Nested blockquotes start using indents like before. Quotation style is
still in use, so the style's indent settings take effect on the first
level of blockquotes.
* Removed list construction to improve pull request to fix#2747
Latex doesn't like when hypertargets or images are
put in the options list of the section. They are not
lost since they were actually duplicated and present
also in the second argument list.
Note on the implementation:
I had to inline the definiton of 'foldMap' since it is
not implemented in every version of Haskell that Pandoc
supports.
ODT's reader always put empty captions for the parsed
tables. This commit
1) checks paragraphs that follow the table definition
2) treats specially a paragraph with a style named 'Table'
3) does some postprocessing of the paragraphs that combines
tables followed immediately by captions
The ODT writer used 'TableCaption' style name for the caption
paragraph. This commit follows the open office approach which
allows for appending captions to table but uses a built-in style
named 'Table' instead of 'TableCaption'. Any users of odt format
(both writer and reader) are therefore required to change the
style's name to 'Table', if necessary.
Pandoc uses heuristics to determine the most resonable top-level
division type when emitting LaTeX or Docbook markup. It is now possible
to overwrite this implicitly set top-level division via the
`top-level-division` command line parameter.
API change (`Text.Pandoc.Options`): the type of the
`writerTopLevelDivision` field in of the `WriterOptions` data type is
altered from `Division` to `Maybe Division`. The field's default value
is changed from `Section` to `Nothing`.
Closes: #3197
Table column properties can optionally specify a column's width with
which it is displayed in the buffer. Some exporters, notably the ODT
exporter in org-mode v9.0, use these values to calculate relative column
widths. The org reader now implements the same behavior.
Note that the org-mode LaTeX and HTML exporters in Emacs don't support
this feature yet, which should be kept in mind by users who use the
column widths parameters.
Closes: #3246
- We now first treat the argument of `--filter` as a full (absolute
or relative) path, looking for a program there. If it's found,
we run it.
- If not, and if it is a simple program name or a relative path,
we try resolving it relative to `$DATADIR/filters`.
- If this fails, then we treat it as a program name and look in
the user's PATH.
Previously if you did `--filter foo` and you had `foo` in your
path and also an executable `foo` in your working directory,
the one in the path would be used. Now the one in the working
directory is used.
In addition, when you do `--filter foo/bar.hs`, pandoc will now
find a filter `$DATADIR/filters/foo/bar.hs` -- assuming there
isn't a `foo/bar.hs` relative to the working directory.
@jkr note the slight revision of what we had before.
This was motivated by the idea that one might clone filter
repositories into the filters subdirectory; it is nice to
be able to run them as `reponame/filtername`.
This also fixes excessive CPU and memory usage for tables
when --columns is set in such a way that cells must be very
tiny.
Now cells are guaranteed to be big enough so that single
words don't need to line break, even if this pushes the
line length above the column width.
Closes#1911.
We can now parse all of the tables emitted by pandoc in
our tests.
The only thing we don't get yet are alignments and
column widths in more complex tables.
See #2669.