mirror of https://github.com/folke/lazy.nvim.git
56 lines
1.7 KiB
Markdown
56 lines
1.7 KiB
Markdown
# lazy.nvim
|
|
|
|
## ✨ Features
|
|
|
|
- [x] Partial clones instead of shallow clones
|
|
- [x] waits till missing deps are installed (bootstrap Neovim and start using it right away)
|
|
- [x] Async
|
|
- [x] No need for compile
|
|
- [x] Fast
|
|
- [x] Correct sequencing of dependencies (deps should always be opt. Maybe make everything opt?)
|
|
- [ ] Import specs from Packer
|
|
- [x] Config in multiple files
|
|
- [x] Patterns for local packages
|
|
- [x] Profiling
|
|
- [x] lockfile
|
|
- [x] upvalues in `config` & `init`
|
|
- [x] check for updates
|
|
- [ ] package.lua
|
|
- [ ] package-lock.lua
|
|
- [x] tag/version support `git tag --sort version:refname`
|
|
- [x] auto-loading on completion for lazy-loaded commands
|
|
- [x] bootstrap code
|
|
- [x] semver https://devhints.io/semver
|
|
https://semver.npmjs.com/
|
|
|
|
## ✅ TODO
|
|
|
|
- [x] support for Plugin.lock
|
|
- [ ] health checks: check merge conflicts async
|
|
- [x] defaults for git log
|
|
- [x] view keybindings for update/clean/...
|
|
- [x] add profiler to view
|
|
- [x] add buttons for actions
|
|
- [x] show time taken for op in view
|
|
- [ ] package meta index (package.lua cache for all packages)
|
|
- [ ] migrate from Packer
|
|
- [ ] auto lazy-loading of lua modules
|
|
- [ ] use uv file watcher to check for config changes
|
|
- [x] clear errors
|
|
- [x] add support for versions `git tag --sort v:refname`
|
|
- [x] rename requires to dependencies
|
|
- [x] move tasks etc to Plugin.state
|
|
- [ ] allow setting up plugins through config
|
|
- [ ] handlers imply opt
|
|
- [x] dependencies imply opt for deps
|
|
- [x] fix local plugin spec
|
|
- [ ] investigate all opt=true. Simplifies logic (easily switch between opt/start afterwards)
|
|
|
|
## 📦 Differences with Packer
|
|
|
|
- **Plugin Spec**:
|
|
|
|
- `setup` => `init`
|
|
- `requires` => `dependencies`
|
|
- `as` => `name`
|