1 ai
1.1 kurama622-llm-nvim
{ import = "astrocommunity.ai.kurama622-llm-nvim" }
1.1.1 kurama622/llm.nvim
Free large language model (LLM) support for Neovim, provides commands to interact with LLM (like ChatGPT, ChatGLM, kimi, deepseek, openrouter and local llms). Support Github models.
Repository: https://github.com/Kurama622/llm.nvim
1.2 opencode-nvim
{ import = "astrocommunity.ai.opencode-nvim" }
1.2.1 NickvanDyke/opencode.nvim
Integrate the opencode AI assistant with Neovim — streamline editor-aware research, reviews, and requests.
Repository: https://github.com/NickvanDyke/opencode.nvim
2 bars-and-lines
2.1 bufferline-nvim
{ import = "astrocommunity.bars-and-lines.bufferline-nvim" }
2.1.1 bufferline.nvim
A snazzy bufferline for Neovim
Repository: https://github.com/akinsho/bufferline.nvim
Note: This also disables the Heirline based tabline
2.2 dropbar-nvim
{ import = "astrocommunity.bars-and-lines.dropbar-nvim" }
2.2.1 dropbar.nvim
IDE-like breadcrumbs, out of the box
Repository: https://github.com/Bekaboo/dropbar.nvim
Note: This also disables the Heirline based winbar
2.3 feline-nvim
{ import = "astrocommunity.bars-and-lines.feline-nvim" }
2.3.1 feline.nvim
A minimal, stylish and customizable statusline, statuscolumn, and winbar for Neovim
Repository: https://github.com/famiu/feline.nvim
Note: This also disables the Heirline based statusline
2.4 lualine-nvim
{ import = "astrocommunity.bars-and-lines.lualine-nvim" }
2.4.1 lualine.nvim
A blazing fast and easy to configure neovim statusline plugin written in pure lua.
Repository: https://github.com/nvim-lualine/lualine.nvim
Note: This also disables the Heirline based statusline.
2.5 scope-nvim
{ import = "astrocommunity.bars-and-lines.scope-nvim" }
2.5.1 scope.nvim
Revolutionize Your Neovim Tab Workflow: Introducing Enhanced Tab Scoping!
Repository: https://github.com/tiagovla/scope.nvim
This plugin scopes buffers to tabs, cleaning up tabline plugins like
bufferline.nvim.
2.6 smartcolumn-nvim
{ import = "astrocommunity.bars-and-lines.smartcolumn-nvim" }
2.6.1 smartcolumn.nvim
A Neovim plugin hiding your colorcolumn when unneeded.
Repository: https://github.com/m4xshen/smartcolumn.nvim
2.7 statuscol-nvim
{ import = "astrocommunity.bars-and-lines.statuscol-nvim" }
2.7.1 statuscol.nvim
Status column plugin that provides a configurable ‘statuscolumn’ and click handlers.
Repository: https://github.com/luukvbaal/statuscol.nvim
Note: This also disables the Heirline based statuscolumn.
2.8 vim-illuminate
{ import = "astrocommunity.bars-and-lines.vim-illuminate" }
2.8.1 vim-illuminate
(Neo)Vim plugin for automatically highlighting other uses of the word under the cursor using either LSP, Tree-sitter, or regex matching.
Repository: https://github.com/RRethy/vim-illuminate
2.9 wakastat
{ import = "astrocommunity.bars-and-lines.wakastat" }
2.9.1 wakastat.nvim
wakatime coding status on your neovim.
Repository: https://github.com/fiqryq/wakastat.nvim
3 code-runner
3.1 compiler-nvim
{ import = "astrocommunity.code-runner.compiler-nvim" }
3.1.1 Compiler.nvim
Repository: https://github.com/Zeioth/Compiler.nvim
A Neovim compiler for building and running your code without having to configure anything
3.2 conjure
{ import = "astrocommunity.code-runner.conjure" }
3.2.1 Conjure
Interactive evaluation for Neovim (Clojure, Fennel, Janet, Racket, Hy, MIT Scheme, Guile, Python and more!)
Repository: https://github.com/Olical/conjure
3.3 executor-nvim
{ import = "astrocommunity.code-runner.executor-nvim" }
3.3.1 Executor.nvim
Executor.nvim is a plugin that allows you to run command line tasks in the background and be notified of results.
Repository: https://github.com/google/executor.nvim
3.4 mf-runner-nvim
{ import = "astrocommunity.code-runner.mf-runner-nvim" }
3.4.1 mf-runner.nvim
code runner based off of Makefiles because it’s the easiest and one of the most common formats.
Repository: https://github.com/burgr033/mf-runner.nvim
3.5 molten-nvim
{ import = "astrocommunity.code-runner.molten-nvim" }
3.5.1 molten-nvim
A neovim plugin for interactively running code with the jupyter kernel. Fork of magma-nvim with improvements in image rendering, performance, and more.
3.5.1.1 Required Python packages
pynvim(for the Remote Plugin API)jupyter_client(for interacting with Jupyter)
3.5.1.2 Optional Python packages:
cairosvg(for displaying SVG images with transparency)- If you don’t need transparency, image.nvim can render svg images perfectly fine
pnglatex(for displaying TeX formulas)plotlyandkaleido(for displaying Plotly figures)pyperclipif you want to usemolten_copy_outputnbformatfor importing and exporting output to jupyter notebooks filespillowfor opening images with:MoltenImagePopup
[!TIP] You can run
:checkhealthto see what you have installed.
[!CAUTION] For up to date docs, visit the repository.
Repository: https://github.com/benlubas/molten-nvim
3.5.1.3 Customizations
This plugin config adds a custom init function for Python venvs. When
calling <Leader>mmp, we check if a venv is activated.
If it is, we check if a jupyter kernel spec for this venv already exists
and :MoltenInit this kernel spec. If no kernel spec is
found, we prompt for a unique name, create the kernel spec and
:MoltenInit it.
It also adds a status line indication if molten is activated and what kernel is initialized.
[!TIP] When using a global molten venv as described in the repository, we need to set the variable
python3_host_progto the Python executable there, which in AstroNVim is done inAstroCorein theoptions.gtable, for example:python3_host_prog = vim.fn.expand "~/.virtualenvs/neovim/bin/python3".
3.6 overseer-nvim
{ import = "astrocommunity.code-runner.overseer-nvim" }
3.6.1 overseer.nvim
A task runner and job management plugin for Neovim
Repository: https://github.com/stevearc/overseer.nvim
3.7 sniprun
{ import = "astrocommunity.code-runner.sniprun" }
3.7.1 sniprun
A neovim plugin to run lines/blocs of code (independently of the rest of the file), supporting multiples languages
Repository: https://github.com/michaelb/sniprun
Sniprun is a code runner plugin for neovim written in Lua and Rust. It aims to provide stupidly fast partial code testing for interpreted and compiled languages. Sniprun blurs the line between standard save/run workflow, jupyter-like notebook, and REPL/interpreters.
3.8 toggletasks-nvim
{ import = "astrocommunity.code-runner.toggletasks-nvim" }
3.8.1 toggletasks.nvim
Neovim task runner: JSON/YAML + toggleterm.nvim + telescope.nvim.
Repository: https://github.com/jedrzejboczar/toggletasks.nvim
3.9 vim-slime
{ import = "astrocommunity.code-runner.vim-slime" }
3.9.1 vim-slime
A vim plugin to give you some slime. (Emacs)
Repository: https://github.com/jpalardy/vim-slime
4 color
4.1 ccc-nvim
{ import = "astrocommunity.color.ccc-nvim" }
4.1.1 ccc.nvim
Color picker and highlighter plugin for Neovim.
Repository: https://github.com/uga-rosa/ccc.nvim
4.2 headlines-nvim
{ import = "astrocommunity.color.headlines-nvim" }
4.2.1 headlines.nvim
This plugin adds horizontal highlights for text filetypes, like markdown, orgmode, and neorg.
Repository: https://github.com/lukas-reineke/headlines.nvim
4.3 huez-nvim
{ import = "astrocommunity.color.huez-nvim" }
4.3.1 huez.nvim
All things color related. All Lua.
Repository: https://github.com/vague2k/huez.nvim
4.4 mini-hipatterns
{ import = "astrocommunity.color.mini-hipatterns" }
4.4.1 mini.hipatterns
Neovim Lua plugin to highlight patterns in text. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.hipatterns
4.5 modes-nvim
{ import = "astrocommunity.color.modes-nvim" }
4.5.1 modes.nvim
Prismatic line decorations for the adventurous vim user
Repository: https://github.com/mvllow/modes.nvim
Note: This also disables which-key for
operators in Neovim as this conflicts with this plugin.
4.6 nvim-highlight-colors
{ import = "astrocommunity.color.nvim-highlight-colors" }
4.6.1 nvim-highlight-colors
Highlight colors for neovim
Repository: https://github.com/brenoprata10/nvim-highlight-colors
4.7 tint-nvim
{ import = "astrocommunity.color.tint-nvim" }
4.7.1 tint.nvim
Dim inactive windows in Neovim using window-local highlight namespaces.
Repository: https://github.com/levouh/tint.nvim
4.8 transparent-nvim
{ import = "astrocommunity.color.transparent-nvim" }
4.8.1 transparent.nvim
Remove all background colors to make nvim transparent
Repository: https://github.com/xiyaowong/transparent.nvim
4.9 twilight-nvim
{ import = "astrocommunity.color.twilight-nvim" }
4.9.1 twilight.nvim
🌅 Twilight is a Lua plugin for Neovim 0.5 that dims inactive portions of the code you’re editing using TreeSitter.
Repository: https://github.com/folke/twilight.nvim
4.10 vim-highlighter
{ import = "astrocommunity.color.vim-highlighter" }
4.10.1 vim-highlighter
Highlight words and expressions
Repository: https://github.com/azabiong/vim-highlighter
A Neovim plugin which extends Vim’s highlighting capabilities with additional features such as jump to highlights, saving and loading, finding patterns, and customizing colors. It can be a useful tool when analyzing code, reviewing and summaries.
Access commands descriptions by visual selecting text and pressing ‘f’.
5 colorscheme
5.1 aurora
{ import = "astrocommunity.colorscheme.aurora" }
5.1.1 aurora
A vivid dark theme for (Neo)Vim. Optimized for treesitter, LSP.
Repository: https://github.com/ray-x/aurora
" Vim Script
colorscheme aurora
5.2 bamboo-nvim
{ import = "astrocommunity.colorscheme.bamboo-nvim" }
5.2.1 bamboo.nvim
Dark green theme for Neovim forked from OneDark.nvim
Repository: https://github.com/ribru17/bamboo.nvim
5.3 bluloco-nvim
{ import = "astrocommunity.colorscheme.bluloco-nvim" }
5.3.1 bluloco.nvim
bluloco theme port for neovim
Repository: https://github.com/uloco/bluloco.nvim
" Vim Script
colorscheme bluloco-dark
colorscheme bluloco-light
5.4 catppuccin
{ import = "astrocommunity.colorscheme.catppuccin" }
5.4.1 catppuccin
🍨 Soothing pastel theme for (Neo)vim
Repository: https://github.com/catppuccin/nvim
5.5 citruszest-nvim
{ import = "astrocommunity.colorscheme.citruszest-nvim" }
5.5.1 cistruszest.nvim
A vibrant and refreshing neovim colorscheme inspired by citrus fruits.
Repository: https://github.com/zootedb0t/citruszest.nvim
" Vim Script
colorscheme citruszest
5.6 cyberdream-nvim
{ import = "astrocommunity.colorscheme.cyberdream-nvim" }
5.6.1 cyberdream.nvim
🤖💤 High-contrast, Futuristic & Vibrant color scheme for Neovim
Repository: https://github.com/scottmckendry/cyberdream.nvim
" Vim Script
colorscheme cyberdream
5.7 dracula-nvim
{ import = "astrocommunity.colorscheme.dracula-nvim" }
5.7.1 dracula.nvim
Dracula colorscheme for neovim written in Lua
Repository: https://github.com/Mofiqul/dracula.nvim
" Vim Script
colorscheme dracula
" or:
colorscheme dracula-soft
5.8 eldritch-nvim
{ import = "astrocommunity.colorscheme.eldritch-nvim" }
5.8.1 eldritch.nvim
A theme for the Ancient Ones! (NVIM)
Repository: https://github.com/eldritch-theme/eldritch.nvim
" Vim Script
colorscheme eldritch
5.9 everblush-nvim
{ import = "astrocommunity.colorscheme.everblush-nvim" }
5.9.1 everblush.nvim
A dark, vibrant, and beautiful color scheme for Neovim
Repository: https://github.com/Everblush/nvim
5.10 everforest
{ import = "astrocommunity.colorscheme.everforest" }
5.10.1 everforest
🌲 Comfortable & Pleasant Color Scheme for Vim
Repository: https://github.com/sainnhe/everforest
5.11 fluoromachine-nvim
{ import = "astrocommunity.colorscheme.fluoromachine-nvim" }
5.11.1 Fluormachine.nvim
Synthwave x Fluoromachine port for Neovim
Repository: https://github.com/maxmx03/fluoromachine.nvim
5.12 github-nvim-theme
{ import = "astrocommunity.colorscheme.github-nvim-theme" }
5.12.1 Github Nvim theme
Github’s Neovim themes
Repository: https://github.com/projekt0n/github-nvim-theme
5.12.1.1 Usage
In your plugins/astroui.lua file, put:
return {
"AstroNvim/astroui",
opts = {
colorscheme = "github_dark",
}
}Or whichever colorscheme you’d want.
5.13 gruvbox-baby
{ import = "astrocommunity.colorscheme.gruvbox-baby" }
5.13.1 gruvbox-baby
Gruvbox theme for neovim with full 🎄TreeSitter support.
Repository: https://github.com/luisiacc/gruvbox-baby
Gruvbox theme variant with full treesitter support!
5.14 gruvbox-nvim
{ import = "astrocommunity.colorscheme.gruvbox-nvim" }
5.14.1 gruvbox.nvim
Lua port of the most famous vim colorscheme
Repository: https://github.com/ellisonleao/gruvbox.nvim
A port of gruvbox community theme to lua with treesitter support!
To change options:
{
"gruvbox.nvim",
opts = {
italic = {
strings = true,
comments = true,
folds = true,
operations = false,
}
}
}Other options can be found in the official README: https://github.com/ellisonleao/gruvbox.nvim#configuration
5.15 helix-nvim
{ import = "astrocommunity.colorscheme.helix-nvim" }
5.15.1 Helix-nvim
Helix Editor default theme implementation for Neovim.
Repository: https://github.com/oneslash/helix-nvim
5.16 horizon-nvim
{ import = "astrocommunity.colorscheme.horizon-nvim" }
5.16.1 horizon.nvim
A beautifully warm color scheme for Neovim
Repository: https://github.com/LunarVim/horizon.nvim
5.17 hybrid-nvim
{ import = "astrocommunity.colorscheme.hybrid-nvim" }
5.17.1 hybdrid.nvim
A dark Neovim theme written in Lua
Repository: https://github.com/HoNamDuong/hybrid.nvim
" Vim Script
colorscheme hybrid
5.18 iceberg-vim
{ import = "astrocommunity.colorscheme.iceberg-vim" }
5.18.1 iceberg.vim
🇦🇶 Bluish color scheme for Vim and Neovim
Repository: https://github.com/cocopon/iceberg.vim
5.19 kanagawa-nvim
{ import = "astrocommunity.colorscheme.kanagawa-nvim" }
5.19.1 kanagawa.nvim
NeoVim dark colorscheme inspired by the colors of the famous painting by Katsushika Hokusai.
Repository: https://github.com/rebelot/kanagawa.nvim
5.20 kanagawa-paper-nvim
{ import = "astrocommunity.colorscheme.kanagawa-paper-nvim" }
5.20.1 kanagawa-paper.nvim
Remixed Kanagawa colourscheme with muted colors. For Neovim.
Repository: https://github.com/sho-87/kanagawa-paper.nvim
5.20.1.1 Enabling the colorscheme
return {
"AstroNvim/astroui",
---@type AstroUIOpts
opts = {
colorscheme = "kanagawa-paper",
},
}5.21 lackluster-nvim
{ import = "astrocommunity.colorscheme.lackluster-nvim" }
5.21.1 lackluster.nvim
A delightful mostly grayscale colorscheme thats soft on the eyes, and supports heaps of plugins
Repository: https://github.com/slugbyte/lackluster.nvim
" Vim Script
colorscheme lackluster
colorscheme lackluster-night
colorscheme lackluster-mint
colorscheme lackluster-dark
5.22 melange-nvim
{ import = "astrocommunity.colorscheme.melange-nvim" }
5.22.1 melange.nvim
🗡️ Warm color scheme for Neovim and beyond
Repository: https://github.com/savq/melange-nvim
5.23 mellifluous-nvim
{ import = "astrocommunity.colorscheme.mellifluous-nvim" }
5.23.1 mellifluous.nvim
Pleasant and productive color scheme for Neovim
Repository: https://github.com/ramojus/mellifluous.nvim
" Vim Script
colorscheme mellifluous
5.24 mellow-nvim
{ import = "astrocommunity.colorscheme.mellow-nvim" }
5.24.1 mellow.nvim
A soothing dark color scheme for neovim and friends.
Repository: https://github.com/kvrohit/mellow.nvim
5.25 miasma-nvim
{ import = "astrocommunity.colorscheme.miasma-nvim" }
5.25.1 miasma.nvim
A fog descends upon your editor ☁ dark color scheme inspired by the woods for vim and neovim
Repository: https://github.com/xero/miasma.nvim
" Vim Script
colorscheme miasma
5.26 mini-base16
{ import = "astrocommunity.colorscheme.mini-base16" }
5.26.1 mini.base16
Neovim Lua plugin for Base16 colorscheme creation. Part of ‘mini.nvim’ library.
Repository: <https://github.com/echasnovski/mini.base16>
5.27 modus-nvim
{ import = "astrocommunity.colorscheme.modus-nvim" }
5.27.1 modus.nvim
Highly accessible themes for Neovim, conforming with the highest standard for color contrast between background and foreground values (WCAG AAA). A Neovim port of the original Modus Themes built for GNU Emacs.
Repository: https://github.com/miikanissi/modus-themes.nvim
" Vim Script
colorscheme modus
colorscheme modus_operandi
colorscheme modus_vivendi
5.28 monokai-pro-nvim
{ import = "astrocommunity.colorscheme.monokai-pro-nvim" }
5.28.1 monokai-pro.nvim
Monokai Pro theme for Neovim written in Lua, with multiple filters: Pro, Classic, Machine, Octagon, Ristretto, Spectrum
Repository: https://github.com/loctvl842/monokai-pro.nvim
A professional theme for neovim. The following filters are available:
proclassicmachineoctagonristrettospectrum
By default, it is set to pro. To change the filter to,
e.g., machine, you can add the following to your
user.lua
{
"loctvl842/monokai-pro.nvim",
config = function()
require("monokai-pro").setup {
filter = "machine", -- classic | octagon | pro | machine | ristretto | spectrum
}
end
},5.29 neofusion-nvim
{ import = "astrocommunity.colorscheme.neofusion-nvim" }
5.29.1 neofusion.nvim
nvim theme blending lava red and ice blue for a vibrant coding experience ✨
Repository: https://github.com/diegoulloao/neofusion.nvim
" Vim Script
colorscheme neofusion
5.30 neosolarized-nvim
{ import = "astrocommunity.colorscheme.neosolarized-nvim" }
5.30.1 neosolarized.nvim
Truecolor solarized theme for neovim in Lua using colorbuddy
Repository: https://github.com/svrana/neosolarized.nvim
5.31 night-owl-nvim
{ import = "astrocommunity.colorscheme.night-owl-nvim" }
5.31.1 night-owl.nvim
🦉 🌌 Night Owl colorscheme implementation for Neovim with support for Treesitter and semantic tokens
Repository: https://github.com/oxfist/night-owl.nvim
" Vim Script
colorscheme night-owl
5.32 nightfox-nvim
{ import = "astrocommunity.colorscheme.nightfox-nvim" }
5.32.1 nightfox.nvim
🦊A highly customizable theme for vim and neovim with support for lsp, treesitter and a variety of plugins.
Repository: https://github.com/EdenEast/nightfox.nvim
5.33 nord-nvim
{ import = "astrocommunity.colorscheme.nord-nvim" }
5.33.1 nord.nvim
Neovim theme based off of the Nord Color Palette, written in lua with tree sitter support
Repository: https://github.com/shaunsingh/nord.nvim
Note: Until the maintainer fixes the problem, the
theme is incompatible with semantic tokens (issue, you
therefore have to turn off the feature otherwise many tokens will be the
same color. (put this in the polish function of
lua/user/init.lua:
vim.api.nvim_create_autocmd("LspAttach", {
callback = function(args)
local client = vim.lsp.get_client_by_id(args.data.client_id)
client.server_capabilities.semanticTokensProvider = nil
end,
})
5.34 nordic-nvim
{ import = "astrocommunity.colorscheme.nordic-nvim" }
5.34.1 nordic.nvim
🌒 Nord for Neovim, but warmer and darker. Supports a variety of plugins and other platforms.
Repository: <https://github.com/AlexvZyl/nordic.nvim>
" Vim Script
colorscheme nordic
5.35 nvim-juliana
{ import = "astrocommunity.colorscheme.nvim-juliana" }
5.35.1 nvim-juliana
Port of Sublime’s Mariana Theme to Neovim for short attention span devs.
Repository: https://github.com/kaiuri/nvim-juliana
You can also set it to use other palettes like, for example:
---@generic K: "light" | "dark"
---@param mode K
local gruvbox = function(mode)
---@param tbl table<`K`, string>
---@return string
local function pick(tbl)
return tbl[mode]
end
return {
bg1 = pick { light = '#fff7d5', dark = '#32302e' },
bg2 = pick { light = '#fff5cb', dark = '#282828' },
bg3 = pick { light = '#fff2bc', dark = '#242424' },
blue1 = pick { light = '#076578', dark = '#83a598' },
blue2 = pick { light = '#074f78', dark = '#458588' },
cyan1 = pick { light = '#689d69', dark = '#8ec07c' },
cyan2 = pick { light = '#23693e', dark = '#689d6a' },
diff_add = pick { light = '#c7d4c4', dark = '#343427' },
diff_change = pick { light = '#eadba9', dark = '#3e3428' },
diff_remove = pick { light = '#eac4a9', dark = '#3c2828' },
diff_text = pick { light = '#ffe789', dark = '#32302e' },
fg1 = pick { light = '#282828', dark = '#fff5cb' },
fg2 = pick { light = '#353535', dark = '#ebdbb2' },
fg3 = pick { light = '#797467', dark = '#928374' },
fg4 = pick { light = '#938e80', dark = '#665c54' },
green = pick { light = '#228b22', dark = '#a8a920' },
magenta = pick { light = '#8f3f71', dark = '#c2748f' },
orange = pick { light = '#f71d05', dark = '#fb4834' },
red1 = pick { light = '#cc241d', dark = '#d44333' },
red2 = pick { light = '#9d0006', dark = '#cc231d' },
selection_bg = pick { light = '#ffeda3', dark = '#423d39' },
text_fg = pick { light = '#282828', dark = '#eadbb5' },
yellow1 = pick { light = '#cba200', dark = '#fabd2f' },
yellow2 = pick { light = '#ab7b1a', dark = '#e8ab28' },
yellow3 = pick { light = '#996814', dark = '#d79a21' },
}
end
{
'kaiuri/nvim-juliana',
opts = {
colors = gruvbox('dark')
},
}5.36 oldworld-nvim
{ import = "astrocommunity.colorscheme.oldworld-nvim" }
5.36.1 oldworld.nvim
OldWorld is a theme heavily based on mellow.nvim but adding new colors and new integrations with different plugins.
Repository: https://github.com/dgox16/oldworld.nvim
" Vim Script
colorscheme oldworld
5.37 onedarkpro-nvim
{ import = "astrocommunity.colorscheme.onedarkpro-nvim" }
5.37.1 onedarkpro.nvim
🎨 Atom’s iconic One Dark theme, for Neovim. Fully customisable, with Treesitter and LSP semantic token support
Repository: https://github.com/olimorris/onedarkpro.nvim
5.38 oxocarbon-nvim
{ import = "astrocommunity.colorscheme.oxocarbon-nvim" }
5.38.1 oxocarbon.nvim
A dark and light Neovim theme written in fennel, inspired by IBM Carbon.
Repository: https://github.com/nyoom-engineering/oxocarbon.nvim
5.39 palenight-nvim
{ import = "astrocommunity.colorscheme.palenight-nvim" }
5.39.1 palenight.nvim
Palenight.nvim is a fast and modern colorscheme that supports the new Neovim features like builtin LSP and Treesitter and several plugins
Repository: https://github.com/wilmanbarrios/palenight.nvim
5.40 poimandres-nvim
{ import = "astrocommunity.colorscheme.poimandres-nvim" }
5.40.1 poimandres
Poimandres colorscheme for Neovim written in Lua
Repository: https://github.com/olivercederborg/poimandres.nvim
🍨 Soothing theme for (Neo)vim.
5.41 rose-pine
{ import = "astrocommunity.colorscheme.rose-pine" }
5.41.1 rose-pine
Soho vibes for Neovim
Repository: https://github.com/rose-pine/neovim
5.42 solarized-osaka-nvim
{ import = "astrocommunity.colorscheme.solarized-osaka-nvim" }
5.42.1 solarized-osaka.nvim
🏯 A clean, dark Neovim theme written in Lua, with support for lsp, treesitter and lots of plugins.
Repository: https://github.com/craftzdog/solarized-osaka.nvim
" Vim Script
colorscheme solarized-osaka
5.43 sonokai
{ import = "astrocommunity.colorscheme.sonokai" }
5.43.1 sonokai
High Contrast & Vivid Color Scheme based on Monokai Pro
Repository: https://github.com/sainnhe/sonokai
5.44 tokyodark-nvim
{ import = "astrocommunity.colorscheme.tokyodark-nvim" }
5.44.1 tokyodark.nvim
A clean dark theme written in lua for neovim.
Repository: https://github.com/tiagovla/tokyodark.nvim
" Vim Script
colorscheme tokyodark
5.45 tokyonight-nvim
{ import = "astrocommunity.colorscheme.tokyonight-nvim" }
5.45.1 tokyonight.nvim
🏙 A clean, dark Neovim theme written in Lua, with support for lsp, treesitter and lots of plugins. Includes additional themes for Kitty, Alacritty, iTerm and Fish.
Repository: <https://github.com/folke/tokyonight.nvim>
" Vim Script
colorscheme tokyonight
" There are also colorschemes for the different styles
colorscheme tokyonight-night
colorscheme tokyonight-storm
colorscheme tokyonight-day
colorscheme tokyonight-moon
5.46 vim-dogrun
{ import = "astrocommunity.colorscheme.vim-dogrun" }
5.46.1 vim-dogrun
🐶 A dark Neovim / Vim colorscheme for the GUI and 256 / true-color terminals.
Repository: https://github.com/wadackel/vim-dogrun
" Vim Script
colorscheme dogrun
5.47 vim-moonfly-colors
{ import = "astrocommunity.colorscheme.vim-moonfly-colors" }
5.47.1 moonfly
⚫️ A dark charcoal theme for modern Neovim & classic Vim
Repository: https://github.com/bluz71/vim-moonfly-colors.git
5.48 vim-nightfly-colors
{ import = "astrocommunity.colorscheme.vim-nightfly-colors" }
5.48.1 nightly
A dark midnight theme for modern Neovim & classic Vim
Repository: https://github.com/bluz71/vim-nightfly-colors
5.49 vscode-nvim
{ import = "astrocommunity.colorscheme.vscode-nvim" }
5.49.1 vscode.nvim
Neovim/Vim color scheme inspired by Dark+ and Light+ theme in Visual Studio Code
Repository: https://github.com/Mofiqul/vscode.nvim
5.50 zenbones
{ import = "astrocommunity.colorscheme.zenbones" }
5.50.1 Zenbones
🪨 A collection of contrast-based Vim/Neovim colorschemes
Repository: https://github.com/zenbones-theme/zenbones.nvim
6 comment
6.1 mini-comment
{ import = "astrocommunity.comment.mini-comment" }
6.1.1 mini.comment
Neovim Lua plugin for fast and familiar per-line commenting. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.comment
6.2 ts-comments-nvim
{ import = "astrocommunity.comment.ts-comments-nvim" }
6.2.1 🚀 ts-comments.nvim
Requirements: Neovim v0.10+
Tiny plugin to enhance Neovim’s native comments
Repository: https://github.com/folke/ts-comments.nvim
7 completion
7.1 avante-nvim
{ import = "astrocommunity.completion.avante-nvim" }
7.1.1 Avante.nvim
Avante.nvim is a Neovim plugin that emulates the Cursor AI IDE’s functionality. It provides AI-driven code suggestions and allows users to apply these recommendations directly to their source files with minimal effort.
[!IMPORTANT]
avante.nvimis currently only compatible with Neovim 0.10.1 or later.
For more information, please refer to:
Repository: https://github.com/yetone/avante.nvim
7.2 blink-cmp-emoji
{ import = "astrocommunity.completion.blink-cmp-emoji" }
7.2.1 Emoji source for blink.cmp completion plugin.
Emoji source for blink.cmp.
Repository: https://github.com/moyiz/blink-emoji.nvim
7.3 blink-cmp-git
{ import = "astrocommunity.completion.blink-cmp-git" }
7.3.1 Git source for blink.cmp completion plugin.
This makes it possible to query pull requests, issues, and users from GitHub or GitLab. This is very useful when you are writing a commit with nvim.
Repository: https://github.com/Kaiser-Yang/blink-cmp-git
7.4 blink-cmp-tmux
{ import = "astrocommunity.completion.blink-cmp-tmux" }
7.4.1 Completion source using tmux for blink.cmp
Port of the andersevenrud/cmp-tmux completion source for the blink.cmp Neovim plugin.
7.4.1.1 Features
- Integrates with tmux to provide completion suggestions based on the content of tmux panes.
- Supports capturing content from all panes or only the current pane.
- Allows capturing the history of panes for more comprehensive suggestions.
- Configurable trigger characters to activate completions.
Repository: https://github.com/mgalliou/blink-cmp-tmux
7.5 blink-cmp
{ import = "astrocommunity.completion.blink-cmp" }
7.5.1 Blink Completion (blink.cmp)
Performant, batteries-included completion plugin for Neovim
7.5.1.1 Requirements
cargoneeds to be in the$PATHso that the core binaries can be built.
Repository: https://github.com/Saghen/blink.cmp
7.6 cmp-calc
{ import = "astrocommunity.completion.cmp-calc" }
7.6.1 cmp-calc
Calculation source for nvim-cmp
Repository: https://github.com/hrsh7th/cmp-calc
7.7 cmp-cmdline
{ import = "astrocommunity.completion.cmp-cmdline" }
7.7.1 Cmp Cmd
nvim-cmp source for vim’s cmdline.
Repository: https://github.com/hrsh7th/cmp-cmdline
7.8 cmp-emoji
{ import = "astrocommunity.completion.cmp-emoji" }
7.8.1 cmp-emoji
nvim-cmp source for emoji
Repository: https://github.com/hrsh7th/cmp-emoji
7.9 cmp-git
{ import = "astrocommunity.completion.cmp-git" }
7.9.1 cmp-git
Git source for nvim-cmp
Repository: https://github.com/petertriho/cmp-git
7.10 cmp-latex-symbols
{ import = "astrocommunity.completion.cmp-latex-symbols" }
7.10.1 cmp-latex-symbols
Add latex symbol support for nvim-cmp.
Repository: https://github.com/kdheepak/cmp-latex-symbols
7.11 cmp-nerdfont
{ import = "astrocommunity.completion.cmp-nerdfont" }
7.11.1 cmp-nerdfont
nvim-cmp source for nerdfont
Repository: https://github.com/chrisgrieser/cmp-nerdfont
7.12 cmp-nvim-lua
{ import = "astrocommunity.completion.cmp-nvim-lua" }
7.12.1 cmp-nvim-lua
nvim-cmp source for neovim Lua API.
Repository: https://github.com/hrsh7th/cmp-nvim-lua
7.13 cmp-spell
{ import = "astrocommunity.completion.cmp-spell" }
7.13.1 cmp-spell
spell source for nvim-cmp based on vim’s spellsuggest.
Repository: https://github.com/f3fora/cmp-spell
7.14 cmp-tmux
{ import = "astrocommunity.completion.cmp-tmux" }
7.14.1 cmp-tmux
Tmux completion source for nvim-cmp.
Repository: https://github.com/andersevenrud/cmp-tmux
This extension pulls text from your current tmux session and provides it as a completion source.
By default this extension uses adjacent panes as sources. See configuration to enable all panes.
7.15 cmp-under-comparator
{ import = "astrocommunity.completion.cmp-under-comparator" }
7.15.1 cmp-under-comparator
A tiny function for nvim-cmp to better sort completion items that start with one or more underlines.
In most languages, especially Python, items that start with one or more underlines should be at the end of the completion suggestion.
Repository: https://github.com/lukas-reineke/cmp-under-comparator
7.16 codeium-nvim
{ import = "astrocommunity.completion.codeium-nvim" }
7.16.1 codeium-nvim
A native neovim extension for Codeium
Usage:
:Codeium Auth- to set up the plugin:Codeium Chat- Open chat in browser
Repository: https://github.com/Exafunction/codeium.nvim
Note: You need to auth first before usage
7.17 codeium-vim
{ import = "astrocommunity.completion.codeium-vim" }
7.17.1 codeium.vim
Free, ultrafast Copilot alternative for Vim and Neovim
Repository: https://github.com/Exafunction/codeium.vim
Basic setup for codeium
i <C-g>: accept suggestion
i <C-;>: next suggestion
i <C-,>: previous suggestion
i <C-x>: clear suggestions
n <Leader>; toggle on/off Codeium
Note: You need to auth first before usage
7.18 codex-nvim
{ import = "astrocommunity.completion.codex-nvim" }
7.18.1 Codex.nvim
OpenAI Codex plugin for Neovim
For more information, please refer to:
Repository: https://github.com/johnseth97/codex.nvim
7.19 copilot-cmp
{ import = "astrocommunity.completion.copilot-cmp" }
7.19.1 copilot.lua within CMP
Fully featured & enhanced replacement for copilot.vim complete with API for interacting with Github Copilot
Repositories: https://github.com/zbirenbaum/copilot.lua https://github.com/zbirenbaum/copilot-cmp
Note: This plugin will also reconfigure cmp and
add copilot as a completion source Note 2: This
configuration adds a nerdfont icon for copilot using
lspkind. If you are using regular characters, you can
change it in your plugin setup, using the key Copilot for
lspkind’s buffer_map
7.20 copilot-lua-cmp
{ import = "astrocommunity.completion.copilot-lua-cmp" }
7.20.1 copilot.lua + CMP
Fully featured & enhanced replacement for copilot.vim complete with API for interacting with Github Copilot
Repository: https://github.com/zbirenbaum/copilot.lua
7.20.1.1 Key Features
- Seamless integration with nvim-cmp or blink.cmp
- Enhanced keybindings for Copilot suggestions:
<Tab>- Accept suggestion/Navigate completion menu<C-x>/<C-z>- Next/Previous suggestion<C-right>/<C-l>- Accept word<C-down>/<C-j>- Accept line<C-c>- Dismiss suggestion
Note: This plugin will also reconfigure
<Tab> in AstroNvim to work with both auto completion
in cmp and copilot.
The configuration includes support for nvim-cmp and blink.cmp for improved completion behavior.
7.21 copilot-lua
{ import = "astrocommunity.completion.copilot-lua" }
7.21.1 copilot.lua
Fully featured & enhanced replacement for copilot.vim complete with API for interacting with Github Copilot
Repository: https://github.com/zbirenbaum/copilot.lua
7.22 copilot-vim-cmp
{ import = "astrocommunity.completion.copilot-vim-cmp" }
7.22.1 copilot.vim + CMP
Integration of GitHub’s official Copilot plugin with completion engines
Repository: https://github.com/github/copilot.vim
7.22.1.1 Key Features
- Seamless integration with nvim-cmp or blink.cmp
- Enhanced keybindings for Copilot suggestions:
<Tab>- Accept suggestion/Navigate completion menu<M-[>/<M-]>- Previous/Next suggestion<M-\>- Suggest completions<M-Right>- Accept word<M-C-Right>- Accept line<C-]>- Dismiss suggestion
Note: This plugin will also reconfigure
<Tab> in AstroNvim to work with both auto completion
in cmp and copilot.
The configuration includes support for nvim-cmp and blink.cmp for improved completion behavior.
7.23 copilot-vim
{ import = "astrocommunity.completion.copilot-vim" }
7.23.1 copilot.vim
Neovim plugin for GitHub Copilot
Check out the documentation for usage and key mappings.
It is possible to update vim.g copilot settings through
AstroCore:
{
"AstroNvim/astrocore",
opts = {
options = {
g = {
copilot_workspace_folders = { vim.fn.getcwd() },
copilot_filetypes = {
markdown = true,
},
},
},
},
}Repository: https://github.com/github/copilot.vim
7.24 coq_nvim
{ import = "astrocommunity.completion.coq_nvim" }
7.24.1 coq.nvim
Fast as FUCK nvim completion. SQLite, concurrent scheduler, hundreds of hours of optimization.
Repository: https://github.com/ms-jpq/coq_nvim
7.25 fittencode-nvim
{ import = "astrocommunity.completion.fittencode-nvim" }
7.25.1 fittencode.nvim
Fitten Code AI Programming Assistant for Neovim
Repository: https://github.com/luozhiya/fittencode.nvim
7.25.1.0.1 Default Mappings
| Mappings | Action |
|---|---|
Tab |
Accept all suggestions |
Ctrl + ⬇️ |
Accept line |
Ctrl + ➡️ |
Accept word |
Note: You need to auth first before usage - Run Fitten login
7.26 magazine-nvim
{ import = "astrocommunity.completion.magazine-nvim" }
7.26.1 magazine.nvim
[!NOTE] Magazine is a fork of
nvim-cmp. The way this plugin is setup is to hijack into an existingnvim-cmpinstallation. So make sure thatnvim-cmpis still installed and enabled for this plugin to work and all configuration is still done throughnvim-cmpas normal.
Magazine.nvim is a “beta” nvim-cmp to fix bugs & implement new features early
Repository: https://github.com/iguanacucumber/magazine.nvim
7.27 mini-completion
{ import = "astrocommunity.completion.mini-completion" }
7.27.1 mini.completion
Neovim Lua plugin for completion and signature help. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.completion
7.28 minuet-ai-nvim
{ import = "astrocommunity.completion.minuet-ai-nvim" }
7.28.1 Minute-ai.nvim
💃 Dance with Intelligence in Your Code. Minuet offers code completion as-you-type from popular LLMs including OpenAI, Gemini, Claude, Ollama, Llama.cpp, Codestral, and more.
Repository: https://github.com/milanglacier/minuet-ai.nvim
7.29 nvim-cmp-buffer-lines
{ import = "astrocommunity.completion.nvim-cmp-buffer-lines" }
7.29.1 nvim-cmp-buffer-lines
nvim-cmp source for buffer lines
Repository: https://github.com/amarakon/nvim-cmp-buffer-lines
Replaces the <C-x><C-l> whole line
complete, instead of being included in the usual completion menu.
7.30 nvim-cmp
{ import = "astrocommunity.completion.nvim-cmp" }
7.30.1 nvim-cmp
A completion plugin for neovim coded in Lua.
Repository: https://github.com/hrsh7th/nvim-cmp
7.31 supermaven-nvim
{ import = "astrocommunity.completion.supermaven-nvim" }
7.31.1 supermaven-nvim
[!NOTE] You should probably read their Code Policy before running this plugin, if code retention concerns you.
The official Neovim plugin for Supermaven.
Upon startup, you will be prompted to either use the Free Tier with
the command :SupermavenUseFree or to activate a Supermaven
Pro subscription by following a link, which will connect your Supermaven
account.
Keybinds:
- Accept suggestion:
<C-l> - Clear suggestion:
<C-h> - Accept word:
<C-w>
Repository: https://github.com/supermaven-inc/supermaven-nvim
7.32 tabby-nvim
{ import = "astrocommunity.completion.tabby-nvim" }
7.32.1 tabby-nvim
Tabby is a self-hosted AI coding assistant that can suggest multi-line code or full functions in real-time.
Repository: https://github.com/TabbyML/vim-tabby
7.32.1.0.1 Default Mappings
| Mappings | Action |
|---|---|
<C-e> |
Accept completion |
Ctrl + \ |
Trigger/Dismiss |
7.32.1.1 Known Conflicts
- Tabby internally utilizes the
<C-R><C-O>command to insert the completion. If you have mapped<C-R>to other functions, you won’t be able to accept the completion. In such scenarios, you may need to manually modify the functiontabby#Accept()inautoload/tabby.vim.
7.33 tabnine-nvim
{ import = "astrocommunity.completion.tabnine-nvim" }
7.33.1 tabnine-nvim
Repository: https://github.com/codota/tabnine-nvim
Tabnine client for Neovim.
8 debugging
8.1 nvim-bqf
{ import = "astrocommunity.debugging.nvim-bqf" }
8.1.1 nvim-bqf
DEPRECATED Use the new location: quickfix/nvim-bqf
8.2 nvim-chainsaw
{ import = "astrocommunity.debugging.nvim-chainsaw" }
8.2.1 nvim-chainsaw
Speed up log creation. Create various kinds of language-specific log statements, such as logs of variables, assertions, or time-measuring.
Note: We do not expose any keys or mappings. Please see the Usage section of the plugin docs.
Repository: https://github.com/chrisgrieser/nvim-chainsaw
8.3 nvim-dap-repl-highlights
{ import = "astrocommunity.debugging.nvim-dap-repl-highlights" }
8.3.1 nvim-dap-repl-highlights
Add syntax highlighting to the nvim-dap REPL buffer using treesitter.
Repository: https://github.com/LiadOz/nvim-dap-repl-highlights
8.4 nvim-dap-view
{ import = "astrocommunity.debugging.nvim-dap-view" }
8.4.1 nvim-dap-view
minimalistic nvim-dap-ui alternative
Repository: https://github.com/igorlfs/nvim-dap-view
8.5 nvim-dap-virtual-text
{ import = "astrocommunity.debugging.nvim-dap-virtual-text" }
8.5.1 nvim-dap-virtual-text
This plugin adds virtual text support to nvim-dap.
nvim-treesitter is used to find variable definitions.
Repository: https://github.com/theHamsta/nvim-dap-virtual-text
The hlgroup for the virtual text is
NvimDapVirtualText (linked to Comment). Exceptions that
caused the debugger to stop are displayed as
NvimDapVirtualTextError (linked to
DiagnosticVirtualTextError). Changed and new variables will
be highlighted with NvimDapVirtualTextChanged (default
linked to DiagnosticVirtualTextWarn).
8.6 persistent-breakpoints-nvim
{ import = "astrocommunity.debugging.persistent-breakpoints-nvim" }
8.6.1 persistent-breakpoints.nvim
Neovim plugin for persistent breakpoints.
Repository: https://github.com/Weissle/persistent-breakpoints.nvim
Persistent-breakpoints is a lua plugin for Neovim to save the nvim-dap’s checkpoints to file and automatically load them when you open neovim. It is based on the code in here, but has better performance and some bugs are fixed.
8.7 telescope-dap-nvim
{ import = "astrocommunity.debugging.telescope-dap-nvim" }
8.7.1 telescope-dap.nvim
Integration for nvim-dap with
telescope.nvim.
This plugin is also overriding dap internal
ui, so running any dap command, which makes
use of the internal ui, will result in a telescope
prompt.
Repository: https://github.com/nvim-telescope/telescope-dap.nvim
9 diagnostics
9.1 error-lens-nvim
{ import = "astrocommunity.diagnostics.error-lens-nvim" }
9.1.1 error-lens.nvim
An enhanced visual diagnostic display for Neovim, inspired by the Error Lens extension for Visual Studio Code.
Repository: https://github.com/chikko80/error-lens.nvim
9.2 lsp_lines-nvim
{ import = "astrocommunity.diagnostics.lsp_lines-nvim" }
9.2.1 lsp_lines.nvim
lsp_lines is a simple neovim plugin that renders diagnostics using virtual lines on top of the real line of code.
Repository: https://git.sr.ht/~whynothugo/lsp_lines.nvim
9.3 tiny-inline-diagnostic-nvim
{ import = "astrocommunity.diagnostics.tiny-inline-diagnostic-nvim" }
9.3.1 tiny-inline-diagnostic.nvim
A Neovim plugin that display prettier diagnostic messages. Display one line diagnostic messages where the cursor is, with icons and colors.
Repository: https://github.com/rachartier/tiny-inline-diagnostic.nvim
Note: This sets the Astrocore diagnostics to level 2
9.4 trouble-nvim
{ import = "astrocommunity.diagnostics.trouble-nvim" }
9.4.1 trouble.nvim
🚦 A pretty diagnostics, references, telescope results, quickfix and location list to help you solve all the trouble your code is causing.
Repository: https://github.com/folke/trouble.nvim
Note: This plugin will also configure mappings to enable
integration with todo-comments.nvim if it’s being imported
and enabled another place.
10 docker
10.1 lazydocker
{ import = "astrocommunity.docker.lazydocker" }
10.1.1 lazydocker.nvim
A simple terminal UI for both docker and docker-compose.
Repository: https://github.com/mgierada/lazydocker.nvim
11 editing-support
11.1 amp-nvim
{ import = "astrocommunity.editing-support.amp-nvim" }
11.1.1 amp.nvim
This plugin allows the Amp CLI to see the file you currently have open in your Neovim instance, along with your cursor position and your text selection.
Repository: https://github.com/sourcegraph/amp.nvim
11.2 auto-save-nvim
{ import = "astrocommunity.editing-support.auto-save-nvim" }
11.2.1 auto-save.nvim
🧶 Automatically save your changes in NeoVim
Repository: https://github.com/okuuva/auto-save.nvim
11.3 bigfile-nvim
{ import = "astrocommunity.editing-support.bigfile-nvim" }
11.3.1 bigfile.nvim
Make editing big files faster 🚀
Repository: https://github.com/LunarVim/bigfile.nvim
Note: This plugin will also disable the build in
large_buf feature in AstroCore
11.4 chatgpt-nvim
{ import = "astrocommunity.editing-support.chatgpt-nvim" }
11.4.1 chatGPT.nvim
Plugin that enables you to interact with chat-GPT, straight from neovim.
Repository: https://github.com/jackMort/ChatGPT.nvim
Before enabling it, set environment variable called $OPENAI_API_KEY which you can obtain here: https://platform.openai.com/account/api-keys
ChatGPT is a Neovim plugin that allows you to effortlessly utilize the OpenAI ChatGPT API, empowering you to generate natural language responses from OpenAI’s ChatGPT directly within the editor in response to your inquiries.
11.5 cloak-nvim
{ import = "astrocommunity.editing-support.cloak-nvim" }
11.5.1 Cloak.nvim
Cloak allows you to overlay *’s over defined patterns in defined files.
Repository: https://github.com/laytan/cloak.nvim
11.6 codecompanion-nvim
{ import = "astrocommunity.editing-support.codecompanion-nvim" }
11.6.1 CodeCompanion.nvim
✨ AI-powered coding, seamlessly in Neovim
[!IMPORTANT]
codecompanion.nvimrequires Neovim 0.11.0 or later for full functionality.
Repository: https://github.com/olimorris/codecompanion.nvim
11.7 comment-box-nvim
{ import = "astrocommunity.editing-support.comment-box-nvim" }
11.7.1 Comment-box.nvim
✨ Clarify and beautify your comments using boxes and lines.
Repository: https://github.com/LudoPinelli/comment-box.nvim
11.8 conform-nvim
{ import = "astrocommunity.editing-support.conform-nvim" }
11.8.1 conform.nvim
Lightweight yet powerful formatter plugin for Neovim
Repository: https://github.com/stevearc/conform.nvim
11.9 copilotchat-nvim
{ import = "astrocommunity.editing-support.copilotchat-nvim" }
11.9.1 CopilotChat.nvim
Chat with GitHub Copilot in Neovim
Repository: https://github.com/CopilotC-Nvim/CopilotChat.nvim
11.10 cutlass-nvim
{ import = "astrocommunity.editing-support.cutlass-nvim" }
11.10.1 cutlass.nvim
Plugin that adds a ‘cut’ operation separate from ‘delete’
Repository: https://github.com/gbprod/cutlass.nvim
Cutlass overrides the delete operations to actually just delete and not affect the current yank.
This plugin also adds the leap.nvim integration if the
plugin is present.
11.11 dial-nvim
{ import = "astrocommunity.editing-support.dial-nvim" }
11.11.1 dial.nvim
enhanced increment/decrement plugin for Neovim.
Repository: https://github.com/monaqa/dial.nvim
11.12 hypersonic-nvim
{ import = "astrocommunity.editing-support.hypersonic-nvim" }
11.12.1 Hypersonic.nvim
A Neovim plugin that provides an explanation for regular expressions.
Repository: https://github.com/tomiis4/hypersonic.nvim
11.13 mcphub-nvim
{ import = "astrocommunity.editing-support.mcphub-nvim" }
11.13.1 Mcphub.nvim
A powerful Neovim plugin for managing MCP (Model Context Protocol) servers
Note: This plugin requires mcp-hub to be
installed. This can be done with npm, bun,
yarn, or pnpm.
Repository: https://github.com/ravitemer/mcphub.nvim/tree/main
11.14 mini-operators
{ import = "astrocommunity.editing-support.mini-operators" }
11.14.1 mini-operators
Text edit operators. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.operators
11.15 mini-splitjoin
{ import = "astrocommunity.editing-support.mini-splitjoin" }
11.15.1 mini.splitjoin
Neovim Lua plugin to split and join arguments. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.splitjoin
11.16 multicursors-nvim
{ import = "astrocommunity.editing-support.multicursors-nvim" }
11.16.1 multicursors.nvim
A multi cursor plugin for Neovim. Repository: https://github.com/smoka7/multicursors.nvim
11.17 multiple-cursors-nvim
{ import = "astrocommunity.editing-support.multiple-cursors-nvim" }
11.17.1 multiple-cursors.nvim
A multi-cursor plugin for Neovim that works in normal, insert/replace, or visual modes, and with almost every command
Repository: https://github.com/brenton-leighton/multiple-cursors.nvim
11.18 neogen
{ import = "astrocommunity.editing-support.neogen" }
11.18.1 neogen
A better annotation generator. Supports multiple languages and annotation conventions.
Repository: https://github.com/danymat/neogen
11.19 nvim-context-vt
{ import = "astrocommunity.editing-support.nvim-context-vt" }
11.19.1 nvim-context-vt
Virtual text context for neovim treesitter
Repository: https://github.com/andersevenrud/nvim_context_vt
11.20 nvim-devdocs
{ import = "astrocommunity.editing-support.nvim-devdocs" }
11.20.1 nvim-devdocs
Repository: https://github.com/warpaint9299/nvim-devdocs
nvim-devdocs is a plugin which brings DevDocs documentations into neovim. Install, search and preview documentations directly inside neovim in markdown format with telescope integration. You can also use custom commands like glow to render the markdown for a better experience.
Astrocommunity note: glow render will work out of the box if you have it on your PATH
11.21 nvim-origami
{ import = "astrocommunity.editing-support.nvim-origami" }
11.21.1 nvim-origami
Fold with relentless elegance.
Repository: https://github.com/chrisgrieser/nvim-origami
11.22 nvim-paredit
{ import = "astrocommunity.editing-support.nvim-paredit" }
11.22.0.1 nvim-paredit
A Paredit implementation for Neovim, built using Treesitter and written in Lua.
Supported Languages: Clojure, Fennel, Scheme, CommonLisp
Repository: https://github.com/julienvincent/nvim-paredit
11.23 nvim-parinfer
{ import = "astrocommunity.editing-support.nvim-parinfer" }
11.23.0.1 nvim-parinfer
parinfer for Neovim
Supported Languages: Clojure, Scheme, LISP, Racket, Hy, Fennel, Janet, Carp, Wast, Yuck, Dune
Repository: https://github.com/gpanders/nvim-parinfer
11.24 nvim-regexplainer
{ import = "astrocommunity.editing-support.nvim-regexplainer" }
11.24.1 nvim-regexplainer
Describe the regexp under the cursor
Repository: https://github.com/bennypowers/nvim-regexplainer
Toggle it with gR
11.25 nvim-treesitter-context
{ import = "astrocommunity.editing-support.nvim-treesitter-context" }
11.25.1 nvim-treesitter-context
Show code context.
Repository: https://github.com/nvim-treesitter/nvim-treesitter-context
11.26 nvim-treesitter-endwise
{ import = "astrocommunity.editing-support.nvim-treesitter-endwise" }
11.26.0.1 nvim-treesitter-endwise
This is a simple plugin that helps to end certain structures automatically. In Ruby, this means adding end after if, do, def, etc. This even works for languages nested inside other, such as Markdown with a Lua code block!
Supported Languages: Ruby, Lua, Vimscript, Bash, Elixir, Fish
Repository: https://github.com/RRethy/nvim-treesitter-endwise
11.27 nvim-treesitter-sexp
{ import = "astrocommunity.editing-support.nvim-treesitter-sexp" }
11.27.0.1 nvim-treesitter-sexp
A plugin for Neovim for editing code by manipulating the Treesitter AST. Basically a reimplementation of vim-sexp using treesitter queries. This is particularly useful for editing Lisps and manipulating data structures
Supported Languages: Clojure, Fennel, Janet, Query
Repository: https://github.com/PaterJason/nvim-treesitter-sexp
NOTE: Disabled for Neovim 0.11 (treesitter breaking changes)
11.28 nvim-ts-rainbow
{ import = "astrocommunity.editing-support.nvim-ts-rainbow" }
11.28.1 nvim-ts-rainbow
Rainbow parentheses for neovim using tree-sitter.
Repository: https://github.com/mrjones2014/nvim-ts-rainbow
Note: This repository has been archived by the owner on Jun 7, 2023. It is now read-only.
As recommended by the author of this plugin, you might want to use nvim-ts-rainbow2
11.29 nvim-ts-rainbow2
{ import = "astrocommunity.editing-support.nvim-ts-rainbow2" }
11.29.1 nvim-ts-rainbow2
Rainbow delimiters for Neovim through Tree-sitter
Repository: https://github.com/HiPhish/nvim-ts-rainbow2
Note: This plugin has been deprecated in favor of the new rainbow-delimiters.nvim
This is a hard fork of the nvim-ts-rainbow package & is recommended over it.
11.30 other-nvim
{ import = "astrocommunity.editing-support.other-nvim" }
11.30.1 other-nvim
Open alternative files for the current buffer.
Supported Languages:
- built-in: livewire, angular, laravel, rails, golang, python, react, rust, elixir, clojure
Repository: https://github.com/rgroli/other.nvim
11.31 parpar-nvim
{ import = "astrocommunity.editing-support.parpar-nvim" }
11.31.0.1 parpar-nvim
Plugin for Neovim that seamlessly integrates Parinfer and Paredit for editing lisp code.
Supported Languages: Clojure, Fennel, Scheme, CommonLisp
Repository: https://github.com/dundalek/parpar.nvim
11.32 quick-scope
{ import = "astrocommunity.editing-support.quick-scope" }
11.32.1 quick-scope
Visual guides on current line for f and t motions.
Repository: https://github.com/unblevable/quick-scope
11.33 rainbow-delimiters-nvim
{ import = "astrocommunity.editing-support.rainbow-delimiters-nvim" }
11.33.1 rainbow-delimiters.nvim
Rainbow delimiters for Neovim with Tree-sitter
Repository: https://github.com/HiPhish/rainbow-delimiters.nvim
This is a hard fork of the nvim-ts-rainbow2 plugin & is recommended over it.
11.34 refactoring-nvim
{ import = "astrocommunity.editing-support.refactoring-nvim" }
11.34.1 refactoring.nvim
The Refactoring library based off the Refactoring book by Martin Fowler
Repository: https://github.com/ThePrimeagen/refactoring.nvim
11.35 rustowl
{ import = "astrocommunity.editing-support.rustowl" }
11.35.1 Rustowl
Visualize Ownership and Lifetimes in Rust.
See docs for usage
Repository: https://github.com/cordx56/rustowl
11.36 stickybuf-nvim
{ import = "astrocommunity.editing-support.stickybuf-nvim" }
11.36.1 stickybuf.nvim
Neovim plugin for locking a buffer to a window
Have you ever accidentally opened a file into your file explorer or quickfix window?
Repository: https://github.com/stevearc/stickybuf.nvim
11.37 suda-vim
{ import = "astrocommunity.editing-support.suda-vim" }
11.37.1 suda.vim
🥪 An alternative sudo.vim for Vim and Neovim, limited support sudo in Windows
Repository: https://github.com/lambdalisue/suda.vim
suda is a plugin to read or write files with sudo command.
11.38 telescope-undo-nvim
{ import = "astrocommunity.editing-support.telescope-undo-nvim" }
11.38.1 telescope-undo.nvim
A telescope extension to view and search your undo tree 🌴
Repository: https://github.com/debugloop/telescope-undo.nvim
11.39 text-case-nvim
{ import = "astrocommunity.editing-support.text-case-nvim" }
11.39.1 text-case.nvim
An all in one plugin for converting text case in Neovim
Repository: https://github.com/johmsalas/text-case.nvim
11.40 todo-comments-nvim
{ import = "astrocommunity.editing-support.todo-comments-nvim" }
11.40.1 todo-comments.nvim
✅ Highlight, list and search todo comments in your projects
Repository: https://github.com/folke/todo-comments.nvim
Note: This plugins is part of AstroNvim core as of v4.0.0
11.41 treesj
{ import = "astrocommunity.editing-support.treesj" }
11.41.1 treesj
Neovim plugin for splitting/joining blocks of code
Repository: https://github.com/Wansmer/treesj
11.42 true-zen-nvim
{ import = "astrocommunity.editing-support.true-zen-nvim" }
11.42.1 true-zen.nvim
🦝 Clean and elegant distraction-free writing for NeoVim
Repository: https://github.com/Pocco81/true-zen.nvim
11.43 ultimate-autopair-nvim
{ import = "astrocommunity.editing-support.ultimate-autopair-nvim" }
11.43.1 ultimate-autopair.nvim
Repository https://github.com/altermo/ultimate-autopair.nvim
- Replace nvim-autopairs with ultimate-autopair.nvim.
- Setup rule to automatically disable pairing while editing comments.
- Maintain
<Leader>uaUI toggle keymap and notification previously used for nvim-autopair.
11.44 undotree
{ import = "astrocommunity.editing-support.undotree" }
11.44.1 undotree
The undo history visualizer for VIM
Repository: https://github.com/mbbill/undotree
11.45 vector-code-nvim
{ import = "astrocommunity.editing-support.vector-code-nvim" }
11.45.1 VectorCode
Note: This plugin requires vectorcode-cli to be
installed. This can be done with uv
Repository: https://github.com/Davidyz/VectorCode
11.46 vim-doge
{ import = "astrocommunity.editing-support.vim-doge" }
11.46.1 vim-doge
(Do)cumentation (Ge)nerator for nearly 20 languages 📚 Generate proper code documentation with a single keypress. ⚡️🔥
Repository: https://github.com/kkoomen/vim-doge
11.47 vim-exchange
{ import = "astrocommunity.editing-support.vim-exchange" }
11.47.1 vim-exchange
Exchange text and selections easily
Repository: https://github.com/tommcdo/vim-exchange
11.48 vim-move
{ import = "astrocommunity.editing-support.vim-move" }
11.48.1 vim-move
Moves lines and selections in a more visual manner
Repository: https://github.com/matze/vim-move
11.49 vim-visual-multi
{ import = "astrocommunity.editing-support.vim-visual-multi" }
11.49.1 vim-visual-multi
Multiple cursors plugin for vim/neovim.
Repository: https://github.com/mg979/vim-visual-multi
11.50 wildfire-nvim
{ import = "astrocommunity.editing-support.wildfire-nvim" }
11.50.1 wildfire.nvim
Wildfire burns treesitter
Repository: https://github.com/SUSTech-data/wildfire.nvim
Smart selection of the closest text object. A modern successor to wildfire.vim, empowered with the superpower of treesitter.
11.51 yanky-nvim
{ import = "astrocommunity.editing-support.yanky-nvim" }
11.51.1 yanky.nvim
Improved Yank and Put functionalities for Neovim.
Repository: https://github.com/gbprod/yanky.nvim
11.52 zen-mode-nvim
{ import = "astrocommunity.editing-support.zen-mode-nvim" }
11.52.1 zen-mode.nvim
🧘 Distraction-free coding for Neovim
Disables diagnostics, indentation, and winbar when entering Zen Mode.
Optionally disables mini.indentscope and offscreen matchups for vim-matchup, if installed.
Repository: https://github.com/folke/zen-mode.nvim
12 file-explorer
12.1 fyler-nvim
{ import = "astrocommunity.file-explorer.fyler-nvim" }
12.1.1 fyler.nvim
A neovim file manager which can edit file system like a buffer with tree view
Repository: https://github.com/A7Lavinraj/fyler.nvim
12.2 mini-files
{ import = "astrocommunity.file-explorer.mini-files" }
12.2.1 mini.files
Status: Beta
Neovim Lua plugin to navigate and manipulate file system. Part of mini.nvim library
For any issues that’s causes by mini.nvim itself, please
report those here:
https://github.com/echasnovski/mini.nvim/issues/377
Repository: https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-files.md
Navigate and manipulate file system
12.3 oil-nvim
{ import = "astrocommunity.file-explorer.oil-nvim" }
12.3.1 oil.nvim
Neovim file explorer: edit your filesystem like a buffer
Repository: https://github.com/stevearc/oil.nvim
12.4 telescope-file-browser-nvim
{ import = "astrocommunity.file-explorer.telescope-file-browser-nvim" }
12.4.1 telescope-file-browser.nvim
File Browser extension for telescope.nvim
Repository: https://github.com/nvim-telescope/telescope-file-browser.nvim
13 fuzzy-finder
13.1 fzf-lua
{ import = "astrocommunity.fuzzy-finder.fzf-lua" }
13.1.1 fzf-lua
Improved fzf.vim written in lua
Repository: https://github.com/ibhagwan/fzf-lua
13.2 namu-nvim
{ import = "astrocommunity.fuzzy-finder.namu-nvim" }
13.2.1 namu.nvim
Flexible and sleek fuzzy picker, LSP symbol navigator, and more. Powered by builtin Selecta, inspired by Zed.
Repository: https://github.com/bassamsdata/namu.nvim
13.3 snacks-picker
{ import = "astrocommunity.fuzzy-finder.snacks-picker" }
13.3.1 snacks.picker
Snacks now comes with a modern fuzzy-finder to navigate the Neovim universe.
Repository: https://github.com/folke/snacks.nvim/blob/main/docs/picker.md
13.4 telescope-nvim
{ import = "astrocommunity.fuzzy-finder.telescope-nvim" }
13.4.1 telescope.nvim
Find, Filter, Preview, Pick. All lua, all the time.
Repository: https://github.com/nvim-telescope/telescope.nvim
13.5 telescope-zoxide
{ import = "astrocommunity.fuzzy-finder.telescope-zoxide" }
13.5.1 telescope-zoxide
An extension for telescope.nvim that allows you operate zoxide within Neovim.
Repository: https://github.com/jvgrootveld/telescope-zoxide
14 game
14.1 leetcode-nvim
{ import = "astrocommunity.game.leetcode-nvim" }
14.1.1 leetcode.nvim
A Neovim plugin enabling you to solve LeetCode problems.
Repository: https://github.com/kawre/leetcode.nvim
15 git
15.1 blame-nvim
{ import = "astrocommunity.git.blame-nvim" }
15.1.1 blame.nvim
Neovim fugitive style git blame plugin
Repository: https://github.com/FabijanZulj/blame.nvim
Adds git blame visualizer.
15.2 diffview-nvim
{ import = "astrocommunity.git.diffview-nvim" }
15.2.1 diffview.nvim
Single tabpage interface for easily cycling through diffs for all modified files for any git rev.
Repository: https://github.com/sindrets/diffview.nvim
15.3 fugit2-nvim
{ import = "astrocommunity.git.fugit2-nvim" }
15.3.1 fugit2.nvim
A porcelain git helper inside Neovim powered by libgit2
Requires:
- libgit2 portable git implementation
Repository: https://github.com/SuperBo/fugit2.nvim
15.4 gist-nvim
{ import = "astrocommunity.git.gist-nvim" }
15.4.1 gist-nvim
gist.nvim is a Neovim plugin that allows you to create a GitHub Gist from the current file. The plugin uses the gh command-line tool to create the Gist and provides a simple interface for specifying the Gist’s description and privacy settings.
Repository https://github.com/rawnly/gist.nvim
Requirements:
ghcommand-line tool to create the Gist.
15.5 git-blame-nvim
{ import = "astrocommunity.git.git-blame-nvim" }
15.5.1 git-blame.nvim
Git Blame plugin for Neovim written in Lua
Repository: https://github.com/f-person/git-blame.nvim
Adds git-blame info to all lines.
15.6 gitgraph-nvim
{ import = "astrocommunity.git.gitgraph-nvim" }
15.6.1 gitgraph.nvim
Git Graph plugin for neovim
Repository https://github.com/isakbm/gitgraph.nvim
15.7 gitlinker-nvim
{ import = "astrocommunity.git.gitlinker-nvim" }
15.7.1 gitlinker-nvim
A lua neovim plugin to generate shareable file permalinks (with line ranges) for several git web frontend hosts. Inspired by tpope/vim-fugitive’s :GBrowse
Repository: https://github.com/linrongbin16/gitlinker.nvim
15.8 mini-diff
{ import = "astrocommunity.git.mini-diff" }
15.8.1 mini.diff
Work with diff hunks. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.diff
15.9 mini-git
{ import = "astrocommunity.git.mini-git" }
15.9.1 mini.git
Neovim Lua plugin to automate tracking of Git related data.
Repository: https://github.com/echasnovski/mini-git
Git integration
15.10 neogit
{ import = "astrocommunity.git.neogit" }
15.10.1 neogit
magit for neovim
Repository: https://github.com/TimUntersberger/neogit
A work-in-progress Magit clone for Neovim that is geared toward the Vim philosophy.
15.11 nvim-tinygit
{ import = "astrocommunity.git.nvim-tinygit" }
15.11.1 nvim-tinygit
Lightweight and nimble git client for nvim.
Repository: https://github.com/chrisgrieser/nvim-tinygit
15.12 octo-nvim
{ import = "astrocommunity.git.octo-nvim" }
15.12.1 octo.nvim
Edit and review GitHub issues and pull requests from the comfort of your favorite editor
Repository: https://github.com/pwntester/octo.nvim
15.13 openingh-nvim
{ import = "astrocommunity.git.openingh-nvim" }
15.13.1 openingh.nvim
Open file or project in GitHub for neovim written in lua
Repository: https://github.com/Almo7aya/openingh.nvim
Opens the current file or project page in GitHub.
16 icon
16.1 mini-icons
{ import = "astrocommunity.icon.mini-icons" }
16.1.1 mini.icons
Icon provider. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.icons
17 indent
17.1 indent-blankline-nvim
{ import = "astrocommunity.indent.indent-blankline-nvim" }
17.1.1 indent-blankline.nvim
Indent guides for Neovim
Repository: https://github.com/lukas-reineke/indent-blankline.nvim
Adds indentation guides to all lines (including empty lines), looks cool together with mini-identscope
17.2 indent-rainbowline
{ import = "astrocommunity.indent.indent-rainbowline" }
17.2.1 indent-rainbowline.nvim
Provides rainbow indentation like indent-rainbow in Visual Studio Code Extension
Repository: https://github.com/TheGLander/indent-rainbowline.nvim
17.3 indent-tools-nvim
{ import = "astrocommunity.indent.indent-tools-nvim" }
17.3.1 indent-tools.nvim
Neovim pluging for dealing with indentations
Repository: https://github.com/arsham/indent-tools.nvim
17.4 mini-indentscope
{ import = "astrocommunity.indent.mini-indentscope" }
17.4.1 mini.identscope
Neovim Lua plugin to visualize and operate on indent scope. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.indentscope
Visualize and operate on indent scope, looks cool with indent-blankline-nvim together
17.5 snacks-indent-hlchunk
{ import = "astrocommunity.indent.snacks-indent-hlchunk" }
17.5.1 snacks-indent-hlchunk
A recipe to replicate hlchunk.nvim-style indent chunk
highlighting using folke/snacks.nvim.
This setup enables visual chunk borders with rounded corners and lines (╭─╰│), providing a lightweight alternative to shellRaining/hlchunk.nvim.
18 keybinding
18.1 hydra-nvim
{ import = "astrocommunity.keybinding.hydra-nvim" }
18.1.1 Hydra.nvim
Create custom submodes and menus
Repository: https://github.com/nvimtools/hydra.nvim
This implements configuration of Hydra.nvim through the
opts table to make it easier for the user to configure
various Hydra heads as well as allow AstroCommunity entries to also
provide Hydra heads if it makes sense. Here is an example of defining a
Hydra using the opts table:
return {
"nvimtools/hydra.nvim",
opts = {
-- the first key is the name if name isn't set in the table
["Side scroll"] = {
mode = "n",
body = "z",
heads = {
{ "h", "5zh", { desc = "←" } },
{ "l", "5zl", { desc = "→" } },
{ "H", "zH", { desc = "half screen ←" } },
{ "L", "zL", { desc = "half screen →" } },
},
},
},
}For advanced users, this also makes the resulting Hydra objects
available through the use of the AstroCore utility:
plugin_opts. Here is an example of retrieving the Hydra
object during runtime:
require("lazy").load { plugins = { "hydra.nvim" } } -- load Hydra before loading opts
local hydra_opts = require("astrocore").plugin_opts "hydra.nvim" -- get the plugin options
local side_scroll_hydra = hydra_opts["Side scroll"].hydra -- get the created hydra by key name
side_scroll_hydra:activate() -- use the object like normal18.2 mini-clue
{ import = "astrocommunity.keybinding.mini-clue" }
18.2.1 Mini.clue
Show next key clues. Part of the mini.nvim library.
Repository: https://github.com/echasnovski/mini.clue
19 lsp
19.1 actions-preview-nvim
{ import = "astrocommunity.lsp.actions-preview-nvim" }
19.1.1 Actions Preview
Fully customizable previewer for LSP code actions.
Repository: https://github.com/aznhe21/actions-preview.nvim
19.2 coc-nvim
{ import = "astrocommunity.lsp.coc-nvim" }
19.2.1 Conqueror of Completion
Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.
Repository: https://github.com/neoclide/coc.nvim
19.3 delimited-nvim
{ import = "astrocommunity.lsp.delimited-nvim" }
19.3.1 delimited.nvim
A tidy, more informative goto_{next,prev} for Neovim
Repository: https://github.com/mizlan/delimited.nvim
19.4 dev-tools-nvim
{ import = "astrocommunity.lsp.dev-tools-nvim" }
19.4.1 Dev-tools.nvim
Friendly developer tools for Nvim - Code Actions LSP server and library
Repository: https://github.com/yarospace/dev-tools.nvim
19.5 garbage-day-nvim
{ import = "astrocommunity.lsp.garbage-day-nvim" }
19.5.1 garbage-day.nvim
Garbage collector that stops inactive LSP clients to free RAM.
Repository: https://github.com/zeioth/garbage-day.nvim
19.6 inc-rename-nvim
{ import = "astrocommunity.lsp.inc-rename-nvim" }
19.6.1 inc-rename.nvim
Incremental LSP renaming based on Neovim’s command-preview feature.
Repository: https://github.com/smjonas/inc-rename.nvim
19.7 lsp-inlayhints-nvim
{ import = "astrocommunity.lsp.lsp-inlayhints-nvim" }
19.7.1 lsp-inlayhints.nvim
Repository: https://github.com/lvimuser/lsp-inlayhints.nvim
Partial implementation of LSP inlay hint.
19.8 lsp-lens-nvim
{ import = "astrocommunity.lsp.lsp-lens-nvim" }
19.8.1 lsp-lens.nvim
Neovim plugin for displaying reference and definition info upon functions like JB’s IDEA.
Repository: https://github.com/VidocqH/lsp-lens.nvim
19.9 lsp-signature-nvim
{ import = "astrocommunity.lsp.lsp-signature-nvim" }
19.9.1 lsp_signature.nvim
Repository: https://github.com/ray-x/lsp_signature.nvim
Show function signature when you type.
Additional hint is visually distracting therefore “hint_enable” option is set to false.
19.10 lsplinks-nvim
{ import = "astrocommunity.lsp.lsplinks-nvim" }
19.10.1 lsplinks.nvim
LSP textDocument/documentLink support for neovim
Repository: https://github.com/icholy/lsplinks.nvim
19.11 lspsaga-nvim
{ import = "astrocommunity.lsp.lspsaga-nvim" }
19.11.1 lspsaga.nvim
improve neovim lsp experience
Repository: https://github.com/nvimdev/lspsaga.nvim
19.12 nvim-java
{ import = "astrocommunity.lsp.nvim-java" }
19.12.1 nvim-java
Painless Java in Neovim
Repository: https://github.com/nvim-java/nvim-java
19.13 nvim-lint
{ import = "astrocommunity.lsp.nvim-lint" }
19.13.1 nvim-lint
An asynchronous linter plugin for Neovim complementary to the built-in Language Server Protocol support.
Repository: https://github.com/mfussenegger/nvim-lint
19.14 nvim-lsp-endhints
{ import = "astrocommunity.lsp.nvim-lsp-endhints" }
19.14.1 nvim-lsp-endhints
Display LSP inlay hints at the end of the line, rather than within the line.
Repository: https://github.com/chrisgrieser/nvim-lsp-endhints
19.15 nvim-lsp-file-operations
{ import = "astrocommunity.lsp.nvim-lsp-file-operations" }
19.15.1 nvim-lsp-file-operations
Repository: https://github.com/antosha417/nvim-lsp-file-operations
Neovim plugin that adds support for file operations using built-in
LSP by integrating with nvim-tree and
neo-tree.
19.16 sonarlint-nvim
{ import = "astrocommunity.lsp.sonarlint-nvim" }
19.16.1 sonarlint.nvim
A community plugin that integrates SonarLint language server for static code analysis and linting.
19.16.1.1 Configured Languages
- C/C++
- Docker
- Go
- HTML/CSS
- Java
- JavaScript/TypeScript
- PHP
- Python
- XML
Repository: https://gitlab.com/schrieveslaach/sonarlint.nvim
19.17 ts-error-translator-nvim
{ import = "astrocommunity.lsp.ts-error-translator-nvim" }
19.17.1 ts-error-translator.nvim
A Neovim port of Matt Pocock’s ts-error-translator for VSCode for turning messy and confusing TypeScript errors into plain English.
Repository: https://github.com/dmmulroy/ts-error-translator.nvim
20 markdown-and-latex
20.1 glow-nvim
{ import = "astrocommunity.markdown-and-latex.glow-nvim" }
20.1.1 glow.nvim
A markdown preview directly in your neovim.
Repository: https://github.com/ellisonleao/glow.nvim
20.2 markdown-preview-nvim
{ import = "astrocommunity.markdown-and-latex.markdown-preview-nvim" }
20.2.1 markdown-preview.nvim
This plugin requires Node.js to be installed on your system. Without it, the installation process will fail, and the plugin won’t work.
markdown preview plugin for (neo)vim
Repository: https://github.com/iamcco/markdown-preview.nvim
Preview markdown on your modern browser with synchronised scrolling and flexible configuration
20.3 markmap-nvim
{ import = "astrocommunity.markdown-and-latex.markmap-nvim" }
20.3.1 markmap.nvim
Visualize your Markdown as mindmaps with markmap
Repository: https://github.com/Zeioth/markmap.nvim
Note: This plugin requires markmap-cli to be
installed. This can be done with npm install -g markmap-cli
or yarn global add markmap-cli.
20.4 markview-nvim
{ import = "astrocommunity.markdown-and-latex.markview-nvim" }
20.4.1 markview.nvim
An experimental markdown previewer for Neovim
Repository: https://github.com/OXY2DEV/markview.nvim
20.5 peek-nvim
{ import = "astrocommunity.markdown-and-latex.peek-nvim" }
20.5.1 peek.nvim
Markdown preview plugin for Neovim
Repository: https://github.com/toppair/peek.nvim
20.6 render-markdown-nvim
{ import = "astrocommunity.markdown-and-latex.render-markdown-nvim" }
20.6.1 render-markdown.nvim
Plugin to improve viewing Markdown files in Neovim
Repository: https://github.com/MeanderingProgrammer/render-markdown.nvim
20.7 texpresso-vim
{ import = "astrocommunity.markdown-and-latex.texpresso-vim" }
20.7.1 Texpresso.vim
Neovim mode for TeXpresso.
20.7.1.1 Requirements
- Make sure you have texpresso installed on your machine.
Repository: https://github.com/let-def/texpresso.vim
20.8 vimtex
{ import = "astrocommunity.markdown-and-latex.vimtex" }
20.8.1 VimTeX
VimTeX: A modern Vim and neovim filetype plugin for LaTeX files.
Repository: https://github.com/lervag/vimtex
- sets
lazyto false by default.
21 media
21.1 codesnap-nvim
{ import = "astrocommunity.media.codesnap-nvim" }
21.1.1 CodeSnap.nvim
📸 Snapshot plugin with rich features that can make pretty code snapshots for Neovim
Repository: https://github.com/mistricky/codesnap.nvim
This plugin spec defaults the save_path to
~/Pictures.
[!NOTE]
The latest version of CodeSnap does not support Windows. If you are a Windows user, this plugin will pin the latest compatible version, which is 0.0.11.
If you already have this plugin installed on your computer, make sure to delete the current version by running the following command:
:Lazy clean codesnap.nvim
21.2 cord-nvim
{ import = "astrocommunity.media.cord-nvim" }
21.2.1 cord.nvim
🚀 Discord Rich Presence for Neovim
Repository: https://github.com/vyfor/cord.nvim
21.3 drop-nvim
{ import = "astrocommunity.media.drop-nvim" }
21.3.1 drop.nvim
🍁 Fun little plugin that can be used as a screensaver and on your dashboard
Repository: https://github.com/folke/drop.nvim
21.4 image-nvim
{ import = "astrocommunity.media.image-nvim" }
21.4.1 image.nvim
This plugin attempts to add image support to Neovim.
Repository: https://github.com/3rd/image.nvim
Works with Kitty + Tmux, and it handles painful things like rendering an image at a given position in a buffer, scrolling, windows, etc.
It has built-in Markdown and Neorg integrations that you can use right now. It can also render image files as images when opened.
Requirements
These are things you have to setup on your own
- Kitty >= 28.0 - for the kitty backend
- ueberzugpp - for the ueberzug backend
- curl - for remote images
This plugin is configured to be used with kitty terminal
21.5 img-clip-nvim
{ import = "astrocommunity.media.img-clip-nvim" }
21.5.1 📋 img-clip.nvim
Effortlessly embed images into any markup language, like LaTeX, Markdown or Typst
Repository: https://github.com/HakonHarnes/img-clip.nvim
21.6 neocord-nvim
{ import = "astrocommunity.media.neocord-nvim" }
21.6.1 neocord.nvim
Discord Rich Presence for Neovim (Fork of presence.nvim)
Repository: https://github.com/IogaMaster/neocord
21.7 pets-nvim
{ import = "astrocommunity.media.pets-nvim" }
21.7.1 pets.nvim
Display pets in your editor 🐱
Repository: https://github.com/giusgad/pets.nvim
21.8 presence-nvim
{ import = "astrocommunity.media.presence-nvim" }
21.8.1 presence.nvim
Discord Rich Presence for Neovim
Repository: https://github.com/andweeb/presence.nvim
21.9 vim-wakatime
{ import = "astrocommunity.media.vim-wakatime" }
21.9.1 vim-wakatime
Vim plugin for automatic time tracking and metrics generated from your programming activity.
Repository: https://github.com/wakatime/vim-wakatime
22 motion
22.1 before-nvim
{ import = "astrocommunity.motion.before-nvim" }
22.1.1 before.nvim
Plugin for Neovim which tracks edit locations
Repository: https://github.com/bloznelis/before.nvim
22.2 flash-nvim
{ import = "astrocommunity.motion.flash-nvim" }
22.2.1 flash.nvim
flash.nvim lets you navigate your code with search
labels, enhanced character motions, and Treesitter integration.
Repository: https://github.com/folke/flash.nvim
22.2.1.1 ✨ Features
- 🔍 Search Integration: integrate
flash.nvim with your regular search using
/or?. Labels appear next to the matches, allowing you to quickly jump to any location. Labels are guaranteed not to exist as a continuation of the search pattern. - ⌨️ type as many characters as you want before using a jump label.
- ⚡ Enhanced
f,t,F,Tmotions - 🌳 Treesitter Integration: all parents of the Treesitter node under your cursor are highlighted with a label for quick selection of a specific Treesitter node.
- 🎯 Jump Mode: a standalone jumping mode similar to search
- 🔎 Search Modes:
exact,search(regex), andfuzzysearch modes - 🪟 Multi Window jumping
- 🌐 Remote Actions: perform motions in remote locations
- ⚫ dot-repeatable jumps
- 📡 highly extensible: check the examples
22.3 flit-nvim
{ import = "astrocommunity.motion.flit-nvim" }
22.3.1 flit.nvim
Enhanced f/t motions for Leap
Repository: https://github.com/ggandor/flit.nvim
f/F/t/T motions on steroids, building on the Leap interface.
22.4 grapple-nvim
{ import = "astrocommunity.motion.grapple-nvim" }
22.4.1 Grapple.nvim
Neovim plugin for tagging important files
Repository: https://github.com/cbochs/grapple.nvim
22.4.1.0.1 Example of a custom Heirline component for AstroNvim
local status = require "astrocore.status"
status.component.grapple = {
provider = function()
local available, grapple = pcall(require, "grapple")
if available then
return grapple.statusline()
end
end,
}Example Configuration:
return {
plugins = {
{
"rebelot/heirline.nvim",
opts = function(_, opts)
local status = require("astrocore.status")
-- custom heirline statusline component for grapple
status.component.grapple = {
provider = function()
local available, grapple = pcall(require, "grapple")
if available then
return grapple.statusline()
end
end,
}
opts.statusline = {
hl = { fg = "fg", bg = "bg" },
status.component.mode(),
status.component.git_branch(),
status.component.grapple, -- load the custom component
status.component.file_info { filetype = {}, filename = false, file_modified = false },
status.component.git_diff(),
status.component.diagnostics(),
status.component.fill(),
status.component.cmd_info(),
status.component.fill(),
status.component.lsp(),
status.component.treesitter(),
status.component.nav(),
status.component.mode { surround = { separator = "right" } },
}
end,
},
},
}22.5 harp-nvim
{ import = "astrocommunity.motion.harp-nvim" }
22.5.1 harp.nvim
Neovim integration for use with harp
Dependencies:
Repository: https://github.com/Thorinori/harp-nvim
22.6 harpoon
{ import = "astrocommunity.motion.harpoon" }
22.6.1 Harpoon
Repository: https://github.com/ThePrimeagen/harpoon
Getting you where you want with the fewest keystrokes.
22.7 hop-nvim
{ import = "astrocommunity.motion.hop-nvim" }
22.7.1 hop.nvim
Neovim motions on speed!
Repository: https://github.com/smoka7/hop.nvim
Hop is an EasyMotion-like plugin allowing you to jump anywhere in a document with as few keystrokes as possible. It does so by annotating text in your buffer with hints, short string sequences for which each character represents a key to type to jump to the annotated text. Most of the time, those sequences’ lengths will be between 1 to 3 characters, making every jump target in your document reachable in a few keystrokes.
22.8 leap-nvim
{ import = "astrocommunity.motion.leap-nvim" }
22.8.1 leap.nvim
Neovim’s answer to the mouse 🦘
Repository: https://github.com/ggandor/leap.nvim
22.9 marks-nvim
{ import = "astrocommunity.motion.marks-nvim" }
22.9.1 marks.nvim
A better user experience for interacting with and manipulating Vim marks. Requires Neovim 0.5+.
Repository: https://github.com/chentoast/marks.nvim
22.9.1.1 Features
- view marks in the sign column
- quickly add, delete, and toggle marks
- cycle between marks
- preview marks in floating windows
- extract marks to quickfix/location list
- set bookmarks with sign/virtual text annotations for quick navigation across buffers
22.10 mini-ai
{ import = "astrocommunity.motion.mini-ai" }
22.10.1 mini.ai
Neovim Lua plugin to extend and create a/i
textobjects. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.ai
Extend and create a/i textobjects
22.11 mini-basics
{ import = "astrocommunity.motion.mini-basics" }
22.11.1 mini.basics
Neovim Lua plugin with common configuration presets for options, mappings, and autocommands. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.basics
22.12 mini-bracketed
{ import = "astrocommunity.motion.mini-bracketed" }
22.12.1 mini.bracketed
Neovim Lua plugin to go forward/backward with square brackets. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.bracketed
22.13 mini-jump
{ import = "astrocommunity.motion.mini-jump" }
22.13.1 mini.jump
Neovim Lua plugin to jump forward/backward to a single character. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.jump
Jump to next/previous single character
22.14 mini-move
{ import = "astrocommunity.motion.mini-move" }
22.14.1 mini.move
Neovim Lua plugin to move any selection in any direction. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.move
22.15 mini-surround
{ import = "astrocommunity.motion.mini-surround" }
22.15.1 mini.surround
Neovim Lua plugin with fast and feature-rich surround actions. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.surround
Fast and feature-rich surround actions
22.16 nvim-spider
{ import = "astrocommunity.motion.nvim-spider" }
22.16.1 nvim-spider
Use the w, e, b motions like a spider. Move by subwords and skip insignificant punctuation.
Repository: https://github.com/chrisgrieser/nvim-spider
22.16.2 Features
22.16.2.1 Subword Motion
-- positions vim's `w` will move to
local myVariableName = FOO_BAR_BAZ
-- ^ ^ ^
-- positions spider's `w` will move to
local myVariableName = FOO_BAR_BAZ
-- ^ ^ ^ ^ ^ ^ ^ 22.16.2.2 Skipping Insignificant Punctuation
foo == bar .. "baz"
-- ^ ^ significant punctuation
foo:find("a")
-- ^ ^ ^ insignificant punctuation 22.17 nvim-surround
{ import = "astrocommunity.motion.nvim-surround" }
22.17.1 nvim-surround
Add/change/delete surrounding delimiter pairs with ease. Written with ❤️ in Lua.
Repository: https://github.com/kylechui/nvim-surround
Surround selections, stylishly.
22.17.1.1 Usage
The three “core” operations of
add/delete/change can be done
with the keymaps ys{motion}{char}, ds{char},
and cs{target}{replacement}, respectively. For the
following examples, * will denote the cursor position:
Old text Command New text
--------------------------------------------------------------------------------
surr*ound_words ysiw) (surround_words)
*make strings ys$" "make strings"
[delete ar*ound me!] ds] delete around me!
remove <b>HTML t*ags</b> dst remove HTML tags
'change quot*es' cs'" "change quotes"
<b>or tag* types</b> csth1<CR> <h1>or tag types</h1>
delete(functi*on calls) dsf function calls
Detailed information on how to use this plugin can be found in :h nvim-surround.usage.
22.18 nvim-tree-pairs
{ import = "astrocommunity.motion.nvim-tree-pairs" }
22.18.1 nvim-tree-pairs
NeoVim plugin for jumping to the other end of the current Tree-sitter node
Repository: https://github.com/yorickpeterse/nvim-tree-pairs
22.19 portal-nvim
{ import = "astrocommunity.motion.portal-nvim" }
22.19.1 portal.nvim
Neovim plugin for improved location list navigation
Repository: https://github.com/cbochs/portal.nvim
22.20 tabout-nvim
{ import = "astrocommunity.motion.tabout-nvim" }
22.20.1 tabout.nvim
tabout plugin for neovim
Repository: https://github.com/abecodes/tabout.nvim
22.21 vim-matchup
{ import = "astrocommunity.motion.vim-matchup" }
22.21.1 vim-matchup
vim match-up: even better % 👊 navigate and highlight matching words 👊 modern matchit and matchparen. Supports both vim and neovim + tree-sitter.
Repository: https://github.com/andymass/vim-matchup
match-up is a plugin that lets you highlight, navigate, and operate
on sets of matching text. It extends vim’s % key to
language-specific words instead of just single characters.
23 neovim-lua-development
23.1 helpview-nvim
{ import = "astrocommunity.neovim-lua-development.helpview-nvim" }
23.1.1 helpview.nvim
Decorations for vimdoc/help files in Neovim
Repository: https://github.com/OXY2DEV/helpview.nvim
23.2 lazydev-nvim
{ import = "astrocommunity.neovim-lua-development.lazydev-nvim" }
23.2.1 lazydev.nvim
Faster LuaLS setup for Neovim
Requires:
Repository: https://github.com/folke/lazydev.nvim
Note: This plugins is part of AstroNvim core as of v4.22.0
23.3 lua-console-nvim
{ import = "astrocommunity.neovim-lua-development.lua-console-nvim" }
23.3.1 Lua-console.nvim
A handy scratch pad / REPL / debug console for Lua development and Neovim exploration
Repository: https://github.com/yarospace/lua-console.nvim
24 note-taking
24.1 global-note-nvim
{ import = "astrocommunity.note-taking.global-note-nvim" }
24.1.1 Global-note.nvim
It’s a simple Neovim plugin that provides a global note in a float window.
Repository: https://github.com/backdround/global-note.nvim
Notes: A project local note has also been setup
24.2 neorg
{ import = "astrocommunity.note-taking.neorg" }
24.2.1 neorg
Modernity meets insane extensibility. The future of organizing your life in Neovim.
Repository: https://github.com/nvim-neorg/neorg
Requirements: Lua 5.1/LuaJIT and Lua header files installed as system dependencies
24.3 obsidian-nvim
{ import = "astrocommunity.note-taking.obsidian-nvim" }
24.3.1 Obsidian.nvim
Neovim plugin for Obsidian, written in Lua
Repository: https://github.com/obsidian-nvim/obsidian.nvim
A Neovim plugin for writing and navigating an Obsidian vault, written in Lua.
This config assumes the vault location is at
~/obsidian-vault. You can move the vault there. If you
instead want to change the location in the config, you can create a new
file plugins/obsidian.lua, copy the contents of this
init.lua to it, and then edit the 2 following lines
event = { "BufReadPre */obsidian-vault/*.md" },
and
dir = "~/obsidian-vault",
to match your vault location.
We set mappings to an empty table, because
gf is used for lazy loading in keys
if you don’t want gf for lazy loading, you should remove
keys and mappings tables
The plugin may also nag and ask you to create a
templates directory in the vault. You can use
mkdir templates to create an empty directory.
24.4 venn-nvim
{ import = "astrocommunity.note-taking.venn-nvim" }
24.4.1 venn.nvim
Draw ASCII diagrams in Neovim with ease.
Repository: https://github.com/jbyuki/venn.nvim
- Enable venn mode with
:ToggleVenn- note this enable vim virtual edit mode which allows editing anywhere in the window
- now click any place and write down the texts
- use visual block [Ctrl-v] mode to wrap around the text and press f to draw the box
- connect the boxes using HJKL towards the next box to connect
┌───┐
┌────────│ A │──────────┐
│ └───┘ │
│ │
▼ ┌───┐ ▼
B───────►│ C │ D
└─┬─┘ │
│ │
┌─┴─┐ │
│ E │◄─────────┘
└───┘
24.5 zk-nvim
{ import = "astrocommunity.note-taking.zk-nvim" }
24.5.1 zk-nvim
Neovim extension for the zk plain text note-taking assistant.
Repository: https://github.com/mickael-menu/zk-nvim
:warning: This plugin will setup and start the LSP server for you, do not call
require("lspconfig").zk.setup().
25 pack
25.1 angular
{ import = "astrocommunity.pack.angular" }
25.1.1 Angular Language Pack
This plugin pack does the following:
- Adds typescript pack
- Adds html-css pack
- Adds
angularTreesitter parser withnvim-treesitter-angular - Adds
angularlanguage servers
25.2 ansible
{ import = "astrocommunity.pack.ansible" }
25.2.1 Ansible Language Pack
This plugin pack does the following:
- Adds a set of local functions to help with Ansible’s filetype detection
- Adds
yamlTreesitter parsers - Adds
ansible-lintandansible-language-serverviamason-tool-installer.nvim, if enabled - Sets up
mason-lspconfig.nvimto useansiblelsif enabled - Adds the following
null-lssources: - Adds the following
nvim-lintsources: - Adds pearofducks/ansible-vim,
and sets it up to be loaded for
yaml.ansiblefile types
25.3 astro
{ import = "astrocommunity.pack.astro" }
25.3.1 Astro Language Pack
This plugin pack does the following:
- Adds
astroandscssTreesitter parsers - Adds
astrolanguage server - Adds
js-debug-adapterfor debugging
25.4 bash
{ import = "astrocommunity.pack.bash" }
25.4.1 Bash Language Pack
This plugin pack does the following:
- Adds
bashTreesitter parser - Adds
bashlslanguage server - Adds
shfmtformatter - Adds
shellchecklinter - Adds
bashdebugger
:warning: Also attaches to zsh files with experimental support.
25.5 biome
{ import = "astrocommunity.pack.biome" }
25.5.1 Biome
Biome is a fast toolchain for web projects, providing formatting and linting via CLI and LSP.
25.5.1.1 Features
Formatter
- Supports JavaScript, TypeScript, JSX, TSX, JSON, JSONC, CSS, GraphQL, Astro, Svelte, and Vue
- 97% compatibility with Prettier
- Can format malformed code as you write
Linter
- Covers JavaScript, TypeScript, JSX, CSS, GraphQL, Astro, Svelte, Vue, and JSONC
- Includes 293 rules from ESLint, TypeScript ESLint, and more
- Outputs detailed, contextual diagnostics to help improve your code
25.6 blade
{ import = "astrocommunity.pack.blade" }
25.6.1 Laravel Blade Language Pack
Requires:
laravel-dev-generatorsin your path. See the releases section of https://github.com/haringsrob/laravel-dev-tools
This plugin pack does the following:
- Adds
bladeTreesitter parser: https://github.com/EmranMR/tree-sitter-blade - Adds
bladelanguage server: https://github.com/haringsrob/laravel-dev-tools - Adds blade-formatter to
null-lsorconform
25.7 chezmoi
{ import = "astrocommunity.pack.chezmoi" }
25.7.1 Chezmoi Pack
This plugin pack does the following:
- chezmoi.vim for syntax highlighting of Chezmoi templates
- chezmoi.nvim searching and applying Chezmoi configurations
- Adds the TOML Language Pack for editing Chezmoi configuration file
25.8 clojure
{ import = "astrocommunity.pack.clojure" }
25.8.1 Clojure Language Pack
Include the Clojure language pack in the
lua/community.lua file
{ import = "astrocommunity.pack.clojure" },The Clojure pack requires:
- Java Development Kit, e.g. Practicalli - Install Java host for Clojure
- Clojure CLI or Leiningen
The Clojure language pack includes:
clojuretreesitter parsers- clojure-lsp language server
- Clojure REPL client: Olical/conjure
- Structural editing: parpar-nvim which provides both nvim-parinfer & nvim-paredit
NOTE: Conjure is available as a code-runner plugin config. nvim-paredit and nvim-parinfer are available as editing-support plugin configurations
25.8.1.1 Clojure Guides
:ConjureSchool in a Clojure buffer runs an interactive
tutorial for Conjure
- Clojure.org API reference and guides
- Conjure - Clojure guide
- Practicalli Neovim Clojure development workflow and examples of configuring Astrocommunity clojure pack
25.8.1.2 Override Configuration
Plugins in the language pack can be disabled and default options overridden.
Example: Include the Clojure language pack and disable the parinfer
plugin by setting the enabled key to false.
{ import = "astrocommunity.pack.clojure" },
{ "gpanders/nvim-parinfer", enabled = false },
{ "julienvincent/nvim-paredit", enabled = false },Example: Change the test runner used by Conjure.
clojure.test runner is used by default
{ import = "astrocommunity.pack.clojure" },
{
"AstroNvim/astrocore",
opts = {
options = {
g = {
-- Set Test runner: "clojure", "clojurescript", "kaocha"
["conjure#client#clojure#nrepl#test#runner"] = "kaocha",
},
},
},
},NOTE:
:help conjure-client-clojure-nreplfor full list of Conjure options for Clojure.
25.9 cmake
{ import = "astrocommunity.pack.cmake" }
25.9.1 CMake Language Pack
This plugin pack does the following:
- Adds
cmakeTreesitter parser - Adds
neocmakelanguage server
25.10 cpp
{ import = "astrocommunity.pack.cpp" }
25.10.1 C/C++ Language Pack
This plugin pack does the following:
- Adds
cppcobjccudaprotoTreesitter parsers - Adds
clangdlanguage server - Adds
clang-formatformatter - Adds clangd_extensions.nvim for language specific tooling
- Adds cmake-tools.nvim for building and debugging
- Sets up
offset_encondingsfor clangd to avoid conflicts with null-ls
25.11 crystal
{ import = "astrocommunity.pack.crystal" }
25.11.1 Crystal Language Pack
This plugin pack does the following:
- Adds
vim-crystal/vim-crystalfor syntax highlighting and snippets - Adds
crystallinelanguage server - Adds
codelldbfor debugging
25.12 cs-omnisharp
{ import = "astrocommunity.pack.cs-omnisharp" }
25.12.1 C# Language Pack
Requirements: dotnet must be in your
PATH and executable
This plugin pack does the following:
- Adds
c_sharpTreesitter parsers - Adds
omnisharplanguage server - Adds
omnisharp-extended-lsp.nvimfor better go to definition/type definition - Adds the following
null-lssources: - Adds
coreclrdebug adapters for nvim-dap
25.13 cs
{ import = "astrocommunity.pack.cs" }
25.13.1 C# Language Pack
Requirements: dotnet must be in your
PATH and executable
This plugin pack does the following:
- Adds
c_sharpTreesitter parsers - Adds
csharp_lslanguage server - Adds
csharpls-extended-lsp.nvimfor better go to definition/type definition - Adds the following
null-lssources: - Adds
coreclrdebug adapters for nvim-dap
25.14 cue
{ import = "astrocommunity.pack.cue" }
25.14.1 Cue Language Pack
Requirements: cue must be in your
PATH and executable
This plugin pack does the following:
- Adds
cueTreesitter parsers - Adds
daggerlanguage server - Adds the following
null-lssources:
25.15 dart
{ import = "astrocommunity.pack.dart" }
25.15.1 Dart Language Pack
This plugin pack does the following:
- Adds
dartTreesitter parsers - Adds
dartlslanguage server - Adds flutter-tools.nvim for language specific tooling
- Adds YAML language support
25.16 diff-keybindings
{ import = "astrocommunity.pack.diff-keybindings" }
25.16.1 diff
keybindings
Adds keybindings for the diff command under
<Leader> D.
25.17 docker
{ import = "astrocommunity.pack.docker" }
25.17.1 Docker Language Pack
This plugin pack does the following:
- Adds
dockerfileTreesitter parser - Adds
docker-language-serverfor providing features for the Docker ecosystem - Adds
hadolintlinter
25.18 edgedb
{ import = "astrocommunity.pack.edgedb" }
25.18.1 EdgeDB pack
EdgeDB is a next-generation graph-relational database designed as a spiritual successor to the relational database.
This plugin pack adds support for syntax highlighting of EdgeQL files.
25.19 elixir-phoenix
{ import = "astrocommunity.pack.elixir-phoenix" }
25.19.1 Elixir and Phoenix Pack
Adds baseline support for Elixir/Phoenix projects.
This plugin pack does the following:
- Adds the
tailwindcssAstroCommunity pack - Adds the
elixirlslanguage server - Adds the
elixirandheexTreesitter parsers - Ensures
tailwindcssis configured for html-eex andclass:style hinting.
25.20 elm
{ import = "astrocommunity.pack.elm" }
25.20.1 Elm Language Pack
This plugin pack does the following:
- Adds
elmTreesitter parsers - Adds
elm-language-serverlanguage server - Adds
elm-formatformatter
25.20.1.1 LSP Configuration
The default elm-language-server configuration matches all currently supported features for Neovim LSP.
25.20.1.2 A note on elm-test and elm-review
elm-test is not directly supported by neo-test but it’s available via neotest-vim-test.
However, it is common practice to peruse both elm-test
and elm-review directly via the command line.
25.21 eslint
{ import = "astrocommunity.pack.eslint" }
25.21.1 ESLint
ESLint statically analyzes your code to quickly find problems. It is built into most text editors and you can run ESLint as part of your continuous integration pipeline.
25.21.1.1 Prerequisites
To use ESLint, you must have Node.js LTS installed and built with SSL support. (If you are using an official Node.js distribution, SSL is always built in.)
25.22 fish
{ import = "astrocommunity.pack.fish" }
25.22.1 Fish Language Pack
Requires the following in your PATH
This plugin pack does the following:
- Adds
fishTreesitter parser - Adds
fish_indentformatter - Adds
fishlinter
25.23 full-dadbod
{ import = "astrocommunity.pack.full-dadbod" }
25.23.1 Complete vim-dadbod plugin pack
This plugin pack adds:
- Adds vim-dadbod for database management
- Adds vim-dadbod-ui for the UI
- Adds vim-dadbod-completion for completion
25.24 gleam
{ import = "astrocommunity.pack.gleam" }
25.24.1 Gleam Language Pack
This plugin pack does the following:
- Adds
gleamTreesitter parser - Adds
gleamlanguage server
25.25 go
{ import = "astrocommunity.pack.go" }
25.25.1 Go Language Pack
Requirements: go must be in your
PATH and executable
This plugin pack does the following:
- Adds
goTreesitter parsers - Adds
goplslanguage server- By default it is configured to use
gofumptfor formatting
- By default it is configured to use
- Adds the following go packages:
- Adds nvim-dap-go for debugging
- Adds gopher.nvim for language specific tools
- Adds neotest-golang as a neotest adapter.
25.26 godot
{ import = "astrocommunity.pack.godot" }
25.26.1 Godot Language Pack
Requirements: Godot needs to be running to use LSP and DAP for GDScript
This plugin pack does the following:
- Sets up
gdscriptlanguage server (expects to be running on port6005or$GDScript_Portenvironment variable) - Configures
nvim-dapfor debugger listening on port6006or$GDScript_Debug_Portenvironment variable - Adds
gdscripttreesitter parsers - Adds
godot_resourcetreesitter parsers - Adds
glsltreesitter parsers - Adds quickgd.nvim to provide commands for starting Godot
- Adds godot-server.nvim to open files from Godot in Neovim. Requires configuration in the Godot editor (see project page)
25.27 golangci-lint
{ import = "astrocommunity.pack.golangci-lint" }
25.27.1 golangci-lint
Fast linters runner for Go.
This plugin pack integrates golangci-lint into your AstroNvim setup using the golangci-lint-langserver.
Features:
- Supports a wide range of linters to catch common errors and improve code quality.
- Automatically installs
golangci-lint-langservervia Mason. - Provides lint diagnostics directly in your editor using
golangci-lint. - Runs
golangci-lintefficiently in the background.
Note: This pack imports the Go language pack
(astrocommunity.pack.go) for a complete Go development
environment.
25.28 harper
{ import = "astrocommunity.pack.harper" }
25.28.1 Harper LS
Harper is an English grammar checker designed to be just right.
Repository: https://github.com/elijah-potter/harper/blob/master/harper-ls
25.28.1.1 How do I set my own LSP configuration?
To add your configuration, you have to extend
AstroNvim/astrolsp opts.
See the options that
harper-lssupport here.
---@type LazySpec
return {
{
"AstroNvim/astrolsp",
opts = {
config = {
harper_ls = {
settings = {
["harper-ls"] = {
--- Your configuration
},
},
},
},
},
},
}25.29 haskell
{ import = "astrocommunity.pack.haskell" }
25.29.1 Haskell Language Pack
Requires:
- plenary.nvim: Since v3 droppped this requirement, it is handled by the pack during install.
Optionally:
This plugin pack does the following:
- Adds
haskelltreesitter parsers - Adds
haskell-language-serverlanguage server - Adds
haskell-debug-adapterdap adapter - Adds haskell-tools.nvim (v3 or v4 depending on nvim version)
- Adds
yamllanguage pack - Adds
jsonlanguage pack - Adds
neotestfrom Astrocommunity - Adds neotest-haskell
- Adds haskell-snippets.nvim
Optionally available:
:warning: A local hoogle installation is required for this to work.
- Adds telescope-hoogle
To install, set { "luc-tielen/telescope_hoogle" }, in
user/plugins/core.lua and install this pack as normal.
25.30 haxe
{ import = "astrocommunity.pack.haxe" }
25.30.1 Haxe Language Pack
This plugin pack does the following:
- Adds
haxeTreesitter parser: https://github.com/vantreeseba/tree-sitter-haxe - Adds
haxelanguage server
25.31 helm
{ import = "astrocommunity.pack.helm" }
25.31.1 Helm Language Pack
This plugin pack does the following:
- Adds
go-templateTreesitter parsers - Adds
helm-lslanguage server - Adds vim-helm for language specific tools
25.32 html-css
{ import = "astrocommunity.pack.html-css" }
25.32.1 HTML and CSS Pack
This plugin pack is meant as a base that is being imported by more specific web development plugin packs. It does the following:
- Adds
htmlandcssTreesitter parsers - Adds
html,cssandemmet_lslanguage server
25.33 hurl
{ import = "astrocommunity.pack.hurl" }
25.33.1 Hurl pack
Requirements: hurl must be in your
PATH ane executable.
This pack does the following:
- Adds Hurl.nvim, a
Neovim plugin designed to run HTTP requests directly from
.hurlfiles.
25.34 hyprlang
{ import = "astrocommunity.pack.hyprlang" }
25.34.1 hyprlang Pack
This plugin pack offers language support for Hyprland config file. It does the following:
- Adds
hyprlangfiletype which will be assumed from below patterns:*.hlextension.*/hypr/.*.conf,hypr.*.conf
- Adds
hyprlangTreesitter parsers
25.34.1.1 Requirement
- Need to install
hyprlstool first- if mason-tool-installer has been loaded, then hyprls should be installed automatically
- Execute
:Masonto install hyprls via mason
25.35 java
{ import = "astrocommunity.pack.java" }
25.35.1 Java Language Pack
Requires:
JDK-17or higher to function.
This plugin pack does the following:
- Adds
javatreesitter parsers - Adds
htmltreesitter parsers (XML) - Adds
jdtlslanguage server - Adds
lemminxlanguage server (XML) - Adds nvim-jdtls for language specific tooling
- Enables hot reloading
- Adds
javadbgandjavatestdebug adapters for nvim-dap
25.35.1.1 Note
We require that the root folder of your projects include one of these
files/folders: .git, mvnw,
gradlew
25.35.1.2 Tips
jdtls requires Java 11+ but can be used to develop on
any Java version. If you develop using different Java runtimes, you can
set the runtimes you have available in the settings of
jdtls. Here is a simple example:
"AstroNvim/astrocommunity",
{ import = "astrocommunity.pack.java" },
{
"mfussenegger/nvim-jdtls",
opts = {
settings = {
java = {
configuration = {
runtimes = {
{
name = "JavaSE-11",
path = "/usr/lib/jvm/java-11-openjdk/",
},
},
},
},
format = {
enabled = true,
settings = { -- you can use your preferred format style
url = "https://raw.githubusercontent.com/google/styleguide/gh-pages/eclipse-java-google-style.xml",
profile = "GoogleStyle",
},
},
},
},
}25.36 jj
{ import = "astrocommunity.pack.jj" }
25.36.1 Jujutsu/jj Pack
Pack for the Jujutsu/jj Git-compatible VCS.
This plugin pack does the following:
- Adds jj tab to Neo-tree with neo-tree-jj.nvim
- Adds Telescope pickers with telescope-jj.nvim
<Leader>jffor files in repository (falls back to git files if not in jj repo), likejj files<Leader>jdfor files with changes, likejj diff<Leader>jcfor files with conflicts, likejj resolve --list
- Adds syntax highlighting for
.jjdescriptionfiles (for use withjj describe) with vim-jjdescription - Adds a lazyjj and jjui (TUIs for jj) terminal
with
<Leader>jlor<Leader>jurespectively, if the corresponding binaries are in$PATH
25.37 json
{ import = "astrocommunity.pack.json" }
25.37.1 JSON Language Pack
This plugin pack does the following:
- Adds
jsonandjsoncTreesitter parsers - Adds
jsonlslanguage server
25.38 julia
{ import = "astrocommunity.pack.julia" }
25.38.1 Julia Language Pack
Requirements: julia must be in your
PATH and executable
This plugin pack does the following:
- Adds
juliaTreesitter parsers - Adds
julialslanguage server - Adds cmp-latex-symbols
for easily inserting unicode symbols into code with latex notation with
autocompletion with
cmp - Adds TOML language support
25.38.1.1 Using System Images
Because of the long pre-compilation times of Julia it is highly
recommended to utilize system images for the
LanguageServer.jl. This requires some manual setup which
this pack will automatically detect and disable the installation of
julials if it is detected. A description of how to set up
precompiled system images for the Julia language server can be found at
this repository: https://github.com/mehalter/.julia
If you are going down this route, along with importing the pack from
AstroCommunity, you also need to add the following plugin specification
to your plugins/ directory:
[!NOTE] You should make sure that
julialsis not installed in Mason
return {
"AstroNvim/astrolsp",
opts = {
-- manually set up the Julia language server
-- since we won't be using Mason
servers = { "julials" },
config = {
julials = {
on_new_config = function(new_config)
-- check for nvim-lspconfig julia sysimage shim
-- this path may need to be updated if you set it up differently
-- than the repository recommends above
local julia = (vim.env.JULIA_DEPOT_PATH or vim.fn.expand "~/.julia")
.. "/environments/nvim-lspconfig/bin/julia"
-- if the shim is found, then update the julia command
if require("lspconfig").util.path.is_file(julia) then new_config.cmd[1] = julia end
end,
},
},
},
}25.39 just
{ import = "astrocommunity.pack.just" }
25.39.1 Just language pack
This plugin does the following:
- Adds
justTreesitter parser: https://github.com/IndianBoy42/tree-sitter-just
25.40 kotlin
{ import = "astrocommunity.pack.kotlin" }
25.40.1 Kotlin Language Pack
Requires: - JDK-17 or higher to function.
This plugin pack does the following:
- Adds
kotlintreesitter parsers - Adds
kotlin_language_serverlanguage server - Adds
ktlintthrough null-ls - Adds
kotlin-debug-adapterdebug adapter for nvim-dap
25.41 laravel
{ import = "astrocommunity.pack.laravel" }
25.41.1 Laravel Pack
Note: Installation of phpactor requires
composer
Note: laravel-dev-generators in your
path. See the releases section of https://github.com/haringsrob/laravel-dev-tools
Note: For proper blade template highlighting, you’ll need to manually add the queries file https://github.com/EmranMR/tree-sitter-blade/discussions/19#discussion-5400675
This plugin pack does the following:
- Adds php
pack
- Adds php and phpdoc Treesitter parsers
- Adds phpactor language servers
- Adds php-cs-fixer for formatting
- Adds php-debug-adapter for debugging
- Adds blade
pack
- Adds blade Treesitter parser: https://github.com/EmranMR/tree-sitter-blade
- Adds blade language server: https://github.com/haringsrob/laravel-dev-tools
- Adds blade-formatter to null-ls or conform
- Adds
laravel.nvimfor laravel specific tools - Adds
laravel-ide-helper.nvimfor laravel model info - Adds
blade-nav.nvimfor cmp and gf for views/routes/configs and more
25.42 lean
{ import = "astrocommunity.pack.lean" }
25.42.1 Lean Language Pack
This plugin pack does the following:
- Adds lean.nvim for language specific tooling
25.43 lua
{ import = "astrocommunity.pack.lua" }
25.43.1 Lua Language Pack
This plugin pack does the following:
- Adds
luaTreesitter parser - Adds
lua_lslanguage server - Adds
styluaformatter - Adds
selenelinter- On
aarch64machines this is skipped.
- On
25.44 markdown
{ import = "astrocommunity.pack.markdown" }
25.44.1 Markdown Language Pack
This plugin pack does the following:
- Adds
markdownandmarkdown_inlineTreesitter parsers - Adds
marksmanlanguage server
25.45 mdx
{ import = "astrocommunity.pack.mdx" }
25.45.1 MDX Language Pack
This plugin pack does the following:
- Adds
markdown.mdxfiletype - Adds
mdx_analyzerlanguage server - Adds the Markdown Language Pack
25.46 moonbit
{ import = "astrocommunity.pack.moonbit" }
25.46.1 Moonbit Language Pack
Requires:
This plugin pack does the following:
- Adds
moonbit.nvimplugin which adds- Adds
moonbitTreesitter parser - Adds
moonbit-lsplanguage server - Adds
neotest-moonbitneotest adapter
- Adds
25.47 nextflow
{ import = "astrocommunity.pack.nextflow" }
25.47.1 Nextflow Language Pack
This plugin pack does the following:
- Sets up
nextflowfiletype - Adds
vim-language-nextflowfor syntax highlighting - Adds configuration for
nextflow_lstolspconfig- See below for instructions on enabling it
- Adds
nextflowicons tomini.icons
25.47.1.1 Enabling the Nextflow Language Server
While the Nextflow language server is young in development it is yet
to be added to Mason or nvim-lspconfig so it currently
requires manual configuration to get up and running.
25.47.1.1.1 Requirements
- Java 17 or later
language-server-all.jardownloaded from the Nextflow Language Server Releases or built from the source
25.47.1.1.2 Add to your
plugins/
return {
"AstroNvim/astrolsp",
opts = {
-- This line enables the setup of the Nextfow language server
servers = { "nextflow_ls" },
configs = {
-- Must set the command with the path to your JAR file
nextflow_ls = {
cmd = { "java", "-jar", "<path to language-server-all.jar>" },
},
},
},
}25.48 nginx
{ import = "astrocommunity.pack.nginx" }
25.48.1 Nginx Language Pack
This plugin pack does the following:
- Adds
nginxTreesitter parsers - Adds
nginx-language-serverlanguage server - Adds
nginx-config-formatterformatter
25.49 nim
{ import = "astrocommunity.pack.nim" }
25.49.1 Nim Language pack
This plugin pack does the following:
- Adds
nimandnim_format_stringTreesitter parsers - Adds
nim_langserverlanguage server - Adds
nimprettyformatter’
25.50 nix
{ import = "astrocommunity.pack.nix" }
25.50.1 Nix Language Pack
Requires the following in your PATH
This plugin pack does the following:
- Adds
nixTreesitter parsers - Adds
nixdlanguage server - Adds the following
null-lssources:
25.51 nushell
{ import = "astrocommunity.pack.nushell" }
25.51.1 Nushell Language pack
Requires:
This plugin pack does the following:
- Adds
nushelltreesitter parsers - Adds
nushelllanguage server - Adds
nufmtas the default formatter for nushell
25.52 nvchad-ui
{ import = "astrocommunity.pack.nvchad-ui" }
25.52.1 NvChad/ui
Lightweight & high performance UI plugin for nvchad
Repository: https://github.com/NvChad/ui
25.53 ocaml
{ import = "astrocommunity.pack.ocaml" }
25.53.1 OCaml Language Pack
This plugin pack does the following:
- Adds
ocaml,ocaml_interface,ocamllex,menhirTreesitter parsers - Adds
ocamllsplanguage server - Adds ocaml.nvim for language specific tooling
25.54 oxlint
{ import = "astrocommunity.pack.oxlint" }
25.54.1 Oxlint
Oxlint is designed to catch erroneous or useless code without requiring any configurations by default.
25.55 php
{ import = "astrocommunity.pack.php" }
25.55.1 PHP Language Pack
Note: Installation of phpactor requires
composer
This plugin pack does the following:
- Adds
phpandphpdocTreesitter parsers - Adds
phpactorlanguage servers - Adds
php-cs-fixerfor formatting - Adds
php-debug-adapterfor debugging
25.56 pkl
{ import = "astrocommunity.pack.pkl" }
25.56.1 Pkl Language Pack
This plugin pack does the following:
- Adds
pklTreesitter parser: https://github.com/apple/tree-sitter-pkl - Adds
pkllanguage plugin: https://github.com/apple/pkl-neovim
25.57 prettier
{ import = "astrocommunity.pack.prettier" }
25.57.1 Prettier
Prettier is an opinionated code formatter with support for:
JavaScript · TypeScript · Flow · JSX · JSON CSS · SCSS · Less HTML · Vue · Angular GraphQL · Markdown · YAML Your favorite language?
It enforces a consistent style by parsing your code and re-printing it with its own rules that take the maximum line length into account, wrapping code when necessary.
25.58 prisma
{ import = "astrocommunity.pack.prisma" }
25.58.1 prisma Language Pack
This plugin pack does the following:
- Adds
prismaTreesitter parser - Adds
prismalslanguage servers
25.59 proto
{ import = "astrocommunity.pack.proto" }
25.59.1 Protocal Buffers Pack
This plugin pack does the following:
- Adds
protoTreesitter parsers - Installs
bufand uses it for language server and formatting
25.60 ps1
{ import = "astrocommunity.pack.ps1" }
25.60.1 PowerShell Language Pack
This plugin pack does the following:
- Adds
powershell-editor-serviceslanguage server - Adds vim-ps1 for language specific tooling
25.61 purescript
{ import = "astrocommunity.pack.purescript" }
25.61.1 purescript Language Pack
This plugin pack does the following:
- Adds
purescriptTreesitter parsers - Adds
purescript-language-serverlanguage server - Adds
purs-tidyformatter
25.62 python-ruff
{ import = "astrocommunity.pack.python-ruff" }
25.62.1 Python Ruff Language Pack
Requirements: python must be in your
PATH and executable
This plugin pack does the following:
- Adds
pythonandtomlTreesitter parsers - Adds
basedpyrightandruff_lsplanguage servers - Adds the following
null-lssources: - Adds
debugpyfor debugging
25.63 python
{ import = "astrocommunity.pack.python" }
25.63.1 Python Language Pack
Requirements: python must be in your
PATH and executable
This plugin pack does the following:
- Adds
pythonandtomlTreesitter parsers - Adds
basedpyrightlanguage server - Adds the following
null-lssources: - Adds
debugpyfor debugging
25.64 quarto
{ import = "astrocommunity.pack.quarto" }
25.64.1 Quarto Language Pack
Requirements:
This plugin pack does the foolowing:
- Adds
quarto-nvim - Adds
otter.nvim - Adds
r,python,markdown,markdown_inline,julia,bash,yaml,lua,vim,query,vimdoc,latex,html, andcssparsers tonvim-treesitter
25.65 rainbow-delimiter-indent-blankline
{ import = "astrocommunity.pack.rainbow-delimiter-indent-blankline" }
25.65.1 rainbow-delimiters.nvim integration for indent-blankline.nvim
Provides rainbow indent guides that tie into their relevant bracket
pairs, and a scope guide Provides rainbow-delimiters.nvim
and configures indent-blankline.nvim as described in the indent-blankline.nvim
documentation
Repositores:
- https://github.com/lukas-reineke/indent-blankline.nvim
- https://gitlab.com/HiPhish/rainbow-delimiters.nvim
25.65.1.1 Preview
25.66 rego
{ import = "astrocommunity.pack.rego" }
25.66.1 OPA Rego Pack
This plugin pack does the following:
- Adds
regoTreesitter parser - Adds
regolslanguage server - Adds
opachecklinter
25.67 ruby
{ import = "astrocommunity.pack.ruby" }
25.67.1 Ruby Language Pack
This plugin does the following
- Adds ‘ruby’ treesitter parser
- Adds ‘solargraph’ language server
- Adds ‘standardrb’ through null-ls
- Adds ‘nvim-dap-ruby’
25.68 rust
{ import = "astrocommunity.pack.rust" }
25.68.1 Rust Language Pack
This plugin pack does the following:
- Adds
rustTreesitter parsers - Adds rustaceanvim for language specific tooling (v4 or v5 depending on nvim version)
- Adds crates.nvim for crate management
- Adds TOML language support
[!NOTE] This pack DOES not add
rust_analyzer. This should be managed by rustup. To add it to rustup, run:rustup component add rust-analyzer
25.68.1.1 Additional LSP Configuration Tweaks
Configuring the LSP is out of scope for community packs, but here are some interesting things you may want to do:
25.68.1.2 Make Rust-Analyzer use its own profile
Add this into your LSP configuration to make the rust-analyzer use
its own profile. The effect is that you will use more disk space as
rust-analyzer gets its own special folder in targets. The
upside is that you can run cargo build without that being
blocked while rust-analyzer runs.
The following can be added to the configuration of AstroLSP to customize the profiles used by rust-analyzer.
return {
"AstroNvim/astrolsp",
opts = {
config = {
rust_analyzer = {
settings = {
["rust-analyzer"] = {
cargo = {
extraEnv = { CARGO_PROFILE_RUST_ANALYZER_INHERITS = "dev" },
extraArgs = { "--profile", "rust-analyzer" },
},
},
},
},
},
},
}25.68.1.3 Use
cargo check for
rust-analyzer.check.command
By default, this pack configures
rust-analyzer.check.command to use
cargo clippy instead of cargo check.
In some cases (for example, on large projects where
cargo clippy is slow), you may want to use
cargo check instead.
25.68.1.3.1 Global default
You can configure the settings with AstroLSP similar to the instructions shown above:
return {
"AstroNvim/astrolsp",
opts = {
config = {
rust_analyzer = {
settings = {
["rust-analyzer"] = {
check = { command = "check", extraArgs = {} },
},
},
},
},
},
}25.68.1.3.2 Per Project
Currently, rust-analyzer itself cannot be configured per
project, adding
rust-analyzer.toml support is still in progress.
However, rustaceanvim supports
loading rust-analyzer.json files from the root of your
project. If you want to use cargo check as your default
rust-analyzer.check.command, you can create a
rust-analyzer.json file in the root of your project with
the following contents: For more information on the
rust-analyzer configuration, see the rust-analyzer
documentation.
{
"rust-analyzer": {
"check": {
"command": "check"
}
}
}25.69 scala
{ import = "astrocommunity.pack.scala" }
25.69.1 Scala Language Pack
Requires:
metalsorcoursierin your path
This plugin pack does the following:
- Adds
scalatreesitter parsers - Adds
metalslanguage server - Adds debugger for scala to
nvim-dap - Adds nvim-metals for language specific tooling
25.70 spring-boot
{ import = "astrocommunity.pack.spring-boot" }
25.70.1 Spring Boot Plugin Pack
This plugin pack integrates the java pack with
sprint-boot.nvim to provide a better OOTB experience with
Spring boot. It utilizes the spring-tools
https://github.com/spring-projects/spring-tools extension for VS Code
under the hood.
Repository: https://github.com/JavaHello/spring-boot.nvim
25.71 sql
{ import = "astrocommunity.pack.sql" }
25.71.1 SQL Language Pack
This plugin pack does the following:
- Adds
sqlTreesitter parser - Adds
sqlslanguage servergomust be in yourPATHand executable.- formatting is disabled due to https://github.com/sqls-server/sqls/issues/149
- Adds sqls.nvim for language specific tooling
- Adds sqlfluff for both formatting and linting
25.72 svelte
{ import = "astrocommunity.pack.svelte" }
25.72.1 Svelte Language Pack
This plugin pack does the following:
- Adds
svelteandscssTreesitter parsers - Adds
sveltelanguage server - Adds
vtslswithtypescript-svelte-pluginfor Svelte support - Adds
js-debug-adapterfor debugging - Adds nvim-dap-vscode-js for debugging
25.73 swift
{ import = "astrocommunity.pack.swift" }
25.73.1 Swift Language Pack
Requires:
This plugin pack does the following:
- Adds
swiftTreesitter parsers - Adds
sourcekitin LSP servers - Adds
sourcekitin LSP config - Adds
codelldbfor debugging
25.73.1.1 SwiftLint and SwiftFormat
When it comes to linting and formatting, Swift is not standardized
yet. Thus, you need to set your favorite configuration in
user/null-ls.lua. For example:
[...]
config.sources = {
-- Set a formatter
null_ls.builtins.formatting.swiftformat, -- https://github.com/nicklockwood/SwiftFormat
-- null_ls.builtins.formatting.swift_format, -- https://github.com/apple/swift-format
-- Set a linter
null_ls.builtins.diagnostics.swiftlint,
}
[...]Make sure to install SwiftLint and either one of SwiftFormat OR Apple’s Swift-Format.
25.74 tailwindcss
{ import = "astrocommunity.pack.tailwindcss" }
25.74.1 tailwindcss Language Pack
This plugin pack does the following:
- Adds
cssTreesitter parser - Adds
tailwindcssandcsslslanguage servers - Adds
prettierdformatter - Adds
tailwindcss-colorizer-cmp.nvimto cmp completion sources
25.75 templ
{ import = "astrocommunity.pack.templ" }
25.75.1 Templ Language Pack
This plugin pack does the following:
- Adds
templtreesitter parser - Adds
templlanguage server
25.76 terraform
{ import = "astrocommunity.pack.terraform" }
25.76.1 Terraform Language Pack
This plugin pack does the following:
- Adds
terraformTreesitter parser - Adds
terraformlslanguage server - Adds
tflintandtfseclinters
25.77 thrift
{ import = "astrocommunity.pack.thrift" }
25.77.1 Thrift language Pack
This plugin pack does the following:
- Adds
thriftTreesitter parsers - Adds
thriftlslanguage servers
25.78 toml
{ import = "astrocommunity.pack.toml" }
25.78.1 TOML Language Pack
This plugin pack does the following:
- Adds
tomlTreesitter parser - Adds
taplolanguage server
25.79 typescript-all-in-one
{ import = "astrocommunity.pack.typescript-all-in-one" }
25.79.1 TypeScript All-in-one Language Pack
This plugin pack does the following:
- Adds typescript pack
- Adds denols pack
- Enables either
denolsorvtslsbased on the project
25.80 typescript-deno
{ import = "astrocommunity.pack.typescript-deno" }
25.80.1 TypeScript Deno Language Pack
This plugin pack does the following:
- Adds
typescript,javascript, andtsxTreesitter parsers - Adds
denolslanguage server - Adds JSON language support
- Adds deno-nvim for language specific tooling
25.81 typescript
{ import = "astrocommunity.pack.typescript" }
25.81.1 TypeScript Language Pack
This plugin pack does the following:
- Adds
typescript,javascript,tsx, andjsdocTreesitter parsers - Adds
vtslslanguage server - Adds nvim-dap support
- Adds nvim-vtsls for language specific tooling
- Adds package-info.nvim for project package management
- Adds nvim-lsp-file-operations to handles file imports on rename or move within neo-tree
- Adds neotest-jest to
ease the test running if
neotestis installed - Adds
gsmapping for goto_source_definition instead of typings.
25.81.1.1 How do I enable HTML and CSS support?
To enable HTML, CSS and Emmet support, you can add the
html-css pack to your community.lua
config:
{ import = "astrocommunity.pack.html-css" }25.81.1.2 How do I customize
neotest-jest?
To customize the neotest-jest plugin, you need to
configure it like you would with any other plugin
Learn more about the spec setup used by
lazyhere.
---@type LazySpec
return {
"nvim-neotest/neotest-jest",
opts = function(_, opts)
-- Add your opts
end,
}25.82 typst
{ import = "astrocommunity.pack.typst" }
25.82.1 Typst Language Pack
This plugin pack does the following:
- Add
typst.vimfor syntax - Add
tinymistlanguage server - Add
typst-preview.nvimplugin
Note: To start the preview - Run TypstPreview
25.83 verilog
{ import = "astrocommunity.pack.verilog" }
25.83.1 Verilog Language Pack
This plugin pack does the following:
- Adds
verilogTreesitter parsers - Adds
veriblelanguage server - Adds the following
null-lssources:
25.84 vue
{ import = "astrocommunity.pack.vue" }
25.84.1 Vue Language Pack
This plugin pack does the following:
- Adds
vueandscssTreesitter parsers - Adds
vuelanguage server - Adds
js-debug-adapterfor debugging - Adds nvim-dap-vscode-js for debugging
25.85 wgsl
{ import = "astrocommunity.pack.wgsl" }
25.85.1 wgsl Language Pack
This plugin pack does the following:
- Adds
wgslTreesitter parser: https://github.com/szebniok/tree-sitter-wgsl - Adds
wgsllanguage server
25.86 xml
{ import = "astrocommunity.pack.xml" }
25.86.1 XML Language Pack
- Adds
xmlandhtmltreesitter parsers - Adds
lemminxlanguage server
25.87 yaml
{ import = "astrocommunity.pack.yaml" }
25.87.1 YAML Language Pack
This plugin pack does the following:
- Adds
yamlTreesitter parser - Adds
yamllslanguage server
25.88 zig
{ import = "astrocommunity.pack.zig" }
25.88.1 Zig Language Pack
Requirements:
- Zig (>= 0.12.0 required for Neotest support)
- Zls (Make sure this is the same version as your zig version)
This plugin pack does the following:
- Adds
zigTreesitter parsers - Adds
zlslanguage server - Adds neotest-zig
26 programming-language-support
26.1 csv-vim
{ import = "astrocommunity.programming-language-support.csv-vim" }
26.1.1 csv-vim
A Filetype plugin for csv files
Repository: https://github.com/chrisbra/csv.vim
26.2 dooku-nvim
{ import = "astrocommunity.programming-language-support.dooku-nvim" }
26.2.1 dooku.nvim
Generate and open your code HTML documentation inside Neovim.
Repository: https://github.com/Zeioth/dooku.nvim
26.3 kulala-nvim
{ import = "astrocommunity.programming-language-support.kulala-nvim" }
26.3.1 kulala.nvim
A minimal 🤏 HTTP-client 🐼 interface 🖥️ for Neovim ❤️.
Dependencies:
- System-wide
- curl For additional dependencies, see the docs.
Repository: : https://github.com/mistweaverco/kulala.nvim
26.4 nvim-jqx
{ import = "astrocommunity.programming-language-support.nvim-jqx" }
26.4.1 nvim-jqx
If only one could easily browse and preview json files in neovim. Oh wait, nvim-jqx does just that!
Dependencies - jq
Repository: https://github.com/gennaro-tedesco/nvim-jqx
26.5 rest-nvim
{ import = "astrocommunity.programming-language-support.rest-nvim" }
26.5.1 Rest.nvim
A fast Neovim http client written in Lua.
26.5.1.0.1 Dependencies
- System-wide
- curl
- Optional (can be changed, see config below)
- jq (to format JSON output)
- tidy (to format HTML output)
Repository: : https://github.com/rest-nvim/rest.nvim
26.6 web-tools-nvim
{ import = "astrocommunity.programming-language-support.web-tools-nvim" }
26.6.1 web-tools.nvim
Neovim Wrapper for ❤️ browser-sync
Requires: * Hurl/curl web API testing
Repository: https://github.com/ray-x/web-tools.nvim/tree/master
26.7 xbase
{ import = "astrocommunity.programming-language-support.xbase" }
26.7.1 XBase
26.7.1.1 Note
xbase is a WIP plugin, and the experience provided by this plugin might be lackluster.
26.7.1.2 Tip
You should also include the swift pack for basic language support. To add it into your setup, add:
...
{import ="astrocommunity.pack.swift"}26.7.1.3 Requirements
Make sure you have sourcekit-lsp installed on your machine.
Install Xcode Device Simulators: To enable simulator functionality from within Neovim, you need to have Xcode Device Simulators installed on your machine. You can install these simulators from Xcode.
Mappings: The default mappings for the xbase plugin overlap with AstroNvim’s default. Therefore, you should set the mappings yourself. Refer to xBase documentation for more options.
opts = {
-- ... (other options)
mappings = {
enable = true,
build_picker = "<leader>rb", -- Set to 0 to disable
run_picker = "<leader>ra", -- Set to 0 to disable
watch_picker = 0, -- Set to 0 to disable
all_picker = 0, -- Set to 0 to disable
toggle_split_log_buffer = 0,
toggle_vsplit_log_buffer = "<leader>rs",
},
-- ... (other options)
}27 project
27.1 linear-nvim
{ import = "astrocommunity.project.linear-nvim" }
27.1.1 linear-nvim
A NeoVim plugin to browse and create issues in your Linear workspace. Written in Lua
Repository: https://github.com/rmanocha/linear-nvim
27.2 neoconf-nvim
{ import = "astrocommunity.project.neoconf-nvim" }
27.2.1 neoconf.nvim
💼 Neovim plugin to manage global and project-local settings
Repository: https://github.com/folke/neoconf.nvim
Note: This plugins is part of AstroNvim core as of v3.24.0
27.3 project-nvim
{ import = "astrocommunity.project.project-nvim" }
27.3.1 project.nvim
The superior project management solution for neovim.
Repository: https://github.com/jay-babu/project.nvim
Note: The functionality of this plugin is part of AstroNvim
as of v4.0.0.
To enable automatic :cd or chdir to project root, or to
configure other options, see the project rooter
documentation. Enabling this plugin will disable the built-in
project rooter.
27.4 projectmgr-nvim
{ import = "astrocommunity.project.projectmgr-nvim" }
27.4.1 projectmgr.nvim
Quickly switch between projects and automate startup tasks.
Repository: https://github.com/charludo/projectmgr.nvim
27.4.1.0.1 🦑 Usage with
telescope.nvim
:ProjectMgr (or
| Key | Action |
|---|---|
<CR> |
Open the project under your cursor |
<C-a> |
Add a project. You will be asked for a name, a path, and optionally startup and shutdown commands. |
<C-d> /
<C-x> |
Delete project under your cursor |
<C-e> /
<C-u> |
Edit the project under your cursor |
<C-q> /
<ESC> |
Close the window without doing anything |
<Leader>P |
Open the ProjectMgr panel |
27.4.1.0.2 🦑 Usage without
telescope.nvim
projectmgr comes with a fallback window in case you
aren’t using telescope.nvim. The same actions are
available. The keybinds are slightly different: <C-a>
is replaced by just a, <C-q> becomes
just q, and so on.
28 quickfix
28.1 nvim-bqf
{ import = "astrocommunity.quickfix.nvim-bqf" }
28.1.1 nvim-bqf
Better quickfix window in Neovim, polish old quickfix window.
Repository: https://github.com/kevinhwang91/nvim-bqf
28.2 quicker-nvim
{ import = "astrocommunity.quickfix.quicker-nvim" }
28.2.1 quicker.nvim
Improved UI and workflow for the Neovim quickfix
Repository: https://github.com/stevearc/quicker.nvim
29 recipes
29.1 ai
{ import = "astrocommunity.recipes.ai" }
29.1.1 AI Completion Boilerplate
Website: https://docs.astronvim.com/recipes/ai
This plugin specification configures completion engines to make
<Tab> function as only snippet navigation and AI
suggestion acceptance. Navigating completion items would then be done
with other mappings such as
<C-n>/<C-p>. AI plugins can then
interface with this by setting up the vim.g.ai_accept as a
function to do their acceptance command.
29.2 astrolsp-auto-signature-help
{ import = "astrocommunity.recipes.astrolsp-auto-signature-help" }
29.2.1 AstroLSP - Automatically show signature help
Website: https://docs.astronvim.com/recipes/advanced_lsp/#automatic-signature-help
This plugin specification configures AstroLSP to automatically trigger the LSP signature help when necessary and relevant.
29.3 astrolsp-no-insert-inlay-hints
{ import = "astrocommunity.recipes.astrolsp-no-insert-inlay-hints" }
29.3.1 AstroLSP - Disable inlay hints in insert mode
Website: https://docs.astronvim.com/recipes/advanced_lsp/#disable-in-insert-mode
This plugin specification configures AstroLSP to disable inlay hints in a buffer when going into insert mode and re-enables them when leaving insert mode.
29.4 auto-session-restore
{ import = "astrocommunity.recipes.auto-session-restore" }
29.4.1 AstroLSP - Automatically Restore Previous Session
Website: https://docs.astronvim.com/recipes/sessions/#automatically-restore-previous-session
This plugin specification configures AstroLSP to automatically restore their previous session for a given directory when opening Neovim with no arguments.
29.5 cache-colorscheme
{ import = "astrocommunity.recipes.cache-colorscheme" }
29.5.1 Cache Colorscheme
Website: https://docs.astronvim.com/recipes/colorscheme/#cache-colorscheme
This plugin specification caches the last chosen colorscheme by the user to persist colorscheme changes without modifying user configuration.
29.6 diagnostic-virtual-lines-current-line
{ import = "astrocommunity.recipes.diagnostic-virtual-lines-current-line" }
29.6.1 AstroCore - Automatically virtual lines on current line only
Website: https://docs.astronvim.com/recipes/diagnostics/#virtual-line-current-line-only
This plugin specification configures AstroCore to show virtual text except on the current line which shows as virtual lines.
29.7 disable-borders
{ import = "astrocommunity.recipes.disable-borders" }
29.7.1 Disable Floating Window Borders
Website: https://docs.astronvim.com/recipes/disable_borders
This plugin specification fully disables borders from floating windows in the plugins provided by core AstroNvim.
29.8 disable-tabline
{ import = "astrocommunity.recipes.disable-tabline" }
29.8.1 Fully Disable Tabline
Website: https://docs.astronvim.com/recipes/disable_tabline/#fully-disable-tabline
This plugin specification fully disables tabline and
removes relevant mappings.
29.9 heirline-clock-statusline
{ import = "astrocommunity.recipes.heirline-clock-statusline" }
29.9.1 heirline.nvim clock statusline
Website: https://docs.astronvim.com/recipes/status#default-statusline-with-clock
This plugin specification configures the statusline in
AstroNvim to show a clock in the right hand side mode indicator.
29.10 heirline-mode-text-statusline
{ import = "astrocommunity.recipes.heirline-mode-text-statusline" }
29.10.1 heirline.nvim mode text statusline
Website: https://docs.astronvim.com/recipes/status#default-statusline-with-mode-text
This plugin specification configures the statusline in
AstroNvim to show the mode text
29.11 heirline-nvchad-statusline
{ import = "astrocommunity.recipes.heirline-nvchad-statusline" }
29.11.1 heirline.nvim NvChad statusline
Website: https://docs.astronvim.com/recipes/status#replicate-nvchad-statusline
This plugin specification configures the statusline in
AstroNvim to emulate the NvChad statusline
29.12 heirline-tabline-buffer-number
{ import = "astrocommunity.recipes.heirline-tabline-buffer-number" }
29.12.1 heirline.nvim add buffer number before the name to tabline
Add buffer number underscored before the filename in hierline tabline in the top.
This makes navigation with :b<num> much
easier.
29.13 heirline-vscode-winbar
{ import = "astrocommunity.recipes.heirline-vscode-winbar" }
29.13.1 heirline.nvim vscode style winbar
Website: https://docs.astronvim.com/recipes/status#replicate-visual-studio-code-winbar
This plugin specification configures the winbar in
AstroNvim to look more like VS Code’s
29.14 neo-tree-dark
{ import = "astrocommunity.recipes.neo-tree-dark" }
29.14.1 neo-tree.nvim dark theme
Dark themed color scheme for neo-tree.nvim
Repository: https://github.com/nvim-neo-tree/neo-tree.nvim
Note: Highlight groups are designed to match
astrotheme. Customize the table if you are using different
colorscheme.
29.15 neovide
{ import = "astrocommunity.recipes.neovide" }
29.15.1 Neovide Configuration for AstroNvim
Website: https://docs.astronvim.com/recipes/neovide
29.15.1.1 Features
- Adjust the scale factor incrementally to find the perfect size for your needs.
- Reset the scale factor to its initial value for a consistent starting point.
29.15.1.2 Global Variables
(vim.g)
This recipe uses several global variables to configure its behavior.
neovide_scale_factor(default: 1) - The current scale factor of Neovide.neovide_increment_scale_factor(default: 0.1) - Determines the increment/decrement value for adjusting the scale factor.neovide_min_scale_factor(default: 0.7) - The minimum scale allowed.neovide_max_scale_factor(default: 2.0) - The maximum scale allowed.neovide_initial_scale_factor(default: fromneovide_scale_factor) - Used to have the scale factor reset to the initial value.
29.15.1.3 Commands
29.15.1.3.1
:NeovideSetScaleFactor {scale_factor:number} [force]
Sets the Neovide scale factor. If force is provided as
the second argument, the scale factor is set without applying the
minimum and maximum constraints.
29.15.1.3.2
:NeovideResetScaleFactor
Resets the scale factor to
vim.g.neovide_initial_scale_factor.
29.15.1.4 Keybindings
| Mappings | Action |
|---|---|
Ctrl + = |
Increase the Neovide scale factor by
neovide_increment_scale_factor |
Ctrl + - |
Decrease the Neovide scale factor by
neovide_increment_scale_factor |
Ctrl + 0 |
Reset the Neovide scale factor to
neovide_initial_scale_factor |
29.16 picker-lsp-mappings
{ import = "astrocommunity.recipes.picker-lsp-mappings" }
29.16.1 Picker LSP Mappings
Repository: https://docs.astronvim.com/recipes/mappings/#enable-picker-lsp-mappings
Use picker for LSP search operations
Supports:
29.17 picker-nvchad-theme
{ import = "astrocommunity.recipes.picker-nvchad-theme" }
29.17.1 Picker NvChad Theme
Repository: https://docs.astronvim.com/recipes/picker_theme
Emulate the default NvChad picker theme.
Supports:
29.18 telescope-lsp-mappings
{ import = "astrocommunity.recipes.telescope-lsp-mappings" }
29.18.1 Telescope LSP Mappings
Repository: https://docs.astronvim.com/recipes/mappings/#enable-telescope-lsp-mappings
Use Telescope mappings for LSP search operations
29.19 telescope-nvchad-theme
{ import = "astrocommunity.recipes.telescope-nvchad-theme" }
29.19.1 Telescope NvChad Theme
Repository: https://docs.astronvim.com/recipes/telescope_theme
Emulate the default NvChad Telescope theme.
29.20 telescope-nvim-snacks
{ import = "astrocommunity.recipes.telescope-nvim-snacks" }
29.20.1 telescope.nvim with snacks
Find, Filter, Preview, Pick. All lua, all the time.
This adds the telescope.nvim plugin without removing snacks. Use this if another plugin depends on a telescope but you wish to continue using snacks as your picker.
Repository: https://github.com/nvim-telescope/telescope.nvim
29.21 vscode-icons
{ import = "astrocommunity.recipes.vscode-icons" }
29.21.1 VS Code Style Icons
Website: https://docs.astronvim.com/recipes/icons/#vs-code-style-icons
This plugin specification configures the AstroNvim icons to look more like VS Code’s
29.22 vscode
{ import = "astrocommunity.recipes.vscode" }
29.22.1 VS Code Integration Support
Website: https://docs.astronvim.com/recipes/vscode
Some users may be wanting to integrate their Neovim configuration
with their VS Code editor. This spec configures AstroNvim to play nicely
with the VS Code Extension vscode-neovim.
This plugin spec works by overriding the default cond
function in lazy.nvim. If you want to enable one of your
own plugins, you can simply add cond = true to the plugin
spec or set it to your own function for doing computation when deciding
how to conditionally enable the plugin. See the Lazy.nvim
Documentation for details on doing more advanced modification of the
condition.
If there are more plugins that play nicely with the
vscode-neovim extension, feel free to make a PR to add it
to the list of enabled plugins!
30 register
30.1 nvim-neoclip-lua
{ import = "astrocommunity.register.nvim-neoclip-lua" }
30.1.1 nvim-neoclip
neoclip is a clipboard manager for neovim inspired by
for example clipmenu. It
records everything that gets yanked in your vim session (up to a limit
which is by default 1000 entries but can be configured). You can then
select an entry in the history using telescope
or fzf-lua
which then gets populated in a register of your choice.
Repository: https://github.com/AckslD/nvim-neoclip.lua
31 remote-development
31.1 distant-nvim
{ import = "astrocommunity.remote-development.distant-nvim" }
31.1.1 Distant.nvim
🚧 (Alpha stage software) Edit files, run programs, and work with LSP on a remote machine from the comfort of your local environment 🚧
Repository: https://github.com/chipsenkbeil/distant.nvim
31.2 netman-nvim
{ import = "astrocommunity.remote-development.netman-nvim" }
31.2.1 netman.nvim
Neovim (Lua powered) Network Resource Manager
Repository: https://github.com/miversen33/netman.nvim
31.3 nvim-sftp-sync
{ import = "astrocommunity.remote-development.nvim-sftp-sync" }
31.3.1 SftpSync
Neovim plugin that helps you sync your projects to an SFTP server
Requires:
- pysftp Python library for sftp syncing
Repository: https://github.com/dcampos/nvim-sftp-sync
31.4 remote-sshfs-nvim
{ import = "astrocommunity.remote-development.remote-sshfs-nvim" }
31.4.1 remote-sshfs
- Add plugin remote-sshfs.nvim
- Require
sshfs&ssh - Bind keymap for convenience:
<leader>Reedit ssh config file<leader>Rcselect ssh target which is saved in your ssh config file<leader>Rddisconnect (this will unmount sshfs)
- Override telescope find_files and live_grep to make dynamic based on
if connected to host
- Need
fdandripgrepbe installed on server machine
- Need
- Check plugin README for more information
32 scrolling
32.1 cinnamon-nvim
{ import = "astrocommunity.scrolling.cinnamon-nvim" }
32.1.1 cinnamon.nvim
Smooth scrolling for ANY movement command 🤯. A Neovim plugin written in Lua!
Repository: https://github.com/declancm/cinnamon.nvim
A highly customizable Neovim Lua plugin to smooth scrolling for any movement command.
32.2 mini-animate
{ import = "astrocommunity.scrolling.mini-animate" }
32.2.1 mini.animate
Neovim Lua plugin to animate common Neovim actions. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.animate
32.3 neoscroll-nvim
{ import = "astrocommunity.scrolling.neoscroll-nvim" }
32.3.1 neoscroll.nvim
Smooth scrolling neovim plugin written in lua
Repository: https://github.com/karb94/neoscroll.nvim
32.4 nvim-scrollbar
{ import = "astrocommunity.scrolling.nvim-scrollbar" }
32.4.1 nvim-scrollbar
Extensible Neovim Scrollbar
Repository: https://github.com/petertriho/nvim-scrollbar
32.5 satellite-nvim
{ import = "astrocommunity.scrolling.satellite-nvim" }
32.5.1 satellite.nvim
Decorate scrollbar for Neovim
Repository: https://github.com/lewis6991/satellite.nvim
32.6 vim-smoothie
{ import = "astrocommunity.scrolling.vim-smoothie" }
32.6.1 vim-smoothie
Smooth scrolling for Vim done right
Repository: https://github.com/psliwka/vim-smoothie
33 search
33.1 grug-far-nvim
{ import = "astrocommunity.search.grug-far-nvim" }
33.1.1 grug-far.nvim
Find And Replace plugin for neovim
Repository: https://github.com/MagicDuck/grug-far.nvim
33.2 nvim-hlslens
{ import = "astrocommunity.search.nvim-hlslens" }
33.2.1 nvim-hlslens
Hlsearch Lens for Neovim
Repository: https://github.com/kevinhwang91/nvim-hlslens
33.3 nvim-spectre
{ import = "astrocommunity.search.nvim-spectre" }
33.3.1 nvim-spectre
Find the enemy and replace them with dark power.
Repository: https://github.com/nvim-pack/nvim-spectre
33.4 sad-nvim
{ import = "astrocommunity.search.sad-nvim" }
33.4.1 sad.nvim
Space Age seD in Neovim. A project-wide find and replace plugin for Neovim.
Requires: - sad - fzf so you can confirm/select
the matches to apply your changes - by default the plugin using fd to list all files in the
current folder, you can use git ls_file - a pager tool,
e.g. delta
Repository: https://github.com/ray-x/sad.nvim
34 session
34.1 vim-workspace
{ import = "astrocommunity.session.vim-workspace" }
34.1.1 vim-workspace
Automated Vim session management with file auto-save and persistent undo history
The configuration of the plugin:
- disable resession.nvim - default astronvim session management
- auto create and auto load the workspace when neovim was started
without any arguments
- just
cd dirandnvimto start the workspace
- just
- auto save the workspace when neovim was closed
- handle neotree, NERDTree, git windows
- fix paths to use cache path of neovim
Repository: https://github.com/thaerkh/vim-workspace
35 snippet
35.1 mini-snippets
{ import = "astrocommunity.snippet.mini-snippets" }
35.1.1 mini.snippets
Manage and expand snippets. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.snippets
Sets up:
- Leaving insert mode while in a snippet session ends the session
- Disable by disabling the
mini_snippets_stopautocommandaugroupin AstroCore
- Disable by disabling the
- Configures the following snippet locations:
- Global user snippets in
~/.config/nvim/snippets/global.json - Language specific user snippets in
~/.config/nvim/snippets/<lang>.json - Snippets in the runtime for plugins with a
snippetsfolder such asfriendly-snippets - Project local snippets including
.vscode/project.code-snippetsand.vscode/<lang>.code-snippets
- Global user snippets in
Provided Integrations:
- Adds
friendly-snippets - Disables LuaSnip
- Configures
blink.cmpto usemini.snippetsif it’s available - Configures
nvim-cmpto usemini.snippetsif it’s available
35.2 nvim-snippets
{ import = "astrocommunity.snippet.nvim-snippets" }
35.2.1 nvim-snippets
Snippet support using native neovim snippets
Repository: https://github.com/garymjr/nvim-snippets
36 split-and-window
36.1 colorful-winsep-nvim
{ import = "astrocommunity.split-and-window.colorful-winsep-nvim" }
36.1.1 colorful-winsep.nvim
Make your nvim window separators colorful with smooth animations
Repository: https://github.com/nvim-zh/colorful-winsep.nvim
36.2 edgy-nvim
{ import = "astrocommunity.split-and-window.edgy-nvim" }
36.2.1 edgy.nvim
Easily create and manage predefined window layouts, bringing a new edge to your workflow
Repository: https://github.com/folke/edgy.nvim
36.3 mini-map
{ import = "astrocommunity.split-and-window.mini-map" }
36.3.1 mini-map
Blazing fast minimap and scrollbar for vim with no external dependencies.
Repository: https://github.com/echasnovski/mini.map
36.4 minimap-vim
{ import = "astrocommunity.split-and-window.minimap-vim" }
36.4.1 minimap.vim
📡 Blazing fast minimap / scrollbar for vim, powered by code-minimap written in Rust.
Requires: - code-minimap
Repository: https://github.com/wfxr/minimap.vim
36.5 neominimap-nvim
{ import = "astrocommunity.split-and-window.neominimap-nvim" }
36.5.1 Neominimap
Yet another minimap plugin for Neovim
Repository: https://github.com/Isrothy/neominimap.nvim
36.6 windows-nvim
{ import = "astrocommunity.split-and-window.windows-nvim" }
36.6.1 Windows.nvim
Automatically expand width of the current window. Maximizes and restore it. And all this with nice animations!
Repository: https://github.com/anuvyklack/windows.nvim
37 startup
37.1 alpha-nvim
{ import = "astrocommunity.startup.alpha-nvim" }
37.1.1 alpha-nvim
a lua powered greeter like vim-startify / dashboard-nvim
Repository: https://github.com/goolord/alpha-nvim
37.2 fsplash-nvim
{ import = "astrocommunity.startup.fsplash-nvim" }
37.2.1 fsplash.nvim
Show a custom splash screen in a floating window
Repository: https://github.com/jovanlanik/fsplash.nvim
Note: This plugin will also disable the Alpha dashboard by default
37.3 mini-starter
{ import = "astrocommunity.startup.mini-starter" }
37.3.1 Mini-Starter
Neovim Lua plugin with fast and flexible start screen. Part of ‘mini.nvim’ library.
Repository: https://github.com/echasnovski/mini.starter
38 syntax
38.1 hlargs-nvim
{ import = "astrocommunity.syntax.hlargs-nvim" }
38.1.1 hlargs.nvim
Highlight arguments’ definitions and usages, using Treesitter
Repository: https://github.com/m-demare/hlargs.nvim
38.2 vim-cool
{ import = "astrocommunity.syntax.vim-cool" }
38.2.1 vim-cool
A very simple plugin that makes hlsearch more useful.
Repository: https://github.com/romainl/vim-cool
Vim-cool disables search highlighting when you are done searching and
re-enables it when you search again. That’s it. No more
:noh<CR>, no more
/sytdstdrsid<CR>, and no more dodgy
<C-l> mappings.
38.3 vim-easy-align
{ import = "astrocommunity.syntax.vim-easy-align" }
38.3.1 vim-easy-align
🌻 A Vim alignment plugin
Repository: https://github.com/junegunn/vim-easy-align
38.4 vim-sandwich
{ import = "astrocommunity.syntax.vim-sandwich" }
38.4.1 vim-sandwich
Set of operators and textobjects to search/select/edit sandwiched texts.
Repository: https://github.com/machakann/vim-sandwich
39 terminal-integration
39.1 flatten-nvim
{ import = "astrocommunity.terminal-integration.flatten-nvim" }
39.1.1 flatten.nvim
Open files and command output from neovim terminals in your current neovim instance
Repository: https://github.com/willothy/flatten.nvim
39.2 nvim-unception
{ import = "astrocommunity.terminal-integration.nvim-unception" }
39.2.1 nvim-unception
A plugin that leverages Neovim’s built-in RPC functionality to simplify opening files from within Neovim’s terminal emulator without nesting sessions.
Repository: https://github.com/samjwill/nvim-unception
39.3 toggleterm-manager-nvim
{ import = "astrocommunity.terminal-integration.toggleterm-manager-nvim" }
39.3.1 toggleterm-manager.nvim
A Telescope extension to manage Toggleterm’s terminals in NeoVim
Key <Leader>ts is mapped to open the telescope
interface.
Additionally added keymaps in the Telescope interface:
nnormal mode:<CR>: toggle the selected terminal.r: rename the selected terminal.d: delete the selected terminal.n: create a new terminal buffer
iinsert mode:<CR>: toggle the selected terminal.<C-r>: rename the selected terminal.<C-d>: delete the selected terminal.<C-i>: create a new terminal buffer
Repository: https://github.com/ryanmsnyder/toggleterm-manager.nvim
39.4 vim-tmux-navigator
{ import = "astrocommunity.terminal-integration.vim-tmux-navigator" }
39.4.1 vim-tmux-navigator
Seamless navigation between tmux panes and vim splits
Repository: https://github.com/christoomey/vim-tmux-navigator
Navigate between vim and tmux panes seamlessly
39.5 vim-tmux-yank
{ import = "astrocommunity.terminal-integration.vim-tmux-yank" }
39.5.1 vim-tmux-yank
Synchronize Vim, Tmux, and OS clipboards via OSC 52
Repository: https://github.com/jabirali/vim-tmux-yank
This is a simple plugin for synchronizing the clipboards of
vim/nvim, tmux, and a variety of
operating systems, even over remote connections. It does so via a
terminal escape called OSC 52.
39.6 vim-tpipeline
{ import = "astrocommunity.terminal-integration.vim-tpipeline" }
39.6.1 vim-tpipeline
Embed your vim statusline in tmux
Repository: https://github.com/vimpostor/vim-tpipeline
Embed your vim statusline in the tmux statusline!
40 test
40.1 neotest
{ import = "astrocommunity.test.neotest" }
40.1.1 neotest
An extensible framework for interacting with tests within NeoVim.
Repository: https://github.com/nvim-neotest/neotest
40.2 nvim-coverage
{ import = "astrocommunity.test.nvim-coverage" }
40.2.1 nvim-coverage
Displays test coverage data in the sign column
Repository: https://github.com/andythigpen/nvim-coverage
40.3 vim-test
{ import = "astrocommunity.test.vim-test" }
40.3.1 vim-test
Run your tests at the speed of thought
Repository: https://github.com/vim-test/vim-test
41 utility
41.1 hover-nvim
{ import = "astrocommunity.utility.hover-nvim" }
41.1.1 hover.nvim
Hover plugin framework for Neovim
Repository: https://github.com/lewis6991/hover.nvim
41.2 live-server-nvim
{ import = "astrocommunity.utility.live-server-nvim" }
41.2.1 live-server.nvim
Live reload local development servers inside of neovim
Requires:
One of the following:
Repository: https://github.com/barrett-ruth/live-server.nvim
41.3 lua-json5
{ import = "astrocommunity.utility.lua-json5" }
41.3.1 Json5 parser for luajit
Requires:
- cargo - Rust package manager
A json5 parser for luajit
Repository: https://github.com/Joakker/lua-json5
41.4 mason-tool-installer-nvim
{ import = "astrocommunity.utility.mason-tool-installer-nvim" }
41.4.1 mason-tool-installer.nvim
Install and upgrade third party tools automatically
Repository: https://github.com/WhoIsSethDaniel/mason-tool-installer.nvim
Note: This integrates with mason-null-ls,
mason-lspconfig, and mason-nvim-dap by moving
any ensure_installed lists into
mason-tool-installer and removes them from those
plugins.
41.5 neodim
{ import = "astrocommunity.utility.neodim" }
41.5.1 neodim
Neovim plugin for dimming the highlights of unused functions, variables, parameters, and more
Repository: https://github.com/zbirenbaum/neodim
41.6 noice-nvim
{ import = "astrocommunity.utility.noice-nvim" }
41.6.1 noice.nvim
💥 Highly experimental plugin that completely replaces the UI for messages, cmdline and the popupmenu.
Repository: https://github.com/folke/noice.nvim
41.7 nvim-toggler
{ import = "astrocommunity.utility.nvim-toggler" }
41.7.1 Nvim-toggler
Invert text in vim.
Keybindings: The default binding is <Leader>i to
invert the word under your cursor.
Repository: https://github.com/nguyenvukhang/nvim-toggler
41.8 telescope-coc-nvim
{ import = "astrocommunity.utility.telescope-coc-nvim" }
41.8.1 telescope-coc.nvim
An extension for telescope.nvim that allows you to find/filter/preview/pick results from coc.nvim.
Repository: https://github.com/fannheyward/telescope-coc.nvim
41.9 telescope-fzy-native-nvim
{ import = "astrocommunity.utility.telescope-fzy-native-nvim" }
41.9.1 telescope-fzy-native.nvim
FZY style sorter that is compiled
Dependencies: * It is possible that you will already have a compiled binary matching your system. You can find out information about compiling the binary at the implementation repo: https://github.com/romgrk/fzy-lua-native
Repository: https://github.com/nvim-telescope/telescope-fzy-native.nvim
41.10 telescope-lazy-nvim
{ import = "astrocommunity.utility.telescope-lazy-nvim" }
41.10.1 telescope-lazy.nvim
Telescope extension that provides handy functionality about plugins installed via lazy.nvim
Repository: https://github.com/tsakirist/telescope-lazy.nvim
41.11 telescope-live-grep-args-nvim
{ import = "astrocommunity.utility.telescope-live-grep-args-nvim" }
41.11.1 telescope-live-grep-args.nvim
Live grep with args
Dependencies: * ripgrep
Repository: https://github.com/nvim-telescope/telescope-live-grep-args.nvim
41.12 vim-fetch
{ import = "astrocommunity.utility.vim-fetch" }
41.12.1 vim-fetch
Make Vim handle line and column numbers in file names with a minimum of fuss
Repository: https://github.com/wsdjeg/vim-fetch
42 workflow
42.1 bad-practices-nvim
{ import = "astrocommunity.workflow.bad-practices-nvim" }
42.1.1 Bad-practices.nvim
A plugin to help give up bad practices in vim.
Repository: https://github.com/antonk52/bad-practices.nvim
42.2 hardtime-nvim
{ import = "astrocommunity.workflow.hardtime-nvim" }
42.2.1 hardtime.nvim
A Neovim plugin helping you establish good command workflow and habit
Repository: https://github.com/m4xshen/hardtime.nvim
42.3 precognition-nvim
{ import = "astrocommunity.workflow.precognition-nvim" }
42.3.1 precognition.nvim
precognition.nvim assists with discovering motions (Both vertical and horizontal) to navigate your current buffer
Repository: https://github.com/tris203/precognition.nvim