Closed shipmints closed 2 days ago
I'm not seeing this. What does M-: (indent-bars--style (car indent-bars--styles) "color")
tell you? Somehow you have configured the main color custom var to something which has no defined color. If it mentions highlight
, what does M-: (face-background 'highlight)
give?
For me with tty-color-mode=no
, highlight
background is all black.
(indent-bars--style (car indent-bars--styles) "color")
yields (highlight :face-bg t :blend 0.325)
(face-background 'highlight)
yields nil
The theme is latest ELPA modus-vivendi (dark) and switching to modus-operanti (light) is what triggers the issue. Perhaps Prot hasn't tested with tty-color-mode.
Hmm, that's actually the value of the default
face in the default theme too. I pushed a new change which guards against the foreground/background color default
color being unspecified, give a try and see if that fixes this.
This language from the elisp manual is confusing:
The ‘default’ face must explicitly specify all attributes, and cannot use the special value ‘reset’.
But it can and does use "unspecified-" colors on TTY. See also Emacs bug#55623 and alphapapa/ement.el#34.
That is good defense.
Hah, it's always something, these rabbit holes... Now, it's @alphapapa's prism. But, it could be my own color setter that needs to first check. Nope, I disabled my color selector which runs post-theme and still prism not happy even if I set prism-num-faces to 1.
Debugger entered--Lisp error: (cl-assertion-failed (colors "No non-unspecified colors remain of %s"))
cl--assertion-failed(colors "No non-unspecified colors remain of %s" nil ((font-lock-type-face font-lock-function-name-face font-lock-keyword-face font-lock-doc-face)))
prism-set-colors()
prism-after-theme(modus-operandi :no-confirm)
apply(prism-after-theme (modus-operandi :no-confirm))
load-theme(modus-operandi :no-confirm)
modus-themes-load-theme(modus-operandi)
modus-themes-toggle()
Yeah. So looks like the defense is working for indent-bars
. I already had variables in place to allow users to specify "this the actual fg/bg color on terminal" so not such a big deal to utilize. There should probably be variables like this emacs-wide.
That is good defense.
Hah, it's always something, these rabbit holes... Now, it's @alphapapa's prism. But, it could be my own color setter that needs to first check. Nope, I disabled my color selector which runs post-theme and still prism not happy even if I set prism-num-faces to 1.
Debugger entered--Lisp error: (cl-assertion-failed (colors "No non-unspecified colors remain of %s")) cl--assertion-failed(colors "No non-unspecified colors remain of %s" nil ((font-lock-type-face font-lock-function-name-face font-lock-keyword-face font-lock-doc-face))) prism-set-colors() prism-after-theme(modus-operandi :no-confirm) apply(prism-after-theme (modus-operandi :no-confirm)) load-theme(modus-operandi :no-confirm) modus-themes-load-theme(modus-operandi) modus-themes-toggle()
That's weird. See https://github.com/alphapapa/prism.el/commit/4549c84f72feb3a7aa7a5df7202cdfb5d9c729a4
Not sure. As this is a low-priority edge-case, I'm going to not use monochrome tty. It doesn't work well and I suspect I need an old-timey vt100 terminal to use it. So take this as an FYI in case it comes up for this case or something similar.
monochrome tty
Oh, I think that explains it.
Shades of gray are colors, too, I suppose.
This isn't urgent but might highlight something work fixing for other cases.
I've been experimenting with making themes work better in tty. This issue recurs when
but is fine otherwise.