This new module exports `pandocVersion` and `pandocVersionText`,
which are no longer exported from Text.Pandoc.Shared. [API change]
Also, we now set the `pandoc-version` variable centrally rather
than in the writers. One effect is the man writer now emits
a comment with the pandoc version (this was intended before,
judging from the template, but it didn't happen because the
vairable wasn't set).
We previously avoided generating a duplicate with another automatically
generated identifier; now we also avoid duplicates with explicit
identifiers that occur before the header for which an identifier
is being generated. (Collisions are still possible for identifiers
that occur after the header.)
T.P.Shared: `makeSections` is also modified so it doesn't give
bad results when the enclosing Div has a different identifier
from the header, as may now happen.
Rolls back 0ab014ed1e.
We don't need this because we aren't needing to print the Lua
version in options any more; we're handling `--version` now at
the pandoc-cli level.
So far, `orgStateLastPreCharPos` wasn't updated appropriately after each
parsing to native Str (by the parser `str`). In addition to solving
this, the guard `notAfterString` in `emphasisStart` is removed to allow
emphasis after Str at the first place.
The writer uses features from the longtable package to define the table
foot. Furthermore, the table's bottom rule is now part of the foot,
where it previously was given as part of the body.
Beamer themes such as metropolis and saintpetersburg change the default
fonts. This change gives precedence to the user font settings by moving
them after the loading of the Beamer theme.
and add a new `pandocVersion` value with type `Version`. This is
consistent with the type used for `pandocTypesVersion` and allows to use
the value where a Version type is required.
[API change] Add writerListTables to WriterOptions.
RST writer: Remove sensitivity to "list-table" class in table attributes.
Instead, just check `writerListTables` in writer options.
See #4564.
tt is a deprecated element in HTML, but is still used in the wild in
some places, support reading it as just another 'code' element.
Commit 4abb9d0ad8 was originally
part of this PR as well.
The caption of headless tables was repeated on each page that contained
part of the table. It is now made part of the "first head", i.e. the
table head that is printed only once.
`%` does not function as a comment character inside `url`
(where URL-encoding is common).
Commit 6fb2973a58 mistakenly
took this reassignment of `%` to be a general feature of
braced (but not quoted) BibTeX fields.
This commit restores the correct behavior of `%` in braced fields
other than `url`, and corrects the behavior of `%` in `url`
when the value is quoted.
Closes#7678 (again).
This change only affects the case where `--file-scope` is used
and more than one file is specified on the command line.
In this case, identifiers will be prefixed with a string
derived from the file path, to disambiguate them. For example,
an identifier `foo` in `contents/file1.txt` will become
`contents__file1.txt__foo`. Links will be adjusted accordingly:
if `file2.txt` links to `file1.txt#foo`, then the link will
be changed to point to `#file1.txt__foo`. Similarly, a link
to `file1.txt` will point to `#file1.txt`. A Div with an
identifier derived from the file path will be added around
each file's content, so that links to files will still work.
Closes#6384.
[API change]: Text.Pandoc.Shared exports `textToIdentifier`.
Documentation says that when more than one heading has the same text,
an implicit reference `[Heading text][]` refers to the first one.
Previously pandoc linked to the last one instead. This patch
makes pandoc conform to the documented behavior.
See #8300.
This allows to specify a table foot by enclosing it with part separator
lines, i.e., row separator lines consisting only of `+` and `=`
characters. E.g.:
+------+-------+
| Item | Price |
+======+=======+
| Eggs | 5£ |
+------+-------+
| Spam | 3£ |
+======+=======+
| Sum | 8£ |
+======+=======+
The last row, containing "Sum" and "8£", is the table foot.
Closes: #8257
Otherwise the `?` character that is there as a fallback
for systems that can't process the unicode will be interpreted
as the paramater's delimiter, and the NEXT character will be
gobbled instead of `?`.
Closes#8264 (fixes a problem with disappearing characters
after unicode escapes).
These should not be generated by any pandoc readers, but they
might be produced programatically. Technically that's a misuse
of the AST, but since the expectation that the classes are
nonempty strigs is not encoded in the types, it can happen. This patch
limits the damage if it does, preventing invalid markdown attributes
like `{.}` from being written.
Cloess #8251.
This allows the combination of the fenced code block shortcut form with
attributes:
````
```haskell {.class #id}
```
````
The code syntax class will be combined with the attribute classes.
This syntax allows for more intuitive writing and for better compatibility
with other Markdown parsers such as GitHub or Codeberg.
Closes#8174.
The default `flex` and `overflow-x` properties of a column are set to
`auto`. In combination, these changes allow to get good results when
using columns with or without explicit widths.
This allows to keep more information in the resulting `src` blocks,
making it easier to roundtrip from or through Org. Org babel ignores
unknown header arguments.