Skip to content

Conversation

@aidancz
Copy link
Contributor

@aidancz aidancz commented Jan 26, 2025

use screen line instead of logical line to calculate offset

may fix #13 #14

@nullromo
Copy link
Owner

Thank you for the PR! This is close, but still doesn't quite behave properly. Create a file like this:

this
is
a
file
with
some
lines
in
it
and
a
really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really
long
line
in
the
middle

Then 13Gzz and you should see that only line 17 is visible afterwards.

@aidancz
Copy link
Contributor Author

aidancz commented Jan 28, 2025

it works fine for me:

20250128-122216-485171530.mp4

maybe the behavior you saw is related to smoothscroll

20250128-122648-470074110.mp4

if this is the case, maybe we should put:

local cache_smoothscroll = vim.o.smoothscroll
vim.o.smoothscroll = true

at function start

and put:

vim.o.smoothscroll = cache_smoothscroll

at function end

@nullromo
Copy link
Owner

I do not use smoothscroll.

Here is how it looks for me on the current main branch:

Screen.Recording.2025-01-28.140921.mp4

And here is how it look with the changes in this PR:

Screen.Recording.2025-01-28.141750.online-video-cutter.com.mp4

HOWEVER, notice that after I zoom in, the problem goes away. So I'm not 100% sure how to trigger this, but somehow through resizing my terminal window, splitting inside vim, zooming in and out, etc. I am able to consistently (but not repeatably) encounter this behavior where it snaps line 17 to the top.

Apologies, I don't know how to record with the keystrokes. Any tips on this would be appreciated.

Furthermore, it your cursor is in the middle of line 12, centering will move the cursor to line 11, which is not desirable. This behavior exists in both versions, so maybe it can be a separate bug.

@aidancz
Copy link
Contributor Author

aidancz commented Jan 29, 2025

I didn't express myself clearly. What I meant is that you need to set smoothscroll with this PR to get the correct behavior.

The software displaying my key presses is Screenkey.

Furthermore, it your cursor is in the middle of line 12, centering will move the cursor to line 11, which is not desirable. This behavior exists in both versions, so maybe it can be a separate bug.

As for the this issue, it seems to be caused by <Ctrl-Y> changing the cursor position.
Yes, it should be a separate bug.

@nullromo nullromo mentioned this pull request Jan 29, 2025
@nullromo
Copy link
Owner

Ah, I see now. Yes, you are right. I was able to replicate the weird buggy behavior, then toggle smoothscroll on and off and it always worked correctly with smoothscroll on and incorrectly with smoothscroll off.

I will add a smoothscroll setting in another commit (see #17) and accept this PR. I also created a separate issue for the line changing thing (#18).

@nullromo nullromo merged commit 020e96f into nullromo:main Jan 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add support for fold

2 participants