patch 8.2.2903: cursor position wrong on wrapped line with 'signcolumn'
Problem: Cursor position wrong on wrapped line with 'signcolumn'.
Solution: Don't add space for showbreak twice. (Christian Brabandt,
closes #8262)
diff --git a/src/drawline.c b/src/drawline.c
index 13be022..7b6777e 100644
--- a/src/drawline.c
+++ b/src/drawline.c
@@ -1981,6 +1981,12 @@
// TODO: is passing p for start of the line OK?
n_extra = win_lbr_chartabsize(wp, line, p, (colnr_T)vcol,
NULL) - 1;
+
+ // We have just drawn the showbreak value, no need to add
+ // space for it again
+ if (vcol == vcol_sbr)
+ n_extra -= MB_CHARLEN(get_showbreak_value(wp));
+
if (c == TAB && n_extra + col > wp->w_width)
# ifdef FEAT_VARTABS
n_extra = tabstop_padding(vcol, wp->w_buffer->b_p_ts,