Export & plot in style
A discussion on contributor support
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 updates.orgmode.org 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/gnuplotwith 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
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-preambleopen 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,
| 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).
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
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
<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-style-defaulthave been changed from constants to configurable values TEC
- eval macros #+macro: ? (eval ...) are now a little bit faster Stefan Monnier
org-link-descriptiveis 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
- 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
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.