Skip to content

andysazima/nvim

Repository files navigation

Neovim Config

Introduction

Neovim is a forked version of Vim that has developed along side it with the goal of further customization options and better plugin support and development.

Goal

I try to keep things simple and well-organized. I don't want to bloat my nvim with plugins I don't need. Although, I might not be able to completely stop myself there -- specially with cosmetic plugins...

This nvim setup is my attempt to switch away from VSCode. I was a loyal VSCode user for years, but I found that I just don't use VSCode how it is meant to be used, and I was actually trying to make VSCode act like Vim. So, why not switch to the real deal?

Scheme

I use a structured plugin setup that centers around lazy.nvim.

I keep general configuration (including lazy.nvim initialization) in ./lua/config, and I keep individual plugin configuration in ./lua/plugins.

Installation

This is a Neovim config like any other, so all you need to do is:

  1. Make a backup of your current nvim config (optional but recommended): mv ~/.config/nvim ~/.config/nvim.bkp
  2. Clone this repo into the config folder: git clone <this repo ssh> ~/.config/nvim

SCF

This will run just fine on SCF LC, but you need a few things:

  1. The correct Neovim binary on your PATH. This is easily done by using Hopper and moving an Nvim binary into a folder on your PATH (like ~/bin).
  2. All plugins installed properly. Lazy.nvim needs an internet connection to install plugins, so you can install all your plugins on the OCF with Lazy, then Hopper over the necessary files. This can be laborious, so I have made a set of scripts that make this easier for you at nvim_transfer.

Notes to Keep in Mind

LSP Servers

  1. MasonToolsInstall only needs to be run once when you first install Neovim on a new machine.
  2. Mason does not show all the installed tools for some reason. This also led to me abandoning "mason-lspconfig" due to it searching for Mason-installed tools, even when Mason doesn't see all the tools.
    • Previously, I would need to run MasonToolsInstall every time I opened Neovim if I wanted all my LSPs to work, even though they were installed.
  3. If you add a new LSP, you need to add it in a couple places:
    • Add it to the "ensure_installed" section of the mason-tool-installer.lua config.
    • Add it to the "servers" list in the lspconfig.lua config
      • note
  4. There are a few LSPs and code tools that need to be installed manually with tools like Cargo, Pip, NPM, etc. These will make themselves apparent when they aren't installed by Mason Tool Installer, but still needed.

About

My Neovim config

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors