   :after helm
   :diminish 'ivy-mode
   :config
+  (setq ivy-re-builders-alist
+        '((swiper . ivy--regex-plus)
+          (t . ivy--regex-fuzzy)))
+  (setq ivy-initial-inputs-alist
+        '((counsel-M-x . "^")
+          (man . "^")
+          (woman . "^")))
   (ivy-mode 1))
 
 ;; This one was recommended by Steve Purcell. Looked pretty good

  :ensure t
  :bind (("<f8>" . magit-status)
         ("s-t" . magit-status)
         ("C-x g" . magit-status))
  :config
  (define-key vc-prefix-map (kbd "h") #'magit-log-buffer-file))

;; Company: Not much customization right now.
(use-package company

  :diminish ""
  :demand)

;; Smex provides a GREAT interface for M-x. I got rid of it at some
;; point but i really regret it, mostly for the last used commands.
(use-package smex
  :ensure t)

;; I've come to think helm is not really good with files anymore. So let's
;; use counsel. It also has some nice builtin functionality:
;; http://oremacs.com/2015/04/19/git-grep-ivy/
(use-package counsel
  :ensure t
  :after (helm ivy flx smex)
  :config
  (global-set-key (kbd "C-.") #'counsel-imenu)
  (global-set-key (kbd "C-c s") #'counsel-grep)
