Table of Contents
Org mode for Emacs is a mode for using text files to organise your ToDo lists, Agendas, task completion, logging time spent on tasks, writing documents and much more. That sounds amazing but basically it is using ASCII plain text-files to organise all of the things that you would use complicated, often paid-for apps. Life in plain-text is the way forward.
Dedicated topics
- Org Capture saving notes quickly.
- Org Roam a “second mind” using the Zettelkasten method.
- Org Babel literate programming.
- Org Reveal slides from org-files using Reveal.js
- Org Agenda get your life Org-anised.
Usage
General
Keys | Action |
---|---|
C-c . | Insert date |
Shift-Tab | Toggle TODO status |
C-x p i | Insert hyperlink from clipboard (requires a plugin, can't recall what though). |
Logging Time
Keys | Action |
---|---|
C-c i | Start logging time against a task |
C-c o | Stop logging time against a task |
Tables
Keys | Action |
---|---|
C-c C-c | Update all formulas when on #+TBLFM |
C-u C-c * | Update all formulas from anywhere in the table |
Table Magic
You can use tables like spreadsheets and write formula's for calculating things, for an introduction see Org as a spreadsheet system: a short introduction. But you can do really smart things since Emacs/org-mode can be made aware of units, and so can do conversions (see also the linked thread).
I wanted to record my “workouts” (runs and cycles) for which I record time and distance (via GPS tracking using the privacy respecting OpenTracks), and as such set up an org table shown below.
- snippet.org
#!tablename: runing-log #+NAME: runing-log | Date | Activity | Route | Distance | Time | Pace | |------------------+----------+------------------------+----------+---------------+---------------| | <2020-06-16 Tue> | Run | Somewhere | 6.47km | 34min + 44s | | | <2020-06-13 Sat> | Run | Somewhere | 8.03km | 47min + 28s | | #+TBLFM: $5=uconvert($4/$3, (min+s)/km);L
This requires that unconvert
is defined in your start up somewhere.
- snippet.lisp
;; Define conversion (defmath uconvert (v u) "Convert value V to compatible unit U." (math-convert-units v u))
How to get the Pace
calculated? Well notionally if it were a straight division then it would be =($5 / $4)
in the first cell, then C-u C-c *
(or C-c C-c
if you're on the #+TBLFM
line at the bottom of the table.). But that won't be quite right since minutes are not base-10.
Column Width
Tables when rendered will wrap automatically but what about when editing raw Org files? An explanation of how to set column widths can be found at Wrap cell content in an org mode table - Emacs Stack Exchange.
Links
See the documentation on Hyperlinks (Org Mode Compact Guide). You can specify links to files on your local system, headers/sections within a document or websites.
Internal Links
You can make links within your org files. As described here and in detail in the manual. A CAPTION
is required for links to work properly.
- snippet.org
See [[#example-table]] #+NAME: example-table #+CAPTION: This is a table #+RESULTS | a | table | |---+-------| | 1 | 2 | | 3 | 4 |
File Links
You can link to files using…
- snippet.org
# These can be relative too rather than absolute [[file:/path/to/file.txt][Link to file]]
Extensions
I use a few extra org extensions, well I have them installed, I don't necessarily use them all yet…
org-babel
: Babel: active code in Org-modeorg-cliplink
: rexim/org-cliplink: Insert org-mode links from clipboardorg-kanban
org-parser
All can be installed via MELPA.
Configuration
Syncing with Android
The excellent Orgzly allows you to read your Org-mode files on mobile and can be synced with Syncthing to keep everything up-to-date.
Combined with Tasker I can even dictate notes (although I've now lost the link to how to do that!).
Another option which is only designed to read your Org files on your phone and not edit them or produce an Agenda is Orgro which I actually prefer for reading the files as it has lots of pretty colours unlike Orgzly at present.
I used to MobileOrg and use Dropbox to sync between devices but its a bit dated.
Links
Android/Mobile
How-Tos
Articles by Jethro Kuan
Hooks
org-capture
Calendar
HTML Themes
- alphapapa/org-html-theme-darksun: A Solarized Dark version of the Bigblow Org HTML export theme has collapsable headers.
- thomasf/solarized-css plain CSS maybe one day I'll for the above and merge with this.