Commit graph

491 commits

Author SHA1 Message Date
John MacFarlane
42fe30a9ee Update manual date and man paeg. 2020-03-23 16:43:31 -07:00
Fabien Schurter
5d88396dd4
Make MANUAL more explicit about NBSP handling by all_symbols_escapable (#6201)
Fixes #6154.
2020-03-20 17:15:00 -07:00
Albert Krewinkel
11b5f1e40b
Update copyright year (#6186)
* Update copyright year

* Copyright: add notes for Lua and Jira modules
2020-03-13 09:52:47 -07:00
John MacFarlane
0edc084c50 Revert "Allow specifying string value in metadata using !!literal tag."
This reverts commit 3493d6afaa.

This might be worth considering in the future, but let's not do
it yet...the additional complexity needs a better justification.
2020-02-17 15:58:21 -08:00
John MacFarlane
3493d6afaa Allow specifying string value in metadata using !!literal tag.
This is experimental.  Normally metadata values are interpreted
as markdown, but if the !!literal tag is used they will be interpreted
as plain strings.

We need to consider whether this can still be implemented if
we switch back from HsYAML to yaml for performance reasons.
2020-02-17 09:53:36 -08:00
John MacFarlane
cdbb14de5b Update changelog and man page. 2020-02-15 21:26:29 -08:00
Albert Krewinkel
f5ea5f0aad
Introduce new format variants for JATS (#6067)
New formats:

- `jats_archiving` for the "Archiving and Interchange Tag Set",
- `jats_publishing` for the "Journal Publishing Tag Set", and
- `jats_articleauthoring` for the "Article Authoring Tag Set."

The "jats" output format is now an alias for "jats_archiving".

Closes: #6014
2020-02-12 20:36:02 -08:00
John MacFarlane
f9514ccb9e Add Text.Pandoc.Readers.CSV (readCSV).
This adds csv as an input format.
The CSV table is converted into a pandoc simple table.

Closes #6100.
2020-01-31 21:14:21 -08:00
Salim B
34eba446a0 Update URLs and use HTTP**S** wherever possible (#6090)
I've changed _all_ `http:` URLs in the file to their `https` equivalents if the respective sites have properly configured HTTPS.
2020-01-27 15:46:33 -08:00
Albert Krewinkel
11e99409ce
docs: capitalize Lua where it refers to the programming language name
This follows the advise on the Lua
website (https://www.lua.org/about.html#name):

> […] "Lua" is a name, the name of the Earth's moon and the name of the
> language. Like most names, it should be written in lower case with an
> initial capital, that is, "Lua".
2020-01-12 11:29:05 +01:00
John MacFarlane
e4b2252a94 Bump to 2.9.1.1, update manual. 2020-01-05 11:15:52 -08:00
John MacFarlane
cd03ccca58 Update man page and MANUAL date. 2019-12-21 10:30:28 -08:00
John MacFarlane
18b530d613 MANUAL: A bit clearer explanation for --base-header-level.
We now say exactly how to work around the deprecation of this
option.
2019-12-20 17:04:38 -08:00
Albert Krewinkel
96c80b156d Add jira reader (#5913)
Closes #5556
2019-12-17 21:07:46 -08:00
John MacFarlane
1ed8518011 Regenerate man page. 2019-12-11 21:03:29 -08:00
Frederik Elwert
90804b5506 Add title-slide-attributes variable to reveal.js template. (#5981) 2019-12-11 08:26:54 -08:00
John MacFarlane
e16fd88c2e Rename template 'filters' as 'pipes'
to avoid confusion with the other notion of filter used by pandoc.
We may want to rename this upstream in doctemplates as well.
2019-12-07 11:42:29 -08:00
John MacFarlane
8ad14d6f57 Removed trailing whitespace in manual. 2019-12-07 09:06:20 -08:00
John MacFarlane
6bb552c589 Document display math syntax in manual. 2019-12-07 09:05:07 -08:00
John MacFarlane
d643393a69 Update manual date and man page. 2019-12-05 12:38:42 -08:00
John MacFarlane
e7833c4dfb Clean up manual on pdf generation backend options.
See #5940.
2019-12-05 10:15:53 -08:00
John MacFarlane
992f77c17c Roll back part of of --shift-heading-level-by change.
With positive heading shifts, starting in 2.8 this option caused
metadata titles to be removed and changed to regular headings.
This behavior is incompatible with the old behavior of
`--base-header-level` and breaks old workflows, so with this
commit we are rolling back this change.

Now, there is an asymmetry in positive and negative heading
level shifts:

+ With positive shifts, the metadata title stays the same and
  does not get changed to a heading in the body.
+ With negative shifts, a heading can be converted into the
  metadata title.

I think this is a desirable combination of features, despite
the asymmetry.  One might, e.g., want to have a document
with level-1 section headigs, but render it to HTML with
level-2 headings, retaining the metadata title (which pandoc
will render as a level-1 heading with the default template).

Closes #5957.
Revises #5615.
2019-12-05 09:59:50 -08:00
John MacFarlane
e479a88722 Bump to 2.8.0.1 and update changelog and manual. 2019-11-26 21:18:31 -08:00
John MacFarlane
7fb9432ae1 Update to doctemplates 0.7.2, update template docs.
This adds the `nowrap` filter.
2019-11-24 09:53:45 -08:00
Alexandre Franke
a09edd1703 Add support for $toc-title$ to HTML (4 and 5) (#5930) 2019-11-23 17:13:23 -08:00
Ian Max Andolina
39fde70c41 Remove grffile requirement in MANUAL.txt (#5927)
See #5848 for the details.
2019-11-22 19:56:25 -08:00
John MacFarlane
124fc40dd7 Update date on manual. 2019-11-22 07:59:52 -08:00
Brian Wignall
a946424e3c Fix typos (#5919) 2019-11-20 09:44:23 -08:00
John MacFarlane
038f70c84a Update man page. 2019-11-18 20:13:21 -08:00
John MacFarlane
0d4813d7ba Update MANUAL.txt for doctemplates changes. 2019-11-18 20:10:32 -08:00
John MacFarlane
73fb9496bc Reverted the behavior change with --title-prefix.
It now implies `--standalone` again, as before.
2019-11-17 17:35:50 -08:00
John MacFarlane
147ef90fde Ensure that options imply --standalone even in defaults file.
Certain options (`--self-contained`, `--include-in-header`, etc.)
imply `--standalone`.  We now handle this after option parsing
so that it affects options specified in defaults files too.

Behavior change: `--title-prefix` no longer implies `--standalone`.
2019-11-17 17:21:55 -08:00
John MacFarlane
0cea8df8ac MANUAL: fix formatting for --shift-heading-level. 2019-11-16 18:52:50 -08:00
John MacFarlane
ce976810b2 Adjust date on manual, regenerate man page. 2019-11-16 12:54:19 -08:00
John MacFarlane
bfa6c0b57d Default files: Allow leaving input-files blank again.
Leaving it blank yields a Nothing value (interpreted as stdin).
Providing an empty list is intepreted as no input.

This resolves one part of #5888.
2019-11-14 21:46:35 -08:00
John MacFarlane
ec043e0d97 Default files: combine with prior values when appropriate.
Certain command-line arguments can be repeated:
`--metadata-file`, `--css`, `--include-in-header`,
`--include-before-body`, `--include-after-body`, `--variable`,
`--metadata`, `--syntax-definition`.  In these cases, values
specified in default files should be added to the list rather
than replacing values specified earlier on the command line
(perhaps in other default files).

So, for example, if one does

    pandoc --variable foo=3 --defaults d1 --defaults d2

and `d1` sets the variable `bar` and `d2` sets `baz`,
all three variables will be set.

Closes #5894.
2019-11-13 16:51:02 -08:00
John MacFarlane
28a1f50111 Update manual in light of last change. 2019-11-13 16:33:49 -08:00
John MacFarlane
d3966372f5
Clarify MANUAL.txt on --preserve-tabs 2019-11-11 17:08:11 -08:00
John MacFarlane
741b1f7fb4 Markdown reader: fix small super/subscript issue.
Superscripts and subscripts cannot contain spaces,
but newlines were previously allowed (unintentionally).
This led to bad interactions in some cases with footnotes.
E.g.

```
foo^[note]
bar^[note]
```

With this change newlines are also not allowed inside
super/subscripts.

Closes #5878.
2019-11-11 09:08:52 -08:00
John MacFarlane
9c7f75afb5 Change merge behavior for metadata.
Previously, if a document contained two YAML metadata blocks
that set the same field, the conflict would be resolved in favor
of the first. Now it is resolved in favor of the second (due to
a change in pandoc-types).

This makes the behavior more uniform with other things in pandoc
(such as reference links and `--metadata-file`).
2019-11-07 10:48:38 -08:00
John MacFarlane
adad3c70b6 Allow singular input-file in defaults file.
Closes #5877.
2019-11-06 09:06:49 -08:00
John MacFarlane
f515f984d4 Revise MANUAL's comment on table-mode. 2019-11-03 14:57:27 -08:00
John MacFarlane
e906e5ac23 Allow pdf output to stdout.
PDF output will not be output to the terminal, but can be
sent to stdout using either `-o -` or a pipe.

The intermediate format will be determined based on
the setting of `--pdf-engine`.

Closes #5751.
2019-11-03 11:44:00 -08:00
John MacFarlane
15e1ca6441 Manual: clarify when macro definitions are passed as raw latex.
In Markdown input, they are always passed through.
In LaTeX, only if `latex_macros` is disabled.
2019-11-02 11:03:47 -07:00
John MacFarlane
db972b8ea0 LaTeX reader: parse macro defs as raw latex...
when `latex_macros` is disabled.  (When `latex_macros` is enabled,
we omit them, since pandoc is applying the macros itself.)

Previously, it was documented that the macro definitions got
passed through as raw latex regardless of whether `latex_macros`
was set -- but in fact they never got passed through.
2019-11-02 10:36:31 -07:00
John MacFarlane
cebf0091ca Document how to use custom writers with --standalone.
Closes #5866.
2019-11-02 08:24:39 -07:00
John MacFarlane
02c579ff3c Revert "ALlow multiple comma-separated files for --defaults."
This reverts commit e96f3fd813.
2019-11-01 21:48:30 -07:00
John MacFarlane
e96f3fd813 ALlow multiple comma-separated files for --defaults. 2019-11-01 10:14:30 -07:00
John MacFarlane
bf9e3faa35 --defaults improvements.
- ToYAML instance is now for `Opt -> Opt`, rather than `Opt`.

- This allows us to handle `--defaults` without clobbering all the
  options that occur prior to `--defaults` on the command line.
  (Note, however, that options in `--defaults` can replace these
  options if the `--defaults` option is used after them,
  which may be a bit confusing given the name.)

- `--defaults` may now be used multiple times on the command line,
  allowing users to break defaults into different chunks.
2019-11-01 09:03:40 -07:00
John MacFarlane
080a3cdaeb Update Template syntax in MANUAL.txt with latest doctemplates. 2019-10-29 22:39:25 -07:00
John MacFarlane
d8d784ab54 Fixed typo in example. 2019-10-14 08:48:51 -07:00
mb21
bfbff3106d KaTeX math: respect classoption=fleqn variable
closes #5815
2019-10-14 08:47:40 -07:00
John MacFarlane
2f32b5316f More documentation of default files 2019-10-11 10:06:01 -07:00
John MacFarlane
9e3e195dd4 Fix gfm_auto_identifiers behavior with emojis.
Closes #5813.

Note that we also now use emoji names for emojis
when `ascii_identifiers` is enabled.
2019-10-11 10:00:33 -07:00
John MacFarlane
34e6464e30 Improve sample --defaults file in MANUAL.txt. 2019-10-11 08:57:49 -07:00
John MacFarlane
7388cd3e7a Improve parsing of --defaults.
- Add FromYAML instances to Opt and to all subsidiary types.
- Remove the use of HsYAML-aeson, which doesn't give good
  position information on errors.
- Rename some fields in Opt to better match cli options or
  reflect what the ycontain [API change]:

  + optMetadataFile -> optMetadataFiles
  + optPDFEngineArgs -> optPDFEngineOpts
  + optWrapText -> optWrap
- Add IpynbOutput enumerated type to Text.Pandoc.App.Opts.
  Use this instead fo a string for optIpynbOutput.
- Add FromYAML instance for Filter in Text.Pandoc.Filters.

With these changes parsing of defaults files should be
complete and should give decent error messages.

Now (unlike before) we get an error if an unknown field
is used.
2019-10-10 23:21:18 -07:00
John MacFarlane
2523941453 Fix examplel for defaults. 2019-10-10 10:34:35 -07:00
John MacFarlane
5085fe605a Added documentation for --defaults. 2019-10-10 10:33:35 -07:00
John MacFarlane
a3cd74c29b --metadata-file: when multiple files specified, second takes precedence...
on conflicting fields.  This changes earlier behavior (but not in
a release), where first took precedence.

Note that this may seem inconsistent with the behavior of
multiple YAML blocks within a document, where the first takes
precedence.  Still, it is convenient to be able to override
defaults with options later on the command line.
2019-10-10 10:00:45 -07:00
John MacFarlane
68b09a6d81 Make some writers sensitive to 'unlisted' class on headings.
If this is present on a heading with the 'unnumbered' class,
the heading won't appear in the TOC.  This class has no
effect if 'unnumbered' is not also specified.

This affects HTML-based writers (including slide shows
and epub), LateX (including beamer), RTF, and PowerPoint.
Other writers do not yet support `unlisted`.

Closes #1762.
2019-10-10 09:15:40 -07:00
John MacFarlane
3f28e332bf Remove misleading sentence in --variables documentation. 2019-10-07 11:54:51 -07:00
John MacFarlane
175c57a966 Clarify that --dpi provides a default and doesn't override...
dpi values specified in the images themselves.  See #5721.
2019-10-06 09:32:45 -07:00
Wandmalfarbe
94a10ea1a5 PR corrections. 2019-10-03 17:24:09 -07:00
Wandmalfarbe
3459700312 Add documentation for the variable hyperrefoptions. 2019-10-03 17:24:09 -07:00
John MacFarlane
0b2dc480be Minor reformatting of exit code table. 2019-09-29 16:33:57 -07:00
John MacFarlane
f03e8c2c6c MANUAL: Use a table for exit codes. 2019-09-29 15:20:11 -07:00
John MacFarlane
054c30228d MANUAL: Put all template variable docs into one section. 2019-09-29 15:14:46 -07:00
John MacFarlane
2956c695f6 MANUAL.txt - use axt headers consistently. 2019-09-29 15:09:41 -07:00
John MacFarlane
ac4067fe2e MANUAL.txt: Add fuller documentation of templates.
Including new template syntax, partials, etc.

Closes #5779.
2019-09-29 15:00:34 -07:00
John MacFarlane
746c92a41a Raise error on unsupported extensions. Closes #4338.
+ An error is now raised if you try to specify (enable or
  disable) an extension that does not affect the given
  format, e.g. `docx+pipe_tables`.

+ The `--list-extensions[=FORMAT]` option now lists only
  extensions that affect the given FORMAT.

+ Text.Pandoc.Error: Add constructors `PandocUnknownReaderError`,
  `PandocUnknownWriterError`, `PandocUnsupportedExtensionError`.
  [API change]

+ Text.Pandoc.Extensions now exports `getAllExtensions`,
  which returns the extensions that affect a given format
  (whether enabled by default or not). [API change]

+ Text.Pandoc.Extensions: change type of `parseFormatSpec`
  from `Either ParseError (String, Extensions -> Extensions)`
  to `Either ParseError (String, [Extension], [Extension])`
  [API change].

+ Text.Pandoc.Readers: change type of `getReader` so it returns
  a value in the PandocMonad instance rather than an Either
  [API change].  Exceptions for unknown formats and unsupported
  extensions are now raised by this function and need not be handled by
  the calling function.

+ Text.Pandoc.Writers: change type of `getWriter` so it returns
  a value in the PandocMonad instance rather than an Either
  [API change].  Exceptions for unknown formats and unsupported
  extensions are now raised by this function and need not be handled by
  the calling function.
2019-09-29 11:43:17 -07:00
John MacFarlane
981b5de790 MANUAL.txt: fixed some markdown errors. 2019-09-28 11:16:46 -07:00
Nils Carlson
8028de3322 odt: Add external option for native numbering
This adds an external options +native_numbering to the
ODT writer enabling enumeration of figures and tables in
ODT output.
2019-09-24 15:23:59 -07:00
John MacFarlane
d247e9f72e Make plain output plainer.
Previously we used the following Project Gutenberg conventions
for plain output:

- extra space before and after level 1 and 2 headings
- all-caps for strong emphasis `LIKE THIS`
- underscores surrounding regular emphasis `_like this_`

This commit makes `plain` output plainer. Strong and Emph
inlines are rendered without special formatting.  Headings
are also rendered without special formatting, and with only
one blank line following.

To restore the former behavior, use `-t plain+gutenberg`.

API change: Add `Ext_gutenberg` constructor to `Extension`.

See #5741.
2019-09-22 11:33:09 -07:00
Nikolay Yakimov
9dbfd23c56 Update documentation wrt docx reader custom style names 2019-09-21 11:37:21 -07:00
Ben Steinberg
7389919bb4 Preserve built-in styles in DOCX with custom style (#5670)
This commit prevents custom styles on divs and spans from overriding
styles on certain elements inside them, like headings, blockquotes,
and links. On those elements, the "native" style is required for the
element to display correctly. This change also allows nesting of
custom styles; in order to do so, it removes the default "Compact"
style applied to Plain blocks, except when inside a table.
2019-09-20 22:13:29 -07:00
John MacFarlane
b222272b60 Add note on --print-default-template explaining how to print partials. 2019-09-16 09:45:03 -07:00
John MacFarlane
4f909c626c Change exit codes.
It's good practice not to use codes 1-2 for user errors.
Also, we used 65 for two different errors.

- PandocAppError was 1, is now 4
- PandocOptionError was 2, is now 6
- PandocMakePDFError was 65, is now 66
2019-09-12 08:46:38 -07:00
John MacFarlane
5aef7d04f0 MANUAL: add section for exit codes. 2019-09-12 08:36:49 -07:00
John MacFarlane
88dc6fac5d Add --shift-heading-level-by option.
Deprecate --base-heading-level.

The new option does everything the old one does, but also
allows negative shifts.  It also promotes the document
metadata (if not null) to a level-1 heading with a +1 shift,
and demotes an initial level-1 heading to document metadata
with a -1 shift. This supports converting documents that
use an initial level-1 heading for the document title.

Closes #5615.
2019-09-10 23:16:13 -07:00
John MacFarlane
4dad7c5e86 MANUAL: document some pptx limitations...
in slide show section:

- no incremental display (#5689)
- no pause with `. . .` (#5701)
2019-09-08 22:41:04 -07:00
John MacFarlane
8696725cd9 Add -L option as shortcut for --lua-filter. 2019-09-08 22:37:38 -07:00
Owen McGrath
92debe4b9e Change optMetadataFile type from Maybe to List (#5702)
Changed optMetadataFile from `Maybe FilePath` to `[FilePath]`. This allows
for multiple YAML metadata files to be added. The new default value has
been changed from `Nothing` to `[]`.

To account for this change in `Text.Pandoc.App`, `metaDataFromFile` now
operates on two `mapM` calls (for `readFileLazy` and `yamlToMeta`) and a fold.

Added a test (command/5700.md) which tests this functionality and
updated MANUAL.txt, as per the contributing guidelines.

With the current behavior, using `foldr1 (<>)`, values within files
specified first will be used over those in later files. (If the reverse
of this behavior would be preferred, it should be fixed by changing
foldr1 to foldl1.)
2019-08-24 09:41:25 -07:00
Mauro Bieg
ace4cdfc23 MANUAL: link to YAML spec (#5687) 2019-08-14 10:09:19 -07:00
John MacFarlane
b35fae6511 Use doctemplates 0.3, change type of writerTemplate.
* Require recent doctemplates.  It is more flexible and
  supports partials.
* Changed type of writerTemplate to Maybe Template instead
  of Maybe String.
* Remove code from the LaTeX, Docbook, and JATS writers that looked in
  the template for strings to determine whether it is a book or an
  article, or whether csquotes is used. This was always kludgy and
  unreliable.  To use csquotes for LaTeX, set `csquotes` in your
  variables or metadata. It is no longer sufficient to put
  `\usepackage{csquotes}` in your template or header includes.
  To specify a book style, use the `documentclass` variable or
  `--top-level-division`.
* Change template code to use new API for doctemplates.
2019-07-28 19:25:45 -07:00
Mauro Bieg
3edee7f68c MANUAL: reveal.js flags (#5653) 2019-07-19 12:21:32 -07:00
Tristan Stenner
09f30d65e4 Add option to include source files in ConTeXt PDFs (#5578)
Add a metadata option (`includesource`) to attach the source documents to the resulting PDF.
2019-07-16 09:31:59 -07:00
Karl Pettersson
5303791bc4 Customizable type of PDF/A for the ConTeXt writer (issue #5608) (#5610)
* Let the user choose type of PDF/A generated with ConTeXt (closes #5608)
* Updated ConTeXt test documents for changes in tagging
* Updated color profile settings in accordance with ConTeXt wiki
* Made ICC profile and output intent for PDF/A customizable
* Read pdfa variable from meta (and updated manual)
2019-07-15 11:55:04 -07:00
John MacFarlane
6d30d3e0b3 Pass through aria- attributes to HTML5.
Also document addition of data- prefix to unknown attributes.

Closes #5646.
2019-07-12 17:03:01 -07:00
Jeroen de Haas
e67f4c58f2 Powerpoint code formatting is now context dependent (#5573)
This commit alters the way in which the Powerpoint writer treats
inline code and code blocks.

- Inline code is now formatted at the same size as the surrounding
  text.
- Code blocks are now given a margin and font size according to their
  level.
- Furthermore this commit allows changing the font with which code is
  formatted via the `monofont` option.

Tested in
- PowerPoint 365 for Windows - 1808 (Build 10730.20344 Click-to-Run)
- PowerPoint 365 for Mac - 16.26 (19060901)
2019-06-14 08:42:06 -07:00
John MacFarlane
b6d564696f Update manual date, readme, man page. 2019-06-11 21:50:10 -07:00
John MacFarlane
931030d95d PDF via ms: make TOC appear at beginning and in PDF bookmarks.
Previously the TOC appeared at the end of the document,
and was not bookmarked.

If you want it to continue appearing at the end, add
`--pdf-engine-opt=--no-toc-relocation` to your command
line.

Closes #5553.
2019-06-08 11:53:37 -07:00
Albert Krewinkel
20503894f3
MANUAL.txt, pandoc.cabal: mention Jira as possible target format 2019-06-06 08:09:42 +02:00
John MacFarlane
b5af8eed38 Fix document section assignments in EPUB writer.
For example, introduction should go in bodymatter, not frontmatter, and
epigraph, conclusion, and afterward should go in bodymatter, not
backmatter.

For the full list of assignments, see the manual.

Closes #5546.
2019-06-04 09:20:29 -07:00
John MacFarlane
0e2d6561be MANUAL: add note about title-meta, author-meta, date-meta.
Closes #5486.
2019-05-28 09:26:57 -07:00
♫ Christian Krause ♫
51fa5f6ee2 MANUAL.txt: removes double 'inside' (#5489) 2019-05-07 12:24:12 -04:00
John MacFarlane
fee3258280 Add template variable curdir with working directory
from which pandoc is run.  Closes #5464.
2019-05-04 09:07:50 -07:00
John MacFarlane
f75fcf6f31 Update man page and README. 2019-04-05 15:11:08 -07:00
Andrew Dunning
81461dde58 Manual: Improve 'header' and 'heading' usage (#5424)
Corrects usage of 'heading' and 'header' in text (but does not change programmed names).
Partially addresses #5423.
2019-04-02 18:21:19 -06:00
Andrew Dunning
3d1409347a LaTeX template: Ensure correct heading/table order (#5421)
Improve the workaround for #1658, adapting a solution by @u-fischer in
<https://github.com/latex3/latex2e/issues/131> that works whether or not
the `indent` variable is enabled.

Remove `subparagraph` variable in LaTeX template.  The default is now
to use run-in style for level 4 and 5 headings (`\paragraph` and `\subparagraph`).
To get the previous default behavior (where these were formatted as blocks,
like `\subsubsection`), set the `block-headings` variable.

An example is given in the manual of reformatting the appearance of headings
more thoroughly using KOMA-Script.

Closes #5365.
2019-04-02 18:18:36 -06:00
John MacFarlane
ba8d0d9f01 Add xwiki output format to manual. 2019-04-02 16:41:50 -07:00