Skip to content

Latest commit

 

History

History
156 lines (126 loc) · 8.09 KB

keythemes.org

File metadata and controls

156 lines (126 loc) · 8.09 KB

Key themes

The config is set up in key themes.

To enable all bindings use:

(evil-org-set-key-theme '(textobjects insert navigation additional shift todo heading))

Basic

These keys are always enabled

keyfunctionexplanation
xevil-org-delete-charlike x but keep tables and tags aligned
Xevil-org-delete-previous-charlike X but keep tables and tags aligned
0evil-org-beginning-of-linelike 0 but can be special*
$evil-org-end-of-linelike $ but can be special*
TABorg-cyclechange folding level of current heading
oevil-org-open-belowlike o but continue tables and items*
Oevil-org-open-abovelike O but continue tables and items*
(org-forward-sentencenext cell in table
)org-backward-sentenceprevious cell in table
{org-backward-paragraphbeginning of table
}org-forward-paragraphend of table
  • Set org-special-ctrl-a/e to t to make org-beginning-of-line and org-end-of-line ignore leading stars or tags on headings. Repeat to toggle. By default it’s set to nil.
  • The cases in which o and O should behave special can be controlled using evil-org-special-o/O. By default it’s set to '(table-row item).

Operators

Operators for promoting/demoting headings and items

keyfunctionexplanation
<evil-org-shift-leftPromote all headings in marked area
>evil-org-shift-rightDemote all headings in marked area

Examples:

  • >> to promote a heading
  • >ar to promote a tree (if text objects are enabled)

If you want < and > to promote / demote on a single press, add the following to your org setup:

(evil-define-key 'normal evil-org-mode-map
                 (kbd ">") 'org-meta-right
                 (kbd "<") 'org-meta-left)

Or enable the additional key binding theme and use M-h and M-l.

Navigation

If you don’t want to use hjkl, you can customize evil-org-movement-bindings.

keyfunctionexplanation
ghorg-element-upparent of element
gjorg-forward-elementnext element
gkorg-backward-elementprevious element
glorg-down-elementfirst subelement
gHevil-org-toptop-level heading

Text objects

keyfunctionexamples
ae / ieevil-org-an/inner-objectlink, markup, table cell
aE / iEevil-org-an/inner-elementparagraph, code block, table row
ar / irevil-org-an/inner-greater-elementitem list, table
aR / iRevil-org-an/inner-subtreesubtree starting with a header
  • ae/ie select the smallest object or element at point. Can be repeated to select adjacent objects / elements.
  • aE/iE select the smallest element at point. Elements build up the structure of the document, so there is always an element at any point. Can be repeated to select adjacent elements.
  • ar/ir select smallest element that is a container of other elements. Can be repeated to select greater elements

Examples:

  • vae to select a paragraph
  • daR to delete a subtree
  • yiR to yank the contents of a subtree

Additional

If you don’t want to use hjkl, you can customize evil-org-movement-bindings. If you want to use these bindings even in insert mode, you can customize evil-org-use-additional-insert.

keyfunctionOn headingsOn tables
M-horg-metaleftpromote headingmove column left
M-lorg-metarightdemote headingmove column right
M-korg-metaupmove subtree upmove column up
M-jorg-metadownmove subtree downmove column down
M-Horg-shiftmetaleftpromote subtreedelete column
M-Lorg-shiftmetarightdemote subtreeinsert column
M-Korg-shiftmetaupmove heading updelete row
M-Jorg-shiftmetadownmove heading downinsert row

Shift

Disabled by default. If you don’t want to use hjkl, you can customize evil-org-movement-bindings.

keyfunctionexplanation
Horg-shiftleftprevious todo item
Lorg-shiftrightnext todo item
Jorg-shiftdowndecrease priority
Korg-shiftupincrease priority

Todo

Disabled by default.

keyfunction
torg-todo
Torg-insert-todo-heading nil
M-torg-insert-todo-heading+org-metaright

Heading

Disabled by default.

keyfunction
Oorg-insert-heading
M-oorg-insert-heading+org-metaright

Commands without default binding

These functions don’t have any bindings by default. You can bind them under C-c or another leader key. These functions may have a few bugs. Improvements in the form of pull requests are welcome.

functionexplanation
evil-org-recompute-clocks (deprecated)recompute clocks in selection
evil-org-open-linksopens links in selection
evil-org-open-incognitoopen link at point in incognito window

Recomputing a single clock can also be done with C-c C-c. Recomputing all clocks can be done with org-resolve-clocks. It’s recommended to bind the latter instead. evil-org-open-links opens all links in a selection. Use RET to open a single link. evil-org-open-incognito tries to open a link in a private window.