Closed knatsakis closed 1 year ago
IIRC this is by design. If the application is setting cursor colors, then kitty assumes it picks a color that works well with the text, since it has no way to know the value of cursor_text_color so its reset to none which allows the underlying text colors to shine through. There isnt really a good solution for this, since there is no escape code to change cursor_text_color.
Does it make sense to keep the old behaviour with cursor_text_color = #xxxxxx
and the new behaviour with something like cursor_text_color = auto
?
I suggest rather than using escape codes use kitty @ set-colors that way you can set both in a co-ordinated fashion.
I suggest rather than using escape codes use kitty @ set-colors that way you can set both in a co-ordinated fashion.
This sounds like a reasonable approach but
kitty @ set-colors 'cursor=#00ff00' 'cursor_text_color=#000000'
seems to change only the cursor's color and doesn't seem to affect the cursor's text color at all.
(I tried with latest released version as well)
that would be a bug open a separate issue for it and I'll look at it when I have a moment
Actually looking at the code, its currently implemented as tracking only if the cursor color is set to an actual color, regardless of mechanism, when it is, cursor_text_color is ignored. Changing this would require also tracking how the cursor color was set escape code vs remote control.
that would be a bug open a separate issue for it and I'll look at it when I have a moment
Describe the bug Setting cursor's color via escape sequence resets cursor's text color
To Reproduce Steps to reproduce the behavior:
cursor
to#ffffff
andcursor_text_color
to#000000
printf '\033]12;#00ff00\033\\'
Environment details
Additional context I think this stopped working since https://github.com/kovidgoyal/kitty/commit/0fdafd83986d46ea5eecdd6174617bd71eafe728