[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Computing value from list lengths
From: |
fatiparty |
Subject: |
Computing value from list lengths |
Date: |
Fri, 21 Jan 2022 14:56:40 +0100 (CET) |
Jan 22, 2022, 00:19 by help-gnu-emacs@gnu.org:
> I have the following code and want to determine maxdepth
> automatically from the length of the dark-theme-colours and
> light-theme-colours (and changing the ahrd coded (dotimes (i 8)).
>
> What would be the strategy?
>
>
> (defcustom maxdepth 8
> "Number of faces defined for colouring brace marks.
> Determines depth at which to cycle through faces again."
> :type 'integer
> :group 'test)
> (eval-when-compile
> (defmacro colour-typeface ()
>
> ( let ( (faces '())
> (dark-theme-colours
> [ "#ff62d4" "#3fdfd0" "#fba849" "#9f80ff"
> "#4fe42f" "#fe6060" "#4fafff" "#f0dd60" ])
> (light-theme-colours
> [ "#a8007f" "#005f88" "#904200" "#7f10d0"
> "#006800" "#b60000" "#1f1fce" "#605b00" ]) )
>
> (dotimes (i 8)
> (push
> `( defface ,(intern (format "depth-%d-face" (1+ i)))
> '( (default (:inherit richerenkov-base-face))
> ( ((class color) (background dark))
> :foreground ,(aref dark-theme-colours i) )
> ( ((class color) (background light))
> :foreground ,(aref light-theme-colours i) ))
> ,(format "Nested delimiter face, depth %d." (1+ i) )
> :group 'colour-faces )
> faces))
>
> `(progn ,@faces) ) ))
>
> (colour-typeface)
>
Have started using (length dark-theme-colours), and changing "(dotimes (i 8)"
to
"(dotimes (i n)". How does one set the value to n, for o defcustom such as
maxdepth?