Problem: With 'smoothscroll' cursor may move below botline.
Solution: Call redraw_later() if needed, Compute cursor row with adjusted
condition. (Luuk van Baal, closesvim/vim#12415)
d49f646bf5
Problem: Display moves up and down with 'incsearch' and 'smoothscroll'.
Solution: Do not check if w_skipcol changed. (Luuk van Baal, closesvim/vim#12410,
closesvim/vim#12409)
0222c2d103
Problem: Display wrong when moving cursor to above the top line and
'smoothscroll' is set.
Solution: Call adjust_skipcol() in more places and make it work better.
(Luuk van Baal, closesvim/vim#12395)
798fa76dbf
Problem: Display errors when making topline shorter and 'smoothscroll' is
set.
Solution: Reset w_skipcol when the topline becomes shorter than its current
value. (Luuk van Baal, closesvim/vim#12367)
5d01f86d99
Problem: Line not fully displayed if it doesn't fit in the screen.
Solution: Do not reset s_skipcol if not needed. (Luuk van Baal,
closesvim/vim#12376)
6c018680be
Problem: Cursor moves to wrong line when 'foldmethod' is "diff". (Rick
Howe)
Solution: Adjust logic for scrolling. (Luuk van Baal, closesvim/vim#12364,
closesvim/vim#12218)
aa6ba308a1
Problem: 'smoothscroll' does not always work properly.
Solution: Do not reset w_skipcol after it was intentionally set. (Luuk van
Baal, closesvim/vim#12360, closesvim/vim#12199, closesvim/vim#12323)
3ce8c38915
Problem: Search stats not always visible when searching backwards.
Solution: Do not display the top/bot message on top of the search stats.
(Christian Brabandt, closesvim/vim#12322, closesvim/vim#12222)
34a6a3617b
Co-authored-by: Christian Brabandt <cb@256bit.org>
Problem: Text scrolls unnecessarily when splitting and 'splitkeep' is not
"cursor".
Solution: Avoid resetting w_skipcol. (Luuk van Baal, closesvim/vim#12334)
b926bf47d6
Problem: Inserting lines when scrolling with 'smoothscroll' set.
Solution: Adjust line height computation for w_skipcol. (Luuk van Baal,
closesvim/vim#12350)
c8502f9b88
Problem: Vim9: builtin function arguments not checked at compile time.
Solution: Add more type checks. (Yegappan Lakshmanan, closesvim/vim#8539)
5b73992d8f
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Problem: Concealed characters do not work correctly.
Solution: Subtract boguscols instead of adding them. (closesvim/vim#11273)
7500866182
Code change is N/A as Nvim has a draw_col variable instead.
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: No test for deleting the end of a long wrapped line.
Solution: Add a test to check the right text is displayed. (Luuk van Baal,
closesvim/vim#12318)
5b10a14098
Co-authored-by: Luuk van Baal <luukvbaal@gmail.com>
Problem: Divide by zero with 'smoothscroll' set and a narrow window.
Solution: Bail out when the window is too narrow.
870219c58c
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Cursor positioning and display problems with 'smoothscroll' and
using "zt", "zb" or "zz".
Solution: Adjust computations and conditions. (Yee Cheng Chin,
closesvim/vim#11764)
db4d88c2ad
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: With 'smoothscroll' skipcol may be reset unnecessarily.
Solution: Check the line does actually fit in the window.
b21b8e9ed0
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: With 'smoothscroll' cursor may end up in wrong position.
Solution: Correct the computation of screen lines. (Yee Cheng Chin,
closesvim/vim#11502)
361895d2a1
Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
Problem: Cursor moves too far with 'smoothscroll'.
Solution: Only move as far as really needed. (Yee Cheng Chin, closesvim/vim#11504)
81ba26e9de
Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
Problem: With 'smoothscroll' cursor is one screen line too far down. (Ernie
Rael)
Solution: Add a test that currently has the wrong result so that a fix can
be made. (issue vim/vim#11436)
75ac25b496
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: 'smoothscroll' cursor calculations wrong when 'number' is set.
Solution: Correct the code that computes the width. (closesvim/vim#11492)
01ee52bab6
Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
Problem: With 'smoothscroll' typing "0" may not go to the first column.
Solution: Recompute w_cline_height when needed. Do not scroll up when it
would move the cursor.
d5337efece
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: "precedes" from 'listchars' overwritten by <<< for 'smoothscroll'.
Solution: Keep the "precedes" character.
13cdde3952
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Line number not visisble with 'smoothscroll', 'nu' and 'rnu'.
Solution: Put the ">>>" after the line number instead of on top.
eb4de62931
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Cursor position invalid when scrolling with 'smoothscroll' set.
(Ernie Rael)
Solution: Add w_valid_skipcol and clear flags when it changes. Adjust
w_skipcol after moving the cursor.
2fbabd238a
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: With 'smoothscroll' and 'scrolloff' non-zero the cursor position
is not properly adjusted in a long line.
Solution: Move the cursor further up or down in the line.
118c235112
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: With 'smoothscroll' the cursor position s not adjusted in a long
line.
Solution: Move the cursor further up or down in the line.
8cf3459878
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: First line not scrolled properly with 'smoothscroll' and
'scrolloff' zero and using "k".
Solution: Make sure the cursor position is visible.
46b54747c5
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Cursor line only partly shows with 'smoothscroll' and 'scrolloff'
zero.
Solution: Do not use 'smoothscroll' when adjusting the bottom of the window.
(closesvim/vim#11269)
9bab7a0243
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Negative topline using CTRL-Y with 'smoothscroll' and 'diff'.
(Ernie Rael)
Solution: Only use 'smoothscroll' when 'wrap' is set.
1a58e1d97c
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: 'smoothscroll' not tested with 'number' and "n" in 'cpo'.
Solution: Add tests, fix uncovered problem.
b6aab8f44b
Co-authored-by: Bram Moolenaar <Bram@vim.org>
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>
Problem: with 'smoothscroll' set CTRL-E does not work properly when
'foldmethod' is set to "indent". (Yee Cheng Chin)
Solution: Merge the code for scroling with folds and 'smoothscroll'.
(closesvim/vim#11262)
6b2d4ff714
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: CTRL-Y does not stop at line 1. (John Marriott)
Solution: Stop at line 1 when 'smoothscroll' is not set. (closesvim/vim#11261)
8df9748edb
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Cannot scroll by screen line if a line wraps.
Solution: Add the 'smoothscroll' option. Only works for CTRL-E and CTRL-Y
so far.
f6196f4244
vim-patch:9.0.0641: missing part of the new option code
Problem: Missing part of the new option code.
Solution: Add missing WV_SMS.
bbbda8fd81
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Lines put in non-current window are not displayed. (Marius
Gedminas)
Solution: Don't increment the topline when inserting just above it.
(closesvim/vim#12212)
e7f05a8780
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Ruler not drawn correctly when using 'rulerformat'.
Solution: Adjust formatting depending on whether the ruler is drawn in the
statusline or the command line. (Sean Dewar, closesvim/vim#12246)
fc8a601c32
This issue was made apparent after neovim/neovim@0f1e2b6, as `showmode()` calls
`win_redr_ruler()` with `curwin` now if it's floating, rather than the last
window if there's no statusline (which usually already shares its right side
with that of the editor).
Co-authored-by: Sean Dewar <seandewar@users.noreply.github.com>
Problem: Vim9: exception in ISN_INSTR caught at wrong level.
Solution: Set the starting trylevel in exec_instructions(). (closesvim/vim#8214)
ff65288aa8
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Ending Insert mode when accessing a hidden prompt buffer.
Solution: Don't stop Insert mode when it was active before. (closesvim/vim#12237)
05a627c3d4
Co-authored-by: Bram Moolenaar <Bram@vim.org>