branch: elpa/rainbow-delimiters
commit 0fa4723a9d27684131e6c62dc49a74152ed3c115
Author: Steve Purcell <[email protected]>
Commit: Steve Purcell <[email protected]>
Add rainbow-delimiters-ignore-modes
Closes #7, see #31
---
rainbow-delimiters.el | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/rainbow-delimiters.el b/rainbow-delimiters.el
index 11b5ccad02..72ae2bae7a 100644
--- a/rainbow-delimiters.el
+++ b/rainbow-delimiters.el
@@ -111,6 +111,16 @@
"http://www.emacswiki.org/emacs/RainbowDelimiters")
:group 'applications)
+(defcustom rainbow-delimiters-ignore-modes
+ '(special-mode eshell-mode cider-repl-mode)
+ "List of modes in which `rainbow-delimiters-mode' should not be
automatically enabled.
+
+If the mode of a buffer is derived from one of these modes, then
+`global-rainbow-delimiters-mode' will not enable `rainbow-delimiters-mode' in
that buffer."
+ :tag "Ignore in this modes"
+ :type '(list symbol)
+ :group 'rainbow-delimiters)
+
(defgroup rainbow-delimiters-faces nil
"Faces for successively nested pairs of delimiters.
@@ -549,7 +559,13 @@ Used by font-lock for dynamic highlighting."
;;;###autoload
(define-globalized-minor-mode global-rainbow-delimiters-mode
- rainbow-delimiters-mode rainbow-delimiters-mode-enable)
+ rainbow-delimiters-mode rainbow-delimiters-mode-enable-maybe)
+
+(defun rainbow-delimiters-mode-enable-maybe ()
+ "Enable `rainbow-delimiters-mode' if appropriate in this buffer."
+ (unless (apply 'derived-mode-p rainbow-delimiters-ignore-modes)
+ (rainbow-delimiters-mode-enable)))
+
(provide 'rainbow-delimiters)
;;; rainbow-delimiters.el ends here