I disabled cursor blinking for the purpose of screenshots (set guicursor+=a:blinkon0), but the behaviours are the same with or without this line.
set guiligatures=!\"#$%&()*+-./:<=>?@[]^_{\|~)set guifont=JetBrainsMono\ 12)I expected only the ligature to be shown.
9.0.1736
OS: Arch Linux
Typeface/font: JetBrains Mono
gVim: 9.0.1736
Colour theme: PaperColor
No response
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
Can anyone replicate this? Or fail to replicate? That would also be helpful.
Just want to add that my desktop environment is KDE. This bug continues to exist on my machine with gVim 9.0.2143.
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
I think I'm seeing something similar.
OS: Windows 10
Typeface/font: Iosevka
gVim: 9.1.0
Color theme: gruvbox
The ligature starts in a broken state, but eventually fixes itself (mostly) after a while. But whenever you bring the cursor on-top of a ligature again, it looks broken again. By pressing Ctrl-L (which IIRC redraws the screen) the problem is completely "fixed" until you start moving the cursor again or write more ligatures.
I have not specified any set guiligatures in my .vimrc, but AFAIK from a related issue reported here, that does not seem to do anything since ligatures will always be used, as long as you use a font with ligatures (see #13435 for more info). The only special thing I have in my .vimrc re: to ligatures is set rop=type:directx which was needed to get ligatures to show up at all in gvim.
Here's a short GIF to show what's happening here (every time the ligatures look correct, it's due to me manually pressing Ctrl-L):
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
Hmm, I think I see the problem. gui_undraw_cursor in gui.c is only expanding the cursor in GTK. This is also why guiligatures doesn't actually do anything in Windows gvim. When you hover over the ligature it only redraws the cursor at the position and one character before it. In reality, it needs to redraw the whole ligature (i.e. search for those guiligature characters before and after). So fix looks quite easy, just need to make gui_adjust_undraw_cursor_for_ligatures work for Win32. But yeah, I think my problem is different from the one detailed in the original ticket.
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
I'm seeing this issue in 8.2.2121 under GTK (refer to the xref above), so it doesn't seem to be just a Windows thing.
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()