feat(extmark): window scoped extmark

Co-authored-by: zeertzjq <zeertzjq@outlook.com>
This commit is contained in:
altermo
2024-02-06 11:52:42 +01:00
parent 6d8bbfe19d
commit 1c032ad703
15 changed files with 520 additions and 21 deletions

View File

@@ -4989,6 +4989,9 @@ win_T *win_alloc(win_T *after, bool hidden)
new_wp->w_ns_hl = -1;
Set(uint32_t) ns_set = SET_INIT;
new_wp->w_ns_set = ns_set;
// use global option for global-local options
new_wp->w_allbuf_opt.wo_so = new_wp->w_p_so = -1;
new_wp->w_allbuf_opt.wo_siso = new_wp->w_p_siso = -1;
@@ -5027,6 +5030,8 @@ void win_free(win_T *wp, tabpage_T *tp)
// Don't execute autocommands while the window is halfway being deleted.
block_autocmds();
set_destroy(uint32_t, &wp->w_ns_set);
clear_winopt(&wp->w_onebuf_opt);
clear_winopt(&wp->w_allbuf_opt);