Skip to content

Emacs Shortcuts for org-mode

NameShortcuts
Quickly capture something like a taskorg-capture
NameShortcuts
Bold:*bold*
Italic/italic/
Link:[[link][description]]
Mark elementM-h
Lint file for syntax issuesorg-lint
NameShortcuts
Go to next visible heading line at same levelC-c C-f
Go to visible heading: next or previousC-c C-n or C-c C-p
Insert new heading of same level belowC-Enter
Insert new heading of same level immediatelyM-Enter
Move heading up/down (promote/demote)M-up or M-down
Sort - Entries like headings, table, list, todoC-c ^ or org-sort
Copy heading contentorg-copy-subtree
NameShortcuts
Sort lists, tables by selection 1org-sort= , =org-table-sort-lines
Indent headings/bulletsM-left/right
Insert next item in listM-Enter
Check checkboxC-c C-x C-b
org toggle on context 2Shift-Left or Shift-Right
Toggle task priority (A, B, C)Shift-Up or Shift-Down
NameShortcuts
Tags - Addorg-set-tags-command or counsel-org-tag
Tags - Add multipleM-Enter
Time estimate setorg-set-effort
  • In configuration, add your custom tags with org-tag-alist like (setq org-tag-alist ’((“work”) (“home”)))
NameShortcuts
Paste from clipboardorg-download-clipboard
Paste images or media from URLorg-attach
  • Favour using org-download-clipboard to get images or org-mode attach for links
NameShortcuts
Toggle headings visibilityShift-Tab , Shift-Tab-Tab
Open all folds of next headingoutline-show-subtree (z O in Doom Emacs)
NameShortcuts
Insert linkC-c C-l, org-insert-link
Insert link in any file like org mode wouldorg-insert-link-global
Open linkC-c C-o
Open link in any file like org mode wouldorg-open-at-point-global
Get link to current position such as heading in org fileorg-store-link
Go backorg-mark-ring-goto

org-store-link can be used outside of org files as well

  • Search tags: org-agenda with m “Match TAGS/PROP/TODO option, then type tag you want to search on
NameShortcuts
Navigate org headingsimenu

Source: Org tutorial for tables - orgmode.org, james-stoup/org-mode-table-tutorial: A simplified guide to mastering Org Mode table functions · GitHub

Create table C-c | from scratch or existing values like a csv formatted list.

NameShortcuts
Cell, edit in other windowC-c `
Change formula / format of table columnC-c = or org-table-eval-formula
Create or convert table from region/existing contentorg-table-create-or-convert-from-region
Help, See current cell row and column information and referenceC-c ?
Table, Insert column to left or rightS-M-Right arrow or S-M-Left arrow
Table, Insert row to down or upS-M-Down arrow or S-M-Up arrow
Table, Move column to left or rightM-Right arrow or M-Left arrow
Table, Move row down or upM-Down arrow or M-Up arrow
Table, Move to next cell / auto format tableTAB
Table, sortorg-sort or C-c ^
View, Adjust column width to expand to maximumorg-table-expand
View, Adjust column width to specific lengthorg-table-shrink

For table formulas, see:

Org mode uses the @ symbol to denote rows and the $ symbol to denote columns:

@1 $1@1 $2@1 $3
@2 $1@2 $2@2 $3
@3 $1@3 $2@3 $3

Babel Library of Source Code - Collection of code blocks

Section titled “Babel Library of Source Code - Collection of code blocks”
  • For any user to add code to the library, first save the code in regular code blocks of an Org file, and then load the Org file with: org-babel-lob-ingest
  • Source: Library of Babel (The Org Manual)
NameShortcuts
Start clock on current taskorg-clock-in
Stop clock on current taskorg-clock-out
Get clock report for current task/fileorg-clock-report

See also:

NameShortcuts
Create aliases for node namesorg-roam-alias-add
Shows backlinks to current node and context of resourcesorg-roam-buffer-toggle
Add tag to current nodeorg-roam-tag-add
NameShortcuts
Start server and web interfaceorg-roam-ui-mode
Zoom to current node in web (should be automatic)org-roam-ui-node-zoom

+org/dwim-at-point: like check boxs, follow items, and other functions

  1. different than sort-lines due options and sorts alphabetical and sub bullets correctly with uppercase and lowercase

  2. Act on element according to context:

    • switch a timestamp at point one day into the past
    • on a headline, switch to the previous TODO keyword, like DONE
    • on an item, switch entire list to the previous bullet type
    • on a property line, switch to the previous allowed value
    • on a clocktable definition line, move time block into the past
    • in a table, move a single cell left