diff options
Diffstat (limited to '.config/emacs/lisp/evil-collection/modes/tabulated-list')
| -rw-r--r-- | .config/emacs/lisp/evil-collection/modes/tabulated-list/README.org | 20 | ||||
| -rw-r--r-- | .config/emacs/lisp/evil-collection/modes/tabulated-list/evil-collection-tabulated-list.el | 54 |
2 files changed, 74 insertions, 0 deletions
diff --git a/.config/emacs/lisp/evil-collection/modes/tabulated-list/README.org b/.config/emacs/lisp/evil-collection/modes/tabulated-list/README.org new file mode 100644 index 0000000..f405393 --- /dev/null +++ b/.config/emacs/lisp/evil-collection/modes/tabulated-list/README.org @@ -0,0 +1,20 @@ +* tabulated-list + + Evil bindings for =tabulated-list-mode=, the parent mode behind package menu, process list, bookmark list, and many other list-based buffers. + +** Key bindings + + =n= and =p= are unbound so they fall through to evil motion. The default + =g= (revert) and =S= (sort) are kept; column commands move under the =g= + prefix. + + | Command | Original | Evil | + |----------------------------------------+-------------+------| + | =tabulated-list-sort= | =S= | =S= | + | =tabulated-list-narrow-current-column= | ={= | ={= | + | =tabulated-list-widen-current-column= | =}= | =}= | + | =tabulated-list-next-column= | =M-<right>= | =gl= | + | =tabulated-list-previous-column= | =M-<left>= | =gh= | + | =quit-window= | =q= | =q= | + | =next-line= (unbound) | =n= | n/a | + | =previous-line= (unbound) | =p= | n/a | diff --git a/.config/emacs/lisp/evil-collection/modes/tabulated-list/evil-collection-tabulated-list.el b/.config/emacs/lisp/evil-collection/modes/tabulated-list/evil-collection-tabulated-list.el new file mode 100644 index 0000000..081adb5 --- /dev/null +++ b/.config/emacs/lisp/evil-collection/modes/tabulated-list/evil-collection-tabulated-list.el @@ -0,0 +1,54 @@ +;;; evil-collection-tabulated-list.el --- Bindings for `tabulated-list' -*- lexical-binding: t -*- + +;; Copyright (C) 2020 Morgan Smith <Morgan.J.Smith@outlook.com> + +;; Author: Morgan Smith <Morgan.J.Smith@outlook.com> +;; Maintainer: Morgan Smith <Morgan.J.Smith@outlook.com> +;; URL: https://github.com/emacs-evil/evil-collection +;; Version: 0.0.1 +;; Package-Requires: ((emacs "26.3")) +;; Keywords: evil, emacs, 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: +;; Bindings for `tabulated-list' + +;;; Code: +(require 'evil-collection) +(require 'tabulated-list) + +(defvar tabulated-list-mode-map) + +(defconst evil-collection-tabulated-list-maps '(tabulated-list-mode-map)) + +;;;###autoload +(defun evil-collection-tabulated-list-setup () + "Set up `evil' bindings for `tabulated-list'." + + (evil-collection-define-key nil 'tabulated-list-mode-map + "n" nil + "p" nil) + + (evil-set-initial-state 'tabulated-list-mode 'normal) + (evil-collection-define-key 'normal 'tabulated-list-mode-map + "S" 'tabulated-list-sort + "{" 'tabulated-list-narrow-current-column + "}" 'tabulated-list-widen-current-column + "gl" 'tabulated-list-next-column + "gh" 'tabulated-list-previous-column + "q" 'quit-window)) + +(provide 'evil-collection-tabulated-list) +;;; evil-collection-tabulated-list.el ends here |
