;ELC   
;;; Compiled
;;; in Emacs version 25.3.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301\302\303\304\305\306\307\310\311&	\210\300\312\302\313\310\301\310\314\306\315\304\305&\210\316\317\320\321\322DD\323\324\325\326\321\310\301&	\210\327\330\331\332\310\312%\210\327\333\334\335\310\312%\210\327\336\337\340\310\312%\210\327\341\342\343\310\312%\210\327\344\345\346\310\312%\210\327\347\350\351\310\312%\210\327\352\353\354\310\312%\210\327\355\356\357\310\312%\210\327\360\361\362\310\312%\210\327\363\364\365\310\312%\210\327\366\367\370\310\312%\210\327\371\372\373\310\312%\210\316\374\320\321\375DD\376\326\377\310\301&\210\316\201@ \320\321\201A DD\201B \326\377\310\301&\207" [custom-declare-group rainbow-delimiters nil "Highlight nested parentheses, brackets, and braces according to their depth." :prefix "rainbow-delimiters-" :link (url-link :tag "Website for rainbow-delimiters" "https://github.com/Fanael/rainbow-delimiters") :group applications rainbow-delimiters-faces "Faces for successively nested pairs of delimiters.\n\nWhen depth exceeds innermost defined face, colors cycle back through." faces (custom-group-link "rainbow-delimiters") custom-declare-variable rainbow-delimiters-pick-face-function funcall function #[0 "\300\207" [rainbow-delimiters-default-pick-face] 1] "The function used to pick a face used to highlight a delimiter.\nThe function should take three arguments (DEPTH MATCH LOC), where:\n  - DEPTH is the delimiter depth; when zero or negative, it's an unmatched\n    delimiter.\n  - MATCH is nil iff the delimiter is a mismatched closing delimiter.\n  - LOC is the location of the delimiter.\nThe function should return a value suitable to use as a value of the `face' text\nproperty, or nil, in which case the delimiter is not highlighted.\nThe function should not move the point or mark or change the match data." :tag "Pick face function" :type custom-declare-face rainbow-delimiters-base-face ((default (:inherit unspecified))) "Face inherited by all other rainbow-delimiter faces." rainbow-delimiters-unmatched-face ((default (:inherit rainbow-delimiters-base-face)) (((background light)) (:foreground "#88090B")) (((background dark)) (:inherit rainbow-delimiters-base-face :foreground "#88090B"))) "Face to highlight unmatched closing delimiters in." rainbow-delimiters-mismatched-face ((t :inherit (rainbow-delimiters-unmatched-face rainbow-delimiters-base-face))) "Face to highlight mismatched closing delimiters in." rainbow-delimiters-depth-9-face (#1=(default (:inherit rainbow-delimiters-base-face)) (#2=((class color) (background light)) :foreground "#887070") (#3=((class color) (background dark)) :foreground "#9cb6ad")) "Nested delimiter face, depth 9." rainbow-delimiters-depth-8-face (#1# (#2# :foreground "#80a880") (#3# :foreground "#a2b6da")) "Nested delimiter face, depth 8." rainbow-delimiters-depth-7-face (#1# (#2# :foreground "#858580") (#3# :foreground "#90a890")) "Nested delimiter face, depth 7." rainbow-delimiters-depth-6-face (#1# (#2# :foreground "#6276ba") (#3# :foreground "#b0b0b3")) "Nested delimiter face, depth 6." rainbow-delimiters-depth-5-face (#1# (#2# :foreground "#907373") (#3# :foreground "#aebed8")) "Nested delimiter face, depth 5." rainbow-delimiters-depth-4-face (#1# (#2# :foreground "#709870") (#3# :foreground "#97b098")) "Nested delimiter face, depth 4." rainbow-delimiters-depth-3-face (#1# (#2# :foreground "#909183") (#3# :foreground "#b0b1a3")) "Nested delimiter face, depth 3." rainbow-delimiters-depth-2-face (#1# (#2# :foreground "#7388d6") (#3# :foreground "#93a8c6")) "Nested delimiter face, depth 2." rainbow-delimiters-depth-1-face (#1# (#2# :foreground "#707183") (#3# :foreground "grey55")) "Nested delimiter face, depth 1." rainbow-delimiters-max-face-count #[0 "\300\207" [9] 1] "Number of faces defined for highlighting delimiter levels.\n\nDetermines depth at which to cycle through faces again.\n\nIt's safe to change this variable provided that for all integers from 1 to the\nnew value inclusive, a face `rainbow-delimiters-depth-N-face' is defined." integer rainbow-delimiters-outermost-only-face-count #[0 "\300\207" [0] 1] "Number of faces to be used only for N outermost delimiter levels.\n\nThis should be smaller than `rainbow-delimiters-max-face-count'."] 12)
#@402 Return a face name appropriate for nesting depth DEPTH.
DEPTH and MATCH are as in `rainbow-delimiters-pick-face-function'.

The returned value is either `rainbow-delimiters-unmatched-face',
`rainbow-delimiters-mismatched-face', or one of the
`rainbow-delimiters-depth-N-face' faces, obeying
`rainbow-delimiters-max-face-count' and
`rainbow-delimiters-outermost-only-face-count'.

(fn DEPTH MATCH LOC)
(defalias 'rainbow-delimiters-default-pick-face #[771 "\302X\203 \303\207\204 \304\207\305\306\307X\203 \202* \310\311	\312\313\n\311#	Z\"#!\314Q!\207" [rainbow-delimiters-max-face-count rainbow-delimiters-outermost-only-face-count 0 rainbow-delimiters-unmatched-face rainbow-delimiters-mismatched-face intern-soft "rainbow-delimiters-depth-" number-to-string + 1 mod - "-face"] 14 (#$ . 4630)])
#@266 Highlight a single delimiter at LOC according to DEPTH.

LOC is the location of the character to add text properties to.
DEPTH is the nested depth at LOC, which determines the face to use.
MATCH is nil iff it's a mismatched closing delimiter.

(fn LOC DEPTH MATCH)
(defalias 'rainbow-delimiters--apply-color #[771 "#\211\205 \301\211T\302$\207" [rainbow-delimiters-pick-face-function font-lock-prepend-text-property face] 9 (#$ . 5445)])
#@332 Return t if char at LOC should not be highlighted.
PPSS is the `parse-partial-sexp' state at LOC.
DELIM-SYNTAX-CODE is the `car' of a raw syntax descriptor at LOC.

Returns t if char at loc meets one of the following conditions:
- Inside a string.
- Inside a comment.
- Is an escaped char, e.g. ?)

(fn LOC PPSS DELIM-SYNTAX-CODE)
(defalias 'rainbow-delimiters--char-ineligible-p #[771 "\3008\206E \3018\206E \3028\206E \303\304\"\305U\204+ \303\306T!@\206% \305\307\"\305U?\207\303\307\"\305U\204D \303\306S!@\206> \305\304\"\305U?\207\310\207" [3 4 5 logand 65536 0 syntax-after 131072 nil] 6 (#$ . 5897)])
#@110 Highlight delimiters in region between point and END.

Used by font-lock for dynamic highlighting.

(fn END)
(defalias 'rainbow-delimiters--propertize #[257 "`\300 \301\302\"\210`V\203U `\303!\304\305\211%\262\262\305u\210\211@\306#\204P \307\310\"\311U\203@ \312@T\313#\210\202P AA@f=\312@#\266\266\202 \266\305\207" [syntax-ppss skip-syntax-forward "^()" syntax-after parse-partial-sexp nil rainbow-delimiters--char-ineligible-p logand 65535 4 rainbow-delimiters--apply-color t] 11 (#$ . 6520)])
(defconst rainbow-delimiters--font-lock-keywords '(rainbow-delimiters--propertize))
#@115 Non-nil if Rainbow-Delimiters mode is enabled.
Use the command `rainbow-delimiters-mode' to change this variable.
(defvar rainbow-delimiters-mode nil (#$ . 7135))
(make-variable-buffer-local 'rainbow-delimiters-mode)
#@98 Highlight nested parentheses, brackets, and braces according to their depth.

(fn &optional ARG)
(defalias 'rainbow-delimiters-mode #[256 "\306 \307=\203 ?\202 \310!\311V\312\313	\"\210\203X \314\313	\315#\210\316\302!\210\317\320\303!\2032 \204< \320\304!\203@ \f\203@ \321\311!\210\320\303!\203L \316\303!\210\313\320\304!\203X \316\304!\210\313\203k \322\323!\203h \323 \210\202k \324 \210\325\326\203u \327\202v \330\"\210\331\332!\203\232 \306 \203\212 \211\306 \232\203\232 \333\334\335\203\225 \336\202\226 \337#\266\210\340 \210\207" [rainbow-delimiters-mode rainbow-delimiters--font-lock-keywords jit-lock-contextually syntax-begin-function font-lock-beginning-of-syntax-function font-lock-mode current-message toggle prefix-numeric-value 0 font-lock-remove-keywords nil font-lock-add-keywords append make-local-variable t boundp syntax-ppss-flush-cache fboundp font-lock-flush font-lock-fontify-buffer run-hooks rainbow-delimiters-mode-hook rainbow-delimiters-mode-on-hook rainbow-delimiters-mode-off-hook called-interactively-p any " in current buffer" message "Rainbow-Delimiters mode %sabled%s" "en" "dis" force-mode-line-update] 7 (#$ . 7358) (byte-code "\206 \301C\207" [current-prefix-arg toggle] 1)])
#@188 Hook run after entering or leaving `rainbow-delimiters-mode'.
No problems result if this variable is not bound.
`add-hook' automatically binds it.  (This is true for all hook variables.)
(defvar rainbow-delimiters-mode-hook nil (#$ . 8602))
(byte-code "\301\302\303\304\300!\205\n \305\211%\207" [rainbow-delimiters-mode-map add-minor-mode rainbow-delimiters-mode "" boundp nil] 6)
#@35 Enable `rainbow-delimiters-mode'.
(defalias 'rainbow-delimiters-mode-enable #[0 "\300\301!\207" [rainbow-delimiters-mode 1] 2 (#$ . 8991)])
#@36 Disable `rainbow-delimiters-mode'.
(defalias 'rainbow-delimiters-mode-disable #[0 "\300\301!\207" [rainbow-delimiters-mode 0] 2 (#$ . 9137)])
(provide 'rainbow-delimiters)
