A straightforward Neovim configuration that should work for most developers. Cloned from NvChad's Tinyvim.
![Screenshot 2024-08-31 at 10 15 59 AM](https://private-user-images.githubusercontent.com/9611008/363415783-399c779d-9b1f-493b-b06a-45e4153102cd.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwNzQ3MzIsIm5iZiI6MTczOTA3NDQzMiwicGF0aCI6Ii85NjExMDA4LzM2MzQxNTc4My0zOTljNzc5ZC05YjFmLTQ5M2ItYjA2YS00NWU0MTUzMTAyY2QucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwOSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDlUMDQxMzUyWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MTg3YTUwYzQ5MWFiNmI4ZWIxMWZlZTg5ZjMxNmUyZTEyYzAxYjYxN2E3OTU5NzhhZTg0ZmQ4NGZkOWQ1YTg1MSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.yVJ9bWdArj9_ljXd3RTszScY9OACmOmk4llvJ6Tfw3I)
- Catpuccin colour scheme.
- Sidebar navigation.
- Tabs by default.
- Easy lazygit access.
- Basic code completion.
- Sensible hotkeys.
- A simple directory structure.
- Leader key set to
SPACE
.
-
Any C Compiler to build the LSP configs:
# MacOS brew install gcc # Ubuntu sudo apt install build-essential # Arch sudo pacman -S base-devel
-
Ripgrep to search through files and folders:
# MacOS brew install ripgrep # Ubuntu sudo apt install ripgrep # Arch sudo pacman -S ripgrep
-
Lazygit for Git things:
# MacOS brew install lazygit # Ubuntu sudo apt install lazygit # Arch sudo pacman -S lazygit
-
Backup your existing Neovim config if you haven't already:
mv ~/.config/nvim ~/.config/nvim-backup
-
Clear out your existing Neovim cache and local files:
rm -rf ~/.cache/nvim rm -rf ~/.local/share/nvim
-
Clone this repository into your
~/.config
directory:git clone https://github.com/johnnymatthews/simple-nvim ~/.config/nvim
-
Open Neovim:
nvim
Neovim should download all the extensions, theme files, and dependencies for you.
Most of the keyboard shortcuts (also called mappings) for this config can be found within ./lua/mappings.lua
, however some shortcuts are defined within plugins. Here is a complete list of all the keyboard shortcut for this repo (all shortcuts are from normal
mode, unless otherwise stated):
Description | Shortcut |
---|---|
Comment or uncomment a line | gc |
Open or close the sidebar navigation | CTRL + n |
Change focus to or from the sidebar navigation | CTRL + ww |
Copy the current file to the clipboard | CTRL + c |
Find file by filename. | SPACE ff |
Find files that you recently opened. | SPACE fo |
Search for files by their content. | SPACE fw |
Open a Lazygit window | SPACE fg |
Open a floating termial window | SPACE ft |
Close current tab | CTRL + q |
Open or close the undo-tree | SPACE u |