lazy.nvim/README.md

58 lines
2.1 KiB
Markdown
Raw Normal View History

2022-12-15 04:04:04 +08:00
# 💤 lazy.nvim
Modern plugin manager for Neovim
2022-11-26 21:31:29 +08:00
2022-12-15 04:17:38 +08:00
![image](https://user-images.githubusercontent.com/292349/207705153-077e183e-ae5f-4cbe-b1d8-07b7bf86026e.png)
2022-12-15 04:05:25 +08:00
2022-11-28 14:36:46 +08:00
## ✨ Features
2022-12-15 04:04:04 +08:00
- 📦 Manage all your Neovim plugins with a fancy UI
- 🚀 Fast startup: Automatically caches and compiles byte code of all lua modules needed during startup
- 💾 Partial clones instead of shallow clones
- 🔌 Auto lazy-loading of lua modules
- 📆 Lazy-loading on events, commands, filetypes and key mappings
- ⏳ Automatically installs missing plugins before starting up so you can start using Neovim right away
- 💪 Async execution for improved performance
- 🛠️ No need to manually compile plugins
- 🧪 Correct sequencing of dependencies
- 📁 Configurable in multiple files
- 💻 Dev option and patterns for using local plugin
- 📊 Profiling tools to optimize performance
- 🔒 Lockfile `lazy-lock.json` to keep track of installed plugin versions
- 🔎 Automatically check for updates
- 📋 Commit, branch, tag, version, and full [Semver](https://devhints.io/semver) support
- 📈 Statusline component to see the number of pending updates
2022-12-15 04:07:06 +08:00
## Profiler
2022-12-15 04:11:01 +08:00
The profiling view shows you why and how long it took to load your plugins.
2022-12-15 04:07:06 +08:00
![image](https://user-images.githubusercontent.com/292349/207703263-3b38ca45-9779-482b-b684-4f8c3b3e76d0.png)
2022-12-15 04:11:01 +08:00
## Debug
2022-12-15 04:08:28 +08:00
2022-12-15 04:11:01 +08:00
See an overview of active lazy-loading handlers and what's in the module cache
2022-12-15 04:08:28 +08:00
2022-12-15 04:11:01 +08:00
![image](https://user-images.githubusercontent.com/292349/207703522-8bb20678-bb4c-4424-80e4-add3219711c3.png)
2022-11-29 22:25:09 +08:00
## 📦 Differences with Packer
- **Plugin Spec**:
- `setup` => `init`
- `requires` => `dependencies`
- `as` => `name`
2022-12-01 18:32:52 +08:00
- `opt` => `lazy`
- `run` => `build`
2022-12-02 16:25:25 +08:00
- `lock` => `pin`
- `module` is auto-loaded. No need to specify
2022-12-01 06:15:14 +08:00
## 📦 Other Neovim Plugin Managers in Lua
- [packer.nvim](https://github.com/wbthomason/packer.nvim)
- [paq-nvim](https://github.com/savq/paq-nvim)
- [neopm](https://github.com/ii14/neopm)
- [dep](https://github.com/chiyadev/dep)
- [optpack.nvim](https://github.com/notomo/optpack.nvim)
2022-12-04 00:46:10 +08:00
- [pact.nvim](https://github.com/rktjmp/pact.nvim)