diff options
Diffstat (limited to '.config/emacs/lisp/evil-collection/modes/image')
| -rw-r--r-- | .config/emacs/lisp/evil-collection/modes/image/README.org | 36 | ||||
| -rw-r--r-- | .config/emacs/lisp/evil-collection/modes/image/evil-collection-image.el | 93 |
2 files changed, 129 insertions, 0 deletions
diff --git a/.config/emacs/lisp/evil-collection/modes/image/README.org b/.config/emacs/lisp/evil-collection/modes/image/README.org new file mode 100644 index 0000000..7824491 --- /dev/null +++ b/.config/emacs/lisp/evil-collection/modes/image/README.org @@ -0,0 +1,36 @@ +* image + + Evil bindings for [[https://www.gnu.org/software/emacs/manual/html_node/emacs/Image-Mode.html][image-mode]]. + +** Key bindings + + | Command | Original | Evil | + |------------------------------------+------------------+---------------------| + | =image-bob= | =<= | =gg= | + | =image-eob= | =>= | =G= | + | =image-forward-hscroll= | =C-f=, =<right>= | =l= | + | =image-backward-hscroll= | =C-b=, =<left>= | =h= | + | =image-next-line= | =C-n=, =<down>= | =j= | + | =image-previous-line= | =C-p=, =<up>= | =k= | + | =image-bol= | =C-a= | =0=, =^= | + | =image-eol= | =C-e= | =$= | + | =image-scroll-up= | =SPC= | =SPC=, =C-d= | + | =image-scroll-down= | =S-SPC=, =DEL= | =S-SPC=, =<delete>= | + | =image-scroll-down= (=C-u-scroll=) | n/a | =C-u= | + | =image-toggle-animation= | =RET= | =RET= | + | =image-reset-speed= | =a 0= | =a0= | + | =image-reverse-speed= | =a r= | =ar= | + | =image-goto-frame= | =F= | =F= | + | =image-previous-frame= | =b= | =,= | + | =image-next-frame= | =f= | =.=, =;= | + | =image-decrease-speed= | n/a | ={= | + | =image-increase-speed= | n/a | =}= | + | =image-transform-fit-to-height= | =s h= | =H= | + | =image-transform-fit-to-width= | =s i= | =W= | + | =image-increase-size= | =i += | =+=, === | + | =image-decrease-size= | =i -= | =-= | + | =image-previous-file= | =p= | =[[=, =gk=, =C-k= | + | =image-next-file= | =n= | =]]=, =gj=, =C-j= | + | =image-toggle-display= | =C-c C-c= | =C-c C-c= | + | =quit-window= | =q= | =q=, =ZZ= | + | =evil-quit= | n/a | =ZQ= | diff --git a/.config/emacs/lisp/evil-collection/modes/image/evil-collection-image.el b/.config/emacs/lisp/evil-collection/modes/image/evil-collection-image.el new file mode 100644 index 0000000..c8da183 --- /dev/null +++ b/.config/emacs/lisp/evil-collection/modes/image/evil-collection-image.el @@ -0,0 +1,93 @@ +;;; evil-collection-image.el --- Evil bindings for Image -*- lexical-binding: t -*- + +;; Copyright (C) 2017 Pierre Neidhardt + +;; Author: Pierre Neidhardt <mail@ambrevar.xyz> +;; 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, bookmark, 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 `image-mode'. + +;;; Code: +(require 'evil-collection) +(require 'image-mode) + +(defconst evil-collection-image-maps '(image-mode-map)) + +;;;###autoload +(defun evil-collection-image-setup () + "Set up `evil' bindings for `image-mode'." + (evil-set-initial-state 'image-mode 'normal) + + (evil-collection-define-key 'normal 'image-mode-map + ;; motion + "gg" 'image-bob + "G" 'image-eob + [remap evil-forward-char] 'image-forward-hscroll + [remap evil-backward-char] 'image-backward-hscroll + [remap evil-next-line] 'image-next-line + [remap evil-previous-line] 'image-previous-line + "0" 'image-bol + "^" 'image-bol + "$" 'image-eol + (kbd "C-d") 'image-scroll-up + (kbd "SPC") 'image-scroll-up + (kbd "S-SPC") 'image-scroll-down + (kbd "<delete>") 'image-scroll-down + ;; animation + (kbd "RET") 'image-toggle-animation + "a0" 'image-reset-speed + "ar" 'image-reverse-speed + "F" 'image-goto-frame + "," 'image-previous-frame ; mplayer/mpv style + "." 'image-next-frame ; mplayer/mpv style + ";" 'image-next-frame ; Evil style + "{" 'image-decrease-speed ; mplayer/mpv style + "}" 'image-increase-speed ; mplayer/mpv style + + "H" 'image-transform-fit-to-height + "W" 'image-transform-fit-to-width + + "+" 'image-increase-size + "=" 'image-increase-size + "-" 'image-decrease-size + + "[[" 'image-previous-file + "]]" 'image-next-file + "gk" 'image-previous-file + "gj" 'image-next-file + (kbd "C-k") 'image-previous-file + (kbd "C-j") 'image-next-file + + (kbd "C-c C-c") 'image-toggle-display + + ;; quit + "q" 'quit-window + "ZQ" 'evil-quit + "ZZ" 'quit-window) + + ;; TODO: What if the user changes `evil-want-C-u-scroll' after this is run? + (when evil-want-C-u-scroll + (evil-collection-define-key 'normal 'image-mode-map + (kbd "C-u") 'image-scroll-down))) + +(provide 'evil-collection-image) +;;; evil-collection-image.el ends here |
