protesilaos / modus-themes

Highly accessible themes for GNU Emacs, conforming with the highest standard for colour contrast between background and foreground values (WCAG AAA).
https://protesilaos.com/emacs/modus-themes
GNU General Public License v3.0
526 stars 29 forks source link

multiple-cursors bar are invisible #62

Open in-in opened 1 year ago

in-in commented 1 year ago

The bar seems to be the same color as the background, so it is invisible. 23016053638

protesilaos commented 1 year ago

Hello @in-in! Can you please tell me more about your setup? What version of the modus-themes are you using? What version of Emacs?

Does this problem occur in specific scenaria or is it always like this?

in-in commented 1 year ago

GNU Emacs 28.1 modus-themes 20230115.515 Yes, it is always invisible

protesilaos commented 1 year ago

I cannot reproduce this. In my case, I use the command mc/mark-next-like-this and all cursors are visible. This happens regardless of whether my original cursor is a block or a bar.

Is your problem limited to the modus-themes or does it happen with other themes as well?

protesilaos commented 1 year ago

Also note that your screenshot does not look like a Modus theme. Make sure no other theme is interfering by disabling it with M-x disable-theme.

yrns commented 1 year ago

I also had the same problem with the vertical bar cursor and multiple-cursors' "fake" cursors being invisible only with modus. There is some discussion related to this over in the multiple-cursors repo (https://github.com/magnars/multiple-cursors.el/pull/367). There seems to be some subtleties with the cursor face being inverted and the timing of things being set. I found this configuration worked for me (note the colors are reversed):

(use-package modus-themes
  :ensure t
  :custom-face
  (mc/cursor-bar-face ((t (:height 1 :foreground "#ffffff" :background "#000000"))))
  :config
  (load-theme 'modus-operandi))
protesilaos commented 1 year ago

Good to know @yrns!

What you are doings with the :custom-face should be the same as what we have in the themes:

    `(mc/cursor-bar-face ((,c :height 1 :foreground ,fg-main :background ,bg-main)))
    `(mc/cursor-face ((,c :inverse-video t)))

Maybe it suffices to remove all the multiple-cursors faces from the themes?

EDIT: Though you are suggesting that mc/cursor-bar-face is reversed regardless, which is unexpected.