summaryrefslogtreecommitdiff
path: root/modes/ebib
diff options
context:
space:
mode:
authorJonathan Lai <jonathanlai@gmail.com>2019-09-18 00:08:36 -0700
committerJames N <james@jojojames.com>2019-10-09 19:41:45 -0700
commitaec0ecbb86a4a6761f89a9945435595a6ad202b1 (patch)
tree07d53f271835ef7bb124775ab7647a8b5a942f75 /modes/ebib
parent9346e4452bb1b62bf5825ca6b3c01abd80d33813 (diff)
Move mode files: evil-collection-*.el -> modes/*/evil-collection-*.el
Diffstat (limited to 'modes/ebib')
-rw-r--r--modes/ebib/evil-collection-ebib.el76
1 files changed, 76 insertions, 0 deletions
diff --git a/modes/ebib/evil-collection-ebib.el b/modes/ebib/evil-collection-ebib.el
new file mode 100644
index 0000000..cfb098c
--- /dev/null
+++ b/modes/ebib/evil-collection-ebib.el
@@ -0,0 +1,76 @@
+;;; evil-collection-ebib.el --- Evil bindings for ebib -*- lexical-binding: t -*-
+
+;; Author: Justin Burkett
+;; URL: https://github.com/emacs-evil/evil-collection
+;; Version: 0.0.1
+;; Package-Requires: ((emacs "25.1"))
+;; Keywords: evil, ebib, tools
+
+;; This file 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, or (at your
+;; option) any later version.
+;;
+;; This file 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.
+;;
+;; For a full copy of the GNU General Public License
+;; see <http://www.gnu.org/licenses/>.
+
+;;; Commentary:
+;; Evil bindings for the ebib.
+
+;;; Code:
+(require 'evil-collection)
+(require 'ebib nil t)
+
+(defconst evil-collection-ebib-maps '(ebib-index-mode-map
+ ebib-entry-mode-map))
+
+(defvar ebib-index-mode-map)
+(defvar ebib-entry-mode-map)
+
+;;;###autoload
+(defun evil-collection-ebib-setup ()
+ "Set up `evil' bindings for `ebib'."
+ (evil-set-initial-state 'ebib-index-mode 'normal)
+ (evil-make-overriding-map ebib-index-mode-map 'normal)
+ (evil-collection-inhibit-insert-state 'ebib-index-mode-map)
+ (evil-collection-define-key 'normal 'ebib-index-mode-map
+ "d" 'ebib-kill-entry
+ "D" 'ebib-delete-entry
+ "gg" 'ebib-goto-first-entry
+ "G" 'ebib-goto-last-entry
+ "j" 'ebib-next-entry
+ "k" 'ebib-prev-entry
+ "n" 'ebib-search-next
+ "p" 'ebib-yank-entry
+ "ZQ" 'ebib-quit
+ "ZZ" 'ebib-quit
+ (kbd "C-u") 'ebib-index-scroll-down
+ (kbd "C-d") 'ebib-index-scroll-up
+ (kbd "C-b") 'ebib-index-scroll-down
+ (kbd "C-f") 'ebib-index-scroll-up)
+ (evil-set-initial-state 'ebib-entry-mode 'normal)
+ (evil-make-overriding-map ebib-entry-mode-map 'normal)
+ (evil-collection-inhibit-insert-state 'ebib-entry-mode-map)
+ (evil-collection-define-key 'normal 'ebib-entry-mode-map
+ "[[" 'ebib-goto-prev-set
+ "]]" 'ebib-goto-next-set
+ "d" 'ebib-kill-field-contents
+ "D" 'ebib-delete-field-contents
+ "gg" 'ebib-goto-first-field
+ "gk" 'ebib-goto-prev-set
+ "gj" 'ebib-goto-next-set
+ "G" 'ebib-goto-last-field
+ "j" 'ebib-next-field
+ "k" 'ebib-prev-field
+ "p" 'ebib-yank-field-contents
+ "y" 'ebib-copy-field-contents
+ "ZZ" 'ebib-quit-entry-buffer
+ "ZQ" 'ebib-quit-entry-buffer))
+
+(provide 'evil-collection-ebib)
+;;; evil-collection-ebib.el ends here