aboutsummaryrefslogtreecommitdiff
path: root/home/.emacs.d/config/navigation.el
blob: 7c9291a5be9f1d4ba73909cbffa5dd387b85ce8b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
(use-package helm
  :config
  (use-package helm-descbinds
    :bind      ("C-h b"   . helm-descbinds))

  (use-package helm-projectile
    :bind      ("C-c h" . helm-projectile))

  (use-package helm-swoop
    :bind      (("C-c o" . helm-swoop)
		("C-c M-o" . helm-multi-swoop)))

  (setq helm-candidate-number-limit 100
	helm-idle-delay 0.0 ; update fast sources immediately (doesn't).
	helm-input-idle-delay 0.01  ; this actually updates things reeeelatively quickly.
	helm-yas-display-key-on-candidate t
	helm-quick-update t
	helm-M-x-requires-pattern nil
	helm-ff-skip-boring-files t
	helm-split-window-in-side-p t ; open helm buffer inside current window
	helm-M-x-fuzzy-match t
	helm-buffers-fuzzy-matching t
	helm-recentf-fuzzy-match t
	helm-ff-file-name-history-use-recentf t)

  :bind (("C-c h" . helm-mini)
	 ("C-h a" . helm-apropos)
	 ("C-x b" . helm-buffers-list)
	 ("C-x C-f" . helm-find-files)
	 ("M-y" . helm-show-kill-ring)
	 ("M-x" . helm-M-x)
	 ("C-x c o" . helm-occur)
	 ("C-x c y" . helm-yas-complete)
	 ("C-x c Y" . helm-yas-create-snippet-on-region)
	 ("C-x c SPC" . helm-all-mark-rings)
	 :map helm-map
	 ("<tab>" . helm-execute-persistent-action)
	 ("C-i" . helm-execute-persistent-action) ; make TAB works in terminal
	 ("C-z" . helm-select-action))

  :diminish helm-mode)


(use-package projectile
  :diminish projectile-mode
  :config
  (setq projectile-keymap-prefix (kbd "C-c p"))
  (setq projectile-completion-system 'default)
  (setq projectile-enable-caching t)
  (setq projectile-indexing-method 'alien)
  (add-to-list 'projectile-globally-ignored-files "node-modules")
  (projectile-global-mode)
  (helm-projectile-on))