This is my personnal neovim config, feel free to override it!
I mostly work with a few languages and I adapted my config to work with :
- C
- C++
- Rust
- Dart
- Typescript
I also plan to add support for others, so be on the lookout!
You should'nt edit directly the config files. Instead you can create a file at ~/.config/nvim/user_custom.vim
, so your personnal modifications won't be overwritten in future updates.
- nvim >= 3.8
- python3
- pynvim:
pip install pynvim --user
- nodejs
- yarn
- git
- curl
Optionals:
- ranger
- grammalecte
- rls
- cquery
- dart_language_server
First make sure that you have all the necessary dependencies.
Then clone this repo and move and the files in the nvim
directory at ~/.config/nvim/
.
In future releases I expect to create an install script.
All the default controls of vim are unmodified except for the s/S substitue keys.
Leader + .
Set the working directory at the current buffer
Layout:
Leader + v
split verticallyLeader + h
split horizontally
Navigation:
-
T or GT
open a new tab -
Shift + Tab
go to next tab -
Ctrl + pageup or pagedown
navigate between tabs -
Leader + c
close current buffer -
s + two first characters of a word
jump to a word downward cursor -
S + two first characters of a word
jump to a word upside cursor
The editor rely on a "tiling manager" like capacities :
Ctrl + Alt + hjkl
resize current bufferAlt + Shift + hjkl
move current buffer
All the LSP support comes from Intellisense (COC)
Space + a
show all errors/warnings of the current projectLeader + a + c
show quick actions for the symbol under cursorLeader + r + n
rename current symbol in the whole projectLeader + F
format current bufferLeader + qf
quick fixgd
go to definition of the symbol under cursorgr
find all reference of the symbol under cursorgy
go to type definitiongi
go to type implementationSpace + s
open symbol list
Ctrl + p
open file fuzzy finderF3 or Ctrl + e
open filesystem treeLeader + f
open ranger file finder (needs ranger as dependancy)Leader + e
open fzf fuzzy finder
Leader + ga
Git addLeader + gc
Git commitLeader + gsh
Git pushLeader + gll
Git pullLeader + gs
Git statusLeader + gb
Git blameLeader + gd
Git diffLeader + gr
Git remove
<
indent selection on the left>
indent selection on the right
Grammalecte (french grammar corrector)
Leader + gc
grammalecte checkLeader + gcc
grammalecte clear
Terminal and Shell
Leader + t + m
open terminal in current bufferLeader + s + h
open vim shell in current buffer