My Neovim takes roughly 113ms to fire up. THIS IS FAST. However, I don’t lazy load anything. Being a Lazy.nvim user, it’s kind of a shame I’m not actually making use of my plugin manager's flagship feature. But then again, it takes 113ms for nvim to start, what is there to gain here? Let’s say I drop it to 50ms. Still reading? GOOD. You’re as crazy as I am, let’s speed things up! The Slow Startup StruggleThere are a few factors affecting startup times:
0. Lose redundant plugins!This cool plugin dropping your code on the ground like sand? Not helping you in the 99.99% times you’re not showing it off to a colleague. Don’t ask me how I know. Yeah this duck running around lines of code isn’t helping either. Cleanup useless plugins or those you're not really using anymore because you stopped working with Java. 1. Clock Your StartupFirst, let’s see how slow things really are: This creates a detailed log. Open the log and look for the total time at the bottom. This is our baseline. 2. Meet Your New Best Friend: LazyLazy isn’t just another plugin manager. It’s your speed demon sidekick. Install it, then use its built-in profiler:
This shows you the overall time it took to load things up, including a breakdown of the booting profile. Aside from Treesitter which I’m not necessarily going to touch first, UI enhancers like 3. Lazy Loading: Your Secret WeaponHere’s the key: Don’t load everything at once. Use Neovim events! Events are triggers, like opening a file or entering insert mode. Use them to load plugins only when needed. For example: Learn more about optional events with 4. Optimize the Heavy HittersFound some other plugins eating up time? Let’s tackle them:
5. Let me confuse youLazy loading isn’t always the best approach for every plugin in your system. While it can improve initial file opening times, it may introduce latency when you start interacting with the file and delay the appearance of diagnostics. Consider the user experience:
With this approach, you’ll slash startup times without sacrificing your favorite Neovim superpowers. Thank you for reading, as always, feel free to reply to this post directly with questions and comments! |
Every once in a while I send hand picked things I've learned. Kind of like your filter to the tech internet. No spam, I promise!
How DHH Solved Deploying to Production (with Open Source) Ever felt depressed by the sheer complexity of getting your application live and serving users? You’re not alone. But what if deploying to production, even (or especially) across multiple servers, could be straightforward and more importantly, free? That’s the reality DHH, the creator of Ruby on Rails and CTO of Basecamp & HEY, wanted to create, and he delivered with an open source tool called Kamal. DHH’s approach to technology always...
The UNDERRATED Open Source Powering My HomeLab This issue is brought to you by: Secure Your AI Future at Snyk Launch 2025 Join Snyk Launch to discover how to establish a foundation to build securely and confidently in the age of AI. Register for Snyk Launch 2025 (It’s Free!) Kestra, an open-source automation platform that's been a game-changer for my homelab and, frankly, could be for a lot more. It's one of those tools that flies under the radar for too many people, but packs so much...
He Made $64K Searching GitHub With A GENIUS Trick (using open source only) This issue is brought to you by: TestSprite is the Easiest AI Agent for Software Testing Ensure End-to-End Confidence in Your Software Quality. LEARN MORE This, is the story of how one individual, "Mr. B," leveraged a deep understanding of Git's less-explored features to uncover secrets in public repositories, earning over $64,000 💰. His "genius trick" wasn't about finding new tools, but about using existing Git...