Mercurial > vim
changeset 6371:93560d4bca68 v7.4.517
updated for version 7.4.517
Problem: With a wrapping line the cursor may not end up in the right place.
(Nazri Ramliy)
Solution: Adjust n_extra for a Tab that wraps. (Christian Brabandt)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Wed, 19 Nov 2014 13:21:57 +0100 |
parents | 10a119b05204 |
children | c8d2cc5aa63a |
files | src/screen.c src/version.c |
diffstat | 2 files changed, 6 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/screen.c +++ b/src/screen.c @@ -4456,6 +4456,10 @@ win_line(wp, lnum, startrow, endrow, noc /* TODO: is passing p for start of the line OK? */ n_extra = win_lbr_chartabsize(wp, line, p, (colnr_T)vcol, NULL) - 1; + if (c == TAB && n_extra + col > W_WIDTH(wp)) + n_extra = (int)wp->w_buffer->b_p_ts + - vcol % (int)wp->w_buffer->b_p_ts - 1; + c_extra = ' '; if (vim_iswhite(c)) {