mirror of
https://github.com/vim/vim.git
synced 2025-09-25 03:54:15 -04:00
patch 9.1.0004: reloading colorscheme when not changing 'background'
Problem: reloading colorscheme when not changing 'background' Solution: Check, if the background option value actually changed, if not, return early. Only reload colorscheme when bg is changed Currently the highlight groups are re-initialized and the colorscheme (if any) is reloaded anytime 'background' is set, even if it is not changed. This is unnecessary, because if the value was not changed then there is no need to change highlight groups or do anything with the colorscheme. Instead, only reload the colorscheme if the value of 'background' was actually changed. closes: #13700 Signed-off-by: Gregory Anders <greg@gpanders.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
443657b32b
commit
83ad2726ff
@@ -1050,11 +1050,15 @@ expand_set_ambiwidth(optexpand_T *args, int *numMatches, char_u ***matches)
|
||||
* The 'background' option is changed.
|
||||
*/
|
||||
char *
|
||||
did_set_background(optset_T *args UNUSED)
|
||||
did_set_background(optset_T *args)
|
||||
{
|
||||
if (check_opt_strings(p_bg, p_bg_values, FALSE) == FAIL)
|
||||
return e_invalid_argument;
|
||||
|
||||
if (args->os_oldval.string != NULL && args->os_oldval.string[0] == *p_bg)
|
||||
// Value was not changed
|
||||
return NULL;
|
||||
|
||||
#ifdef FEAT_EVAL
|
||||
int dark = (*p_bg == 'd');
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user