Getting Started
AstroNvim v1.4.0 has added stable
and nightly
update channels. For the time being we have kept the default update channel to nightly
so that the behavior of AstroNvim doesn't change (this could be considered a breaking change to some). We are planning to make the stable
channel the default update channel when Neovim v0.8 is released and we tag AstroNvim v2.0.0 to incorporate this "breaking" change.
⚡ Requirements
- Nerd Fonts
- Neovim 0.7+
- Terminal with true color support (for the default theme, otherwise it is dependent on the theme you are using)
- Optional Requirements:
When using default theme: For MacOS, the default terminal does not have true color support. You will need to use iTerm2 or another terminal emulator that has true color support.
🛠️ Installation
Make a backup of your current nvim folder
mv ~/.config/nvim ~/.config/nvim.bak
Clean old plugins (Optional but recommended)
mv ~/.local/share/nvim/site ~/.local/share/nvim/site.bak
Clone the repository
git clone https://github.com/AstroNvim/AstroNvim ~/.config/nvim
nvim +PackerSync
If you are still using Neovim v0.6 you can still use the last version of AstroNvim prior to the Neovim v0.7 release. After running the git clone
command above please checkout the nvim-0.6
branch like so:
git -C ~/.config/nvim checkout nvim-0.6
Note: This branch will not be updated after the Neovim v0.7 release and will not get any new features or bug fixes.
📦 Setup
Install LSP
Enter :LspInstall
followed by the name of the server you want to install
Example:
:LspInstall pyright
Install language parser
Enter :TSInstall
followed by the name of the language you want to install
Example:
:TSInstall python
Manage plugins
Run :PackerClean
to remove any disabled or unused plugins
Run :PackerSync
to update and clean plugins
Update AstroNvim
Run :AstroUpdate
to get the latest updates from the repository
✨ Features
- File explorer with Neo-tree
- Autocompletion with Cmp
- Git integration with Gitsigns
- Statusline with Feline
- Terminal with Toggleterm
- Fuzzy finding with Telescope
- Syntax highlighting with Treesitter
- Formatting and linting with Null-ls
- Language Server Protocol with Native LSP
⚙️ Configuration
To begin making custom user configurations you must create a user/
folder. The provided example can be created with (please note the trailing slashes after the directory names)
cp -r ~/.config/nvim/lua/user_example/ ~/.config/nvim/lua/user/
The provided example
user_example
contains an init.lua
file which can be used for all user configuration. After
running the cp
command above this file can be found in
~/.config/nvim/lua/user/init.lua
.