mirror of
https://github.com/neovim/neovim.git
synced 2025-09-30 15:08:35 +00:00
vim-patch:7.4.594 #2654
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) https://github.com/vim/vim/commit/v7-4-594 See https://groups.google.com/d/msg/vim_dev/B8k0AVlqMUU/qKXeY8srpGcJ
This commit is contained in:

committed by
Michael Reed

parent
9b87955b34
commit
f525284778
@@ -4149,9 +4149,7 @@ static void block_prep(oparg_T *oap, struct block_def *bdp, linenr_T lnum, int i
|
||||
while (bdp->end_vcol <= oap->end_vcol && *pend != NUL) {
|
||||
/* Count a tab for what it's worth (if list mode not on) */
|
||||
prev_pend = pend;
|
||||
// TODO: is passing prev_pend for start of the line OK?
|
||||
// prehaps it should be "line"
|
||||
incr = lbr_chartabsize_adv(prev_pend, &pend, (colnr_T)bdp->end_vcol);
|
||||
incr = lbr_chartabsize_adv(line, &pend, (colnr_T)bdp->end_vcol);
|
||||
bdp->end_vcol += incr;
|
||||
}
|
||||
if (bdp->end_vcol <= oap->end_vcol
|
||||
|
@@ -100,6 +100,23 @@ fygjyl:let line2 = @0
|
||||
:$put =line1
|
||||
:$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
|
||||
:qa!
|
||||
ENDTEST
|
||||
|
@@ -62,3 +62,13 @@ strdisplaywidth: 46 == calculated: 64
|
||||
Test 13: breakindent with wrapping Tab
|
||||
d
|
||||
w
|
||||
|
||||
Test 14: breakindent + visual blockwise delete #1
|
||||
e
|
||||
~
|
||||
~
|
||||
|
||||
Test 15: breakindent + visual blockwise delete #2
|
||||
1234567890
|
||||
~
|
||||
~
|
||||
|
@@ -189,7 +189,7 @@ static int included_patches[] = {
|
||||
//597,
|
||||
//596 NA
|
||||
595,
|
||||
//594,
|
||||
594,
|
||||
//593,
|
||||
//592 NA
|
||||
//591 NA
|
||||
|
Reference in New Issue
Block a user