Mercurial > vim
diff src/highlight.c @ 22288:a9ff3e0d6d54 v8.2.1693
patch 8.2.1693: "hi def" does not work for cleared highlight
Commit: https://github.com/vim/vim/commit/05eb5b9cae123b138bbd23cc77e50657ece6b4ad
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Sep 16 15:43:21 2020 +0200
patch 8.2.1693: "hi def" does not work for cleared highlight
Problem: "hi def" does not work for cleared highlight.
Solution: Check the "sg_cleared" flag. (Maxim Kim, closes https://github.com/vim/vim/issues/6956,
closes #4405)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 16 Sep 2020 15:45:05 +0200 |
parents | b1fac55cf8a3 |
children | 19e0784ef769 |
line wrap: on
line diff
--- a/src/highlight.c +++ b/src/highlight.c @@ -729,7 +729,8 @@ do_highlight( if (!ends_excmd2(line, skipwhite(to_end))) { - semsg(_("E413: Too many arguments: \":highlight link %s\""), from_start); + semsg(_("E413: Too many arguments: \":highlight link %s\""), + from_start); return; } @@ -1629,7 +1630,8 @@ restore_cterm_colors(void) static int hl_has_settings(int idx, int check_link) { - return ( HL_TABLE()[idx].sg_term_attr != 0 + return HL_TABLE()[idx].sg_cleared == 0 + && ( HL_TABLE()[idx].sg_term_attr != 0 || HL_TABLE()[idx].sg_cterm_attr != 0 || HL_TABLE()[idx].sg_cterm_fg != 0 || HL_TABLE()[idx].sg_cterm_bg != 0