/nvim

My own neovim config

Primary LanguageLuaMIT LicenseMIT

Showcase

demo1 demo2 demo3

Disclaimer

A lot of the keybinds will not make much sense if you just try to use it. This is because i'm using a QMK compatible keyboard and a lot of these keybinds is in a layer in my keyboard. If you wanna understand better you can check out the layer definition here: Layer, the layout here Layout and the macros here Macros

Plugins:

Not all but the main ones

  • Core
  • Appearance
  • Utils
    • Whichkey -> Tools to show keymaps helper
    • Harpoon -> Quick switch between files
    • Bbye -> Better way to close buffers
    • Scope -> Focus on one tab when creating new ones
    • Maximizer -> Focus on one buffer
    • Surround -> Surround words with what you want
    • Comment -> Comment stuff
    • Telescope -> LSP and Helpers
    • Cmp -> Auto completions
    • Auto Session -> Auto create and restore sessions
    • Vista -> Vizualizer for ctags

Maybe Plugins:

Not in the system but may be in the future

  • undotree -> Buffer that shows the history of undo

Keybinds:

WIP: but you can hit space to see whichkey

  • Normal/Insert S-Up -> Move line 1 to top
  • Normal/Insert S-Down -> Move line 1 to Botton
  • Normal S-u -> Open quick menu Harpoon
  • Normal S-l -> Add harpoon bookmark
  • Normal S-h -> Go to 1 file in Harpoon
  • Normal S-j -> Go to 2 file in Harpoon
  • Normal S-a -> Go to 3 file in Harpoon
  • Normal S-x -> Go to 4 file in Harpoon

Vim Motions:

WIP: i keep forgeting these

  • ciw -> delete the hole word that the cursor is in
  • yap -> yank the hole block of code
  • ys<motiom/ex:iw><some_char> -> surround the word with that char
  • ds<some_char> -> delete the surround
  • cs<some_char><another_char> -> change the surround from some_char to another_char
  • zz -> put current line on the middle of the screen
  • zt -> put current line on the top of the screen
  • zb -> put current line on the bottom of the screen
  • gc -> toggle inline comment
  • gb -> toggle inline comment

Install:

mv ~/.config/nvim/ ~/.config/nvim.bak
git clone https://github.com/arturgoms/nvim.git ~/.config/nvim

TODO:

  • When closing the last buffer also closes the neotree and vista and get out of vim
  • Make function to close vim and save session even with a lot of buffers opened (<leader>q)

Credits:

A lot from here is a combination os things that i did but also a lot from others config.

  • [Lunarvim]
  • [AstroNvim]