💤 A modern plugin manager for Neovim
Go to file
Marc Jakobi 591ef40f2d
fix(luarocks): try to install from root manifest (#1687)
## Description

When passing the `--dev` flag to `luarocks`, it will prioritise `dev`
versions when resolving dependencies (treating `dev` or `scm` as greater
than a SemVer version) if the rockspec doesn't specify an upper version
constraint (which is often the case).

Dev packages are often unstable and may cause more problems, especially
for Windows users (an example I've seen is git for windows trying and
failing to checkout submodules).

For now , a good compromise between too many retries and not retrying at
all could be to try `luarocks install` from the root manifest first, but
to keep the `--dev` flag in `luarocks make`.

If that still causes problems, it might be better to fall back to
`luarocks make` without `--dev` first, and then to try `luarocks ---dev
make` as a last resort.
In rocks.nvim, we only fall back to adding the `--dev` flag if the
install error message contains the string `"No results matching query
were found"`; assuming that stable non-dev packages shouldn't depend on
dev packages.
2024-08-31 08:59:45 +02:00
.github chore(main): release 11.14.1 (#1680) 2024-07-25 13:38:23 +02:00
doc chore(build): auto-generate docs 2024-07-18 13:57:58 +00:00
lua/lazy fix(luarocks): try to install from root manifest (#1687) 2024-08-31 08:59:45 +02:00
scripts chore(update): update repository (#1638) 2024-07-13 10:07:17 +02:00
tests ci: update 2024-07-05 16:03:09 +02:00
.busted test: buse busted for running tasks 2024-06-26 14:30:55 +02:00
.editorconfig chore(update): update repository (#1653) 2024-07-15 17:09:32 +02:00
.gitignore ci: update 2024-07-06 23:45:30 +02:00
.markdownlint.yaml build: added markdownlint config 2022-12-19 19:09:54 +01:00
.neoconf.json perf: more cache optims 2023-02-14 11:00:56 +01:00
.styluaignore ci: add generated files to .styluaignore 2024-07-05 16:03:09 +02:00
CHANGELOG.md chore(main): release 11.14.1 (#1680) 2024-07-25 13:38:23 +02:00
LICENSE docs: added lincense 2022-12-20 17:56:21 +01:00
README.md chore(build): auto-generate docs 2024-06-24 15:42:27 +00:00
TODO.md style: fix some typo (#1496) 2024-06-03 09:18:43 +02:00
bootstrap.lua ci: use main for bootstrap 2024-07-04 18:05:36 +02:00
manifest ci: auto-get rockspec mappings for rock name => github short url or url 2024-06-25 17:41:16 +02:00
selene.toml fix(pkg): correctly pre-load package specs and remove them when needed during resolve 2024-06-24 17:15:10 +02:00
stylua.toml style: sort requires 2023-10-09 11:25:42 +02:00
vim.toml refactor: async processes 2024-06-28 16:08:26 +02:00

README.md

Install · Configure · Docs

lazy.nvim is a modern plugin manager for Neovim.

image

Features

  • 📦 Manage all your Neovim plugins with a powerful UI
  • 🚀 Fast startup times thanks to automatic caching and bytecode compilation of Lua modules
  • 💾 Partial clones instead of shallow clones
  • 🔌 Automatic lazy-loading of Lua modules and lazy-loading on events, commands, filetypes, and key mappings
  • Automatically install missing plugins before starting up Neovim, allowing you to start using it right away
  • 💪 Async execution for improved performance
  • 🛠️ No need to manually compile plugins
  • 🧪 Correct sequencing of dependencies
  • 📁 Configurable in multiple files
  • 📚 Generates helptags of the headings in README.md files for plugins that don't have vimdocs
  • 💻 Dev options and patterns for using local plugins
  • 📊 Profiling tools to optimize performance
  • 🔒 Lockfile lazy-lock.json to keep track of installed plugins
  • 🔎 Automatically check for updates
  • 📋 Commit, branch, tag, version, and full Semver support
  • 📈 Statusline component to see the number of pending updates
  • 🎨 Automatically lazy-loads colorschemes

Requirements

  • Neovim >= 0.8.0 (needs to be built with LuaJIT)
  • Git >= 2.19.0 (for partial clones support)
  • a Nerd Font (optional)
  • luarocks to install rockspecs. You can remove rockspec from opts.pkg.sources to disable this feature.

🚀 Getting Started

Check the documentation website for more information.