diff options
Diffstat (limited to '.config/emacs/lisp/evil-collection/modes/org')
| -rw-r--r-- | .config/emacs/lisp/evil-collection/modes/org/README.org | 46 | ||||
| -rw-r--r-- | .config/emacs/lisp/evil-collection/modes/org/evil-collection-org.el | 87 |
2 files changed, 133 insertions, 0 deletions
diff --git a/.config/emacs/lisp/evil-collection/modes/org/README.org b/.config/emacs/lisp/evil-collection/modes/org/README.org new file mode 100644 index 0000000..42f9b25 --- /dev/null +++ b/.config/emacs/lisp/evil-collection/modes/org/README.org @@ -0,0 +1,46 @@ +* org + + Basic Evil bindings for [[https://orgmode.org/][org-mode]]. Not intended to supersede + [[https://github.com/Somelauw/evil-org-mode][evil-org-mode]] — only a handful of + overrides that align Org with Evil motion idioms. + +** Key bindings + +*** org-mode-map (normal) + + | Command | Original | Evil | + |----------------+----------+-----------| + | =org-cycle= | =TAB= | =<tab>= | + | =org-shifttab= | =S-TAB= | =<S-tab>= | + +*** org-mode-map (motion) + + | Command | Original | Evil | + |--------------------------+----------+------| + | =org-backward-paragraph= | n/a | ={= | + | =org-forward-paragraph= | n/a | =}= | + | =org-backward-sentence= | n/a | =(= | + | =org-forward-sentence= | n/a | =)= | + +*** org-capture-mode-map (normal) + + | Command | Original | Evil | + |------------------------+-----------+------| + | =org-capture-finalize= | =C-c C-c= | =ZZ= | + | =org-capture-kill= | =C-c C-k= | =ZQ= | + | =org-capture-refile= | =C-c C-w= | =ZR= | + +*** org-read-date-minibuffer-local-map + + Calendar navigation in the date prompt: + + | Command | Key | + |-------------------------------+-------| + | =org-calendar-backward-day= | =M-h= | + | =org-calendar-forward-day= | =M-l= | + | =org-calendar-backward-week= | =M-k= | + | =org-calendar-forward-week= | =M-j= | + | =org-calendar-backward-month= | =M-H= | + | =org-calendar-forward-month= | =M-L= | + | =org-calendar-backward-year= | =M-K= | + | =org-calendar-forward-year= | =M-J= | diff --git a/.config/emacs/lisp/evil-collection/modes/org/evil-collection-org.el b/.config/emacs/lisp/evil-collection/modes/org/evil-collection-org.el new file mode 100644 index 0000000..5973bb2 --- /dev/null +++ b/.config/emacs/lisp/evil-collection/modes/org/evil-collection-org.el @@ -0,0 +1,87 @@ +;;; evil-collection-org.el --- Evil bindings for org -*- lexical-binding: t -*- + +;; Copyright (C) 2021 Zhiwei Chen + +;; Author: Zhiwei Chen <condy0919@gmail.com> +;; Maintainer: James Nguyen <james@jojojames.com> +;; Pierre Neidhardt <mail@ambrevar.xyz> +;; URL: https://github.com/emacs-evil/evil-collection +;; Version: 0.0.1 +;; Package-Requires: ((emacs "26.3")) +;; Keywords: evil, org, tools + +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see <http://www.gnu.org/licenses/>. + +;;; Commentary: +;; Evil basic bindings for org-mode. It's NOT intended to supersede +;; `evil-org-mode'. +;; + +;;; Code: +(require 'evil-collection) +(require 'org nil t) + + +(defconst evil-collection-org-maps '(org-mode-map + org-capture-mode-map + org-read-date-minibuffer-local-map)) + +(declare-function org-shifttab "org") +(declare-function org-backward-paragraph "org") +(declare-function org-forward-paragraph "org") +(declare-function org-backward-sentence "org") +(declare-function org-forward-sentence "org") +(declare-function org-capture-finalize "org-capture") +(declare-function org-capture-kill "org-capture") +(declare-function org-capture-refile "org-capture") + +(declare-function org-calendar-forward-day "org") +(declare-function org-calendar-backward-day "org") +(declare-function org-calendar-forward-week "org") +(declare-function org-calendar-backward-week "org") +(declare-function org-calendar-forward-month "org") +(declare-function org-calendar-backward-month "org") +(declare-function org-calendar-forward-year "org") +(declare-function org-calendar-backward-year "org") +(declare-function org-defkey "org") + +;;;###autoload +(defun evil-collection-org-setup () + "Set up `evil' bindings for `org'." + (evil-collection-define-key 'normal 'org-mode-map + [tab] 'org-cycle + [S-tab] 'org-shifttab) + + (evil-collection-define-key 'motion 'org-mode-map + "{" 'org-backward-paragraph + "}" 'org-forward-paragraph + "(" 'org-backward-sentence + ")" 'org-forward-sentence) + + (evil-collection-define-key 'normal 'org-capture-mode-map + "ZZ" 'org-capture-finalize + "ZQ" 'org-capture-kill + "ZR" 'org-capture-refile) + + (org-defkey org-read-date-minibuffer-local-map (kbd "M-l") #'org-calendar-forward-day) + (org-defkey org-read-date-minibuffer-local-map (kbd "M-h") #'org-calendar-backward-day) + (org-defkey org-read-date-minibuffer-local-map (kbd "M-j") #'org-calendar-forward-week) + (org-defkey org-read-date-minibuffer-local-map (kbd "M-k") #'org-calendar-backward-week) + (org-defkey org-read-date-minibuffer-local-map (kbd "M-L") #'org-calendar-forward-month) + (org-defkey org-read-date-minibuffer-local-map (kbd "M-H") #'org-calendar-backward-month) + (org-defkey org-read-date-minibuffer-local-map (kbd "M-J") #'org-calendar-forward-year) + (org-defkey org-read-date-minibuffer-local-map (kbd "M-K") #'org-calendar-backward-year)) + +(provide 'evil-collection-org) +;;; evil-collection-org.el ends here |
