 
 ;; evil-commentary
 (general-define-key
- :states 'normal
+ :keymaps 'normal
  "gc" '(evil-commentary))
 
 ;; evil-exchange
 (general-define-key
- :states 'normal
+ :keymaps 'normal
  "gx" '(evil-exchange))
 
 ;; evil-magit
 (general-define-key
- :states 'normal
  :keymaps '(magit-status-mode-map magit-revision-mode-map)
+ :states 'normal
  "C-j" '(nil)
  "C-k" '(nil))
 
 ;; evil-surround
 (general-define-key
- :states 'visual
+ :keymaps 'visual
  "S" '(evil-surround-region))
 (general-define-key
- :states 'operator
+ :keymaps 'operator
  "s" '(evil-surround-edit)
  "S" '(evil-surround-edit))
 
 ;; flycheck
 (general-define-key
- :states 'motion
+ :keymaps 'motion
  "]e" '(next-error)
  "[e" '(previous-error))
 (general-define-key
- :states 'normal
  :keymaps 'flycheck-error-list-mode-map
+ :states 'normal
  "C-n" '(flycheck-error-list-next-error)
  "C-p" '(flycheck-error-list-previous-error)
  "j"   '(flycheck-error-list-next-error)


;; diff-hl
(general-define-key
 :states 'motion
 "]d" '(diff-hl-next-hunk)
 "[d" '(diff-hl-previous-hunk))



;; debug
(general-define-key
 :keymaps 'debugger-mode-map
 :states 'normal
 "RET" '(debug-help-follow)
 "n"   '(debugger-step-through)
 "c"   '(debugger-continue))
