;;; ravi-init-maps.el --- extra keys -*- lexical-binding: t; -*- ;; Copyright (C) 2015 Ravi R Kiran ;; Author: ;; Keywords: ;; 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 . ;;; Commentary: ;; Extra keybindings (use-package hydra :ensure t) (use-package operate-on-number :bind (("M-g M-d" . hydra-operate-on-number/body)) :config (progn (defhydra hydra-operate-on-number () " Arithmetic operations: + - * / Remainder: \\ Exponent: \\^ Arithmetic shift: < > Base conversion: b o x X # Format: %%%% " ("+" apply-operation-to-number-at-point) ("-" apply-operation-to-number-at-point) ("*" apply-operation-to-number-at-point) ("/" apply-operation-to-number-at-point) ("\\" apply-operation-to-number-at-point) ("^" apply-operation-to-number-at-point) ("<" apply-operation-to-number-at-point) (">" apply-operation-to-number-at-point) ("b" apply-operation-to-number-at-point :exit t) ("o" apply-operation-to-number-at-point :exit t) ("x" apply-operation-to-number-at-point :exit t) ("X" apply-operation-to-number-at-point :exit t) ("#" apply-operation-to-number-at-point :exit t) ("%" apply-operation-to-number-at-point :exit t))) :ensure t) ;; Combined launcher and toggle-maps (defhydra hydra-launch-toggle-map () "Launcher/toggle" ;; Toggles ("c" column-number-mode "column-number-mode") ("e" toggle-debug-on-error "toggle-debug-on-error") ("f" auto-fill-mode "auto-fill-mode") ("l" toggle-truncate-lines "toggle-truncate-lines") ("q" toggle-debug-on-quit "toggle-debug-on-quit") ;; Generalized version of `read-only-mode'. ("r" dired-toggle-read-only "dired-toggle-read-only") ;(autoload 'dired-toggle-read-only "dired" nil t) ("w" whitespace-mode "whitespace-mode") ;; Launchers ("P" package-list-packages "package-list-packages") ("p" proced "proced") ("d" ediff-buffers "ediff-buffers") ("F" find-dired "find-dired")) (bind-key "M-g M-t" 'hydra-launch-toggle-map/body) (provide 'ravi-init-maps) ;;; ravi-init-maps.el ends here