Theovim is my personal Neovim configuration, featuring a complete Telescope, Treesitter, and LSP setup, ~30 carefully selected plugins, and custom UI components in Lua.
Theovim:
For more information, read the Highlights section and the built-in help documentation using :help theovim
.
make
and some C compiler to compile telescope-fzf-native.nvim
npm
, g++
(gcc-c++
), and unzip
for some LSP serversgit
to update Theovim[!NOTE] I highly recommend you to fork this repository and tweak settings on your own.
# Optional backup
[[ -e ~/.config/nvim ]] && mv ~/.config/nvim ~/.config/nvim.bak
# Install Theovim files in ~/.config/nvim
git clone --depth 1 https://github.com/theopn/theovim.git ~/.config/nvim
:help theovim-tldr
: Summary of the Theovim help documentationTheovim creates a solid base Neovim experience by maximizing built-in features.
The init.lua
file initializes sensible default options, autocmds, and keybindings without external plugins or modules.
For more information:
:help theovim-init-options
:help theovim-init-keymaps
:help theovim-init-commands
:help theovim-init-autocmds
:help theovim-init-netrw
Theovim provides ~30 carefully selected plugins managed by lazy.nvim. Here are some of the plugins that will make your life easier.
TODO
, WARN
, etc.For more information:
:help theovim-plugins
Telescope.nvim is a fuzzy finder for Neovim. It allows you to jump between files, buffers, and anything you could think of in a matter of a few keystrokes.
My Telescope configuration is heavily inspired by Kickstart.nvim, a configuration template written by TJ DeVries who is the author of Telescope.nvim and the core maintainer of Neovim.
A few of my favorite Telescope features:
:Telescope buffers
(<leader><leader>
): lists all open buffers:Telescope oldfile
(<leader>s.
): finds recently opened files:Telescope
(<leader>ss
): searches Telescope functions using Telescope:Telescope find_files
(<leader>sf
): searches files in the current and children directories:Telescope live_grep
(<leader>sg
): searches for a word in the all the files in the current and children directories:Telescope git_commits
(<leader>gc
): searches for Git commitsFor more information:
:help theovim-telescope
Treesitter (TS) is an incremental parser generator for more accurate syntax highlighting compared to the default regex-based highlighting. TS also integrates with Vim's folding and selection mechanism to provide a more efficient navigation and editing experience.
For more information:
:help theovim-treesitter
Neovim's built-in LSP offers modern IDE features for any language you want (assuming one of the 350+ Neovim LSP servers supports the language you use) with flexible customizability and low resource usage. Like Telescope, my LSP configuration is heavily inspired by TJ's Kickstart.nvim.
There are three main parts of LSP:
For more information:
:help theovim-diagnostic
:help theovim-lsp
:help theovim-completion
Theovim features unique UI components written in Lua.
For more information:
:help theovim-ui
$VIMRUNTIME/ftplugin/
: Ftplugin examplesSmarterWinMove
functionsetup()
function for Tabline:h insert.txt
): Theovim help formatting