diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-01-15 07:47:13 +0800 |
---|---|---|
committer | zeertzjq <zeertzjq@outlook.com> | 2022-01-15 07:47:13 +0800 |
commit | 147f65373ecb5a5582d4cc0eb41ebc9a303181cc (patch) | |
tree | e1060a64552437c28d51ebcd7c806525441b8edc /src/nvim/buffer.c | |
parent | 574a5822023939d534d922eaa345bb7e0633d2b8 (diff) | |
download | rneovim-147f65373ecb5a5582d4cc0eb41ebc9a303181cc.tar.gz rneovim-147f65373ecb5a5582d4cc0eb41ebc9a303181cc.tar.bz2 rneovim-147f65373ecb5a5582d4cc0eb41ebc9a303181cc.zip |
vim-patch:8.2.4091: virtcol is recomputed for statusline unnecessarily
Problem: Virtcol is recomputed for statusline unnecessarily.
Solution: Just use "w_virtcol". (closes vim/vim#9523)
https://github.com/vim/vim/commit/0f112052acaeffd75b7eb001eeb8a246ad12a276
Diffstat (limited to 'src/nvim/buffer.c')
-rw-r--r-- | src/nvim/buffer.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/src/nvim/buffer.c b/src/nvim/buffer.c index abd22fba26..4157651a7e 100644 --- a/src/nvim/buffer.c +++ b/src/nvim/buffer.c @@ -4001,14 +4001,7 @@ int build_stl_str_hl(win_T *wp, char_u *out, size_t outlen, char_u *fmt, int use case STL_VIRTCOL: case STL_VIRTCOL_ALT: { - // In list mode virtcol needs to be recomputed - colnr_T virtcol = wp->w_virtcol; - if (wp->w_p_list && wp->w_p_lcs_chars.tab1 == NUL) { - wp->w_p_list = false; - getvcol(wp, &wp->w_cursor, NULL, &virtcol, NULL); - wp->w_p_list = true; - } - virtcol++; + colnr_T virtcol = wp->w_virtcol + 1; // Don't display %V if it's the same as %c. if (opt == STL_VIRTCOL_ALT && (virtcol == (colnr_T)(!(State & INSERT) && empty_line |