-
fwatch.nvim
fwatch.nvim lets you watch files or directories for changes and then run vim commands or lua functions.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
nvim-lsp-ts-utils
Discontinued Utilities to improve the TypeScript development experience for Neovim's built-in LSP client.
I wanted to add a feature to a plugin to watch a directory for changes and automatically trigger an LSP request to update imports whenever a file was moved. I knew VS Code and coc.nvim were able to do this with Watchman, but they have the luxury of communicating via its Node API, and its CLI ergonomics are painful (I probably would have had to use an intermediate temp file, and it would have been a mess).
The author of fwatch.nvim showed me how easy it was to use libuv to watch files and directories, and after a few days I've been able to implement the feature. It still needs more work and real-world testing, but the fact that a novice like me was able to get this working inside Neovim (and in a couple of hundred lines of code) is astounding.
I'm sure I'm late to the party, but if anyone's curious, I found this article super helpful in learning how to implement actual non-hello world functionality, and the luv documentation has practically been my homepage for the past few days.
It's still a little rough, but here is the relevant code in the develop branch of the plugin. Hoping to test it out at work for another week or so before merging it into main as an experimental feature, but I'm happy to hear any feedback!