** Helm
#+BEGIN_SRC emacs-lisp
-(require 'don-helm)
+ (use-package helm
+ :ensure t
+ :config
+ (helm-mode 1)
+ (define-key global-map [remap find-file] 'helm-find-files)
+ (define-key global-map [remap occur] 'helm-occur)
+ (define-key global-map [remap list-buffers] 'helm-buffers-list)
+ (define-key global-map [remap dabbrev-expand] 'helm-dabbrev)
+ (global-set-key (kbd "M-x") 'helm-M-x)
+ (unless (boundp 'completion-in-region-function)
+ (define-key lisp-interaction-mode-map [remap completion-at-point] 'helm-lisp-completion-at-point)
+ (define-key emacs-lisp-mode-map [remap completion-at-point] 'helm-lisp-completion-at-point))
+ (add-hook 'kill-emacs-hook #'(lambda () (and (file-exists-p "$TMP") (delete-file "$TMP"))))
+ )
#+END_SRC
** Hydra
#+BEGIN_SRC emacs-lisp :tangle don-configuration.el