diff options
-rw-r--r-- | runtime/syntax/syncolor.vim | 2 | ||||
-rw-r--r-- | runtime/syntax/synload.vim | 6 | ||||
-rw-r--r-- | src/nvim/main.c | 12 |
3 files changed, 14 insertions, 6 deletions
diff --git a/runtime/syntax/syncolor.vim b/runtime/syntax/syncolor.vim index 5b907a3b83..27cc3360c4 100644 --- a/runtime/syntax/syncolor.vim +++ b/runtime/syntax/syncolor.vim @@ -25,6 +25,8 @@ else endif endif +let did_syncolor = 1 + " Many terminals can only use six different colors (plus black and white). " Therefore the number of colors used is kept low. It doesn't look nice with " too many colors anyway. diff --git a/runtime/syntax/synload.vim b/runtime/syntax/synload.vim index 3863a84c1a..aee9ba8b8e 100644 --- a/runtime/syntax/synload.vim +++ b/runtime/syntax/synload.vim @@ -14,10 +14,8 @@ endif " let others know that syntax has been switched on let syntax_on = 1 -" Set the default highlighting colors. Use a color scheme if specified. -if exists("colors_name") - exe "colors " . colors_name -else +" Set the default highlighting colors +if !exists("colors_name") && !exists("did_syncolor") runtime! syntax/syncolor.vim endif diff --git a/src/nvim/main.c b/src/nvim/main.c index 16700d20ab..621b93f9cc 100644 --- a/src/nvim/main.c +++ b/src/nvim/main.c @@ -367,11 +367,19 @@ int main(int argc, char **argv) // Execute --cmd arguments. exe_pre_commands(¶ms); + // If using the runtime (-u is not NONE), enable syntax & filetype plugins. + bool enable_syntax = + (params.use_vimrc == NULL || !strequal(params.use_vimrc, "NONE")); + + // Source syncolor.vim to set up default UI highlights + if (enable_syntax) { + source_runtime((char_u *)"syntax/syncolor.vim", DIP_ALL); + } + // Source startup scripts. source_startup_scripts(¶ms); - // If using the runtime (-u is not NONE), enable syntax & filetype plugins. - if (params.use_vimrc == NULL || !strequal(params.use_vimrc, "NONE")) { + if (enable_syntax) { // Does ":filetype plugin indent on". filetype_maybe_enable(); // Sources syntax/syntax.vim, which calls `:filetype on`. |