vim / colorschemes

colorschemes for Vim
279 stars 23 forks source link

Removed bold atribute for terminals #152

Closed romainl closed 2 years ago

romainl commented 2 years ago

Should fix https://github.com/vim/colorschemes/issues/151

habamax commented 2 years ago

peachpuff pmenu image

habamax commented 2 years ago

underline (applied to cursorline) is a no-go too

image

habamax commented 2 years ago

Delek both in 16 and 256 image

habamax commented 2 years ago

elflord 256 image

elflord 16 image

habamax commented 2 years ago

industry both in 256 and 16

image

habamax commented 2 years ago

pablo

image

habamax commented 2 years ago

torte image

habamax commented 2 years ago

zellner

image

habamax commented 2 years ago

Bolds are removed indeed.

Fixes needed are:

for the underline lets address it in another go/pr

habamax commented 2 years ago

cmd.exe does nothing with reverse so many statuslines are broken there

romainl commented 2 years ago

cmd.exe does nothing with reverse so many statuslines are broken there

Sigh

habamax commented 2 years ago

@romainl pls check my changes

I did check against xterm16 and cmd.exe but could miss here and there.

habamax commented 2 years ago

@romainl done

habamax commented 2 years ago

That 16c cmd.exe is an abomination (again reverse): image

ok for 256c image

habamax commented 2 years ago

If we want to support it we will have to add a conditional into _diff for win32 and t_Co.

habamax commented 2 years ago

Or just remove reverse and switch fg and bg manually

romainl commented 2 years ago

The observations below are valid for CMD.exe in Windows 10 version 1809 from fall 2018.

What to do with 16c CMD.exe?

romainl commented 2 years ago

@habamax in c50e5ef the templates are missing. Does that mean that you worked directly on the colorschemes?

neutaaaaan commented 2 years ago

Vim is not good at inferring terminal capabilities so we can't rely on it for making the right decisions

I'd try to get that fixed, or at least have the windows terminal and cmd.exe situation figured out.
Considering they're relatively different from the unix terminal ecosystem, they might be easier to autodetect. We could then try to automatically load more compatible versions of the colorschemes, and probably throw some kind of warning and user manual reference in the ModeMsg line, with potential modifications to be made to the user's .vimrc.

Considering that vim is exceedingly unlikely to ever be installed by default on a windows machine, this would be a much better solution to me than effectively kneecapping the default colorschemes in all possible 16c contexts.

Does _tcozero even survive being used in cmd.exe ?

habamax commented 2 years ago

@romainl no, I did everything using templates -- there should be _diff changed

romainl commented 2 years ago

Vim is not good at inferring terminal capabilities so we can't rely on it for making the right decisions

I'd try to get that fixed, or at least have the windows terminal and cmd.exe situation figured out. Considering they're relatively different from the unix terminal ecosystem, they might be easier to autodetect. We could then try to automatically load more compatible versions of the colorschemes, and probably throw some kind of warning and user manual reference in the ModeMsg line, with potential modifications to be made to the user's .vimrc.

Considering that vim is exceedingly unlikely to ever be installed by default on a windows machine, this would be a much better solution to me than effectively kneecapping the default colorschemes in all possible 16c contexts.

I agree on principle but it is something I, personally, am not equipped for. My opinion has been for a long time that the nasty colors/style/capabilities business should be fixed in Vim itself but, in the end, the work has to be done by someone and I don't have the expertise be that someone. So I don't feel comfortable taking a stand and saying "let's do it" because the "'s" means "us" and a) I will be of no help, and b) it will mean "do it". I don't like it at all.

Does _tcozero even survive being used in cmd.exe ?

Given the liberal use of stylistic attributes I doubt it.

romainl commented 2 years ago

@habamax sorry.

habamax commented 2 years ago

Does _tcozero even survive being used in cmd.exe ?

Probably not. Manual set t_Co=0 has no effect, it is being reset to 16.

neutaaaaan commented 2 years ago

@romainl I agree this has to be fixed upstream, I don't have the technical know-how either.

I'm against gimping colorschemes to work around well-documented, long-standing issues in vim itself. There's absolutely no point in building on top of broken foundations.

habamax commented 2 years ago

Most of the readability issues were solved in this PR.

Cursorline is what I don't know what to do with.

habamax commented 2 years ago

I would suggest to

romainl commented 2 years ago

Properties of the Windows console before :set cursorline and after :set nocursorline:

Capture d’écran 2022-02-27 à 10 19 28

Properties of the Windows Console after :set cursorline:

Capture d’écran 2022-02-27 à 10 20 11

We can't do anything about it at our level so I think we will stop working on that topic for now (and open an issue against vim/vim).

romainl commented 2 years ago

So, leaving the cursorline issue out of the question for now…

habamax commented 2 years ago
  • are the remakes usable in xterm-like terminal emulators with the default palette?

Yes

  • are the remakes usable in the Windows console with the default palette?

Yes

But I could miss smth

romainl commented 2 years ago

I spotted a few instances where the contrast between StatusLineNC and StatusLine was not good enough. There is also at least one unreadable wildmenu. I'm on it.

romainl commented 2 years ago

@habamax what do you think?

habamax commented 2 years ago

@romainl looks good, checked with gui and cmd.exe (16c)

romainl commented 2 years ago

OK, let's go.