Setting Up Neovim with NvChad on Ubuntu Setting Up Neovim with NvChad on Ubuntu

Setting Up Neovim with NvChad on Ubuntu

Neovim is a modern rewrite of Vim that adds performance improvements and extensibility. Paired with NvChad, a feature-rich and highly customizable Neovim config, you can create a beautiful and powerful coding environment.

This guide walks you through setting up Neovim with NvChad on Ubuntu 22.04 or later.


Why NvChad?

  • 🎨 Beautiful UI: Out-of-the-box themes, file trees, and icons.
  • Fast: Built with performance in mind.
  • 🧩 Modular: Easy to add plugins and personalize keybindings.
  • 🛠️ Pre-configured: No need to start from scratch.

Prerequisites

  • Ubuntu 22.04 or later

  • Basic familiarity with the terminal

  • Git installed:

    Terminal window
    sudo apt update
    sudo apt install git

Step 1: Install Neovim (Latest)

The Ubuntu repo may have an older version, so we’ll use the official AppImage or PPA.

Terminal window
wget https://github.com/neovim/neovim/releases/latest/download/nvim.appimage
chmod u+x nvim.appimage
sudo mv nvim.appimage /usr/local/bin/nvim

Check installation:

Terminal window
nvim --version

Option 2: Use PPA

Terminal window
sudo add-apt-repository ppa:neovim-ppa/stable
sudo apt update
sudo apt install neovim

NvChad uses icons that require a patched font like FiraCode Nerd Font:

Terminal window
mkdir -p ~/.local/share/fonts
cd ~/.local/share/fonts
wget https://github.com/ryanoasis/nerd-fonts/releases/latest/download/FiraCode.zip
unzip FiraCode.zip
fc-cache -fv

Then set your terminal to use FiraCode Nerd Font.


Step 3: Install NvChad

⚠️ This will override your existing Neovim config at ~/.config/nvim!

Terminal window
git clone https://github.com/NvChad/NvChad ~/.config/nvim --depth 1
nvim

This will trigger NvChad’s first-time setup and plugin installation. Wait for it to complete.


Absolutely! According to the official NvChad documentation and community sources:

You can open the theme selector UI using this keybinding:

<leader> + t + h

Where <leader> is the spacebar by default. ([nvchad.com][1])

A tutorial confirms the sequence more specifically:

Press <Space>, then t, then h

→ Opens the theme selector. ([blog.spoonconsulting.com][2])

If you pick a theme, NvChad prompts:

"Make theme changes permanent?"

Press y to confirm and update your configuration. ([github.com][3])


Step 4: Customize NvChad

NvChad includes a built-in theme selector — no manual Lua editing needed for theme changes.

🎨 Change Theme Using the Built-in UI

  1. Launch Neovim:

    Terminal window
    nvim
  2. Press:

    <Space> → t → h

    This opens the NvChad Theme Selector.

  3. Navigate through the list of available themes (e.g. onedark, gruvbox, catppuccin, tokyonight) using arrow keys.

  4. Press Enter to preview a theme.

  5. A confirmation prompt appears. Press y to make your selection permanent (updates are saved to chadrc.lua automatically).


📁 Optional: Further Customization

If you want to go deeper, manually tweak the config:

Terminal window
nvim ~/.config/nvim/lua/custom/chadrc.lua
M.ui = {
theme = "onedark",
transparency = true,
statusline = {
theme = "minimal",
},
}

Save and reload Neovim to apply your settings.


Step 5: Add Plugins (Optional)

To add new plugins:

  1. Create or edit ~/.config/nvim/lua/custom/plugins.lua
  2. Example: add vim-surround
return {
{
"tpope/vim-surround",
lazy = false
}
}

Then restart Neovim and run:

:Lazy sync

Step 6: Useful Keybindings

ActionKeybinding
File Explorer<leader> e
Fuzzy Find Files<leader> ff
Search in Files<leader> fg
Toggle Terminal<leader> tt
Save File<leader> w
Quit<leader> q

<leader> is the spacebar by default.


Troubleshooting

IssueSolution
Icons not renderingEnsure Nerd Font is installed and selected
No plugins loadingCheck for errors in custom/chadrc.lua
Errors on launchDelete ~/.local/share/nvim and re-run Neovim
Missing features (LSP, etc.)Run :Mason and install required tools

Conclusion

With NvChad, you’ve got a pre-configured Neovim environment that’s fast, modern, and ready to go. Whether you’re coding in Python, Rust, or web dev stacks, this setup gives you a powerful IDE-like experience right inside your terminal.

🎉 Happy hacking with Neovim!


← Back to blog