altercation / vim-colors-solarized

precision colorscheme for the vim text editor

Home Page:http://ethanschoonover.com/solarized

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[CRITICAL] Won't work with latest Vim build or any future builds in gnome-terminal

lifecrisis opened this issue · comments

Greetings:

I want to draw special attention to an issue that has been raised in the Vim project with regards to terminal color schemes in general. I also want to note that this directly affects the compatibility of this plugin with Vim.

As of Vim v8.1.1146, the Solarized color scheme is no longer functional in gnome-terminal. I feel that this is critical, as it means that many users will need to move to a new color scheme if nothing is done to fix the problem. See vim/vim#5574.

My set up is as follows:

  • Ubuntu 18.04 LTS
  • Vim v8.2.341 (currently the latest, bug was introduced at tag v8.1.1146)
  • I use gnome-terminal with the Solarized dark color palette

A screenshot of this configuration follows:

bug

As you can see, the terminal window is barely usable, and the current line number (note that number and relativenumber are set) doesn't look as it should. See below for a screenshot of the expected appearance (before Vim patch 8.1.1146).

no_bug

I have used Solarized for many years in gnome-terminal without issues. It's wonderful on the eyes! I really hope that this issue can be resolved and that the plugin can be restored to proper functioning with the latest Vim build.

Thanks in advance for any help! Also, thank you for such a valuable addition to the Vim plugin ecosystem.

Best,
Jason

Same problem with neovim v.0.4.3, KDE Konsole (20.04.0) and Manjaro 20.0

Same problem with Fedora 32 , both gnome-terminal and Kitty, when I run :terminal in side VIM

@lifecrisis and @roccr

I guess the problems is VIM tries to read 256-color , instead of 16, when opening a :terminal.

Use 256 colors with 'let g:solarized_termcolors=256'
or any way to use 16 colors seems to be working.
('let g:solarized_termcolors=16' did not work for me though)

Examples to force using 16 colors could be,

 set t_Co=16   (for vim. Make sure your terminal does not override this value. Check ':echo &t_Co' inside of vim, if not working)
 set -g default-terminal xterm-16color   (for tmux)
 export TERM=xterm-16color   (for shell)

I am not really sure how above examples can affect other apps(Please tell me pros and cons, if you have any!!)

same here with linuxmint .. Help!

@tz4678 , have you set the color palette of your terminal emulator to Solarized palette?

it worked for me.. all you have to do is
add this piece of code in your .vimrc or init.vim

let g:solarized_termcolors=256

make sure, your terminal theme is set to solarized

let g:solarized_termcolors=256 worked for me as well, but I found it was crucial to put it before the colorscheme solarized line, or else it wouldn't work.