                helm-projectile-find-dir)))
 
 (use-package helm
-  :defer t
-  :commands (helm helm-mode)
+  :defer 2
   :init
   (defvar helm-global-prompt ":: ")
   (setq-default

   helm-bookmark-show-location t)

  :config
  (require 'helm-files)

  (mapc (lambda (r) (add-to-list 'helm-boring-file-regexp-list r))
        (list "\\.projects$" "\\.DS_Store$" "\\.cask"))

  (map! (:map (helm-map helm-generic-files-map helm-find-files-map helm-swoop-map helm-projectile-find-file-map)
          "ESC"        nil
          "/"          nil

          "<tab>"      'helm-execute-persistent-action)
        (:map (helm-generic-files-map helm-projectile-find-file-map)
          "ESC"        'helm-keyboard-quit)
        (:map helm-ag-map
          "<backtab>"  'helm-ag-edit)
        (:map helm-ag-edit-map
          "<escape>"   'helm-ag--edit-abort
          :n "zx"      'helm-ag--edit-abort)
        (:map helm-map
          "C-S-n"      'helm-next-source
          "C-S-p"      'helm-previous-source
          "C-u"        'helm-delete-minibuffer-contents))

  ;;; Helm hacks
