Commit graph

26 commits

Author SHA1 Message Date
John MacFarlane
b3fdfb912c macos release candidate: create symlink after download.
Otherwise we seem to get a full copy of the file!
2022-08-17 14:01:36 -07:00
John MacFarlane
e0984a43a9 Add built-in citation support using new citeproc library.
This deprecates the use of the external pandoc-citeproc
filter; citation processing is now built in to pandoc.

* Add dependency on citeproc library.
* Add Text.Pandoc.Citeproc module (and some associated unexported
  modules under Text.Pandoc.Citeproc).  Exports `processCitations`.
  [API change]
* Add data files needed for Text.Pandoc.Citeproc:  default.csl
  in the data directory, and a citeproc directory that is just
  used at compile-time.  Note that we've added file-embed as a mandatory
  rather than a conditional depedency, because of the biblatex
  localization files. We might eventually want to use readDataFile
  for this, but it would take some code reorganization.
* Text.Pandoc.Loging: Add `CiteprocWarning` to `LogMessage` and use it
  in `processCitations`. [API change]
* Add tests from the pandoc-citeproc package as command tests (including
  some tests pandoc-citeproc did not pass).
* Remove instructions for building pandoc-citeproc from CI and
  release binary build instructions.  We will no longer distribute
  pandoc-citeproc.
* Markdown reader: tweak abbreviation support.  Don't insert a
  nonbreaking space after a potential abbreviation if it comes right before
  a note or citation.  This messes up several things, including citeproc's
  moving of note citations.
* Add `csljson` as and input and output format. This allows pandoc
  to convert between `csljson` and other bibliography formats,
  and to generate formatted versions of CSL JSON bibliographies.
* Add module Text.Pandoc.Writers.CslJson, exporting `writeCslJson`. [API
  change]
* Add module Text.Pandoc.Readers.CslJson, exporting `readCslJson`. [API
  change]
* Added `bibtex`, `biblatex` as input formats.  This allows pandoc
  to convert between BibLaTeX and BibTeX and other bibliography formats,
  and to generated formatted versions of BibTeX/BibLaTeX bibliographies.
* Add module Text.Pandoc.Readers.BibTeX, exporting `readBibTeX` and
  `readBibLaTeX`. [API change]
* Make "standalone" implicit if output format is a bibliography format.
  This is needed because pandoc readers for bibliography formats put
  the bibliographic information in the `references` field of metadata;
  and unless standalone is specified, metadata gets ignored.
  (TODO: This needs improvement. We should trigger standalone for the
  reader when the input format is bibliographic, and for the writer
  when the output format is markdown.)
* Carry over `citationNoteNum` to `citationNoteNumber`.  This was just
  ignored in pandoc-citeproc.
* Text.Pandoc.Filter: Add `CiteprocFilter` constructor to Filter.
  [API change] This runs the processCitations transformation.
  We need to treat it like a filter so it can be placed
  in the sequence of filter runs (after some, before others).
  In FromYAML, this is parsed from `citeproc` or `{type: citeproc}`,
  so this special filter may be specified either way in a defaults file
  (or by `citeproc: true`, though this gives no control of positioning
  relative to other filters).  TODO: we need to add something to the
  manual section on defaults files for this.
* Add deprecation warning if `upandoc-citeproc` filter is used.
* Add `--citeproc/-C` option to trigger citation processing.
  This behaves like a filter and will be positioned
  relative to filters as they appear on the command line.
* Rewrote the manual on citatations, adding a dedicated Citations
  section which also includes some information formerly found in
  the pandoc-citeproc man page.
* Look for CSL styles in the `csl` subdirectory of the pandoc user data
  directory.  This changes the old pandoc-citeproc behavior, which looked
  in `~/.csl`.  Users can simply symlink `~/.csl` to the `csl`
  subdirectory of their pandoc user data directory if they want
  the old behavior.
* Add support for CSL bibliography entry formatting to LaTeX, HTML,
  Ms writers.  Added CSL-related CSS to styles.html.
2020-09-21 10:15:50 -07:00
John MacFarlane
22bf3d6727 Small changes to macos release candidate Makefile. 2020-03-22 11:13:20 -07:00
John MacFarlane
36cdaa4845 Fixes to 'notarize' target to preserve hardened runtime. 2020-03-22 11:00:31 -07:00
John MacFarlane
c173668938 macos/Makefile - add notarize target. 2020-03-22 10:50:11 -07:00
John MacFarlane
4d3ade0347 Add new distribution-creating Makefile to macos directory. 2020-03-22 10:26:20 -07:00
John MacFarlane
667af847a2 Remove old script to create macos package.
We now do this in CI.
2020-03-22 10:26:20 -07:00
John MacFarlane
ffa3d7160e Removed stack.pkg.yaml.
We only really need stack.yaml; we can put flag settings
for pandoc-citeproc there.

Also use ghc-8.0.2 in dockerized linux build.  This is
the only version available for alpine so far.
2017-12-27 20:21:37 -08:00
John MacFarlane
2c4fac6102 Create zip for macOS package. 2017-11-21 09:35:59 -08:00
John MacFarlane
5087b05df4 Use -O2 for windows, macos binary packages. 2017-11-04 15:57:21 -07:00
John MacFarlane
6eb604095d Fixed detection of VERSION in make_macos_package.sh.
This broke when we uncapitalized cabal fields!
Now we get this from `pandoc --version`.
2017-10-22 14:22:53 -07:00
ickc
5c1d844e40 Name change OSX -> macOS (#3869)
* Name change OSX -> macOS

fix commit c96b64e

This commit finishes remaining osx to macOS change, as well as replacing MacOS with macOS.

The reason for the later one is because the "correct" casing of macOS is like that. Apple styles it to looks like iOS, watchOS, tvOS, etc. And unfortunately they all start with a lowercase letter, making propercasing (or even title-casing) odd.

* fix casing of Linux, UNIX, and Windows
2017-08-23 13:48:10 -07:00
John MacFarlane
995d17353b make_macos_package.sh: use strip to reduce executable size. 2017-08-18 14:34:46 -07:00
John MacFarlane
0fd110b14e Fixed MacOS packaging script. 2017-06-04 21:02:11 +02:00
John MacFarlane
ff991d1e21 Revert "Revert "Use file-embed instead of hsb2hs to embed data files.""
This reverts commit 1fa15c225b.
2017-04-02 23:10:10 +02:00
John MacFarlane
1fa15c225b Revert "Use file-embed instead of hsb2hs to embed data files."
This reverts commit 10d91c1479.
2017-03-26 20:48:17 +02:00
John MacFarlane
10d91c1479 Use file-embed instead of hsb2hs to embed data files.
I think template haskell is robust enough now across platforms
that this will work.

Motivation: file-embed gives us better dependency tracking:  if a data
file changes, ghc/stack/cabal know to recompile the Data module.

This also removes hsb2hs as a build dependency.
2017-03-26 17:22:00 +02:00
John MacFarlane
395f20a048 Replaced {deb,macos,windows}/stack.yaml with stack.pkg.yaml. 2017-02-12 21:45:30 +01:00
John MacFarlane
2e5d076af7 More updates to macos/stack.yaml. 2017-02-12 20:21:19 +01:00
John MacFarlane
1e694805a1 stack.yamls: Use lts-8.0. 2017-02-12 19:16:53 +01:00
John MacFarlane
79561920c8 Comment out instruction to use cpphs in macos stack.yaml.
I don't think this is still needed. If the Travis build fails,
we can try adjusting the CPP to make it more compatible.
2017-02-12 18:24:31 +01:00
John MacFarlane
4ae0cddb92 Use latest pandoc-citeproc dev in stack builds. 2017-02-07 15:07:48 +01:00
John MacFarlane
e07e83f831 Update dev version of pandoc-citeproc in stack.yaml. 2017-02-07 10:42:18 +01:00
John MacFarlane
d4d3184060 make_macos_package.sh - install cpphs if not present. 2017-01-31 15:30:21 +01:00
John MacFarlane
5cc32b7032 stack.yaml - use latest skylighting. 2017-01-31 15:29:57 +01:00
John MacFarlane
c96b64e91b Name change OSX -> MacOS.
Add a -MacOS suffix to mac package rather than -OSX.
CHanged local names from osx to macos.
2017-01-31 15:06:58 +01:00