mirror of
https://github.com/vim/vim.git
synced 2025-09-23 03:43:49 -04:00
updated for version 7.4.594
Problem: Using a block delete while 'breakindent' is set does not work properly. Solution: Use "line" instead of "prev_pend" as the first argument to lbr_chartabsize_adv(). (Hirohito Higashi)
This commit is contained in:
@@ -5308,10 +5308,7 @@ block_prep(oap, bdp, lnum, is_del)
|
|||||||
{
|
{
|
||||||
/* Count a tab for what it's worth (if list mode not on) */
|
/* Count a tab for what it's worth (if list mode not on) */
|
||||||
prev_pend = pend;
|
prev_pend = pend;
|
||||||
/* TODO: is passing prev_pend for start of the line OK?
|
incr = lbr_chartabsize_adv(line, &pend, (colnr_T)bdp->end_vcol);
|
||||||
* perhaps it should be "line". */
|
|
||||||
incr = lbr_chartabsize_adv(prev_pend, &pend,
|
|
||||||
(colnr_T)bdp->end_vcol);
|
|
||||||
bdp->end_vcol += incr;
|
bdp->end_vcol += incr;
|
||||||
}
|
}
|
||||||
if (bdp->end_vcol <= oap->end_vcol
|
if (bdp->end_vcol <= oap->end_vcol
|
||||||
|
@@ -99,6 +99,23 @@ fygjyl:let line2 = @0
|
|||||||
:$put =line1
|
:$put =line1
|
||||||
:$put =line2
|
:$put =line2
|
||||||
:"
|
:"
|
||||||
|
:let g:test="Test 14: breakindent + visual blockwise delete #1"
|
||||||
|
:set all& breakindent
|
||||||
|
:30vnew
|
||||||
|
:normal! 3a1234567890
|
||||||
|
:normal! a abcde
|
||||||
|
:exec "normal! 0\<C-V>tex"
|
||||||
|
:let line1=ScreenChar(line('.'),8)
|
||||||
|
:call DoRecordScreen()
|
||||||
|
:"
|
||||||
|
:let g:test="Test 15: breakindent + visual blockwise delete #2"
|
||||||
|
:%d
|
||||||
|
:normal! 4a1234567890
|
||||||
|
:exec "normal! >>\<C-V>3f0x"
|
||||||
|
:let line1=ScreenChar(line('.'),20)
|
||||||
|
:call DoRecordScreen()
|
||||||
|
:quit!
|
||||||
|
:"
|
||||||
:%w! test.out
|
:%w! test.out
|
||||||
:qa!
|
:qa!
|
||||||
ENDTEST
|
ENDTEST
|
||||||
|
@@ -62,3 +62,13 @@ strdisplaywidth: 46 == calculated: 64
|
|||||||
Test 13: breakindent with wrapping Tab
|
Test 13: breakindent with wrapping Tab
|
||||||
d
|
d
|
||||||
w
|
w
|
||||||
|
|
||||||
|
Test 14: breakindent + visual blockwise delete #1
|
||||||
|
e
|
||||||
|
~
|
||||||
|
~
|
||||||
|
|
||||||
|
Test 15: breakindent + visual blockwise delete #2
|
||||||
|
1234567890
|
||||||
|
~
|
||||||
|
~
|
||||||
|
@@ -741,6 +741,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
594,
|
||||||
/**/
|
/**/
|
||||||
593,
|
593,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user