-
Notifications
You must be signed in to change notification settings - Fork 343
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FZF list buggy sometimes #379
Comments
This happens to me as well, I'm not exactly sure why it happens but I think it's because of unicode (mainly emoji) characters. Since this is a bug with fzf it might be worth sending a bug report to them. |
Yeah I can do that. But before that I want to check the data upon which fzf acts. There are 2 important points why I think the data being sent should be checked before filing it to fzf.
All of this got me thinking that something in the data fed to fzf has the underlying problem that makes fzf go ham. I did not go through the script thoroughly but I think I did see multiple User Agent being fed for curl argument. Could there be a variance in results when different user agent is used. I mean, I could be wrong that, it might youtube once in a while gets its screw loose but this seems something that we can investigate first, before filing it to fzf. Also, I have no clue why the video got corrupted. I'll try capturing the output again and reupload it. |
Which terminal emulators are you guys using? I face similar issues with hindi text on st, but when using it with other terminals like kitty the problem doesn't occur. I have heard a lot of issues with st rendering hindi fonts in general |
I have had the problem in kitty and alacritty |
I have used st in the video but I had problems with alacritty as well. I am not sure about hindi text but I had problems with english text itself. |
I'm having this issue as well. Here's a short video of the problem, as well as a screenshot from youtube of the title causing the issue: ytfzf_unicode_bug-2022-08-02_21.57.17.mp4I'm using alacritty as my terminal emulator and the ytfzf-git package on archlinux version r1606.ae1cbfd-1 Let me know if you'd like me to test anything, and thank you for all your work on this project! |
It looks like this is because of alacritty/alacritty#3975 which actually affects several terminal emulators not just alacritty. It seems to cause an issue where two characters are rendered on screen for both the emoji and the modifier (color or tone in this case) but only take up one column. So the number of columns doesn't match what is displayed. |
Nice job on finding an exact issue to point to. In my testing, kitty is the only terminal that this bug doesn't happen with, and someone in that bug report mentions that kitty handles utf-8 character widths differently. |
Kitty has a slightly different but "better" (I guess) graphical issue. Instead of displaying 1 too many columns, or messing up the newline at the end, it displays 1 too few. At least with this particular set of titles and emoji. It doesn't mess up scrolling or searching though so that's nice. I suppose one could work around it if fzf, or ytfzf implemented an option or flag to strip emojis. It wouldn't completely solve the problem as this original issue is about non-emoji chars, but I suppose it might help a little. I might give this a try later on, there are a few options but matching and stripping emojis in general seems to be a bit of a moving target. |
This gave me an idea, what if i tried reducing the maximum width of fzf, so that it doesn't overflow because the terminal is too small. I dug around the fzf manpage and found According to the manpage |
@Euro20179 thanks! That works great and doesn't require code changes. Seems like other than a workaround the best we can hope for is better emoji modifier handling in general for terminal emulators. |
ISSUE: When using ytfzf with fzf, sometimes the fzf menu is buggy. The list rewrites as you scroll down and up leading to fzf's first line keep shifting down. I am not sure what the cause is. I have attached a screencapture for reference.
ytfzf_bug.mp4
The text was updated successfully, but these errors were encountered: