Opinionated, no-bullshit, personal Neovim config made for my needs, but should be usable for other people as well. Totsuka exists because I am tired of over-complex frameworks, and for my final and best attempt at configuring Neovim. Totsuka is focused on the base Vim experience, efficiency, simplicity and modularity, with as minimal plugins as possible, you are encouraged to remove and add as needed.
Totsuka has it's own custom colorscheme now! Say hello to the Yata colorscheme, inspired by a certain japanese regalia.
Totsuka comes with only 16 plugins! Most of these are extremely important (LSP, Telescope, Packer) so at this state, you simply cannot bring the count down without suffering from some lack of features, consider this as a great starting point for your own config, modularity is off the charts!
ripgrep
packer
python-black-git
(optional)
Totsuka follows the following structure:
├── after
│ └── plugin
│ ├── black.lua
│ ├── fugitive.lua
│ ├── telescope.lua
│ ├── treesitter.lua
│ └── undotree.lua
├── colors
├── lua
│ └── totsuka
│ ├── init.lua
│ ├── keybinds.lua
│ ├── lsp.lua
│ ├── options.lua
│ └── plugins.lua
├── init.lua
after/plugin
, plugin specific configurationcolors
, custom colorschemes (if any)lua/totsuka
, options, keybinds, lsp configs, plugin listinit.lua
where everything gets referenced
You should mostly mess around after
where your plugin config goes and lua
where everything else goes.
Totsuka does not come with which-key
by default, so here's a rundown of the keybinds.
Keybind | Description |
---|---|
<leader>e |
Toggle Netrw |
<leader>w |
:w |
<leader>q |
:q |
<leader>h |
Beginning of line |
<leader>l |
End of line |
<leader>hh |
Clear highlight |
<leader>x |
chmod +x current file |
<leader>v |
Vertical split |
<leader>c |
Horizontal split |
<C-P> |
Improved Paste |
J |
Improved Shift J |
(Visual Mode) K |
Move visual block up |
(Visual Mode) J |
Move visual block down |
<C-d> |
Jump down but maintain cursor in the middle |
<C-u> |
Jump up but maintain cursor in the middle |
<C-h> , <C-l> |
Navigate horizontally between splits |
<C-j> <C-k> |
Navigate vertically between splits |
Keybind | Description |
---|---|
<leader>fm |
Format file using Black |
<C-k> |
Select previous item |
<C-j> |
Select next item |
<CR> |
Confirm item |
gd |
View definition |
K |
Hover definition |
[d |
Next LSP buffer |
]d |
Prev LSP buffer |
Keybind | Description |
---|---|
<leader>gs |
Opens fugitive |
<leader>P |
Pull with Rebase |
<leader>p |
Push |
<leader>t |
Push setting the branch |
Keybind | Description |
---|---|
<leader>pf |
Fuzzy find files |
<leader>ps |
Grep from files |
<leader>pg |
Fuzzy find git files |
<leader>pw |
View Buffers |
Keybind | Description |
---|---|
<leader>u |
Toggle Undotree |