pandoc-plot

Render and include figures in Pandoc documents using your plotting toolkit of choice

GPL-2.0 License

Downloads
160
Stars
223
Committers
4

Bot releases are hidden (Show)

pandoc-plot - Release 1.2.1

Published by LaurentRDC over 3 years ago

This release brings one addition:

Added the ability to save plots as LaTeX directly from the GNUplot toolkit. To do this, simply set the output format to latex. The figure content will be embedded in the output document, which only makes sense for final conversion to LaTeX. For example:


```{.gnuplot format=latex caption="This is a test."}
...
```

This patch was contributed by Saku Laesvuori. Thanks!

pandoc-plot - Release 1.2.0

Published by LaurentRDC over 3 years ago

This release brings an important bug fix:

  • Fixed an issue where code blocks nested in other structures were detected properly. For example, in the following LaTeX snippet, plots would not be detected properly:
\begin{column}
  \begin{minted}[]{matplotlib}
  ...
  \end{minted}
\end{column}

Nested figures are not correctly identified.

Other minor changes:

  • The executables are now built with Pandoc 2.13. Pandoc 2.11 and Pandoc 2.12 are still supported.
pandoc-plot - Release 1.1.1

Published by LaurentRDC over 3 years ago

This is a minor release with the following changes:

  • Error messages now include the source script and line numbers.
  • The executables are now built with Pandoc 2.12. Pandoc 2.11 is still supported.
pandoc-plot - Support for PlantUML

Published by LaurentRDC over 3 years ago

  • Added the PlantUML toolkit (#18). Diagrams can be generated like so:

    
    ```{.plantuml}
    @startuml
    Bob->Alice : hello
    @enduml
    ```
    
    
  • Changed versioning scheme to match the more common Major.Minor.Bugfix versioning scheme.

pandoc-plot - Release 1.0.2.1

Published by LaurentRDC almost 4 years ago

This release brings two small fixes based on my experience writing my dissertation:

  • pandoc-plot will now only render at most N figures in parallel, where N is the number of available accessible CPU cores.
  • Fixed an issue where error message would get mangled in strict-mode.
pandoc-plot - Release 1.0.2.0

Published by LaurentRDC almost 4 years ago

New features

  • Added the ability to run pandoc-plot in strict mode. By default, pandoc-plot leaves code blocks unchanged if a figure fails to be rendered. In strict mode, pandoc-plot will immediately halt if it encounters a problem, such as a missing toolkit. You can activate strict mode via configuration:
strict: true
  • Added the ability to set command-line arguments for interpreters via configuration. For example, if you want to run the Matplotlib toolkit with all warnings shown:
# Possible parameters for the Matplotlib toolkit
matplotlib:
  executable: python
  command_line_arguments: -Wa

Or if you want julia to use more than one thread:

# Possible parameters for the Plotsjl toolkit
plotsjl:
  executable: julia
  command_line_arguments: --threads auto --optimize=0

Infrastructure

  • pandoc-plot executables are now built with Github Actions.

Bug fixes

  • Fixed an issue where invoking the plotsjl toolkit on Windows would sometimes fail with the error: Unknown system error 50.
  • Fixed an issue with R-based toolkits on Windows not being detected properly.
pandoc-plot - Release 1.0.1.0

Published by LaurentRDC almost 4 years ago

This release brings the following additions:

  • Added the ability to change the "Source code" label to other languages via configuration.
  • Added syntax highlighting to the linked source code.

as well as the following bugfix:

  • Fixed an issue where code blocks with unicode symbols (e.g. greek letters) would trip up pandoc-plot (#16).
pandoc-plot - Release 1.0.0.0

Published by LaurentRDC about 4 years ago

This release only brings minor changes:

  • With release 1.0.0.0, pandoc-plot has stabilized. The Haskell library API will not change until version 2+ (if that ever happens).
  • Added support for Pandoc 2.11+. Unfortunately, there is no way to support prior versions of Pandoc at the same time. Do not upgrade until you can also upgrade to Pandoc 2.11.
pandoc-plot - Release 0.9.4.0

Published by LaurentRDC about 4 years ago

This is a bug fix release with the following change:

  • Fixed an issue where the current working directory was changed. This prevented users from referring to files in scripts with relative paths (#2).
pandoc-plot - Release 0.9.3.0

Published by LaurentRDC about 4 years ago

This release brings a few changes:

  • Added executable caching: repeated usage of a particular toolkit will be faster because executables are only looked-for once.
  • Reverting the change from 0.8.1.0: internal machinery of pandoc-plot has been moved to the Text.Pandoc.Filter.Plot.Internal module, where there is no guarantee of backwards-compatibility after 1.0.0.
  • Removed the makePlot function, which could not take advantage of multithreading and other key features of pandoc-plot.
  • Fixed an issue where files required for tests were missing from source tarballs (#13).
pandoc-plot - Release 0.9.2.0

Published by LaurentRDC about 4 years ago

This release fixes a few issues.

  • Fixed an issue where executables located on paths with spaces would not be invoked correctly (#12)
  • Fixed an issue where R-paths were not normalized correctly.
  • Fixed an issue where executables specified in configuration that did not exist would crash pandoc-plot.
  • Fixed an issue where some R-based toolkits appeared to be available, but were not.
pandoc-plot - Release 0.9.1.0

Published by LaurentRDC about 4 years ago

This release brings one major addition:

  • Added the file parameter, which allows the user to read figure content from a file instead of using the code block content in documents. This is especially useful for complex figures, where you might want to have the help of your tooling in an IDE, for instance. Here's an example:

```{.matplotlib file=myplot.py}
```

Additional bug fixes and improvements:

  • Better error messages when specifying logger verbosity.
  • Cleaning output directories with pandoc-plot clean now follows configuration values for logging.
  • Fixed an issue where configuration in metadata did not get parsed properly.
pandoc-plot - Release 0.9.0.0

Published by LaurentRDC about 4 years ago

This release sees a few major improvements:

  • It is now possible to install pandoc-plot via conda on Linux.
  • The bokeh toolkit now supports exporting plots as SVGs (#8).
  • Interactive plots relying on javascript scripts will now defer loading the scripts (#9).
  • Added the dependencies argument, which tells pandoc-plot what files/directories are important to a particular figure (#10). If a file/directory listed in dependencies changes (for example, a data file), pandoc-plot will re-render the associated figure.

Other small improvements:

  • Better heuristic to determine what bokeh plot to save. This allows the user to export plots like the bokeh.layouts module.
  • Added support for the dpi parameter in graphviz and mathematica.
  • Added support for MATLAB's new exportgraphics function introduced in MATLAB 2020a. Older versions fallback to using saveas.
pandoc-plot - Release 0.8.1.0

Published by LaurentRDC about 4 years ago

This release sees one major change:

  • Interactive plots are now embedded directly in output (#7)

as well as minor changes:

  • The module Text.Pandoc.Filter.Plot.Internal is no longer exposed; instead, everything relevant is exposed by the Text.Pandoc.Filter.Plot module.
  • Fixed an issue where script errors would be logged as debug messages.
pandoc-plot - Release 0.8.0.0: interactive plots!

Published by LaurentRDC over 4 years ago

This release brings two new toolkits:

  • Added a new toolkit, bokeh. This toolkit can take advantage of the new HTML interactive output.
  • Added a new toolkit, plotsjl.

One MAJOR addition: interactive plots!

  • Added a new output format, HTML, to produce interactive plots. Not all renderers support it. You can try with Plotly/Python, Plotly/R, or Bokeh as follows:

```{.plotly_python format=html}
import plotly.express as px
df = px.data.election()
fig = px.scatter_ternary(df, a="Joly", b="Coderre", c="Bergeron")
```

Other small changes:

  • Separated the detailed information from README.md and into a proper MANUAL.md. This is now the information which will be shown with pandoc-plot --manual.
  • Exposed the pandoc-plot version via Text.Pandoc.Filter.Plot.pandocPlotVersion.
pandoc-plot - Release 0.7.2.1

Published by LaurentRDC over 4 years ago

This is a simple bug-fix release:

  • Fixed an issue where the pandoc version was not parsed properly, giving rise to errors when running pandoc-plot.
  • Fixed an issue where logging errors were not always displayed.
pandoc-plot - Release 0.7.2.0

Published by LaurentRDC over 4 years ago

This release involves the following changes:

  • Starting with this version, pandoc 2.8 and 2.9 are no longer supported due to a breaking API change in pandoc 2.10.
  • Removed dependency on open-browser package.
  • Executables are now built with GHC 8.10.1.
pandoc-plot - Release 0.7.1.0

Published by LaurentRDC over 4 years ago

This release sees the following change:

  • Better multi-threaded logging. Only one thread (the logging thread) performs IO on the log file. This prevents hang-ups when working on large documents.
pandoc-plot - Release 0.7.0.0

Published by LaurentRDC over 4 years ago

This release sees a lot of refactoring, but few user-facing changes.

  • Added documentation on using pandoc-plot with LaTeX documents as well.
  • Added preliminary support for logging. You can turn on this feature in the configuration as follows:
logging:
    # Possible verbosity values: debug, error, warning, info, silent
    # debug level shows all messages
    # error level shows all but debug messages, etc.
    verbosity: info
    
    # OPTIONAL: log to file
    # Remove line below to log to stderr
    filepath: log.txt
  • Removed dependencies turtle, temporary, deepseq, and data-default-class, resulting in improved build times by ~10%, and makes the executable smaller by 15-20%!
pandoc-plot - Release 0.6.1.0

Published by LaurentRDC over 4 years ago

This minor release sees few changes:

  • Made the functions availableToolkits and unavailableToolkits public.
  • Minor documentation fixes.
  • Executables are now built with GHC 8.8.3.