vim / colorschemes

colorschemes for Vim
279 stars 23 forks source link

TabLineSel not defined at startup with option `set showtabline=2` causes wrong colouring #156

Closed craigmac closed 2 years ago

craigmac commented 2 years ago

I discovered this issue when tweaking some tabpage stuff, and originally filed an issue against vim-habaurora. You can see images there of what happens, recreated here as well using the new peachpuff. Basically, if TabLineSel is not explicitly defined, that is, not "NONE", then the TabLineSel highlighting if off when set showtabline=2 in vimrc. I've tried this with several of the new colorschemes from here and the same issue exists. I guess one solution would be colortemplate required explicitly defining TabLineSel to a colour, and avoid "NONE".

Startup with set showtabline=2, notice the TabLineSel seems to just be picking up my Terminal.app background colour:

Screen Shot 2022-03-23 at 8 43 41 AM

Running :hi TabLineSel right after startup:

Screen Shot 2022-03-23 at 8 44 02 AM

After running :tabnew the correct colouring kicks in for TabLineSel, even though :hi TabLineSel still only reports term=bold gui=bold.

Screen Shot 2022-03-23 at 8 46 06 AM
habamax commented 2 years ago

@romainl I am not sure if this is vim bug or not, but the workaround is to explicitly define:

TabLineSel     fgColor   bgColor

Instead of

TabLineSel     none    none

And in all my environments I don't have this thing (win gui, wsl tui)

craigmac commented 2 years ago
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Mar  7 2022 10:21:44)
macOS version - x86_64
Included patches: 1-4524
Compiled by cmaceach@MacBook-Pro
Huge version without GUI.  Features included (+) or not (-):
+acl               +cmdline_hist      +ex_extra          +jumplist          +mouse_dec         -perl              +sodium            +textobjects       +wildmenu
+arabic            +cmdline_info      +extra_search      +keymap            -mouse_gpm         +persistent_undo   -sound             +textprop          +windows
+autocmd           +comments          -farsi             +lambda            -mouse_jsbterm     +popupwin          +spell             +timers            +writebackup
+autochdir         +conceal           +file_in_path      +langmap           +mouse_netterm     +postscript        +startuptime       +title             -X11
-autoservername    +cryptv            +find_in_path      +libcall           +mouse_sgr         +printer           +statusline        -toolbar           -xfontset
-balloon_eval      -cscope            +float             +linebreak         -mouse_sysmouse    +profile           -sun_workshop      +user_commands     -xim
+balloon_eval_term +cursorbind        +folding           +lispindent        +mouse_urxvt       -python            +syntax            +vartabs           -xpm
-browse            +cursorshape       -footer            +listcmds          +mouse_xterm       -python3           +tag_binary        +vertsplit         -xsmp
++builtin_terms    +dialog_con        +fork()            +localmap          +multi_byte        +quickfix          -tag_old_static    +vim9script        -xterm_clipboard
+byte_offset       +diff              +gettext           -lua               +multi_lang        +reltime           -tag_any_white     +viminfo           -xterm_save
+channel           +digraphs          -hangul_input      +menu              -mzscheme          +rightleft         -tcl               +virtualedit       
+cindent           -dnd               +iconv             +mksession         +netbeans_intg     -ruby              +termguicolors     +visual            
-clientserver      -ebcdic            +insert_expand     +modify_fname      +num64             +scrollbind        +terminal          +visualextra       
+clipboard         +emacs_tags        +ipv6              +mouse             +packages          +signs             +terminfo          +vreplace          
+cmdline_compl     +eval              +job               -mouseshape        +path_extra        +smartindent       +termresponse      +wildignore        
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
  fall-back for $VIM: "/usr/local/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DMACOS_X -DMACOS_X_DARWIN -DMACOS_X -DMACOS_X_DARWIN -g -O2 -I/usr/local/Cellar/libsodium/1.0.18_1/include -D_REENTRANT -I/usr/local/Cellar/libsodium/1.0.18_1/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 
Linking: gcc -L/usr/local/lib -o vim -lm -lncurses -L/usr/local/Cellar/libsodium/1.0.18_1/lib -lsodium -liconv -lintl -framework AppKit 
romainl commented 2 years ago

Let's define the attributes explicitly. But I'm quite surprised that we don't do it already.

habamax commented 2 years ago

Let's define the attributes explicitly. But I'm quite surprised that we don't do it already.

Well we do define them explicitly to NONE NONE :) but yeah, I will update colorschemes later in a sep branch.