Spot a typo?: Help me fix it by contacting me.
Quick reference guide for emacs Org-mode key binds
This is a quick reference to org mode, it is mostly a copy and paste from its manual, but I needed an easy way of checking the most useful org-mode commands in a single view, because I found myself checking again and again its manual.
First, you can cycle through your sections with
<TAB>, which expands/contract sections in your document.
* Top level headline ** Second level *** 3rd level some text *** 3rd level more text * Another top level headline
You can cycle through sections with:
C-u <TAB>Global cycle. (The entire buffer)
C-u C-u C-u <TAB>Show all.
Move through headlines
C-c C-nNext heading.
C-c C-pPrevious heading.
C-c C-fNext heading same level.
C-c C-bPrevious heading same level.
C-c C-uBackward to higher level heading.
Help me keep writing
- “Whitelist” me in your ad blocker
- Why I removed Google Analytics
- Use my Amazon link
- Download a free EBook
- Other ways to support me
M-<RET>Insert new heading with same level as current. If the cursor is at a plain list item, a new item is created. If used in the middle of a line, split the line and the rest become a new headline.
M-S-<RET>Insert new TODO at same level.
<TAB>In a new empty entry cycle through levels.
M-<left>/<right>Promote/demote current headline by one level.
M-S-<left>/<right>Promote/demote the current sub-tree by one level.
M-S-<up>/<down>Move sub-tree up/down (swap with previous/next sub-tree of same level).
C-c C-wRefile entry or region to a different location.
C-x n s/wNarrow buffer to current sub-tree / widen it again
Useful to hide documents parts where you are not currently working.
C-c <forward slash>Prompts to create a sparse-tree
C-c <forward slash> rOccur. Prompts for a regexp and shows a sparse tree with all matches. Each match is also highlighted; the highlights disappear by pressing C-c C-c.
- Description: Use
::to separate the term from the description.
M-<RET>Insert item at the same level.
M-S-<RET>Insert item with a Checkbox.
M-S-<up>/<down>Move items including sub-items up/down.
M-<left>/M-<right>Decrease/increase indentation level.
M-S-<left>/<right>Decrease/increase indentation level, including sub-items.
C-c C-cIf there is a checkbox, toggle it.
C-c -Cycle through differences kinds of lists.
C-c C-x fWhen cursor is at a footnote reference, jump to definition. When at a definition, jump to first reference. Otherwise, create a new footnote.
C-c C-cJump between definition and reference.
Here is an example footnote 1. The code to generate it is:
Here is an example footnote [fn:1]. [fn:1] Click return to return to reference
[[link][description]] or only
[[link]], once a link is created, you can edit it with
In case the link is not a URL, it is considered to be internal in the current file:
[[#custom-id]] [[My Target][Find my target]]
The last one will search for a target in the current file with syntax
C-c lStore a link to the current location.
C-c C-lInsert link, it will ask you for the link and an optional description. If called with
C-uprefix, file name completion is used to link to a file.
C-c C-lwith cursor in a link, allows to edit it.
Any headline starting with TODO becomes a TODO item.
C-c C-tRotate the TODO state of the current item among (unmarked) -> TODO -> DONE -> (unmarked)
S-<right>/<left>As above, but only for the item at point.
C-c / tView TODO items in a sparse tree.
C-c a tShow the global TODO list.
S-M-<RET>Insert new TODO item.
- C-c , Set priority for item (Between A,B,C).
S-<up>/<dwn>Cycle through priorities.
You can have a composed list of TODO items, and can toggle it with
C-c C-c, and create a new one with
* TODO Organize party [0/3] - [ ] call people [0/2] - [ ] Peter - [ ] Sarah - [ ] order food
Images & Tables
Tables have this syntax:
| HEADER1 | header2 | |----------+----------| | content1 | contend2 |
Images are like links:
To include source code:
#+BEGIN_SRC emacs-lisp (defun org-xor (a b) "Exclusive or." (if a (not b) b)) #+END_SRC
will render to
(defun org-xor (a b) "Exclusive or." (if a (not b) b))
You can edit the code example in a buffer supporting that language with
- Click to return to reference [return]