 
 ;; helm
 (setup "helm-config"
-  (helm-mode t)
+  (helm-mode t))
+(setup-after "helm"
+  (define-key helm-map (kbd "C-w") 'subword-backward-kill)
+  (define-key helm-map (kbd "M-w") 'helm-yank-text-at-point)
   (global-set-key (kbd "M-t") 'helm-cmd-t)
   (global-set-key (kbd "C-x c g") 'helm-do-grep)
   (global-set-key (kbd "C-x c o") 'helm-occur)

  (define-key sp-keymap (kbd "C-c C-a") 'sp-kill-to-beginning-of-sexp)
  (define-key sp-keymap (kbd "C-c C-e") 'sp-kill-to-end-of-sexp)
  (define-key sp-keymap (kbd "C-c M-a") 'sp-copy-to-beginning-of-sexp)
  (define-key sp-keymap (kbd "C-c M-e") 'sp-copy-to-end-of-sexp))

                                        ; don't use shift to mark things; smartparens overwrites this anyway, but be explicit about it
(setq shift-select-mode nil)

  (global-set-key (kbd "C-x C-f") 'helm-find-files)
  (setq helm-ff-lynx-style-map nil
        helm-input-idle-delay 0.1
        helm-idle-delay 0.1
        helm-follow-mode-persistent t ))

(setup-lazy '(helm-C-x-b) "helm-C-x-b"
  (global-set-key [remap switch-to-buffer] 'helm-C-x-b))
