#+BEGIN_SRC emacs-lisp :tangle yes :results silent
(use-package ido
:ensure t
- :init (setq ido-enable-flex-matching nil
+ :init (setq ido-enable-flex-matching t
ido-ignore-extensions t
ido-use-virtual-buffers t
+ ido-use-faces nil
ido-everywhere t)
(setq ido-save-directory-list-file (concat sd-temp-directory "ido.last"))
:config
(define-key ido-file-completion-map (kbd "C-w") #'ido-delete-backward-word-updir)
(define-key ido-file-dir-completion-map (kbd "C-w") #'ido-delete-backward-updir)
;; (define-key ido-file-dir-completion-map (kbd "C-i") #'ido-copy-current-word)
-
- ;; (dolist (map (list
- ;; ido-buffer-completion-map
- ;; ido-file-completion-map
- ;; ido-file-dir-completion-map
- ;; ido-common-completion-map))
- ;; (define-key map (kbd "C-w") #'ido-delete-backward-word-updir)
- ;; ;; (define-key map (kbd "C-i") #'ido-copy-current-file-name)
- ;; )
)
(icomplete-mode t)
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
(use-package flx-ido
:ensure t
- :init (setq ido-enable-flex-matching nil
- ido-use-faces nil)
:config (flx-ido-mode nil))
#+END_SRC
(use-package swiper
:ensure t
:init
- (setq ivy-use-virtual-buffers t)
+ (setq ivy-use-virtual-buffers nil)
+ (setq ivy-wrap t)
(set-face-attribute 'ivy-current-match nil :background "Orange" :foreground "black")
:config
(ivy-mode)
(define-key swiper-map (kbd "M-.") (lambda ()
(interactive)
(insert (format "%s" (with-ivy-window (thing-at-point 'symbol)))))))
+
+ (with-eval-after-load "ivy"
+ (define-key ivy-minibuffer-map (kbd "C-o") 'ivy-dispatching-done))
#+END_SRC
** Expand region map
(evil-escape-mode))
#+END_SRC
-* Evil-Leader
-#+BEGIN_SRC emacs-lisp :tangle yes :results silent
- (with-eval-after-load "evil-leader"
- ;; Buffer & File
- (evil-leader/set-key "f" 'ido-switch-buffer)
- (evil-leader/set-key "b" 'ido-switch-buffer)
- (evil-leader/set-key "w" 'evil-save)
- (evil-leader/set-key "r" 'ivy-recentf)
- (evil-leader/set-key "w" 'save-buffer)
- (evil-leader/set-key "o" 'ido-find-file)
- (evil-leader/set-key "t" 'projectile-find-file)
- ;; Window
- (evil-leader/set-key "s" 'evil-window-split)
- (evil-leader/set-key "v" 'evil-window-vsplit)
- (evil-leader/set-key "q" 'evil-quit)
- ;; others
- (evil-leader/set-key "g" 'magit-status)
- (evil-leader/set-key "d" (lambda () (interactive) (dired default-directory)))
- (evil-leader/set-key "e" 'sd/toggle-project-eshell)
- (evil-leader/set-key "h" 'help))
-#+END_SRC
-
* other extention
** Evil-matchit
[[https://github.com/redguardtoo/evil-matchit]]
:config
(global-evil-surround-mode 1))
#+END_SRC
+
+
* Key bindings
+** Evil-Leader
+#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ (with-eval-after-load "evil-leader"
+ ;; Buffer & File explore
+ ;; (with-eval-after-load "ivy")
+ ;; (with-eval-after-load "counsel")
+ ;; (when (require 'ivy))
+ (evil-leader/set-key "b" 'counsel-projectile-find-file)
+ (evil-leader/set-key "f" 'ivy-switch-buffer)
+ (evil-leader/set-key "r" 'ivy-recentf)
+
+ ;; (evil-leader/set-key "o" 'ido-find-file)
+ ;; (evil-leader/set-key "t" 'projectile-find-file)
+ ;; (evil-leader/set-key "w" 'evil-save)
+ (evil-leader/set-key "w" 'save-buffer)
+ ;; Window
+ (evil-leader/set-key "s" 'evil-window-split)
+ (evil-leader/set-key "v" 'evil-window-vsplit)
+ (evil-leader/set-key "q" 'evil-quit)
+ ;; others
+ (evil-leader/set-key "g" 'magit-status)
+ ;; (evil-leader/set-key "d" (lambda () (interactive) (dired default-directory)))
+ (evil-leader/set-key "d" 'dired)
+ (evil-leader/set-key "e" 'sd/toggle-project-eshell)
+ (evil-leader/set-key "h" 'help))
+#+END_SRC
** Basic state bindings
There are three kinds key bindings
- prefix key is the leader key, defined by evil-leader.
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
(add-hook 'eshell-mode-hook (lambda ()
(when (and (boundp 'evil-mode) evil-mode)
- (dolist (key-fun '(("e" . sd/toggle-project-eshell)
+ (dolist (key-fun '(("f" . ivy-switch-buffer)
+ ("b" . counsel-projectile-find-file)
+ ("r" . counsel-recentf)
+ ("e" . sd/toggle-project-eshell)
("d" . dired)
- ("f" . ido-switch-buffer)
("'" . other-window)
("q" . evil-quit)))
(evil-define-key 'emacs eshell-mode-map (kbd (concat evil-leader/leader (car key-fun))) (cdr key-fun))))