Paq is a Neovim package manager written in Lua.
- Simple: Easy to use and configure
- Fast: Installs and updates packages concurrently using Neovim's event-loop
- Small: Around 150 LOC
- git
- Neovim 0.4.4 (stable)
Clone this repository.
For Unix-like systems:
git clone https://github.com/savq/paq-nvim.git \
"${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/pack/paqs/opt/paq-nvimFor Windows:
git clone https://github.com/savq/paq-nvim.git "$env:LOCALAPPDATA\nvim-data\site\pack\paqs\opt\paq-nvim"
In your init.vim or init.lua, you can write something like:
lua << EOF
vim.cmd 'packadd paq-nvim' -- Load package
local paq = require'paq-nvim'.paq -- Import module and bind `paq` function
paq{'savq/paq-nvim', opt=true} -- Let Paq manage itself
-- Add your packages
paq 'neovim/nvim-lspconfig'
paq 'nvim-lua/completion-nvim'
paq 'nvim-lua/lsp_extensions.nvim'
paq{'lervag/vimtex', opt=true} -- Use braces when passing options
paq{'dracula/vim', as='dracula'} -- Use `as` to alias a package name (here `vim`)
EOFThen, run :PaqInstall.
In general, to add packages to Paq's list, call paq '<gh-username>/<repo>'
inside a Lua chunk (or in a separate Lua module).
PaqInstall: Install all packages listed in your configuration.PaqUpdate: Update all packages already on your system (it won't implicitly install them).PaqClean: Remove all packages (in Paq's directory) that aren't listed on your configuration.
| Option | Type | |
|---|---|---|
| as | string | Name to use for the package locally |
| branch | string | Branch of the repository |
| opt | boolean | Is the package optional? |
| run | string | Shell command to run after install/update |
| run | function | Lua function to run after install/update |
| url | string | URL of the remote repository, useful for non-GitHub repos |
For more details on each option, refer to the documentation.
NOTICE:
The hook option is deprecated, and will be removed in Paq 1.0. Use run instead.
You can find a comparison with Packer.nvim, and a migration guide from Vim8 plugin managers (vim-plug and Minpac) in the wiki.