I have an autocommand in my vimrc that checks if all plugins are installed, which uses the following code to list the plugins directory:
for subdir in glob(fnameescape(plugins_dir) . '/{,.}*/', 1, 1)
I use the glob() function with this pattern to remain compatible with older versions of Vim that might not have readdir(). However, I noticed after recent updates that when opening Vim from the terminal (Kitty), it would draw a blank screen and wait for a key to be pressed, and draw the UI only after that. This behavior can be reproduced with just this command in the vimrc:
autocmd VimEnter * eval glob('/{,.}*/')
I also noticed that while waiting for any input, Vim also leaves a child zombie bash process, so this bug probably has to do with the fact that the editor has to spawn the shell to expand the braces in the pattern.
The editor opens as normal and doesn't get stuck waiting for input.
9.2.0106, but bisected the bug to 9.1.2092
Operating system: NixOS
Terminal: xterm-kitty
Shell: Zsh
N/A
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
try setting set t_RF= t_RB= to disable requesting the colors
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
Sure enough, that fixes the symptom of the bug, I just think this problem is indicative of a mistake hidden deeper in the code of f_glob() or something like that.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
Well, it might be, that your glob just receives the terminal response codes which causes this issue, that might be highly timing dependent however
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()