-
Notifications
You must be signed in to change notification settings - Fork 127
Description
I have been burned a bit by trying to do too much in the @neovim.plugin class's __init__ function. If I start a thread loop it locks up during a :UpdateRemotePlugins call. If I lock up the vim ui with a prompt during __init__ and events come in there are python errors because handlers haven't finished registering. It would be nice if there were some kind of ready event specific to the python-client to let me know when I could start things off. Right now I have changed our plugin to not attempt to do anything until the user runs one of our functions, but if I wanted to automatically start some kind of async process it's not clear to me when I should do that.
I would also recommend if such a thing as a ready event is created, that this event doesn't fire in the case of the :UpdateRemotePlugins function which I think seems to create instances of the plugins. I'm not sure it does actually, I see RegistrationCommands creates a host clone, and that might be creating instances of the plugin in cases I didn't expect it to.