aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-11-29Lua: remove `pandoc.utils.text` (#7720)Albert Krewinkel3-54/+0
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-29fix typo in custom-readers.md (#7722)Mauro Bieg1-1/+1
2021-11-28Bump pandoc-lua-marshall lower bound to 0.1.0.1 in cabal file.John MacFarlane1-1/+1
Closes #7721.
2021-11-28stack.yaml: use pandoc-lua-marshal-0.1.0.1Albert Krewinkel1-2/+1
2021-11-28doc/lua-filters.md: update docs on Blocks, Inlines, MetaValueAlbert Krewinkel1-75/+79
2021-11-28Lua: add constructors `pandoc.Blocks` and `pandoc.Inlines`Albert Krewinkel3-1/+44
The functions convert their argument into a list of Block and Inline values, respectively.
2021-11-28Use published pandoc-lua-marshal packageAlbert Krewinkel1-5/+0
2021-11-27Lua: use package pandoc-lua-marshal (#7719)Albert Krewinkel31-2893/+308
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-24LaTeX reader: Fix semantics of `\ref`.John MacFarlane2-6/+4
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-24LaTeX reader: improve references.John MacFarlane4-5/+27
- 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-24LaTeX reader: omit visible content for `\label{...}`.John MacFarlane2-5/+2
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-24HTML reader: parse attributes on links and images.John MacFarlane4-13/+24
Closes #6970.
2021-11-24Lua: allow single elements as singleton MetaBlocks/MetaInlinesAlbert Krewinkel2-1/+22
Single elements should always be treated as singleton lists in the Lua subsystem.
2021-11-23Improve detection of pipe table line widths.John MacFarlane3-20/+52
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-23Simplify sample ris reader in doc/custom-readers.md.John MacFarlane1-22/+9
Made possible by #7712.
2021-11-23Lua: add function `pandoc.utils.text` (#7710)Albert Krewinkel4-2/+57
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-23Lua: split strings into words when treating them as Inline list (#7712)Albert Krewinkel2-6/+33
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-22Add an example to custom-readers.md.John MacFarlane1-0/+52
2021-11-22Add .yml to Citeproc formatFromExtension (#7706)Jörn Krenzer1-0/+1
Make Citeproc recognize files with .yml extension (in addition to .yaml) as YAML bibliographies. Closes #7707.
2021-11-21cabal.project: remove spurious source package stanza for texmath.John MacFarlane1-4/+4
Unfortunately this means that the release binaries for 2.16.2 weren't built with all of the texmath improvements.
2021-11-21Fix top-level header on changelog.John MacFarlane1-1/+1
2021-11-21Update changelog.John MacFarlane1-0/+6
2021-11-21yamlBsToRefs: allow multiple YAML documents.John MacFarlane1-2/+2
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-21Update AUTHORS.mdJohn MacFarlane1-0/+4
2021-11-21Add custom-writers.md.John MacFarlane2-4/+55
2021-11-21Minor changelog edits.Albert Krewinkel1-7/+3
2021-11-21Rename doc/custom-reader.lua to doc/custom-readers.mdAlbert Krewinkel1-0/+0
2021-11-20Update man page.John MacFarlane2-13/+43
2021-11-20Bump to 2.16.2John MacFarlane1-1/+1
2021-11-20More changelog editsJohn MacFarlane1-4/+4
2021-11-20Minor changelog edits.John MacFarlane1-3/+3
2021-11-20Update changelog.John MacFarlane1-0/+162
2021-11-20Use released texmath.John MacFarlane1-3/+1
2021-11-20Capture `alt-text` in JATS figures (#7703)Albert Krewinkel2-2/+31
Co-authored-by: Aner Lucero <4rgento@gmail.com>
2021-11-19Lua tests: reset path and cpath when testing 'require' fallback.John MacFarlane1-2/+4
2021-11-19Lua: fix global module loading (#7701)Albert Krewinkel1-7/+27
2021-11-19Remove unused line.John MacFarlane1-1/+0
2021-11-19MediaWiki writer: fix code for generating spans for header IDs.John MacFarlane3-3/+34
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-19HTML writer: Don't create invalid `data-` attribute...John MacFarlane2-0/+7
for empty attribute key. (It would be better to make these unrepresentable in the type system, but for now this is an improvement.) Closes #7546.
2021-11-18MediaWiki writer: use HTML spans for anchors when header has id.John MacFarlane2-2/+35
Closes #7697.
2021-11-18RST reader: handle class attribute for for custom roles (#7700)willj-dev2-8/+25
Previously the class attribute was ignored, and the name of the role used as the class. Closes #7699.
2021-11-18Add doc for custom-readers.John MacFarlane1-0/+599
2021-11-17Update build files (#7696)Fabián Heredia Montiel3-9/+4
* Drop old windows 32-bit constraints - basement >= 0.0.10 was 0.0.12 on stackage-18.10 - foundation >= 0.0.23 was 0.0.26.1 on stackage-18.10 * Update cabal `tested-with` field to correspond to `ci.yml` matrix * ghc: 8.10.{2,4} → 8.10.7
2021-11-17Babel mappings: use ancientgreek for grc.John MacFarlane1-1/+1
2021-11-17Lua: set `lpeg`, `re` as globals; allow shared lib access via requireAlbert Krewinkel3-33/+52
The `lpeg` and `re` modules are loaded into globals of the respective name, but they are not necessarily registered as loaded packages. This ensures that - the built-in library versions are preferred when setting the globals, - a shared library is used if pandoc has been compiled without `lpeg`, and - the `require` mechanism can be used to load the shared library if available, falling back to the internal version if possible and necessary.
2021-11-16Use latest dev texmath.John MacFarlane2-1/+7
2021-11-16Lua: make loading of global LPeg modules more robustAlbert Krewinkel1-14/+20
Ignore errors if the normal package mechanism failed; this not only covers the case of modules being unavailable on the system, but also works if the modules are present, but fail to load for some reason. This makes the built-in package version a true fallback.
2021-11-15Markdown writer: don't create autolinks when this loses information.John MacFarlane2-1/+17
Previously we sometimes lost attributes when rendering links as autolinks. Closes #7692.
2021-11-15LaTeX reader: add rudimentary support for `\autoref` (#7693)Albert Krewinkel2-0/+19
2021-11-14Fix misspelled extension name in manual.John MacFarlane1-1/+1
`short_subsuperscript` -> `short_subsuperscripts`. Closes #7690.