- Hardmode for learning better vim motion habits - Press '<leader>h' to toggle - Toggles Precognition hints - Toggles Hardtime plugin
Rootiest NeoVim Configuration
██████╗ ██████╗ ██████╗ ████████╗██╗███████╗███████╗████████╗
██╔══██╗██╔═══██╗██╔═══██╗╚══██╔══╝██║██╔════╝██╔════╝╚══██╔══╝
██████╔╝██║ ██║██║ ██║ ██║ ██║█████╗ ███████╗ ██║
██╔══██╗██║ ██║██║ ██║ ██║ ██║██╔══╝ ╚════██║ ██║
██║ ██║╚██████╔╝╚██████╔╝ ██║ ██║███████╗███████║ ██║
╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝╚══════╝ ╚═╝
███╗ ██╗███████╗ ██████╗ ██╗ ██╗██╗███╗ ███╗
████╗ ██║██╔════╝██╔═══██╗██║ ██║██║████╗ ████║
██╔██╗ ██║█████╗ ██║ ██║██║ ██║██║██╔████╔██║
██║╚██╗██║██╔══╝ ██║ ██║╚██╗ ██╔╝██║██║╚██╔╝██║
██║ ╚████║███████╗╚██████╔╝ ╚████╔╝ ██║██║ ╚═╝ ██║
,l; c,
.:ooool' loo:.
.,oooooooo:. looooc, /VVVVVVVV\++++ /VVVVVVVV\
ll:,loooooool, looooool \VVVVVVVV/++++++\VVVVVVVV/
llll,;ooooooooc. looooooo |VVVVVV|++++++++/VVVVV/'
lllllc,coooooooo; looooooo |VVVVVV|++++++/VVVVV/'
lllllll;,loooooool' looooooo +|VVVVVV|++++/VVVVV/'+
lllllllc .:oooooooo:. looooooo +++|VVVVVV|++/VVVVV/'+++++
lllllllc 'loooooool,:ooooooo +++++|VVVVVV|/VVV___++++++++++
lllllllc ;ooooooooc,cooooo +++|VVVVVVVVVV/##/ +_+_+_+
lllllllc .coooooooo;;looo +|VVVVVVVVV___ +/#_#,#_#,\
lllllllc ,loooooool,:ol |VVVVVVV//##/+/#/+/#/'/#/
'cllllc .:oooooooo;. |VVVVV/'+/#/+/#/+/#/ /#/
.;llc .loooo:. |VVV/'++/#/+/#/ /#/ /#/
,; ;l; 'V/' /##//##//##//###/
The rootiest neovim configuration you will ever see!
Installation
This is the traditional method to install a NeoVim configuration.
You will need to manually install NeoVim if you do not already have it.
-
Install NeoVim (0.9+)
-
Install Pre-requisites
-
Required
- git - Version control system
- luarocks - Lua package manager
- A terminal that has Nerd Fonts support
-
Optional (but recommended for the full experience)
- ripgrep - A faster grep
- fzf - A command-line fuzzy finder
- fd - A simple, fast and user-friendly alternative to 'find'
- lazygit - A simple terminal UI for git commands
- tree-sitter - A parser generator tool and an incremental parsing library
- kitty - A fast, feature-rich, GPU based terminal emulator
- NeoVide - A fast, feature-rich, and modern NeoVim GUI
- fish - A smart and user-friendly command line shell
-
-
Backup your current nvim configuration (if you have one)
mv ~/.config/nvim ~/.config/nvim.bak -
Clone the repository
git clone https://github.com/rootiest/rootiest-nvim.git ~/.config/nvim -
Enjoy! 🎉
Alternative Install
This is a more automatic method to install the Rootiest NeoVim configuration.
This method will automatically download the NeoVim AppImage if required.
It will then automatically install the Rootiest NeoVim configuration.
-
Run the install script
curl -sL https://raw.githubusercontent.com/rootiest/rootiest-nvim/main/install.sh | bash -
Install pre-requisites
-
Enjoy! 🎉
Options
There are some hidden files in the configuration directory that can be used to configure user options.
-
.colorscheme: Set the colorscheme
This file facilitates restoring the colorscheme between sessions.
This value is overwritten when the colorscheme is changed in the UI. -
.leader: Set the leader key
This file defines the leader key used in the mappings.
It contains only a single space by default. -
.aitool: Set the AI tool
This file defines the AI plugin used for code completion.
The options arecodeiumcopilottabnineminuetornone. -
.wakatime: Enables WakaTime
This file defines whether the WakaTime plugin is enabled.
The options aretrueorfalse. -
.useimage: Enables Image plugin
This file defines whether the Image plugin is enabled.
The options aretrueorfalse. -
.hardtime: Enables Hardtime plugin
This file defines whether the Hardtime plugin is enabled.
The options aretrueorfalse.
Features
- Comfortable keybindings and IDE-like features
- Designed to be quick to load and easy to use without compromising on features
- Leans heavily on lazy and luarocks for plugin management and lazy-loading
- Catppuccin theme is default but a selection of others are also included
- Automatic light/dark mode switching based on system theme
- Extensive special configurations for kitty, including theme matching
- Kitty scrollback and keybinding support
- Special configuration for neovide
- Detects terminal client and adjusts accordingly
- ToggleTerm, fzf, telescope, neotree, etc. for quick access to files and terminal
- Many UI elements to enhance the experience
- LSP support for many languages and automatic setup for many more
- Remotely spawn a NeoVim instance over ssh, in a container, or from a git repo
- Dashboard logo adjusts to the size of the window
- User-selected AI completion tool:
codeium,copilot,tabnine,minuet, ornone - WakaTime integration: Tracking time spent on code
- Hardtime integration: Trains better use of vim motions and shortcuts
- Colorscheme is remembered between sessions
- Lean and fast while providing a complete professional experience
- Achieves sub-75ms startup time on my laptop
Companion Tools
Rootiest Kitty Conf - A kitty configuration that is designed to work with this NeoVim configuration
Rootiest Fish Conf - A fish configuration that pairs well with this NeoVim configuration
Nerd Fonts - A collection of fonts that includes many icons and glyphs used in this configuration.