You should probably just use VSCode like your coworkers who have personal lives.
Nevertheless, here's an nvim config if you must suffer.
Note: This config extends NvChad. NvChad comes with pre-configured LSP support, Treesitter, and nvim-cmp. Nevertheless, these can be fully customized to your liking in './chadrc'. Please refer to the NvChad documentation for more information.
-
Neovim: First, install Neovim. Installation instructions for all platforms can be found here.
-
NvChad: Next, set up NvChad per their instructions.
Note: NvChad reccomends having a Nerd font installed (as do I). Installation is easy. A helpful tutorial can be found here. A list of popular nerd fonts can be found at NerdFonts.com.
-
Clone this Repository: Once NvChad is installed, delete the
./lua/custom
directory.- Next, simply clone this repository into that folder like so:
npx degit https://github.com/ByteMyBriefs/nvim-config lua/custom
- Run
nvim
in your current directory to open Neovim. Lazy.nvim (your new plugin manager) will automatically begin installing all plugins, LSP servers, etc.
You should now be good to go
(Optional) Configure AI Plugins: Lastly, for those of you that want to take advantage, we need to quickly set up your AI tooling.
- Copilot.lua && cmp-copilot: Enter the command
"Copilot auth
and login to your Github account. If you have any issues, please see their full documentation here.
Note: An active Copilot account is required.
- ChatGPT.nvim && NeoAI: Set an environment variable named
$OPENAI_API_KEY
with your OpenAI API key (which you can obtain here). Configuration settings for ChatGPT.nvim and neoai.nvim can be found here and here respectively.
Note: An active OpenAI API Key is required, but a free key will likely last you a very long time by itself.
In addition to the theming and UI provided by NvChad, this configuration also offers:
- Python: LSP, flake8
- Javascript / Typescript: LSPs, Eslint server, Prettier server
- Rust: Rust-tools by simrat39 (includes Rust-Analyzer and full debugging support) and Rustfmt
- Go: LSP, Gofmt, Goimports
As well as full IDE support for two web frameworks:
- Svelte (goat 🐐), and
- React.
-
Copilot.lua by zbirenbaum
-
Cmp-copilot by zbirenbaum
-
ChatGpt by jackMort
-
NeoAI by Bryley
Neovim can be annoying. If you have issues, email me at [email protected].