Previously we tried to handle things like commented out list
items:
- one
<!--
- two
-->
- three
and also things like:
- one `and
- two` and
But the code we added to handle these cases caused problems with
other, more straightforward things, like:
- one
- ```
code
```
- three
So we are rolling back all the fanciness, so that the markdown
parser now behaves more like the commonmark parser, in which
indicators of block-level structure always take priority over
indicators of inline structure.
Closes#9865. Closes#7778. See also #5628.
Otherwise we get undesirable results, as the format's native
citation mechanism is used instead of (or in addition to) the
citeproc-generated citations. Closes#10662.
This reverts commit cbe67b9602.
Word sets `w:firstColumn="1"` by default for tables. You have to find
the Table Design tab and explicitly uncheck "First Column" to make this
go away. In most cases, I don't think writers intend to designate
the first column as a row head, so this commit is going to produce
unexpected results. In addition, because of the table normalization
done by pandoc-type's `tableWith`, any table containing a colspanned
cell in the left-hand column will get broken if the first column is
designated a row head. For these reasons it seems best to revert this
change, which was made in response to #9495.
Closes#10627.
Previously we tried to match curly quotes as well as straight
quotes, producing Quoted inlines. But it seems better just to
assume that those who use curly quotes want them passed through
verbatim.
This also fixes an (unintended) bug whereby curly single left
quotes would sometimes be changed to single right quotes.
Closes#10610.
We used to insert extra spaces to ensure that the content respected
the four-space rule. That is not really necessary now, since pandoc's
markdown and most markdowns don't follow the four-space rule.
Those who want the old behavior can obtain it by using
`-t markdown+four_space_rule`.
Closes#7172.
This has been fixed now in Babel for some time. So we can now
get rid of the ugly code that disabled language-specific shorthands
(see e26d31d).
Closes#6817.
Previously we used the `.ini` files for every language, but
for European languages these tend to provide inferior results
to the `.ldf` files used by classic Babel. Currently Babel
documentation recommends using the classic system for European
languages written in Latin and Cyrillic scripts and Vietnamese.
So the LaTeX writer and template now follow this guidance.
Main languages in the list of languages with good "classic" support
are added to global documentclass options and will be automatically
handled by Babel using the `.ldf` files.
If the main language is not in this list, the `babeloptions` variable
will be set to `provide=*`, which will cause support to be loaded from
the `.ini` file rather than an `.ldf`. So, for example, setting
`-V babeloptions=''` with a polytonic Greek document will cause the
`.ldf` support to be used instead of the `.ini`.
The default setting of this variable can be overwritten, but in most
cases the default should give good results.
Closes#8283.
Once upon a time the only metadata element for links in Pandoc's AST was
a title, and it was hijacked to track certain links as having originated
in the wikilink syntax. Now we have Attrs and we can use a class to
handle wikilinks instead.
Requires coordinated changes to commonmark-hs.
Enable annotating author roles using the Contribution Role Taxonomy
(CRediT) and export this information in conformant JATS
Closes#10152.
Co-Authored-By: Jez Cope <457628+jezcope@users.noreply.github.com>
Previously we were only carrying over the reference doc's sectPr
at the end of the document, so it wouldn't affect the intermediate
sections that are now added if `--top-level-division` is `chapter`
or `part`. This could lead to bad results (e.g. page numbering
starting only on the last chapter).
Closes#10577.
The combination of #9648 Typst property output and #9778
`typst:no-figure` can cause fonts to spill out of tables.
This is because setting Typst text properties across a table
requires `set text(...)` outside the table, and previously we
were relying on the figure to provide a scope.
This adds an extra `#{...}` when the table has class `typst:no-figure`
and also has `typst:text:*` attributes.
Currently, remote images added to the MediaBag are stored at paths with
extensions determined based on the external URI. For instance, an image
from https://example.com/image.png is stored as <hash>.png. If the
URI does not contain an extension (e.g., https://example.com/image),
then the content-type of the downloaded image is used to determine the
extension.
This change switches the precedence such that content-type is preferred
over extensions contained in the URI. This is necessary because some
images are located at URIs with misleading extensions -- shields.io,
for instance, serves SVGs from URIs with .yml extensions. With this
change, the image/svg+xml content-type is now preferred over the .yml
URI extension. This fixes a bug in the PDF writer in which such an image
would be mishandled due to not being identified as an SVG.
The reader did not properly consume empty lines after =encoding commands,
which produced various incorrect parses depending on the content between
there and the next command.
Fixes#10537
In 5132f1ef33 we added `-` to
the list of characters needing backslash escaping, to accommodate
a change in groff man's behavior, described here:
https://lwn.net/Articles/947941/
This change also led `-` to be escaped in ms output, but that
is wrong; `\-` in ms is a unicode minus sign.
To fix this, we add a Boolean parameter to `escapeString` in
Text.Pandoc.Writers.Roff that determines whether `-` is to
be escaped. (NB: This is not an exported function in the API.)
The list `standardEscapes` in Text.Pandoc.RoffChar no longer
contains `-`.
Closes#10536.
Reader: When `w:tblLook` has `w:firstColumn` set (or an equivalent bit
mask), we set row heads = 1 in the AST.
Writer: set `w:firstColumn` in `w:tblLook` when there are row
heads. (Word only allows one, so this is triggered by any number
of row heads > 0.)
Closes#9495.
Pod ("Plain old documentation") is a markup languaged used principally
to document Perl modules and programs. Since it was originally meant to
be translated pretty directly to man, the semantics are fairly simple.
This Pod reader was developed with reference to the canonical user and
implementer documentation of Pod: https://perldoc.perl.org/perlpod and
https://perldoc.perl.org/perlpodspec.
There are 1490 .pod, .pl, and .pm in the Perl 5.34 distribution found in
/System/Library/Perl on my mac. Of those, this reader dies with a parse
error on 7 of them. All of them seem to be cases where pod commands are
found within a non-colon-prefixed =begin/=end. perlpodspec says I may
treat this as an error.
[API change] adds readPod
This can be overridden by a final sectPr element in the body
of the reference.docx.
It will only change things for `--top-level-division=chapter`,
since only top-level chapters are put in separate sections.
For that use it will mean that footnote numbers start over with
each chapter, which is usually what is wanted.
Closes#2773.