This Month in Org RSS icon

A discussion on contributor support

Concerns were raised1 about some contributors’ patches languishing, and it not being made clear how long it might take to get a response from someone.

In response to this, a the new role of Contributor Steward has been created to: help ensure contributors get a timely response, help out with preliminary patch feedback, and keep up to date.

Org now has three Contributor Stewards to ease the process for patch submitters and core maintainers:

  • Timothy / TEC
  • Tim Cross
  • John Corless

If you’ve been thinking about getting involved with Org, now is a great time to give it a shot!

Ways you can contribute to the project

Test patches, improve documentation, translate pages, confirm bugs, feedback on a proposed feature, and more…

Org plot improvements

Over the past month org-plot.el has received some attention, my two favourite changes are:

  • You can now call org-plot/gnuplot with C-c C-c on a #+plot: line TEC
  • When an image is regenerated, all instances of the image in the buffer are refreshed TEC
Figure 1: Regenerating an org-plot graphic, showing off: the ease of re-plotting, the new radar type, and a style set by a new variable.

Other than a few minor tweaks and bug fixes, that’s it for April. However, over the last year there have been some rather nice improvements that I didn’t mention in the initial blog post, so let’s go over them now.

  • The inbuilt plot types have been abstracted out into a new structure: org-plot/preset-plot-types. This means if you have a gnuplot template you find yourself using a lot, you can now turn it into a custom plot type 😀 TEC
  • A new plot type has been added: a radar / spider plot TEC
  • Some new plot keywords have arrived too TEC
    • transpose: (trans:) — The plot internally does something very similar to M-x org-table-transpose-table-at-point before using the table data.
    • ymin: (min:), ymax: (max:), xmin:, xmax: — Four new keywords (and two aliases) to set the bounds of a plot. Partially supported by the default types.
    • ticks: — The number of axis ticks to use along the axis. A good value is guessed based on a prime factorisation based heuristic (welcome to improvements).
    • Some new customisation functions — The new variables org-plot/gnuplot-script-preamble, org-plot/gnuplot-term-extra, and org-plot/gnuplot-script-preamble open up new ways to tweak plots to your liking. For example, I use this to set line and background colours based on my current Emacs theme.

If you haven’t used Org plot before, I think it’s a great way to quickly visualise data in a table. To get started, all you need is a #+plot line above the table, with a certain type: specified (e.g. type:2d for a 2d line plot). Then, if you can specify a certain columns as the independent variable (x-values) with ind:, and list dependant variables (y-values) with deps:.

You can see these parameters set in the figure above,

Org mode
#+plot: type:2d ind:1 deps:(2 3 4)
| Xval | Red | Blue | Green |
|    0 |   1 |    2 |     3 |
|    1 |   2 |    3 |     4 |

This will call gnuplot and a window showing the plot will appear. If you want to save the plot to a file, just use the file: parameter, e.g. file:"demoplot.svg" (note the quotes).

That should get you started, you can see the manual for the full list of available keywords and find more examples of usage on worg.

Tweaked ox-html style

As displays become more high-res, lines of text which span the whole screen become … long. So long that it genuinely makes it harder to read the text. A small tweak to the default style and lines are now capped at 60em wide and centred in the page — much better 🙂. TEC

Figure 2: The new export style (left) compared to the old (right).

Also, the HTML export now:

  • has a slightly nicer source block style
  • labels authinfo blocks

A collection of export improvements

  • Verbatim in headings no longer breaks LaTeX exports TEC
  • Make the top level class for exported HTML customisable via org-html-content-class / #+HTML_CONTENT_CLASS Sameer Rahmani
  • Use <img> tags for SVGs with ox-html, for better behaviour and W3C compliance TEC
  • Remove redundant type="text/javascript" from <script> elements Bastien Guerry
  • ox-texinfo now generates better headlines, menus, and footnotes Nicolas Goaziou
  • Parsing during exporting no longer aborts as soon as an #+option key without a value is encountered, instead that key is skipped over Nicolas Goaziou
  • org-html-scripts and org-html-style-default have been changed from constants to configurable values TEC
  • eval macros #+macro: ? (eval ...) are now a little bit faster Stefan Monnier

Miscellaneous changes

  • org-link-descriptive is now buffer-local, to avoid interfering with other buffers Kyle Meyer
  • org-colview no longer chokes when a special property is updated Nicolas Goaziou
  • Now coderefs have their whitespace cleaned up during tangling Tom Gillespie
  • Allow for multiple %(expressions) in org-agenda-prefix-format Ihor Radchenko
  • Code cleanup and refactoring Nicolas Savage, Aaron L. Zeng, Nicolas Goaziou, Bastien Guerry, Stefa Monnier, Arne Babenhauserheid
  • Documentation improvements Jorge Neto, Erik Hetzner, Cheong Yiu Fung, Kyle Meyer
  • New ob-sqlite maintainer — Nick Savage
  • Make lilypond header arguments user-configurable Jamie Bayne
  • Fix ob-C regression which mixed up int, double, and char*. Fix another regression with table parameters tbanel
  • Fix indentation of list items and new logbook drawer notes Bastien Guerry
  • Notice when theme changes with LaTeX previews Yuri Lensky
  • Iron out a few edge cases in ol.el (Org links) Nicolas Goaziou
  • Some new tests for org-protocol Maxim Nikulin



Disclosure: this is me.

CC0 To the extent possible under law, TEC has waived all copyright and related or neighboring rights to This Month in Org.