[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/rainbow-delimiters 8a2c0374b0 143/188: Use a macro to gene
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/rainbow-delimiters 8a2c0374b0 143/188: Use a macro to generate face definitions. |
Date: |
Sat, 1 Jan 2022 00:59:00 -0500 (EST) |
branch: elpa/rainbow-delimiters
commit 8a2c0374b0a666a26cc7868ac6c0944534f2aa29
Author: Fanael Linithien <fanael4@gmail.com>
Commit: Fanael Linithien <fanael4@gmail.com>
Use a macro to generate face definitions.
---
rainbow-delimiters.el | 74 +++++++++++----------------------------------------
1 file changed, 16 insertions(+), 58 deletions(-)
diff --git a/rainbow-delimiters.el b/rainbow-delimiters.el
index 8e18009cff..f9c4cc9f75 100644
--- a/rainbow-delimiters.el
+++ b/rainbow-delimiters.el
@@ -112,64 +112,22 @@ Delimiters in this list are not highlighted."
"Face to highlight mismatched closing delimiters in."
:group 'rainbow-delimiters-faces)
-;; Faces for highlighting delimiters by nesting level:
-(defface rainbow-delimiters-depth-1-face
- '((((background light)) (:foreground "#707183"))
- (((background dark)) (:foreground "grey55")))
- "Nested delimiters face, depth 1 - outermost set."
- :tag "Rainbow Delimiters Depth 1 Face -- OUTERMOST"
- :group 'rainbow-delimiters-faces)
-
-(defface rainbow-delimiters-depth-2-face
- '((((background light)) (:foreground "#7388d6"))
- (((background dark)) (:foreground "#93a8c6")))
- "Nested delimiters face, depth 2."
- :group 'rainbow-delimiters-faces)
-
-(defface rainbow-delimiters-depth-3-face
- '((((background light)) (:foreground "#909183"))
- (((background dark)) (:foreground "#b0b1a3")))
- "Nested delimiters face, depth 3."
- :group 'rainbow-delimiters-faces)
-
-(defface rainbow-delimiters-depth-4-face
- '((((background light)) (:foreground "#709870"))
- (((background dark)) (:foreground "#97b098")))
- "Nested delimiters face, depth 4."
- :group 'rainbow-delimiters-faces)
-
-(defface rainbow-delimiters-depth-5-face
- '((((background light)) (:foreground "#907373"))
- (((background dark)) (:foreground "#aebed8")))
- "Nested delimiters face, depth 5."
- :group 'rainbow-delimiters-faces)
-
-(defface rainbow-delimiters-depth-6-face
- '((((background light)) (:foreground "#6276ba"))
- (((background dark)) (:foreground "#b0b0b3")))
- "Nested delimiters face, depth 6."
- :group 'rainbow-delimiters-faces)
-
-(defface rainbow-delimiters-depth-7-face
- '((((background light)) (:foreground "#858580"))
- (((background dark)) (:foreground "#90a890")))
- "Nested delimiters face, depth 7."
- :group 'rainbow-delimiters-faces)
-
-(defface rainbow-delimiters-depth-8-face
- '((((background light)) (:foreground "#80a880"))
- (((background dark)) (:foreground "#a2b6da")))
- "Nested delimiters face, depth 8."
- :group 'rainbow-delimiters-faces)
-
-(defface rainbow-delimiters-depth-9-face
- '((((background light)) (:foreground "#887070"))
- (((background dark)) (:foreground "#9cb6ad")))
- "Nested delimiters face, depth 9."
- :group 'rainbow-delimiters-faces)
-
-;;; Faces 10+:
-;; NOTE: Currently unused. Additional faces for depths 10+ can be added on
request.
+(eval-when-compile
+ (defmacro rainbow-delimiters--define-depth-faces ()
+ (let ((faces '())
+ (light-colors ["#707183" "#7388d6" "#909183" "#709870" "#907373"
+ "#6276ba" "#858580" "#80a880" "#887070"])
+ (dark-colors ["grey55" "#93a8c6" "#b0b1a3" "#97b098" "#aebed8"
+ "#b0b0b3" "#90a890" "#a2b6da" "#9cb6ad"]))
+ (dotimes (i 9)
+ (push `(defface ,(intern (format "rainbow-delimiters-depth-%d-face"
(1+ i)))
+ '((((class color) (background light)) :background ,(aref
light-colors i))
+ (((class color) (background dark)) :background ,(aref
dark-colors i)))
+ ,(format "Nested delimiter face, depth %d." (1+ i))
+ :group 'rainbow-delimiters-faces)
+ faces))
+ `(progn ,@faces))))
+(rainbow-delimiters--define-depth-faces)
(defconst rainbow-delimiters-max-face-count 9
"Number of faces defined for highlighting delimiter levels.
- [nongnu] elpa/rainbow-delimiters 6df71dba8f 091/188: Release version 1.3.11., (continued)
- [nongnu] elpa/rainbow-delimiters 6df71dba8f 091/188: Release version 1.3.11., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 5459aa4c6a 102/188: Simplify rainbow-delimiters-delim-regex., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 756fd642fa 103/188: Release version 1.3.12., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 3143de1136 105/188: Update the readme., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters ccd68b7eb8 107/188: Replace a generalized push with setcdr+cons+cdr., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 3e538315ae 125/188: Point URLs to the new address., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 9ee4a86d47 133/188: Run the test suite under Emacs 23., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 5eeddfb2d6 137/188: Test for blacklisting in rainbow-delimiters--char-ineligible-p., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 41546fa1f2 129/188: Fix a typo in the readme., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters daae2c22a6 141/188: Really make Emacs 23 tests less verbose., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 8a2c0374b0 143/188: Use a macro to generate face definitions.,
ELPA Syncer <=
- [nongnu] elpa/rainbow-delimiters 5435305789 145/188: Move all variables to 'rainbow-delimiters' group., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 798af906df 147/188: Add a test checking if blacklisted delims still contribute to depth., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 58f17c9c4d 149/188: The faces should really use foreground colors., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 0441e7317b 151/188: Add a better escaped delimiter test case., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters b10da10248 154/188: Release version 2.0., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters f91b36bad7 157/188: Use the depth from parse-partial-sexp directly, ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters ac62aa0a53 161/188: Remove useless comments., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters edd8f8624d 171/188: Kill rainbow-delimiters-delimiter-blacklist., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters a50f8f1a9c 166/188: Shorten the header line., ELPA Syncer, 2022/01/01
- [nongnu] elpa/rainbow-delimiters 9eb2dff24e 172/188: Release version 2.1., ELPA Syncer, 2022/01/01