Commit graph

15133 commits

Author SHA1 Message Date
John MacFarlane
51142c6803 Ipynb reader & writer: properly handle cell "id".
This is passed through if it exists (in Nb4); otherwise
the writer will add a random one so that cells all have
an "id".

Closes #7728.
2021-12-06 23:40:51 -08:00
John MacFarlane
72075423d0 custom-writers.md: use filter to include source of example. 2021-12-06 13:04:51 -08:00
John MacFarlane
23b2617bf7 Ms writer: properly encode strings for PDF contents.
Closes #7731.
2021-12-06 12:00:08 -08:00
John MacFarlane
36807db531 Commonmark writer: allow ')' delimiters on ordered lists. 2021-12-05 11:26:01 -08:00
John MacFarlane
51f6f0e3a1 Improve Markdown writer escaping.
This fixes escaping for '#' in particular.
Closes #7726.
2021-12-03 17:52:47 -08:00
John MacFarlane
928c120806 Allow unicode-transforms 0.4.0. 2021-12-02 09:00:33 -08:00
John MacFarlane
0892af33ae Suggest VSCode as a possible editor in getting-started.md. 2021-12-02 08:28:18 -08:00
John MacFarlane
26d0a1052e Re-add top heading in changelog but as a level-1 heading. 2021-12-01 00:00:17 -08:00
John MacFarlane
9dfd9eff6d Remove useless first heading in changelog. 2021-11-30 23:57:37 -08:00
John MacFarlane
619dfa2a2a Markdown reader: don't allow ^ at beginning of link or image label.
This is reserved for footnotes.
Fixes a regression introduced by 0a93acf.

Closes #7723.
2021-11-30 12:53:54 -08:00
John MacFarlane
6e712fa10a Update cabal description. 2021-11-30 10:12:42 -08:00
John MacFarlane
426342f00d Fix typo. Closes jgm/pandoc-website#54. 2021-11-30 08:25:15 -08:00
Albert Krewinkel
fa838deefc
Lua: remove pandoc.utils.text (#7720)
The new `pandoc.Inlines` function behaves identical on string input, but
allows other Inlines-like arguments as well.

The `pandoc.utils.text` function could be written as

    function pandoc.utils.text (x)
      assert(type(x) == 'string')
      return pandoc.Inlines(x)
    end
2021-11-29 09:12:30 -08:00
Mauro Bieg
136739b7ed
fix typo in custom-readers.md (#7722) 2021-11-29 08:59:37 -08:00
John MacFarlane
e30be56fc3 Bump pandoc-lua-marshall lower bound to 0.1.0.1 in cabal file.
Closes #7721.
2021-11-28 17:43:22 -08:00
Albert Krewinkel
c5287e9de5
stack.yaml: use pandoc-lua-marshal-0.1.0.1 2021-11-28 16:19:34 +01:00
Albert Krewinkel
32a4c331d2
doc/lua-filters.md: update docs on Blocks, Inlines, MetaValue 2021-11-28 16:02:48 +01:00
Albert Krewinkel
b9222e5cb1
Lua: add constructors pandoc.Blocks and pandoc.Inlines
The functions convert their argument into a list of Block and Inline
values, respectively.
2021-11-28 16:02:42 +01:00
Albert Krewinkel
4874f2dbd2
Use published pandoc-lua-marshal package 2021-11-28 10:23:31 +01:00
Albert Krewinkel
3692a1d1e8
Lua: use package pandoc-lua-marshal (#7719)
The marshaling functions for pandoc's AST are extracted into a separate
package. The package comes with a number of changes:

  - Pandoc's List module was rewritten in C, thereby improving error
    messages.

  - Lists of `Block` and `Inline` elements are marshaled using the new
    list types `Blocks` and `Inlines`, respectively. These types
    currently behave identical to the generic List type, but give better
    error messages. This also opens up the possibility of adding
    element-specific methods to these lists in the future.

  - Elements of type `MetaValue` are no longer pushed as values which
    have `.t` and `.tag` properties. This was already true for
    `MetaString` and `MetaBool` values, which are still marshaled as Lua
    strings and booleans, respectively. Affected values:

      + `MetaBlocks` values are marshaled as a `Blocks` list;

      + `MetaInlines` values are marshaled as a `Inlines` list;

      + `MetaList` values are marshaled as a generic pandoc `List`s.

      + `MetaMap` values are marshaled as plain tables and no longer
        given any metatable.

  - The test suite for marshaled objects and their constructors has
    been extended and improved.

  - A bug in Citation objects, where setting a citation's suffix
    modified it's prefix, has been fixed.
2021-11-27 17:08:01 -08:00
John MacFarlane
0d25232bbf LaTeX reader: Fix semantics of \ref.
We were including the ams environment type in addition
to the number. This is proper behavior for `\cref` but
not for `\ref`.  To support `\cref` we need to store
the environment label separately.
2021-11-24 19:48:56 -08:00
John MacFarlane
2ca3993c67 LaTeX reader: improve references.
- Resolve references to theorem environments.
- Remove Span caused by "label" in figure, table, and theorem
  environments; this had an id that duplicated the environments' id.

See #813.
2021-11-24 18:41:20 -08:00
John MacFarlane
7726b69cd3 LaTeX reader: omit visible content for \label{...}.
Previously we included the text of the label in square brackets,
but this is undesirable in many cases.

See discussion in
<https://github.com/jgm/pandoc/issues/813#issuecomment-978232426>.
2021-11-24 14:47:00 -08:00
John MacFarlane
6072bdcec9 HTML reader: parse attributes on links and images.
Closes #6970.
2021-11-24 11:01:55 -08:00
Albert Krewinkel
a8638894ab
Lua: allow single elements as singleton MetaBlocks/MetaInlines
Single elements should always be treated as singleton lists in the Lua
subsystem.
2021-11-24 16:54:12 +01:00
John MacFarlane
79e6f8db13 Improve detection of pipe table line widths.
Fixed calculation of maximum column widths in pipe tables.
It is now based on the length of the markdown line, rather
than a "stringified" version of the parsed line.  This should
be more predictable for users. In addition, we take into account
double-wide characters such as emojis.

Closes #7713.
2021-11-23 13:29:25 -08:00
John MacFarlane
b72ba3ed6d Simplify sample ris reader in doc/custom-readers.md.
Made possible by #7712.
2021-11-23 09:57:09 -08:00
Albert Krewinkel
bffd74323c
Lua: add function pandoc.utils.text (#7710)
The function converts a string to `Inlines`, treating interword spaces
as `Space`s or `SoftBreak`s. If you want a `Str` with literal spaces,
use `pandoc.Str`.

Closes: #7709
2021-11-23 09:32:53 -08:00
Albert Krewinkel
0c0945b93c
Lua: split strings into words when treating them as Inline list (#7712)
Using a Lua string where a list of inlines is expected will cause the
string to be split into words, replacing spaces and tabs into
`pandoc.Space()` elements and newlines into `pandoc.SoftBreak()`.

The previous behavior was to treat the string `s` as `{pandoc.Str(s)}`.
The old behavior can be recovered by wrapping the string into a table
`{s}`.
2021-11-23 09:30:48 -08:00
John MacFarlane
a039f024f2 Add an example to custom-readers.md. 2021-11-22 14:58:18 -08:00
Jörn Krenzer
17495bf8eb
Add .yml to Citeproc formatFromExtension (#7706)
Make Citeproc recognize files with .yml extension (in addition to .yaml)
as YAML bibliographies.

Closes #7707.
2021-11-22 08:42:09 -08:00
John MacFarlane
a19134f74d cabal.project: remove spurious source package stanza for texmath.
Unfortunately this means that the release binaries for 2.16.2
weren't built with all of the texmath improvements.
2021-11-21 17:51:28 -08:00
John MacFarlane
6d52130c8c Fix top-level header on changelog. 2021-11-21 17:14:20 -08:00
John MacFarlane
03c1bffab6 Update changelog. 2021-11-21 10:25:12 -08:00
John MacFarlane
3f595659a3 yamlBsToRefs: allow multiple YAML documents.
Some people use `---` as the end delimiter in YAML
bibliography files, which causes the `yaml` library
to emit an error unless we explicitly allow multiple
YAML documents (and just consider the first).

In T.P.Readers.Metadata
2021-11-21 10:22:10 -08:00
John MacFarlane
eeafc3a2ea Update AUTHORS.md 2021-11-21 10:14:38 -08:00
John MacFarlane
1d56e6059e Add custom-writers.md. 2021-11-21 10:10:27 -08:00
Albert Krewinkel
a9e5145c3a
Minor changelog edits. 2021-11-21 10:35:55 +01:00
Albert Krewinkel
464abdc854
Rename doc/custom-reader.lua to doc/custom-readers.md 2021-11-21 10:16:20 +01:00
John MacFarlane
4857cd1769 Update man page. 2021-11-20 23:19:22 -08:00
John MacFarlane
572d801738 Bump to 2.16.2 2021-11-20 23:19:20 -08:00
John MacFarlane
b629bda6d5 More changelog edits 2021-11-20 23:15:04 -08:00
John MacFarlane
f1ce1cc891 Minor changelog edits. 2021-11-20 23:12:51 -08:00
John MacFarlane
62cc9fe227 Update changelog. 2021-11-20 17:11:44 -08:00
John MacFarlane
06eb889e92 Use released texmath. 2021-11-20 15:18:19 -08:00
Albert Krewinkel
96a4bbe264
Capture alt-text in JATS figures (#7703)
Co-authored-by: Aner Lucero <4rgento@gmail.com>
2021-11-20 09:48:01 -08:00
John MacFarlane
db9a73c842 Lua tests: reset path and cpath when testing 'require' fallback. 2021-11-19 21:55:14 -08:00
Albert Krewinkel
c1a82896c6
Lua: fix global module loading (#7701) 2021-11-19 20:59:23 +01:00
John MacFarlane
2b23861948 Remove unused line. 2021-11-19 10:21:23 -08:00
John MacFarlane
4f2eac88aa MediaWiki writer: fix code for generating spans for header IDs.
We need to generate a span when the header's ID doesn't match
the one MediaWiki would generate automatically.  But MediaWiki's
generation scheme is different from ours (it uses uppercase letters,
and `_` instead of `-`, for example).

This means that in going from markdown -> mediawiki, we'll now get
spans before almost every heading, unless explicit identifiers are
used that correspond to the ones MediaWiki auto-generates.
This is uglier output but it's necessary for internal links to
work properly.

See #7697.
2021-11-19 09:05:19 -08:00