Patch 9.0.0649
Problem: No indication when the first line is broken for 'smoothscroll'.
Solution: Show "<<<" in the first line.
Files: src/drawline.c, src/testdir/dumps/Test_smoothscroll_2.dump,
src/testdir/dumps/Test_smoothscroll_3.dump,
src/testdir/dumps/Test_smoothscroll_5.dump,
src/testdir/dumps/Test_smoothscroll_6.dump
*** ../vim-9.0.0648/src/drawline.c 2022-10-02 22:10:22.247640544 +0100
--- src/drawline.c 2022-10-03 16:29:01.825470366 +0100
***************
*** 740,745 ****
--- 740,771 ----
#endif
/*
+ * Call screen_line() using values from "wlv".
+ * Also takes care of putting "<<<" on the first line for 'smoothscroll'.
+ */
+ static void
+ wlv_screen_line(win_T *wp, winlinevars_T *wlv, int negative_width)
+ {
+ if (wlv->row == 0 && wp->w_skipcol > 0)
+ {
+ int off = (int)(current_ScreenLine - ScreenLines);
+
+ for (int i = 0; i < 3; ++i)
+ {
+ ScreenLines[off] = '<';
+ if (enc_utf8)
+ ScreenLinesUC[off] = 0;
+ ScreenAttrs[off] = HL_ATTR(HLF_AT);
+ ++off;
+ }
+ }
+
+ screen_line(wp, wlv->screen_row, wp->w_wincol, wlv->col,
+ negative_width ? -wp->w_width : wp->w_width,
+ wlv->screen_line_flags);
+ }
+
+ /*
* Called when finished with the line: draw the screen line and handle any
* highlighting until the right of the window.
*/
***************
*** 820,827 ****
}
#endif
! screen_line(wp, wlv->screen_row, wp->w_wincol, wlv->col,
! wp->w_width, wlv->screen_line_flags);
++wlv->row;
++wlv->screen_row;
}
--- 846,852 ----
}
#endif
! wlv_screen_line(wp, wlv, FALSE);
++wlv->row;
++wlv->screen_row;
}
***************
*** 1730,1737 ****
#endif
)
{
! screen_line(wp, wlv.screen_row, wp->w_wincol, wlv.col, -wp->w_width,
! wlv.screen_line_flags);
// Pretend we have finished updating the window. Except when
// 'cursorcolumn' is set.
#ifdef FEAT_SYN_HL
--- 1755,1761 ----
#endif
)
{
! wlv_screen_line(wp, &wlv, TRUE);
// Pretend we have finished updating the window. Except when
// 'cursorcolumn' is set.
#ifdef FEAT_SYN_HL
***************
*** 3670,3682 ****
)
{
#ifdef FEAT_CONCEAL
! screen_line(wp, wlv.screen_row, wp->w_wincol,
! wlv.col - wlv.boguscols,
! wp->w_width, wlv.screen_line_flags);
wlv.boguscols = 0;
#else
! screen_line(wp, wlv.screen_row, wp->w_wincol, wlv.col,
! wp->w_width, wlv.screen_line_flags);
#endif
++wlv.row;
++wlv.screen_row;
--- 3694,3705 ----
)
{
#ifdef FEAT_CONCEAL
! wlv.col += wlv.boguscols;
! wlv_screen_line(wp, &wlv, FALSE);
! wlv.col -= wlv.boguscols;
wlv.boguscols = 0;
#else
! screen_line(wp, &wlv, FALSE);
#endif
++wlv.row;
++wlv.screen_row;
*** ../vim-9.0.0648/src/testdir/dumps/Test_smoothscroll_2.dump 2022-10-02
21:29:18.416089542 +0100
--- src/testdir/dumps/Test_smoothscroll_2.dump 2022-10-03 16:40:22.214736780
+0100
***************
*** 1,4 ****
! |w+0&#ffffff0|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d|
|w|o|r|d| |w|o|r|d|
|w|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d| @20
|l|i|n|e| |t|h|r|e@1| @29
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g|
|w|o|r|d|
--- 1,4 ----
! |<+0#4040ff13#ffffff0@2|d+0#0000000&| |w|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d|
|w|o|r|d| |w|o|r|d| |w|o|r|d|
|w|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d| @20
|l|i|n|e| |t|h|r|e@1| @29
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g|
|w|o|r|d|
*** ../vim-9.0.0648/src/testdir/dumps/Test_smoothscroll_3.dump 2022-10-02
21:29:18.416089542 +0100
--- src/testdir/dumps/Test_smoothscroll_3.dump 2022-10-03 16:40:18.306751067
+0100
***************
*** 1,4 ****
! |w+0&#ffffff0|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d| @20
|l|i|n|e| |t|h|r|e@1| @29
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g|
|w|o|r|d|
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| @10
--- 1,4 ----
! |<+0#4040ff13#ffffff0@2|d+0#0000000&| |w|o|r|d| |w|o|r|d| |w|o|r|d| @20
|l|i|n|e| |t|h|r|e@1| @29
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g|
|w|o|r|d|
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| @10
*** ../vim-9.0.0648/src/testdir/dumps/Test_smoothscroll_5.dump 2022-10-02
21:29:18.416089542 +0100
--- src/testdir/dumps/Test_smoothscroll_5.dump 2022-10-03 16:40:19.574746425
+0100
***************
*** 1,4 ****
! |w+0&#ffffff0|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d| @20
|l|i|n|e| |t|h|r|e@1| @29
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g|
|w|o|r|d|
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| @10
--- 1,4 ----
! |<+0#4040ff13#ffffff0@2|d+0#0000000&| |w|o|r|d| |w|o|r|d| |w|o|r|d| @20
|l|i|n|e| |t|h|r|e@1| @29
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g|
|w|o|r|d|
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| @10
*** ../vim-9.0.0648/src/testdir/dumps/Test_smoothscroll_6.dump 2022-10-02
21:29:18.416089542 +0100
--- src/testdir/dumps/Test_smoothscroll_6.dump 2022-10-03 16:40:20.726742215
+0100
***************
*** 1,4 ****
! |w+0&#ffffff0|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d|
|w|o|r|d| |w|o|r|d|
|w|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d| @20
|l|i|n|e| |t|h|r|e@1| @29
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g|
|w|o|r|d|
--- 1,4 ----
! |<+0#4040ff13#ffffff0@2|d+0#0000000&| |w|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d|
|w|o|r|d| |w|o|r|d| |w|o|r|d|
|w|o|r|d| |w|o|r|d| |w|o|r|d| |w|o|r|d| @20
|l|i|n|e| |t|h|r|e@1| @29
|l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g| |w|o|r|d| |l|o|n|g|
|w|o|r|d|
*** ../vim-9.0.0648/src/version.c 2022-10-03 16:05:25.021469286 +0100
--- src/version.c 2022-10-03 16:36:22.291678076 +0100
***************
*** 701,702 ****
--- 701,704 ----
{ /* Add new patch number below this line */
+ /**/
+ 649,
/**/
--
hundred-and-one symptoms of being an internet addict:
261. You find diskettes in your pockets when doing laundry.
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// \\\
\\\ sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/vim_dev/20221003154442.0C6D01C09A3%40moolenaar.net.