the multi-window refactor changed the render loop in two ways, but they both push work into the path where we already know the compositor is behind. mainly Windows users were seeing a regression on nightly such as typing latency, slow animations. first, the schedule_render() stopped checking out on skipped_frame. that means we can still request another redraw even after deciding that the current frame was missed. That is backwards. A skipped frame is not a signal to queue more work, it is a signal to get out of the way and let the already scheduled render finish. second, ResumeTimeReached started calling prepare_and_animate(), even though about_to_wait() already does the exact same work. So the loop grew a second preparation fraction for no real gain. that is just extra churn and on throttled backends it makes missed-frame recovery noisier than it needs to be. here we now put the frame preparation back in one place, as before and avoids re-arming redraws for frames that we already know they are late. we also match the pre-refactor control flow that did not exhibit the Windows typing-latency regression. |
||
|---|---|---|
| .config | ||
| .github | ||
| assets | ||
| extra/osx/Neovide.app/Contents | ||
| lua | ||
| macos-builder | ||
| neovide-derive | ||
| snap | ||
| src | ||
| ubuntu-builder | ||
| website | ||
| wix | ||
| .editorconfig | ||
| .gitignore | ||
| .nvim-dap.lua | ||
| build.rs | ||
| Cargo.lock | ||
| Cargo.toml | ||
| LICENSE | ||
| README.md | ||
| rustfmt.toml | ||
| stylua.toml | ||
Neovide
This is a simple graphical user interface for Neovim (an aggressively refactored and updated Vim editor). Where possible there are some graphical improvements, but functionally it should act like the terminal UI.
To checkout all the cool features, installation instructions, configuration settings and much more, head on over to neovide.dev.
Screenshot of Neovide running on Windows
Installation
Pre-built releases for macOS, Windows and Linux are published on the GitHub Releases page and each release includes signed installers or AppImage builds. For detailed package-manager commands, verification steps and build from source instructions, see the installation guide on neovide.dev
Getting help
Neovide is maintained in spare time, so please be patient when asking for support. Depending on your question:
- Use the issue tracker for reproducible bugs or crash reports.
- Open a thread in GitHub Discussions for general questions, tips, or feature ideas.
- Chat in real time on Discord or on Matrix if you want help from other community members.
Discussions and chat are better suited to questions or workflow brainstorming, while the issue tracker works best for actionable bugs.
Supporting the Project
If you use and like Neovide, please consider sponsoring the project on GitHub. Funding helps pay for code-signing certificates, cross-platform hardware and the time maintainers spend supporting users. There are tiers for individuals and teams, and one-time contributions are welcome too.
Read more about sponsoring Neovide.
License
Licensed under MIT.