ABSOLUTELY NO WARRANTY | free software

Emacs Org-Mode Reference Card

url:http://orgmode.org/orgcard.txt

Getting Started

(add-to-list 'auto-mode-alist '("\\.org$" . org-mode))
(define-key global-map "\C-cl" 'org-store-link) [1]
(define-key global-map "\C-ca" 'org-agenda) [1]

For the many customization options try            M-x org-customize
To read the on-line documentation try             M-x org-info

Visibility Cycling

rotate current subtree between states             TAB
rotate entire buffer between states               S-TAB
show the whole file                               C-c C-a
reveal context around point                       C-c C-r
show subtree in indirect buffer, ded. frame       C-c C-k

Motion

next/previous heading                             C-c C-n/p
next/previous heading, same level                 C-c C-f/b
backward to higher level heading                  C-c C-u
jump to another place in document                 C-c C-j
previous/next plain list item                     S-UP/DOWN [3]

Structure Editing

insert new heading/item at current level          M-RET
insert new heading after subtree                  C-RET
insert new TODO entry/checkbox item               M-S-RET
promote/demote current heading up one level       M-LEFT/RIGHT
promote/demote current subtree up one level       M-S-LEFT/RIGHT
move subtree/list item up/down                    M-S-UP/DOWN
refile subtree                                    C-c C-w
kill subtree                                      C-c C-x C-w
copy subtree                                      C-c C-x M-w
yank subtree                                      C-c C-x C-y
narrow buffer to current subtree                  C-x n s
widen restriction to full buffer                  C-x n w

Archiving

toggle ARCHIVE tag                                C-c C-x C-a
force cycling of an ARCHIVEd tree                 C-TAB
move subtree to archive file                      C-c C-x C-s

Filtering and Sparse Trees

construct a sparse tree by various criteria       C-c /
view TODO's in sparse tree                        C-c C-v
global TODO list in agenda mode                   C-c a t [1]
time sorted view of current org file              C-c a L

Tables

Creating a table

just start typing, e.g.                           |Name|Phone|Age RET |- TAB
convert region to table                           C-c |
... separator at least 3 spaces                   C-3 C-c |

Commands available inside tables

The following commands work when the cursor is inside a table.  Outside of
tables, the same keys may have other functionality.

Re-aligning and field motion

re-align the table without moving the cursor      C-c C-c
re-align the table, move to next field            TAB
move to previous field                            S-TAB
re-align the table, move to next row              RET

Row and column editing

move the current column left                      M-LEFT/RIGHT
kill the current column                           M-S-LEFT
insert new column to left of cursor position      M-S-RIGHT
move the current row up/down                      M-UP/DOWN
kill the current row or horizontal line           M-S-UP
insert new row above the current row              M-S-DOWN
insert hline below (C-u : above) current row      C-c -
sort lines in region                              C-c ^

Regions

cut rectangular region                            C-c C-x C-w
copy rectangular region                           C-c C-x M-w
paste rectangular region                          C-c C-x C-y
fill paragraph across selected cells              C-c C-q

Miscellaneous

to limit column width to N characters, use        ...| <N> |...
edit the current field in a separate window       C-c `
make current field fully visible                  C-u TAB
export as tab-separated file                      M-x org-table-export
import tab-separated file                         M-x org-table-import
sum numbers in current column/rectangle           C-c +

Tables created with the table.el package

insert a new table.el table                       C-c ~
recognize existing table.el table                 C-c C-c
convert table (Org-mode <-> table.el)             C-c ~

Spreadsheet

Formulas typed in field are executed by TAB, RET and C-c C-c.  = introduces a
column formula, := a field formula.

Example: Add Col1 and Col2                        |=$1+$2 |
... with printf format specification              |=$1+$2;%.2f|
... with constants from constants.el              |=$1/$c/$cm |
sum from 2nd to 3rd hline                         |:=vsum(@II..@III)|
apply current column formula                      | = |
set and eval column formula                       C-c =
set and eval field formula                        C-u C-c =
re-apply all stored equations to current line     C-c *
re-apply all stored equations to entire table     C-u C-c *
iterate table to stability                        C-u C-u C-c *
rotate calculation mark through # * ! $           C-#
show line, column, formula reference              C-c ?
toggle coordinate grid                            C-c }
toggle formula debugger                           C-c {

Formula Editor

edit formulas in separate buffer                  C-c '
exit and install new formulas                     C-c C-c
exit, install, and apply new formulas             C-u C-c C-c
abort                                             C-c C-q
toggle reference style                            C-c C-r
pretty-print Lisp formula                         TAB
complete Lisp symbol                              M-TAB
shift reference point                             S-cursor
shift test line for column references             M-up/down
scroll the window showing the table               M-S-up/down
toggle table coordinate grid                      C-c }

Completion

In-buffer completion completes TODO keywords at headline start, TeX macros
after `\', option keywords after `#-â', TAGS after `:', and dictionary words
elsewhere.

complete word at point                            M-TAB

TODO Items and Checkboxes

rotate the state of the current item              C-c C-t
select next/previous state                        S-LEFT/RIGHT
select next/previous set                          C-S-LEFT/RIGHT
view TODO items in a sparse tree                  C-c C-v
view 3rd TODO keyword's sparse tree               C-3 C-c C-v
set the priority of the current item              C-c , [ABC]
remove priority cookie from current item          C-c , SPC
raise/lower priority of current item              S-UP/DOWN [3]
insert new checkbox item in plain list            M-S-RET
toggle checkbox(es) in region/entry/at point      C-c C-x C-b
toggle checkbox at point                          C-c C-c
checkbox statistics cookies                       insert [/] or [%]
update checkbox statistics (C-u : whole file)     C-c #

Tags

set tags for current heading                      C-c C-c
realign tags in all headings                      C-u C-c C-c
create sparse tree with matching tags             C-c \
globally (agenda) match tags at cursor            C-c C-o

\section{Properties and Column View}

\key{set property}{C-c C-x p}
\key{special commands in property lines}{C-c C-c}
\key{next/previous allowed value}{S-left/right}
\key{turn on column view}{C-c C-x C-c}
\key{capture columns view in dynamic block}{C-c C-x r}

\key{quit column view}{q}
\key{next/previous allowed value}{S-left/right}
\key{next/previous allowed value}{n / p}
\key{edit value}{e}
\key{edit allowed values list}{a}
\key{show value}{v}
\key{make column wider/narrower}{> / <}
\key{move column left/right}{M-left/right}
\key{add new column}{M-S-right}
\key{Delete current column}{M-S-left}

Timestamps

prompt for date and insert timestamp              C-c .
like C-c . but insert date and time format        C-u C-c .
like C-c . but make stamp inactive                C-c !
insert DEADLINE timestamp                         C-c C-d
insert SCHEDULED timestamp                        C-c C-s
create sparse tree with all deadlines due         C-c C-w
the time between 2 dates in a time range          C-c C-y
change timestamp at cursor by ±1 day              S-RIGHT/LEFT [3]
change year/month/day at cursor by ±1             S-UP/DOWN [3]
access the calendar for the current date          C-c >
insert timestamp matching date in calendar        C-c <
access agenda for current date                    C-c C-o
select date while prompted                        mouse-1/RET
toggle custom format display for dates/times      C-c C-x C-t

Clocking time

start clock on current item                       C-c C-x C-i
stop clock on current item                        C-c C-x C-o
cancel current clock                              C-c C-x C-x
display total subtree times                       C-c C-x C-d
remove displayed times                            C-c C-c
insert/update table with clock report             C-c C-x C-r

Agenda Views

add/move current file to front of agenda          C-c [
remove current file from your agenda              C-c ]
cycle through agenda file list                    C-'
compile agenda for the current week               C-c a a [1]
compile global TODO list                          C-c a t [1]
compile TODO list for specific keyword            C-c a T [1]
match tags, todo kwds and properties              C-c a m [1]
match only in TODO entries                        C-c a M [1]
find stuck projects                               C-c a # [1]
show timeline of current org file                 C-c a L [1]
configure custom commands                         C-c a C [1]
configure stuck projects                          C-c a ! [1]
agenda for date at cursor                         C-c C-o

To set categories, add lines like [2]:
#+CATEGORY: MyCateg

View Org file

show original location of item                    SPC/mouse-3
show and recenter window                          L
goto original location in other window            TAB/mouse-2
goto original location, delete other windows      RET
show subtree in indirect buffer, ded. frame       b
toggle follow-mode                                f

Change display

delete other windows                              o
switch to day/week/month/year view                d/w/m/y
toggle inclusion of diary entries                 D
toggle time grid for daily schedule               G
toggle display of logbook entries                 l
toggle inclusion of archived trees/files          v / C-u v}
refresh agenda buffer with any changes            r / g
filter agenda with repect to a tag                /
save all org-mode buffers                         s
display the next/previous day, week,...           RIGHT/LEFT
goto today                                        .

Remote editing

digit argument                                    0-9
change state of current TODO item                 t
kill item and source                              C-k
archive the subtree                               $ / a / A
show tags of current headline                     T
set tags for current headline                     :
toggle ARCHIVE tag                                a
set priority of current item                      p
raise/lower priority of current item              S-UP/DOWN [3]
display weighted priority of current item         P
schedule/set deadline for this item               C-c C-s/d
change timestamp to one day earlier/later         S-LEFT/RIGHT [3]
change timestamp to today                         >
insert new entry into diary                       i
start/stop/cancel the clock in current item       I / O / X
jump to running clock entry                       J

Misc

Open link in current line                         C-c C-o

Calendar commands

find agenda cursor date in calendar               c
compute agenda for calendar cursor date           c
show phases of the moon                           M
show sunrise/sunset times                         S
show holidays                                     H
convert date to other calendars                   C

Quit and Exit

quit agenda, remove agenda buffer                 q
exit agenda, remove all agenda buffers            x

Calendar and Diary Integration

Include Emacs diary entries into Org-mode agenda with:
(setq org-agenda-include-diary t)

LaTeX and cdlatex-mode

preview LaTeX fragment                            C-c C-x C-l
expand abbreviation (cdlatex-mode)                TAB
insert/modify math symbol (cdlatex-mode)          ` / '

Exporting and Publishing

Exporting creates files with extensions .txt and .html in the current
directory.  Publishing puts the resulting file into some other place.

export/publish dispatcher                         C-c C-e
export visible part only                          C-c C-e v
insert template of export options                 C-c C-x t
toggle fixed width for entry or region            C-c :

Comments: Text not being exported

Text before the first headline is not considered part of the document and is
therefore never exported.  Lines starting with # are comments and are not
exported.  Subtrees whose header starts with COMMENT are never exported.

toggle COMMENT keyword on entry                   C-c ;

Dynamic Blocks

update dynamic block at point                     C-c C-x C-u
update all dynamic blocks                         C-u C-c C-x C-u

Notes

[1] This is only a suggestion for a binding of this command. Choose you own key as shown under INSTALLATION.

[2] After changing a #+KEYWORD or <<<target>>> line, press C-c C-c with the cursor still in the line to update.

[3] Keybinding affected by org-CUA-compatibility.