   :functions (iedit-current-occurrence-string iedit-restrict-region)
   :commands (evil-iedit-state evil-iedit-state/iedit-mode)
   :config
-  (bind! :map evil-iedit-state-map ; Don't interfere with evil-snipe
-         "s"   nil
-         "S"   nil
-         "V"   'evil-visual-line
-         "C"   'evil-iedit-state/substitute  ; instead of s/S
-         "za"  'iedit-toggle-unmatched-lines-visible)
-  (bind! :v "SPC" 'narf:iedit-restrict-to-region))
+  (bind!
+   :v "SPC" 'narf:iedit-restrict-to-region
+   (:map evil-iedit-state-map ; Don't interfere with evil-snipe
+     "s"   nil
+     "S"   nil
+     "V"   'evil-visual-line
+     "C"   'evil-iedit-state/substitute  ; instead of s/S
+     "za"  'iedit-toggle-unmatched-lines-visible)))
 
 (use-package evil-indent-textobject
   :commands (evil-indent-i-indent


(use-package evil
  :init
  ;; highlight matching delimiters where it's important
  (defun show-paren-mode-off () (show-paren-mode -1))
  (add-hook! evil-insert-state-entry    'show-paren-mode)
  (add-hook! evil-insert-state-exit     'show-paren-mode-off)
  (add-hook! evil-visual-state-entry    'show-paren-mode)
  (add-hook! evil-visual-state-exit     'show-paren-mode-off)
  (add-hook! evil-motion-state-entry    'show-paren-mode)
  (add-hook! evil-motion-state-exit     'show-paren-mode-off)
  (add-hook! evil-operator-state-entry  'show-paren-mode)
  (add-hook! evil-operator-state-exit   'show-paren-mode-off)

  ;; Disable highlights on insert-mode
  (add-hook! evil-insert-state-entry 'evil-ex-nohighlight)

  (add-hook! undo-tree-mode (diminish 'undo-tree-mode))
  ;; Always ensure evil-shift-width is consistent with tab-width
  (add-hook! evil-local-mode (setq evil-shift-width tab-width))

(use-package evil-snipe
  :diminish evil-snipe-mode
  :init
  (setq-default
   evil-snipe-smart-case t
   evil-snipe-repeat-keys nil ; using evil-space to repeat
   evil-snipe-scope 'line
   evil-snipe-repeat-scope 'buffer
   evil-snipe-override-evil-repeat-keys nil ; causes problems with remapped ;
   evil-snipe-symbol-groups '((?\[ "[[{(]")
                              (?\] "[]})]")))
  :config
