Personal Neovim configuration with curated plugins and settings for improved productivity.
Git
Terminal with Unicode support
Node.js and npm
Python 3 and pip
Install Neovim and dependencies:
brew install nvim
brew install the_silver_searcher
Install required packages:
npm install -g neovim
pip3 install --user pynvim
Link configuration files:
Install Neovim:
sudo add-apt-repository ppa:neovim-ppa/stable
sudo apt-get update
sudo apt-get install -y neovim
Follow steps 2-4 from the macOS installation.
Leader key is set to <Space>.
Key
Action
<leader>ce
Edit init.lua
<leader>cr
Reload init.lua
Buffer & Window Management
Key
Action
<Tab>
Next buffer
<leader>q
Close current buffer
<leader>vv
Vertical split
<leader>vs
Horizontal split
<C-W><C-T>
Move window to new tab
File Navigation (Telescope)
Key
Action
<leader>p
Find git files (tracked + untracked)
<leader>P
Find files in current file's directory
<leader>b
Switch buffers
<leader>t
NvimTree: find current file
Search & Grep (Telescope)
Key
Action
<leader>G
Live grep in workspace
<leader>w
Grep word under cursor
<leader>W
Grep WORD under cursor
<leader>gv
Resume last telescope search
Key
Action
<leader>d
Go to definition
<leader>r
Find references
<leader>R
Rename symbol
<leader>T
Go to type definition
<leader>a
Code actions
<leader>F
Format buffer
K
Hover documentation
<leader>z
Document symbols
<leader>Z
Workspace symbols
Key
Action
<leader>y
Buffer diagnostics
<leader>Y
Workspace diagnostics
<leader>.
Next diagnostic
<leader>,
Previous diagnostic
<leader>D
Show line diagnostics
Git Operations (Fugitive & Diffview)
Key
Action
<leader>s
Git status
<leader>fs
Vertical diff split
<leader>fh
Diff with HEAD
<leader>fo
Open file from HEAD
<leader>fb
Git blame
<leader>fp
Git push
<leader>fP
Git force push
<leader>fd
Open diffview
<leader>fc
Close diffview
Key
Action
<leader>m
Run nearest test
<leader>M
Run all tests in file
Key
Action
gl
Jump to end of block (normal & visual)
<leader>o
Enhanced jumps: remote older
]q
Next quickfix entry
[q
Previous quickfix entry
Key
Action
<leader>N
Yank line/selection to system clipboard
Key
Action
<Esc> (normal)
Clear search highlight
<Esc> (terminal)
Exit terminal mode
q;
Edit ex-command-line
<leader>S
Toggle HardTime mode
Key
Action
il
Inner line (excluding leading/trailing whitespace)