mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
vim-patch:9.0.0649: no indication the first line is broken for 'smoothscroll'
Problem: No indication when the first line is broken for 'smoothscroll'.
Solution: Show "<<<" in the first line.
406b5d89e1
Co-authored-by: Bram Moolenaar <Bram@vim.org>
This commit is contained in:
parent
d6050e9bda
commit
a43b28a34c
@ -503,6 +503,7 @@ void grid_put_linebuf(ScreenGrid *grid, int row, int coloff, int endcol, int cle
|
||||
int col = 0;
|
||||
bool redraw_next; // redraw_this for next character
|
||||
bool clear_next = false;
|
||||
bool topline = row == 0;
|
||||
int char_cells; // 1: normal char
|
||||
// 2: occupies two display cells
|
||||
int start_dirty = -1, end_dirty = 0;
|
||||
@ -529,6 +530,14 @@ void grid_put_linebuf(ScreenGrid *grid, int row, int coloff, int endcol, int cle
|
||||
max_off_from = linebuf_size;
|
||||
max_off_to = grid->line_offset[row] + (size_t)grid->cols;
|
||||
|
||||
if (topline && wp->w_skipcol > 0) {
|
||||
// Take care of putting "<<<" on the first line for 'smoothscroll'.
|
||||
for (int i = 0; i < 3; i++) {
|
||||
schar_from_ascii(linebuf_char[i], '<');
|
||||
linebuf_attr[i] = HL_ATTR(HLF_AT);
|
||||
}
|
||||
}
|
||||
|
||||
if (rlflag) {
|
||||
// Clear rest first, because it's left of the text.
|
||||
if (clear_width > 0) {
|
||||
|
@ -49,7 +49,7 @@ describe('smoothscroll', function()
|
||||
|
|
||||
]]
|
||||
local s2 = [[
|
||||
word word word word word word word word |
|
||||
<<<d word word word word word word word |
|
||||
word word word word |
|
||||
line three |
|
||||
long word long word long word long word |
|
||||
@ -63,7 +63,7 @@ describe('smoothscroll', function()
|
||||
|
|
||||
]]
|
||||
local s3 = [[
|
||||
word word word word |
|
||||
<<<d word word word |
|
||||
line three |
|
||||
long word long word long word long word |
|
||||
long word long word long word |
|
||||
@ -91,7 +91,7 @@ describe('smoothscroll', function()
|
||||
|
|
||||
]]
|
||||
local s5 = [[
|
||||
word word word word |
|
||||
<<<d word word word |
|
||||
line three |
|
||||
long word long word long word long word |
|
||||
long word long word long word |
|
||||
@ -105,7 +105,7 @@ describe('smoothscroll', function()
|
||||
|
|
||||
]]
|
||||
local s6 = [[
|
||||
word word word word word word word word |
|
||||
<<<d word word word word word word word |
|
||||
word word word word |
|
||||
line three |
|
||||
long word long word long word long word |
|
||||
|
Loading…
Reference in New Issue
Block a user