   :ensure t)
 
 (use-package yaml-mode
+  :mode "\\.ya?ml\\'"
   :ensure t)
 
 (use-package markdown-mode
-  :ensure t)
+  :ensure t
+  :mode (("\\`README\\.md\\'" . gfm-mode)
+         ("\\.md\\'"          . markdown-mode)
+         ("\\.markdown\\'"    . markdown-mode)))
+
+(use-package paren
+  :demand t
+  :config
+  (show-paren-mode))
 
 (use-package rainbow-delimiters
   :ensure t

 (add-hook 'text-mode-hook 'flyspell-mode))

(use-package nix-mode
  :ensure t)

(use-package ido
  :demand t

;;(package-refresh-contents)

(eval-when-compile
  (defvar use-package-verbose t)
  (require 'use-package))

(require 'bind-key)
(require 'diminish nil t)

(use-package
  magit
  :ensure t
  :bind ("M-C M" . magit-status))

(use-package whitespace
  :diminish (global-whitespace-mode
