:set guicursor=a:blinkwait100-blinkon300-blinkoff300 :autocmd CursorHold * echo '' :set updatetime=1000
press any key like "pgup" or "pgdn" after setting you will see the blinking stops, then resumes - right after it resumes the hiccup happens; exactly 1s (updatetime=1000) later.
The underlying problem seems that gui.c /^gui_wait_for_chars( stops and restarts blinking whenever the input loop returns, assuming that means actual user input occurred.
CursorHold is thus cause of the hiccup as it wakes the input loop. So the existing guards were not proper, the blink timer was still cancelled and restarted even though the user remained idle.
I looked briefly into if there was accidental "workarounds" in other gui's, these are my findings:
GTK4: Issue exists - verified.
Win32: uses native win32 API (SetTimer(), KillTimer()) , most likely unaffected
Motif/X11,Photon/Haiku: seems identical in function. Not verified.
Mailing-list: https://groups.google.com/g/vim_dev/c/lmGzT9gftvs/m/kzeEG77fDgAJ
Leaving so someone else can test potentially X11, Haiku, X11
https://github.com/vim/vim/pull/21115
(1 file)
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
@habamax can you test win32 gvim if the cursor hiccup also happend exactly 1000ms after a key or on initial start of gvim.
This makes it simple:
:set guicursor=a:blinkwait100-blinkon300-blinkoff300
:autocmd CursorHold * echo ''
:set updatetime=1000
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
@habamax can you test win32 gvim if the cursor hiccup also happens exactly 1000ms after a key or on initial start of gvim.
:set guicursor=a:blinkwait100-blinkon300-blinkoff300 :autocmd CursorHold * echo '' :set updatetime=1000
I'll have a look tomorrow.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
@habamax can you test win32 gvim if the cursor hiccup also happens exactly 1000ms after a key or on initial start of gvim.
:set guicursor=a:blinkwait100-blinkon300-blinkoff300
:autocmd CursorHold * echo ''
:set updatetime=1000
I'll have a look tomorrow.
Thanks a lot dude, I'm building the other GUIs to test, only problem is win32!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
I can't find the build artifact for the windows in this PR
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
@habamax https://github.com/dezza/vim/actions/runs/33135477112 verifying the issue on master was fine but now I managed to build the artifacts it seems!
Thanks a lot!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
@habamax https://github.com/dezza/vim/actions/runs/33135477112 verifying the issue on master was fine but now I managed to build the artifacts it seems!
Thanks a lot!
There is no gvim though, I can only find vim.exe in the zip archives.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
can vim.exe -g for gui work? Or is win32 unique like that.. I will have to figure it out, the artifacts workflow was uncommented and not functional- I think chris does the release manually let me look into it.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
can
vim.exe -gfor gui work? Or is win32 unique like that.. I will have to figure it out, the artifacts workflow was uncommented and not functional- I think chris does the release manually let me look into it.
let me try another download
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
The largest vim-mingw 4.32MB has one.
https://github.com/dezza/vim/actions/runs/33135477112/artifacts/9672206353
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
doesn't work for me, can't find libgcc....dll
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
Probably the mingw runtime.
But hey! If you can just confirm whether the hiccup happens exactly 1000ms after a keypress with snippet above thats fine for me!
If not affected; It stays stable after releasing key and no blip/hiccup.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
found it in normal x86 build.
I can't see too much of the difference though.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
If it blinks consistently without any "blip", "restart" cycle then safe to assume not affected like motif.
Thanks!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
If not affected; It stays stable after releasing key and no blip/hiccup.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
I'm marking this ready, because I am positive this has no measurable side-effects to other gui's.
I will add another comment explaining it, I simply believe the gtk3,4 frameclock redraw is so precise that it reveals the reset cycle;
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
you probably need to rebase and remove non related changes (CI)
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
yes you're right! Thanks @habamax
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
Thanks for fixing this. I imagine it wasn't easy to track this down.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()
@chrisbra definetily not straight-forward! As I know this brings assumptions and tests a bit on production given indie-nature of Haiku/QNX rest assured I will take responsibility, if anything happens.
However, I think the guard adds only consistency across all GUIs, I hope you agree if it passes..
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()