summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-02-23 15:17:27 +0100
committerBram Moolenaar <Bram@vim.org>2020-02-23 15:17:27 +0100
commit1aa76b8fd06c278fe36c39b0bbe7233c775d7423 (patch)
tree3203a054c0b914e6c4dda0bc2d0b274584995ee8
parent026270c01d8ae4425b2afe289d464451718cb9ab (diff)
downloadvim-git-1aa76b8fd06c278fe36c39b0bbe7233c775d7423.tar.gz
patch 8.2.0308: 'showbreak' does not work for a very long linev8.2.0308
Problem: 'showbreak' does not work for a very long line. (John Little) Solution: Check whether 'briopt' contains "sbr". (Ken Takata, closes #5523, closes #5684)
-rw-r--r--src/drawline.c2
-rw-r--r--src/testdir/test_breakindent.vim10
-rw-r--r--src/version.c2
3 files changed, 13 insertions, 1 deletions
diff --git a/src/drawline.c b/src/drawline.c
index 176aa6959..b5814114b 100644
--- a/src/drawline.c
+++ b/src/drawline.c
@@ -1176,7 +1176,7 @@ win_line(
c_final = NUL;
n_extra = get_breakindent_win(wp,
ml_get_buf(wp->w_buffer, lnum, FALSE));
- if (wp->w_skipcol > 0 && wp->w_p_wrap)
+ if (wp->w_skipcol > 0 && wp->w_p_wrap && wp->w_p_brisbr)
need_showbreak = FALSE;
// Correct end of highlighted area for 'breakindent',
// required when 'linebreak' is also set.
diff --git a/src/testdir/test_breakindent.vim b/src/testdir/test_breakindent.vim
index 6e4e090f7..ad4ae1dc2 100644
--- a/src/testdir/test_breakindent.vim
+++ b/src/testdir/test_breakindent.vim
@@ -682,5 +682,15 @@ func Test_breakindent19_sbr_nextpage()
\ "> aaaaaaaaaaaaaaaaaa",
\ ]
call s:compare_lines(expect, lines)
+
+ setl breakindent briopt=min:18 sbr=>
+ norm! 5gj
+ let lines = s:screen_lines(1, 20)
+ let expect = [
+ \ ">aaaaaaaaaaaaaaaaaaa",
+ \ ">aaaaaaaaaaaaaaaaaaa",
+ \ ">aaaaaaaaaaaaaaaaaaa",
+ \ ]
+ call s:compare_lines(expect, lines)
call s:close_windows('set breakindent& briopt& sbr&')
endfunc
diff --git a/src/version.c b/src/version.c
index 373eb163c..db0034433 100644
--- a/src/version.c
+++ b/src/version.c
@@ -739,6 +739,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 308,
+/**/
307,
/**/
306,