summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2023-02-19 20:49:38 +0000
committerBram Moolenaar <Bram@vim.org>2023-02-19 20:49:38 +0000
commit5b9f57262fdadf460e6355abf1eee95b4f96abe8 (patch)
treebab7c61f11518850386230bc0e57ac8aae3ffed3
parentea62cee85e9e77ec86edd9843926dadb69978753 (diff)
patch 9.0.1328: error when using "none" for GUI color is confusingv9.0.1328
Problem: Error when using "none" for GUI color is confusing. Solution: Mention that the name should perhaps be "NONE". (closes #1400)
-rw-r--r--src/errors.h2
-rw-r--r--src/gui.c10
-rw-r--r--src/testdir/test_highlight.vim4
-rw-r--r--src/version.c2
4 files changed, 16 insertions, 2 deletions
diff --git a/src/errors.h b/src/errors.h
index 0bfafac1f1..a5df8edcd7 100644
--- a/src/errors.h
+++ b/src/errors.h
@@ -3447,3 +3447,5 @@ EXTERN char e_cannot_define_new_function_in_abstract_class[]
EXTERN char e_using_null_object[]
INIT(= N_("E1360: Using a null object"));
#endif
+EXTERN char e_cannot_use_color_none_did_you_mean_none[]
+ INIT(= N_("E1361: Cannot use color \"none\", did you mean \"NONE\"?"));
diff --git a/src/gui.c b/src/gui.c
index b8910054b0..0e005478a9 100644
--- a/src/gui.c
+++ b/src/gui.c
@@ -4634,12 +4634,18 @@ gui_get_color(char_u *name)
return INVALCOLOR;
t = gui_mch_get_color(name);
+ int is_none = STRCMP(name, "none") == 0;
if (t == INVALCOLOR
#if defined(FEAT_GUI_X11) || defined(FEAT_GUI_GTK)
- && gui.in_use
+ && (gui.in_use || is_none)
#endif
)
- semsg(_(e_cannot_allocate_color_str), name);
+ {
+ if (is_none)
+ emsg(_(e_cannot_use_color_none_did_you_mean_none));
+ else
+ semsg(_(e_cannot_allocate_color_str), name);
+ }
return t;
}
diff --git a/src/testdir/test_highlight.vim b/src/testdir/test_highlight.vim
index 26426e05cb..feccf84b6c 100644
--- a/src/testdir/test_highlight.vim
+++ b/src/testdir/test_highlight.vim
@@ -46,6 +46,10 @@ func Test_highlight()
call assert_equal("Group3 xxx cleared",
\ split(execute("hi Group3"), "\n")[0])
call assert_fails("hi Crash term='asdf", "E475:")
+
+ if has('gui_running')
+ call assert_fails('hi NotUsed guibg=none', 'E1361:')
+ endif
endfunc
func HighlightArgs(name)
diff --git a/src/version.c b/src/version.c
index f8b75d74d8..41726ea3e4 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1328,
+/**/
1327,
/**/
1326,