aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--runtime/syntax/syncolor.vim2
-rw-r--r--runtime/syntax/synload.vim6
-rw-r--r--src/nvim/main.c12
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(&params);
+ // 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(&params);
- // 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`.