commit d3ea9a04bc737d4b52cd7abf69b75c5563b39741
parent 339011f59c25937567f1e88d663c22dade5e217a
Author: Luuk van Baal <luukvbaal@gmail.com>
Date: Sun, 9 Apr 2023 00:41:50 +0200
fix(api): update "w_scwidth" in nvim_eval_statusline()
Problem: `w_scwidth` may be outdated in `nvim_eval_status()`, causing
`build_stl_str_hl()` to return an empty `%s` sign segment.
Solution: Update `w_scwidth` for `'statuscolumn'` evaluation.
Diffstat:
1 file changed, 1 insertion(+), 0 deletions(-)
diff --git a/src/nvim/api/vim.c b/src/nvim/api/vim.c
@@ -2173,6 +2173,7 @@ Dictionary nvim_eval_statusline(String str, Dict(eval_statusline) *opts, Error *
linenr_T lnum = statuscol_lnum;
int num_signs = buf_get_signattrs(wp->w_buffer, lnum, sattrs, &num, &line, &cul);
decor_redraw_signs(wp->w_buffer, lnum - 1, &num_signs, sattrs, &num, &line, &cul);
+ wp->w_scwidth = win_signcol_count(wp);
statuscol.sattrs = sattrs;
statuscol.foldinfo = fold_info(wp, lnum);