-
Notifications
You must be signed in to change notification settings - Fork 71
/
Copy pathexample_config.el
58 lines (53 loc) · 1.55 KB
/
example_config.el
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
(add-to-list 'load-path "~/.emacs.d/plugins/evil-org")
(require 'evil-org)
(require 'evil-org-agenda)
(require 'leader)
(require 'hydra)
(setf evil-org-key-theme '(navigation insert textobjects additional))
(setf org-special-ctrl-a/e t)
(evil-org-agenda-set-keys)
(add-hook 'org-mode-hook
(lambda ()
(evil-org-mode)
;; Custom mappings
(evil-define-key 'normal evil-org-mode-map
(kbd "-") 'org-ctrl-c-minus
(kbd "|") 'org-table-goto-column
(kbd "M-o") (evil-org-define-eol-command org-insert-heading)
(kbd "M-t") (evil-org-define-eol-command org-insert-todo))
;; Configure leader key
(evil-leader/set-key-for-mode 'org-mode
"." 'hydra-org-state/body
"t" 'org-todo
"T" 'org-show-todo-tree
"v" 'org-mark-element
"a" 'org-agenda
"c" 'org-archive-subtree
"l" 'evil-org-open-links
"C" 'org-resolve-clocks)
;; Define a transient state for quick navigation
(defhydra hydra-org-state ()
;; basic navigation
("i" org-cycle)
("I" org-shifttab)
("h" org-up-element)
("l" org-down-element)
("j" org-forward-element)
("k" org-backward-element)
;; navigating links
("n" org-next-link)
("p" org-previous-link)
("o" org-open-at-point)
;; navigation blocks
("N" org-next-block)
("P" org-previous-block)
;; updates
("." org-ctrl-c-ctrl-c)
("*" org-ctrl-c-star)
("-" org-ctrl-c-minus)
;; change todo state
("H" org-shiftleft)
("L" org-shiftright)
("J" org-shiftdown)
("K" org-shiftup)
("t" org-todo))))