If I open a random file (in this case, say
.zshrc) in a blank vim with no rc file , but with vi compatibility forcing off
vim -N -u NORC ~/.zshrc
As expected vim will launch and display
.zshrc without syntax highlighting.
attempt to enable syntax highlighting
I have a file containing a collection of
highlight commands called
" " Darcula colorscheme for VIM. " set background=dark highlight clear if exists("syntax_on") syntax reset endif let g:colors_name = "darcula" hi Cursor ctermfg=188 ctermbg=250 cterm=NONE guifg=#2b2b2b guibg=#a9b7c6 gui=NONE hi Visual ctermfg=NONE ctermbg=24 cterm=NONE guifg=NONE guibg=#214283 gui=NONE hi CursorLine ctermfg=NONE ctermbg=236 cterm=NONE guifg=NONE guibg=#323232 gui=NONE hi CursorColumn ctermfg=NONE ctermbg=236 cterm=NONE guifg=NONE guibg=#313335 gui=NONE [ ... plus many more highlight commands ...]
at vims command line I enter
then, to check if the highlight commands have been loaded, I run
and yes vim is showing all the
hi commands from the above
darcula.vim file have been loaded.
Then I run
and nothing happens
:h syntax-loading I thought the syntax enable command sets up filetype autocmd recognition, as verified with:
:filetype filetype detection:ON plugin:OFF indent:OFF
and also sets up autocommand which will run the vim function
SynSet() on the autocommand event
Syntax, from the file
[...] au Syntax * call s:SynSet() fun! s:SynSet() " clear syntax for :set syntax=OFF and any syntax name that doesn't exist syn clear if exists("b:current_syntax") unlet b:current_syntax endif let s = expand("<amatch>") if s == "ON" " :set syntax=ON if &filetype == "" echohl ErrorMsg echo "filetype unknown" echohl None endif let s = &filetype elseif s == "OFF" let s = "" endif if s != "" " Load the syntax file(s). When there are several, separated by dots, " load each in sequence. for name in split(s, '\.') exe "runtime! syntax/" . name . ".vim syntax/" . name . "/*.vim" endfor endif endfun [...]
which looks like it will use the filetype and run the appropriate syntax file.
I'm running vim inside tmux and its not detecting my terminal properly:
:set t_Co? t_Co=8
so I set it to 256 color like it should be
To me this looks like Ive covered everything, but I obviously havent, why isn't syntax highlighting happening here?