* Key bindings
** Evil-Leader
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ (defun sd/swith-to-buffer ()
+ "switch to buffer"
+ (interactive)
+ (if (projectile-project-p)
+ (projectile-switch-to-buffer)
+ (ivy-switch-buffer)))
+
+ (ivy-set-actions
+ 'sd/swith-to-buffer
+ '(("j" ivy--switch-buffer-other-window-action "other window")))
+
(with-eval-after-load "evil-leader"
(cl-loop for (key . fun ) in '(("F" . counsel-projectile-switch-to-buffer)
- ("f" . ivy-switch-buffer)
+ ("f" . sd/swith-to-buffer)
("b" . counsel-projectile-find-file)
("r" . ivy-recentf)
("w" . save-buffer)
("C-h" . delete-backward-char)
("C-k" . kill-line))
do (define-key evil-insert-state-map (kbd key-sequence) fun))
+
+ ;; remap some vim keybindings
+ (dolist (map (list
+ evil-normal-state-map
+ evil-visual-state-map
+ evil-motion-state-map))
+ (cl-loop for (keys . fun) in '(("'" . evil-goto-mark)
+ ("`" . evil-goto-mark-line))
+ do (define-key map (kbd keys) fun)))
;; motion mode
- (define-key evil-motion-state-map (kbd "SPC") 'scroll-up-command)
- (define-key evil-motion-state-map (kbd "S-SPC") 'scroll-down-command))
+ ;; (define-key evil-motion-state-map (kbd "SPC") 'scroll-up-command)
+ ;; (define-key evil-motion-state-map (kbd "S-SPC") 'scroll-down-command)
+ )
+
+
+ ;; (keymapp (car (list evil-normal-state-map evil-visual-state-map)))
+
+ ;; (keymapp (car '(evil-normal-state-map evil-visual-state-map)))
+ ;; (keymapp (car `(,evil-normal-state-map ,evil-visual-state-map)))
+
+
+ ;; (keymapp evil-normal-state-map)
+ ;; (keymapp 'evil-normal-state-map)
+ ;; (keymapp `,evil-normal-state-map)
#+END_SRC
(evil-define-key 'emacs eshell-mode-map (kbd (concat evil-leader/leader (car key-fun))) (cdr key-fun))))
;; (define-key eshell-mode-map (kbd "C-j") nil)
))
-
- ;;
- ;; (add-hook 'eshell-mode-map
- ;; (lambda ()
- ;; (mapc (lambda (key-fun)
- ;; (evil-define-key 'emacs eshell-mode-map (kbd (concat evil-leader/leader (car key-fun))) (cdr key-fun)))
- ;; '(("e" . dired)))))
-
- ;; (add-hook 'eshell-mode-hook (lambda ()
- ;; (loop for (key . fun) in '(
- ;; ("e" . sd/toggle-project-eshell))
- ;; do (evil-define-key 'emacs eshell-mode-map (kbd (concat evil-leader/leader key)) fun))))
#+END_SRC
** Dired mode
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
** expand region
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
- (with-eval-after-load "evil"
- (with-eval-after-load "expand-region"
- (define-key evil-normal-state-map (kbd "SPC") 'er/expand-region)
- (define-key evil-visual-state-map (kbd "SPC") 'er/expand-region)
- (define-key evil-visual-state-map (kbd "S-SPC") 'er/contract-region)
- (define-key evil-normal-state-map (kbd "S-SPC") 'er/contract-region)))
+ ;; (with-eval-after-load "evil"
+ ;; (with-eval-after-load "expand-region"
+ ;; (define-key evil-normal-state-map (kbd "SPC") 'er/expand-region)
+ ;; (define-key evil-visual-state-map (kbd "SPC") 'er/expand-region)
+ ;; (define-key evil-visual-state-map (kbd "S-SPC") 'er/contract-region)
+ ;; (define-key evil-normal-state-map (kbd "S-SPC") 'er/contract-region)))
#+END_SRC
** Org Mode (worf mode) and Lispy mode
(evil-define-key 'normal worf-mode-map (kbd "]") (lambda ()
(interactive)
(call-interactively #'worf-forward)
- (evil-emacs-state)))
- ;; (evil-define-key 'normal worf-mode-map (kbd "g") (lambda ()
- ;; (interactive)
- ;; (wspecial-worf-goto)
- ;; (evil-emacs-state)))
- ))
+ (evil-emacs-state)))))
#+END_SRC
** Avy & Evil
?z ?x ?c ?v ?b
?n ?m ?f ?j 59))
;; (setq avy-background t)
+ (setq avy-all-windows nil)
(with-eval-after-load "evil"
(dolist (map (list evil-normal-state-map
evil-visual-state-map
evil-motion-state-map))
(define-key map (kbd "gw") 'avy-goto-word-0-below)
(define-key map (kbd "gb") 'avy-goto-word-0-above)
- (define-key map (kbd "J") 'avy-goto-line-below)
- (define-key map (kbd "K") 'avy-goto-line-above)
- (define-key map (kbd "F") 'avy-goto-char)
- (define-key map (kbd "W") 'avy-goto-char-timer)))
+ (define-key map (kbd "ge") 'avy-goto-word-0)
+ (define-key map (kbd "gc") 'avy-goto-char)))
#+END_SRC
** ggtags