Emacs: Define and use define-keys and local-set-keys
parent
dbb3517a15
commit
2d9f77c920
|
@ -48,6 +48,14 @@ If you want to operate on buffer, use `how-many' instead."
|
|||
(setq matches (1+ matches)))
|
||||
matches))
|
||||
|
||||
(defun define-keys (map key def &rest bindings)
|
||||
"Like `define-key' but allow for defining several bindings at once.
|
||||
`KEY' must be acceptable for `kbd'."
|
||||
(while key
|
||||
(define-key map (kbd key) def)
|
||||
(setq key (pop bindings)
|
||||
def (pop bindings))))
|
||||
|
||||
(defun duplicate (arg)
|
||||
"Duplicate the current line or region ARG times.
|
||||
If there's no region, the current line will be duplicated. However, if
|
||||
|
@ -168,6 +176,14 @@ it appears in the minibuffer prompt."
|
|||
(t
|
||||
(insert filename))))
|
||||
|
||||
(defun local-set-keys (key def &rest bindings)
|
||||
"Like `local-set-key' but allow for defining several bindings at once.
|
||||
`KEY' must be acceptable for `kbd'."
|
||||
(while key
|
||||
(local-set-key (kbd key) def)
|
||||
(setq key (pop bindings)
|
||||
def (pop bindings))))
|
||||
|
||||
(defun mark-word-from-beginning (&optional arg allow-extend)
|
||||
"Set the point at the beginning of the word and call `mark-word'.
|
||||
ARG and ALLOW-EXTEND are the same."
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
;;; Main options
|
||||
|
||||
(require 'functions)
|
||||
|
||||
;;; Minimal UI. Run early to hide it as soon as possible.
|
||||
(setq inhibit-startup-screen t)
|
||||
(menu-bar-mode -1)
|
||||
|
@ -61,8 +63,9 @@
|
|||
(setq scroll-error-top-bottom t)
|
||||
|
||||
;;; Narrow page navigation.
|
||||
(define-key mickey-minor-mode-map (kbd "C-x M-n") (lambda () (interactive) (narrow-to-page 1)))
|
||||
(define-key mickey-minor-mode-map (kbd "C-x M-p") (lambda () (interactive) (narrow-to-page -1)))
|
||||
(define-keys mickey-minor-mode-map
|
||||
"C-x M-n" (lambda () (interactive) (narrow-to-page 1))
|
||||
"C-x M-p" (lambda () (interactive) (narrow-to-page -1)))
|
||||
|
||||
;;; Line numbers
|
||||
;;; Adding to `find-file-hook' ensures it will work for every file, regardless of
|
||||
|
@ -132,10 +135,11 @@
|
|||
;; stick to the home-row, but to avoid shadowing other binding I exceptionaly use
|
||||
;; 'super' (normally reserved to the WM).
|
||||
(when (fboundp 'windmove-default-keybindings)
|
||||
(define-key mickey-minor-mode-map (kbd "M-s-h") 'windmove-left)
|
||||
(define-key mickey-minor-mode-map (kbd "M-s-j") 'windmove-down)
|
||||
(define-key mickey-minor-mode-map (kbd "M-s-k") 'windmove-up)
|
||||
(define-key mickey-minor-mode-map (kbd "M-s-l") 'windmove-right))
|
||||
(define-keys mickey-minor-mode-map
|
||||
"M-s-h" 'windmove-left
|
||||
"M-s-j" 'windmove-down
|
||||
"M-s-k" 'windmove-up
|
||||
"M-s-l" 'windmove-right))
|
||||
|
||||
;;; Make Emacs use environment browser, or w3m if BROWSER is not set.
|
||||
(setq browse-url-generic-program
|
||||
|
@ -229,12 +233,12 @@
|
|||
(setq uniquify-buffer-name-style 'forward)
|
||||
|
||||
;;; Skeleton settings
|
||||
(require 'functions)
|
||||
;;; Do not expand abbrevs in skeletons.
|
||||
(setq-default skeleton-further-elements '((abbrev-mode nil)))
|
||||
(turn-on-skeleton-markers)
|
||||
(define-key mickey-minor-mode-map (kbd "C->") 'skeleton-next-position)
|
||||
(define-key mickey-minor-mode-map (kbd "C-<") (lambda () (interactive) (skeleton-next-position t)))
|
||||
(define-keys mickey-minor-mode-map
|
||||
"C->" 'skeleton-next-position
|
||||
"C-<" (lambda () (interactive) (skeleton-next-position t)))
|
||||
|
||||
;;; Disable prompt (but leave warning) on git symlink.
|
||||
(setq vc-follow-symlinks t)
|
||||
|
@ -259,10 +263,11 @@
|
|||
;; (define-key mickey-minor-mode-map (kbd "M-<f10>") 'toggle-frame-fullscreen)
|
||||
|
||||
;;; Scroll zooming.
|
||||
(define-key mickey-minor-mode-map (kbd "C-<wheel-down>") 'text-scale-decrease)
|
||||
(define-key mickey-minor-mode-map (kbd "C-<mouse-5>") 'text-scale-decrease)
|
||||
(define-key mickey-minor-mode-map (kbd "C-<wheel-up>") 'text-scale-increase)
|
||||
(define-key mickey-minor-mode-map (kbd "C-<mouse-4>") 'text-scale-increase)
|
||||
(define-keys mickey-minor-mode-map
|
||||
"C-<wheel-down>" 'text-scale-decrease
|
||||
"C-<mouse-5>" 'text-scale-decrease
|
||||
"C-<wheel-up>" 'text-scale-increase
|
||||
"C-<mouse-4>" 'text-scale-increase)
|
||||
(setq text-scale-mode-step 1.1)
|
||||
|
||||
;;; Sort
|
||||
|
|
|
@ -3,14 +3,14 @@
|
|||
;; Should we split this into mode-c and mode-c++?
|
||||
|
||||
(dolist (map (list c-mode-map c++-mode-map))
|
||||
(define-key map (kbd "C-c m") 'cc-main)
|
||||
(define-key map (kbd "<f9>") 'cc-clean)
|
||||
(define-key map (kbd "M-.") 'semantic-ia-fast-jump)
|
||||
(define-key map (kbd "C-c C-d") 'semantic-ia-show-summary)
|
||||
;; (define-key map (kbd "C-c o") 'ff-find-other-file)
|
||||
(define-key map (kbd "M-TAB") 'semantic-complete-analyze-inline))
|
||||
(define-keys map "C-c m" 'cc-main
|
||||
"<f9>" 'cc-clean
|
||||
"M-." 'semantic-ia-fast-jump
|
||||
"C-c C-d" 'semantic-ia-show-summary
|
||||
"M-TAB" 'semantic-complete-analyze-inline))
|
||||
;; (define-key map (kbd "C-c o") 'ff-find-other-file)
|
||||
|
||||
;;; C additional keywords.
|
||||
;;; C additional faces.
|
||||
;;; Useless in quasi-monochrome.
|
||||
;; (dolist (mode '(c-mode c++-mode))
|
||||
;; (font-lock-add-keywords
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
;;; Warning: This file is loaded unconditionally on startup.
|
||||
;;; We cannot assume that current buffer is in dired-mode.
|
||||
|
||||
(let ((map dired-mode-map))
|
||||
(define-key map (kbd "C-c h") 'dired-toggle-humansize)
|
||||
(define-key map (kbd "<left>") 'dired-up-directory)
|
||||
(define-key map (kbd "<right>") 'dired-find-file)
|
||||
(define-key map (kbd "SPC") 'dired-mark)
|
||||
(define-key map (kbd "<backspace>") 'dired-up-directory)
|
||||
(define-key map (kbd "b") 'dired-up-directory))
|
||||
(define-keys dired-mode-map
|
||||
"C-c h" 'dired-toggle-humansize
|
||||
"<left>" 'dired-up-directory
|
||||
"<right>" 'dired-find-file
|
||||
"SPC" 'dired-mark
|
||||
"<backspace>" 'dired-up-directory
|
||||
"b" 'dired-up-directory)
|
||||
|
||||
(when (require 'dired+ nil t)
|
||||
(toggle-diredp-find-file-reuse-dir 1))
|
||||
|
|
|
@ -4,14 +4,15 @@
|
|||
;; https://github.com/dominikh/go-mode.el/issues/191
|
||||
(use-local-map go-mode-map)
|
||||
|
||||
(local-set-key (kbd "C-c m") 'go-main)
|
||||
(local-set-key (kbd "C-c D") 'godoc)
|
||||
(local-set-keys
|
||||
"C-c m" 'go-main
|
||||
"C-c D" 'godoc
|
||||
"C-c d" 'godoc-at-point
|
||||
"M-." #'godef-jump
|
||||
"<f9>" 'go-metalinter
|
||||
"C-<f9>" (lambda () (interactive) (go-metalinter t)))
|
||||
(when (require 'helm-go-package nil t)
|
||||
(local-set-key (kbd "C-c D") 'helm-go-package))
|
||||
(local-set-key (kbd "C-c d") 'godoc-at-point)
|
||||
(local-set-key (kbd "M-.") #'godef-jump)
|
||||
(local-set-key (kbd "<f9>") 'go-metalinter)
|
||||
(local-set-key (kbd "C-<f9>") (lambda () (interactive) (go-metalinter t)))
|
||||
|
||||
(when (require 'company-go nil t)
|
||||
(add-hook 'go-mode-hook 'company-mode)
|
||||
|
|
|
@ -5,17 +5,18 @@
|
|||
(require 'mode-tex)
|
||||
|
||||
;;; Since current buffer is a LaTeX one, we can use `local-set-key'.
|
||||
(local-set-key (kbd "C-c m") 'latex-article)
|
||||
(local-set-key (kbd "C-c C-a") 'latex-insert-table)
|
||||
(local-set-key (kbd "C-c C-c") 'latex-smallcaps)
|
||||
(local-set-key (kbd "C-c C-e") 'latex-emph)
|
||||
(local-set-key (kbd "C-c C-l") 'latex-slanted)
|
||||
(local-set-key (kbd "C-c C-s") 'latex-insert-section)
|
||||
(local-set-key (kbd "C-c C-u") 'latex-superscript)
|
||||
(local-set-key (kbd "C-c l") 'latex-lstinline)
|
||||
(local-set-key (kbd "C-c o") 'latex-orgtbl)
|
||||
(local-set-key (kbd "C-c u") 'latex-package)
|
||||
(local-set-key (kbd "M-RET") 'latex-itemize)
|
||||
(local-set-keys
|
||||
"C-c m" 'latex-article
|
||||
"C-c C-a" 'latex-insert-table
|
||||
"C-c C-c" 'latex-smallcaps
|
||||
"C-c C-e" 'latex-emph
|
||||
"C-c C-l" 'latex-slanted
|
||||
"C-c C-s" 'latex-insert-section
|
||||
"C-c C-u" 'latex-superscript
|
||||
"C-c l" 'latex-lstinline
|
||||
"C-c o" 'latex-orgtbl
|
||||
"C-c u" 'latex-package
|
||||
"M-RET" 'latex-itemize)
|
||||
|
||||
;; Needs dvipng.
|
||||
;; With TeXlive, the following packages are needed: psnfss, symbol, zapfding
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
;; Makefile
|
||||
|
||||
(let ((map makefile-mode-map))
|
||||
(define-key map (kbd "C-c c") 'makefile-config)
|
||||
(define-key map (kbd "C-c d") 'makefile-doc)
|
||||
(define-key map (kbd "C-c m") 'makefile-main)
|
||||
(define-key map (kbd "C-c s") 'makefile-c))
|
||||
(define-keys makefile-mode-map
|
||||
"C-c c" 'makefile-config
|
||||
"C-c d" 'makefile-doc
|
||||
"C-c m" 'makefile-main
|
||||
"C-c s" 'makefile-c)
|
||||
|
||||
(define-skeleton makefile-main
|
||||
"Insert root Makefile." nil
|
||||
|
@ -19,25 +19,25 @@ all: app doc
|
|||
|
||||
.PHONY: app
|
||||
app:
|
||||
${MAKE} -C ${srcdir}
|
||||
${MAKE} -C ${srcdir}
|
||||
|
||||
.PHONY: doc
|
||||
doc:
|
||||
${MAKE} -C ${docsrcdir}
|
||||
${MAKE} -C ${docsrcdir}
|
||||
|
||||
.PHONY: debug
|
||||
debug:
|
||||
CFLAGS+=\"-g3 -O0 -DDEBUG=9\" ${MAKE}
|
||||
CFLAGS+=\"-g3 -O0 -DDEBUG=9\" ${MAKE}
|
||||
|
||||
.PHONY: test
|
||||
test:
|
||||
${MAKE} -C ${testdir}
|
||||
${MAKE} -C ${testdir}
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
${MAKE} -C ${srcdir} clean
|
||||
${MAKE} -C ${docsrcdir} clean
|
||||
${MAKE} -C ${testdir} clean
|
||||
${MAKE} -C ${srcdir} clean
|
||||
${MAKE} -C ${docsrcdir} clean
|
||||
${MAKE} -C ${testdir} clean
|
||||
|
||||
################################################################################
|
||||
## Install / Uninstall.
|
||||
|
@ -68,22 +68,22 @@ sysconfdir ?= ${perfix}/etc
|
|||
|
||||
.PHONY: install
|
||||
install:
|
||||
${MAKE}
|
||||
${INSTALL_DIR} ${DESTDIR}${bindir}
|
||||
${INSTALL} ${srcdir}/${cmdname} ${DESTDIR}${bindir}/${cmdname}
|
||||
${INSTALL_DIR} ${DESTDIR}${mandir}/man1
|
||||
${INSTALL_DATA} ${docsrcdir}/${cmdname}.1 ${DESTDIR}${mandir}/man1/${cmdname}.1
|
||||
${INSTALL_DIR} ${DESTDIR}${licensedir}/${cmdname}
|
||||
${INSTALL_DATA} LICENSE ${DESTDIR}${licensedir}/${cmdname}/LICENSE
|
||||
${MAKE}
|
||||
${INSTALL_DIR} ${DESTDIR}${bindir}
|
||||
${INSTALL} ${srcdir}/${cmdname} ${DESTDIR}${bindir}/${cmdname}
|
||||
${INSTALL_DIR} ${DESTDIR}${mandir}/man1
|
||||
${INSTALL_DATA} ${docsrcdir}/${cmdname}.1 ${DESTDIR}${mandir}/man1/${cmdname}.1
|
||||
${INSTALL_DIR} ${DESTDIR}${licensedir}/${cmdname}
|
||||
${INSTALL_DATA} LICENSE ${DESTDIR}${licensedir}/${cmdname}/LICENSE
|
||||
|
||||
.PHONY: uninstall
|
||||
uninstall:
|
||||
-rm -f ${DESTDIR}${bindir}/${cmdname}
|
||||
-rmdir -p ${DESTDIR}${bindir}
|
||||
-rm -f ${DESTDIR}${mandir}/${cmdname}.${mansection}.gz
|
||||
-rmdir -p ${DESTDIR}${mandir}
|
||||
-rm -f ${DESTDIR}${licensedir}/${cmdname}/LICENSE
|
||||
-rmdir -p ${DESTDIR}${licensedir}/${cmdname}
|
||||
-rm -f ${DESTDIR}${bindir}/${cmdname}
|
||||
-rmdir -p ${DESTDIR}${bindir}
|
||||
-rm -f ${DESTDIR}${mandir}/${cmdname}.${mansection}.gz
|
||||
-rmdir -p ${DESTDIR}${mandir}
|
||||
-rm -f ${DESTDIR}${licensedir}/${cmdname}/LICENSE
|
||||
-rmdir -p ${DESTDIR}${licensedir}/${cmdname}
|
||||
" > \n)
|
||||
|
||||
(define-skeleton makefile-doc
|
||||
|
@ -98,11 +98,11 @@ manpages = ${cmdname}.1
|
|||
all: ${manpages}
|
||||
|
||||
.in:
|
||||
awk -v date=`date '+%Y-%m-%d'` 'BEGIN {section=\"$@\"; sub (/.*\\./, \"\", section); manname=toupper(\"$@\"); sub(/\\.[^.]+$$/, \"\", manname); print \".ds appname ${appname}\\n.ds authors ${authors}\\n.ds cmdname ${cmdname}\\n.ds date \" date \"\\n.ds manname \" manname \"\\n.ds section \" section \"\\n.ds version ${version}\\n.ds year ${year}\\n.\"}' > $@
|
||||
cat $< >> $@
|
||||
awk -v date=`date '+%Y-%m-%d'` 'BEGIN {section=\"$@\"; sub (/.*\\./, \"\", section); manname=toupper(\"$@\"); sub(/\\.[^.]+$$/, \"\", manname); print \".ds appname ${appname}\\n.ds authors ${authors}\\n.ds cmdname ${cmdname}\\n.ds date \" date \"\\n.ds manname \" manname \"\\n.ds section \" section \"\\n.ds version ${version}\\n.ds year ${year}\\n.\"}' > $@
|
||||
cat $< >> $@
|
||||
|
||||
clean:
|
||||
rm -f ${manpages}
|
||||
rm -f ${manpages}
|
||||
" > \n)
|
||||
|
||||
(define-skeleton makefile-c
|
||||
|
@ -119,18 +119,18 @@ ${cmdname}: ${cmdname}.o
|
|||
|
||||
.PHONY: debug
|
||||
debug:
|
||||
CFLAGS+=\"-g3 -O0 -DDEBUG=9\" ${MAKE}
|
||||
CFLAGS+=\"-g3 -O0 -DDEBUG=9\" ${MAKE}
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
rm -f ${cmdname} *.d *.o
|
||||
rm -f ${cmdname} *.d *.o
|
||||
|
||||
## Generate prerequisites automatically. GNU Make only.
|
||||
## The 'awk' part is used to add the .d file itself to the target, so that it
|
||||
## gets updated on changes. The -MQ option is to add full path to object files
|
||||
## in subfolders. (-MM strips parent directories.)
|
||||
%.d: %.c
|
||||
${CC} -MM -MQ ${<:.c=.o} ${CPPFLAGS} $< | awk -v stem=$* -v target=$@ '{gsub (stem \".o[ :]*\", stem \".o \" target \" : \")} 1' > $@
|
||||
${CC} -MM -MQ ${<:.c=.o} ${CPPFLAGS} $< | awk -v stem=$* -v target=$@ '{gsub (stem \".o[ :]*\", stem \".o \" target \" : \")} 1' > $@
|
||||
|
||||
sources = $(wildcard *.c)
|
||||
deps = ${sources:.c=.d}
|
||||
|
|
|
@ -5,11 +5,11 @@
|
|||
;; Besides you can try extending `url-cookie-save-interval'.
|
||||
;; Nonetheless is mode is helpfull for syntax awareness.
|
||||
|
||||
(let ((map mediawiki-mode-map))
|
||||
(define-key map (kbd "C-c o") 'mediawiki-browse)
|
||||
(define-key map (kbd "M-g") nil) ; This shadows M-g M-g.
|
||||
(define-key map (kbd "C-x C-s") 'save-buffer)
|
||||
(define-key map (kbd "C-c M-s") 'mediawiki-save))
|
||||
(define-keys mediawiki-mode-map
|
||||
"C-c o" 'mediawiki-browse
|
||||
"M-g" nil ; This shadows M-g M-g.
|
||||
"C-x C-s" 'save-buffer
|
||||
"C-c M-s" 'mediawiki-save)
|
||||
|
||||
(setq
|
||||
mediawiki-site-alist
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
;; Nroff
|
||||
|
||||
(let ((map nroff-mode-map))
|
||||
(define-key map (kbd "C-c C-b") 'nroff-bold)
|
||||
(define-key map (kbd "C-c C-i") 'nroff-italic))
|
||||
(define-keys nroff-mode-map
|
||||
"C-c C-b" 'nroff-bold
|
||||
"C-c C-i" 'nroff-italic)
|
||||
|
||||
;; Skeletons
|
||||
(define-skeleton nroff-bold "Bold text." nil "\\fB" @ _ "\\fR" @)
|
||||
|
|
|
@ -18,11 +18,11 @@
|
|||
;; Note that -shell-escape can also be toggled with universal
|
||||
;; argument.
|
||||
|
||||
(let ((map tex-mode-map))
|
||||
(dolist (key '("\C-c\C-f" "\C-c\C-b"))
|
||||
(define-key map key nil))
|
||||
(define-key map (kbd "<f9>") 'tex-pdf-view)
|
||||
(define-key map (kbd "<f10>") 'tex-compile))
|
||||
(define-keys tex-mode-map
|
||||
"C-c C-f" nil
|
||||
"C-c C-b" nil
|
||||
"<f9>" 'tex-pdf-view
|
||||
"<f10>" 'tex-compile)
|
||||
|
||||
(defvar-local tex-masterfile nil
|
||||
"The file that should be compiled. Useful for modular documents.")
|
||||
|
|
|
@ -81,23 +81,25 @@ See `eshell' for the numeric prefix arg."
|
|||
|
||||
;; Should we stick to M-based bindings or use C-based?
|
||||
;; Magit uses C-jk, helm uses C-space. Evil has C-w, C-o, C-p, C-r. Emacs has C-xC-q, C-xC-o.
|
||||
(define-key helm-map (kbd "M-\\") 'helm-toggle-resplit-and-swap-windows) ; Or use M-t (helm standard binding is C-t).
|
||||
(define-key helm-map (kbd "C-f") 'helm-next-page)
|
||||
(define-key helm-map (kbd "C-b") 'helm-previous-page)
|
||||
(define-key helm-map (kbd "M-j") 'helm-next-line)
|
||||
(define-key helm-map (kbd "M-k") 'helm-previous-line)
|
||||
(define-key helm-map (kbd "M-h") 'helm-next-source)
|
||||
(define-key helm-map (kbd "M-H") 'describe-key)
|
||||
(define-key helm-map (kbd "M-l") (kbd "RET"))
|
||||
(define-key helm-map [escape] 'helm-keyboard-quit)
|
||||
(define-keys helm-map
|
||||
"M-\\" 'helm-toggle-resplit-and-swap-windows ; Or use M-t (helm standard binding is C-t).
|
||||
"C-f" 'helm-next-page
|
||||
"C-b" 'helm-previous-page
|
||||
"M-j" 'helm-next-line
|
||||
"M-k" 'helm-previous-line
|
||||
"M-h" 'helm-next-source
|
||||
"M-H" 'describe-key
|
||||
"M-l" (kbd "RET")
|
||||
"<escape>" 'helm-keyboard-quit)
|
||||
(dolist (keymap (list helm-buffer-map))
|
||||
(define-key keymap (kbd "M-o") 'helm-buffer-switch-other-window))
|
||||
(dolist (keymap (list helm-find-files-map helm-read-file-map))
|
||||
(define-key keymap (kbd "M-o") 'helm-ff-run-switch-other-window)
|
||||
(define-key keymap (kbd "M-.") 'helm-ff-run-find-sh-command)
|
||||
(define-key keymap (kbd "M-l") 'helm-execute-persistent-action)
|
||||
(define-key keymap (kbd "M-h") 'helm-find-files-up-one-level)
|
||||
(define-key keymap (kbd "M-H") 'describe-key)))
|
||||
(define-keys keymap
|
||||
"M-o" 'helm-ff-run-switch-other-window
|
||||
"M-." 'helm-ff-run-find-sh-command
|
||||
"M-l" 'helm-execute-persistent-action
|
||||
"M-h" 'helm-find-files-up-one-level
|
||||
"M-H" 'describe-key)))
|
||||
|
||||
;; Add support for magit.
|
||||
(require 'evil-magit nil t)
|
||||
|
@ -145,8 +147,9 @@ See `eshell' for the numeric prefix arg."
|
|||
;; TODO: evil-ex history binding in normal mode do not work.
|
||||
(evil-define-key 'normal evil-ex-completion-map "\M-p" 'previous-history-element)
|
||||
(evil-define-key 'normal evil-ex-completion-map "\M-n" 'next-history-element)
|
||||
(define-key evil-ex-completion-map "\M-p" 'previous-history-element)
|
||||
(define-key evil-ex-completion-map "\M-n" 'next-history-element)
|
||||
(define-keys evil-ex-completion-map
|
||||
"M-p" 'previous-history-element
|
||||
"M-n" 'next-history-element)
|
||||
|
||||
;; Remap org-mode meta keys for convenience
|
||||
;; - org-evil: Not as polished as of May 2017.
|
||||
|
|
|
@ -91,18 +91,19 @@ Requires `call-process-to-string' from `functions'."
|
|||
(rectangle-exchange-point-and-mark)
|
||||
(helm-all-mark-rings)))
|
||||
|
||||
(define-key mickey-minor-mode-map (kbd "M-x") 'helm-M-x)
|
||||
(define-key mickey-minor-mode-map (kbd "C-x C-f") 'helm-find-files)
|
||||
(define-key mickey-minor-mode-map (kbd "C-x c C-/") 'helm-find)
|
||||
(define-key mickey-minor-mode-map (kbd "C-x C-b") 'helm-mini)
|
||||
(define-key mickey-minor-mode-map (kbd "M-y") 'helm-show-kill-ring)
|
||||
(define-key mickey-minor-mode-map (kbd "C-x C-x") 'helm-mark-or-exchange-rect)
|
||||
(define-key mickey-minor-mode-map (kbd "M-s o") 'helm-occur)
|
||||
(define-key mickey-minor-mode-map (kbd "C-h a") 'helm-apropos)
|
||||
(define-key mickey-minor-mode-map (kbd "C-M-%") 'helm-regexp)
|
||||
(define-key mickey-minor-mode-map (kbd "C-x M-g") 'helm-grep-git-or-ag)
|
||||
(define-key mickey-minor-mode-map (kbd "C-x M-G") 'helm-do-grep-ag)
|
||||
(define-key mickey-minor-mode-map (kbd "C-x M-b") 'helm-resume) ; Convenient for god-mode.
|
||||
(define-keys mickey-minor-mode-map
|
||||
"M-x" 'helm-M-x
|
||||
"C-x C-f" 'helm-find-files
|
||||
"C-x c C-/" 'helm-find
|
||||
"C-x C-b" 'helm-mini
|
||||
"M-y" 'helm-show-kill-ring
|
||||
"C-x C-x" 'helm-mark-or-exchange-rect
|
||||
"M-s o" 'helm-occur
|
||||
"C-h a" 'helm-apropos
|
||||
"C-M-%" 'helm-regexp
|
||||
"C-x M-g" 'helm-grep-git-or-ag
|
||||
"C-x M-G" 'helm-do-grep-ag
|
||||
"C-x M-b" 'helm-resume) ; Convenient for god-mode.
|
||||
(define-key helm-find-files-map (kbd "C-c C-/") 'helm-ff-run-find-sh-command) ; Convenient for god-mode.
|
||||
|
||||
;;; We use the M-s prefix just like `occur'.
|
||||
|
|
Loading…
Reference in New Issue