Post

Normal Neovim Configuration Information

Based on AstroNvim with additional features

  • Install and initialize: lazyman -x Normal
  • Configuration category: Starter
  • Base configuration: AstroNvim
  • Plugin manager: Lazy
  • Installation location: ~/.config/nvim-Normal

Git repository

https://github.com/NormalNvim/NormalNvim

Neovimcraft entry

http://neovimcraft.com/plugin/NormalNvim/NormalNvim

Lazy managed plugins

Normal Keymaps

Normal mode keymaps

DescriptionFIX: Prevent TAB from behaving like <C-i>, as they share the same internal code
Left hand side<Tab>
Right hand side<Tab>
Description 
Left hand side<Esc>
Right hand side 
DescriptionHome screen
Left hand side h
Right hand side 
DescriptionToggleterm horizontal split
Left hand side th
Right hand side<Cmd>ToggleTerm size=10 direction=horizontal<CR>
DescriptionComment line
Left hand side /
Right hand side 
DescriptionUpdate Plugins and Mason
Left hand side pa
Right hand side<Cmd>NvimUpdatePackages<CR>
DescriptionToggleterm vertical split
Left hand side tv
Right hand side<Cmd>ToggleTerm size=80 direction=vertical<CR>
DescriptionMason Installer
Left hand side pm
Right hand side<Cmd>Mason<CR>
DescriptionQuit
Left hand side q
Right hand side 
DescriptionView Git blame
Left hand side gl
Right hand side 
DescriptionSave
Left hand side w
Right hand side<Cmd>w<CR>
DescriptionView full Git blame
Left hand side gL
Right hand side 
DescriptionWipe buffer
Left hand side c
Right hand side 
DescriptionPreview Git hunk
Left hand side gp
Right hand side 
DescriptionReset Git hunk
Left hand side gh
Right hand side 
DescriptionReset Git buffer
Left hand side gr
Right hand side 
DescriptionStage Git hunk
Left hand side gs
Right hand side 
DescriptionStage Git buffer
Left hand side gS
Right hand side 
DescriptionUnstage Git hunk
Left hand side gu
Right hand side 
DescriptionView Git diff
Left hand side gd
Right hand side 
DescriptionOpen in github
Left hand side gP
Right hand side 
DescriptionSave as sudo
Left hand side W
Right hand side 
DescriptionToggleTerm lazygit
Left hand side gg
Right hand side 
DescriptionNew file
Left hand side n
Right hand side<Cmd>enew<CR>
DescriptionRanger
Left hand side r
Right hand side<Cmd>RnvimrToggle<CR>
DescriptionStep Into (F11)
Left hand side db
Right hand side 
Descriptionneotree
Left hand side e
Right hand side<Cmd>Neotree toggle<CR>
DescriptionFind man
Left hand side fm
Right hand side 
DescriptionStart/Continue (F5)
Left hand side dc
Right hand side 
DescriptionNeotree Focus
Left hand side o
Right hand side 
DescriptionConditional Breakpoint (S-F9)
Left hand side dC
Right hand side 
DescriptionLoad last session
Left hand side Sl
Right hand side<Cmd>SessionManager! load_last_session<CR>
DescriptionOpen compiler
Left hand side mm
Right hand side 
DescriptionSave this session
Left hand side Ss
Right hand side<Cmd>SessionManager! save_current_session<CR>
DescriptionDelete session
Left hand side Sd
Right hand side<Cmd>SessionManager! delete_session<CR>
DescriptionMason Update
Left hand side pM
Right hand side<Cmd>MasonUpdateAll<CR>
DescriptionClose Session
Left hand side dq
Right hand side 
DescriptionSearch sessions
Left hand side Sf
Right hand side<Cmd>SessionManager! load_session<CR>
DescriptionTerminate Session (S-F5)
Left hand side dQ
Right hand side 
DescriptionLoad current directory session
Left hand side S.
Right hand side<Cmd>SessionManager! load_current_dir_session<CR>
DescriptionRestart (C-F5)
Left hand side dr
Right hand side 
DescriptionREPL
Left hand side dR
Right hand side 
DescriptionRun To Cursor
Left hand side ds
Right hand side 
DescriptionEvaluate Input
Left hand side dE
Right hand side 
DescriptionNvim Update
Left hand side pA
Right hand side<Cmd>NvimUpdate<CR>
DescriptionStop unit
Left hand side Ts
Right hand side 
DescriptionClear Breakpoints
Left hand side dB
Right hand side 
DescriptionFile
Left hand side Tf
Right hand side 
DescriptionFind in undo tree
Left hand side fu
Right hand side 
DescriptionPlugins Install
Left hand side pi
Right hand side 
DescriptionStep Back (S-F10)
Left hand side do
Right hand side 
DescriptionPlugins Status
Left hand side ps
Right hand side 
DescriptionStep Out (S-F11)
Left hand side dO
Right hand side 
DescriptionPlugins Sync
Left hand side pS
Right hand side 
DescriptionPlugins Check Updates
Left hand side pu
Right hand side 
DescriptionPlugins Update
Left hand side pU
Right hand side 
DescriptionPause
Left hand side dp
Right hand side 
DescriptionSymbols tree
Left hand side lt
Right hand side 
DescriptionGit branches
Left hand side gb
Right hand side 
DescriptionGit commits (repository)
Left hand side gc
Right hand side 
DescriptionGit commits (current file)
Left hand side gC
Right hand side 
DescriptionGit status
Left hand side gt
Right hand side 
DescriptionNvim Version
Left hand side pv
Right hand side<Cmd>NvimVersion<CR>
DescriptionResume previous search
Left hand side f<CR>
Right hand side 
DescriptionAsk chatgpt
Left hand side a
Right hand side 
DescriptionFind marks
Left hand side f'
Right hand side 
DescriptionFind nvim config files
Left hand side fa
Right hand side 
DescriptionFind buffers
Left hand side fB
Right hand side 
DescriptionClose buffer
Left hand side C
Right hand side 
DescriptionFind word under cursor in project
Left hand side fw
Right hand side 
DescriptionFind commands
Left hand side fC
Right hand side 
DescriptionFind help
Left hand side fh
Right hand side 
DescriptionUnit
Left hand side Tu
Right hand side 
DescriptionFind keymaps
Left hand side fk
Right hand side 
DescriptionFind notifications
Left hand side fn
Right hand side 
DescriptionFind recent
Left hand side fo
Right hand side 
DescriptionUnit in debugger
Left hand side Td
Right hand side 
DescriptionFind vim registers
Left hand side fv
Right hand side 
DescriptionCoverage
Left hand side Tc
Right hand side 
DescriptionFind themes
Left hand side ft
Right hand side 
DescriptionFind words in project
Left hand side ff
Right hand side 
DescriptionFind words in project (no hidden)
Left hand side fF
Right hand side 
DescriptionAll
Left hand side Ta
Right hand side 
DescriptionFind words in current buffer
Left hand side f/
Right hand side 
DescriptionE2e
Left hand side Te
Right hand side 
DescriptionSearch symbol in buffer
Left hand side ls
Right hand side 
DescriptionFind project
Left hand side fp
Right hand side 
DescriptionFind and replace word in project
Left hand side fr
Right hand side 
DescriptionFind and replace word in buffer
Left hand side fb
Right hand side 
DescriptionFind snippets
Left hand side fs
Right hand side 
DescriptionNvim Changelog
Left hand side pl
Right hand side<Cmd>NvimChangelog<CR>
DescriptionFind recorded macros
Left hand side fc
Right hand side 
DescriptionMarkdown preview
Left hand side Dp
Right hand side 
DescriptionMarkmap
Left hand side Dm
Right hand side 
DescriptionOpen documentation
Left hand side Dd
Right hand side 
DescriptionDebugger UI
Left hand side du
Right hand side 
DescriptionDebugger Hover
Left hand side dh
Right hand side 
DescriptionClose all buffers except current
Left hand side bc
Right hand side 
DescriptionClose all buffers
Left hand side bC
Right hand side 
DescriptionSelect buffer from tabline
Left hand side bb
Right hand side 
DescriptionDelete buffer from tabline
Left hand side bd
Right hand side 
DescriptionClose all buffers to the left
Left hand side bl
Right hand side 
DescriptionClose all buffers to the right
Left hand side br
Right hand side 
DescriptionSort by extension (buffers)
Left hand side bse
Right hand side 
DescriptionSort by relative path (buffers)
Left hand side bsr
Right hand side 
DescriptionSort by full path (buffers)
Left hand side bsp
Right hand side 
DescriptionSort by buffer number (buffers)
Left hand side bsi
Right hand side 
DescriptionSort by modification (buffers)
Left hand side bsm
Right hand side 
DescriptionHorizontal split buffer from tabline
Left hand side b\
Right hand side 
DescriptionVertical split buffer from tabline
Left hand side b|
Right hand side 
DescriptionZen mode
Left hand side uz
Right hand side 
DescriptionAutopairs
Left hand side ua
Right hand side 
DescriptionBackground
Left hand side ub
Right hand side 
DescriptionAutocompletion
Left hand side uc
Right hand side 
Descriptioncolor highlight
Left hand side uC
Right hand side<Cmd>ColorizerToggle<CR>
DescriptionDiagnostics
Left hand side ud
Right hand side 
DescriptionChange indent setting
Left hand side uD
Right hand side 
DescriptionSigncolumn
Left hand side ug
Right hand side 
DescriptionStatusline
Left hand side ul
Right hand side 
DescriptionCodeLens
Left hand side uL
Right hand side 
DescriptionChange line numbering
Left hand side un
Right hand side 
DescriptionUI notifications
Left hand side uN
Right hand side 
DescriptionPaste mode
Left hand side up
Right hand side 
DescriptionSpellcheck
Left hand side us
Right hand side 
DescriptionConceal
Left hand side uS
Right hand side 
DescriptionTabline
Left hand side ut
Right hand side 
DescriptionURL highlight
Left hand side uu
Right hand side 
DescriptionWrap
Left hand side uw
Right hand side 
DescriptionFind recorded macros
Left hand side fq
Right hand side 
DescriptionSyntax highlight (buffer)
Left hand side uy
Right hand side 
DescriptionFoldcolumn
Left hand side uh
Right hand side 
DescriptionCompiler redo
Left hand side mr
Right hand side 
Descriptioncompiler results
Left hand side mt
Right hand side 
DescriptionAnimations
Left hand side uA
Right hand side 
DescriptionToggleTerm float
Left hand side tt
Right hand side<Cmd>ToggleTerm direction=float<CR>
Description 
Left hand side%
Right hand side<Plug>(MatchitNormalForward)
DescriptionNvim builtin
Left hand side&
Right hand side:&&<CR>
DescriptionGo to the fist character of the line (aliases 0 to ^)
Left hand side0
Right hand side^
DescriptionMove buffer tab left
Left hand side<lt>b
Right hand side 
DescriptionDebugger: Step Out
Left hand side<lt>S-11>
Right hand side 
DescriptionMove buffer tab right
Left hand side>b
Right hand side 
DescriptionChange without yanking
Left hand sideC
Right hand side"_C
DescriptionG and go to the last position
Left hand sideG
Right hand side 
DescriptionDelete before character without yanking it
Left hand sideX
Right hand side 
DescriptionNvim builtin
Left hand sideY
Right hand sidey$
DescriptionPrevious Git hunk
Left hand side[g
Right hand side 
DescriptionPrevious buffer
Left hand side[b
Right hand side 
DescriptionPrevious tab
Left hand side[t
Right hand side 
Description 
Left hand side[%
Right hand side<Plug>(MatchitNormalMultiBackward)
DescriptionHorizontal Split
Left hand side\
Right hand side<Cmd>split<CR>
DescriptionNext Git hunk
Left hand side]g
Right hand side 
DescriptionNext buffer
Left hand side]b
Right hand side 
DescriptionNext tab
Left hand side]t
Right hand side 
Description 
Left hand side]%
Right hand side<Plug>(MatchitNormalMultiForward)
DescriptionChange without yanking
Left hand sidec
Right hand side"_c
DescriptionOpen the file under cursor with system app
Left hand sidegx
Right hand side 
Descriptiongg and go to the first position
Left hand sidegg
Right hand side 
DescriptionSearch symbol in bufffer
Left hand sidegs
Right hand side 
Description 
Left hand sideg%
Right hand side<Plug>(MatchitNormalBackward)
DescriptionComment toggle blockwise
Left hand sidegb
Right hand side 
DescriptionComment toggle linewise
Left hand sidegc
Right hand side 
DescriptionMove cursor down
Left hand sidej
Right hand sidev:count == 0 ? 'gj' : 'j'
DescriptionMove cursor up
Left hand sidek
Right hand sidev:count == 0 ? 'gk' : 'k'
DescriptionDelete character without yanking it
Left hand sidex
Right hand side 
DescriptionPeek fold
Left hand sidezp
Right hand side 
DescriptionOpen all folds
Left hand sidezR
Right hand side 
DescriptionClose all folds
Left hand sidezM
Right hand side 
DescriptionFold less
Left hand sidezr
Right hand side 
DescriptionFold more
Left hand sidezm
Right hand side 
DescriptionVertical Split
Left hand side|
Right hand side<Cmd>vsplit<CR>
DescriptionMove to above split
Left hand side<C-K>
Right hand side 
Descriptionterminal
Left hand side<C-'>
Right hand side<Cmd>ToggleTerm<CR>
DescriptionDebugger: Start
Left hand side<F5>
Right hand side 
DescriptionDebugger: Stop
Left hand side<S-F5>
Right hand side 
DescriptionDebugger: Toggle Breakpoint
Left hand side<F9>
Right hand side 
DescriptionDebugger: Conditional Breakpoint
Left hand side<S-F9>
Right hand side 
DescriptionDebugger: Step Over
Left hand side<F10>
Right hand side 
DescriptionPaste from cliboard
Left hand side<C-P>
Right hand side"+p<Esc>
DescriptionDebugger: Restart
Left hand side<C-F5>
Right hand side 
DescriptionDebugger: Step Back
Left hand side<S-F10>
Right hand side 
DescriptionMove to left split
Left hand side<C-H>
Right hand side 
DescriptionResize split up
Left hand side<C-Up>
Right hand side 
DescriptionResize split down
Left hand side<C-Down>
Right hand side 
DescriptionResize split left
Left hand side<C-Left>
Right hand side 
DescriptionResize split right
Left hand side<C-Right>
Right hand side 
DescriptionVisually select all
Left hand side<C-A>
Right hand side 
Descriptionterminal
Left hand side<F7>
Right hand side<Cmd>ToggleTerm<CR>
DescriptionDebugger: Step Into
Left hand side<F11>
Right hand side 
DescriptionHop to word
Left hand side<C-M>
Right hand side 
DescriptionMove to below split
Left hand side<C-J>
Right hand side 
DescriptionPage up exactly 20% of the total size of the buffer
Left hand side<S-PageUp>
Right hand side 
DescriptionPage down exactly a 20% of the total size of the buffer
Left hand side<S-PageDown>
Right hand side 
DescriptionCopy to cliboard
Left hand side<C-Y>
Right hand side"+y<Esc>
DescriptionForce write
Left hand side<C-S>
Right hand side<Cmd>w!<CR>
DescriptionFast move down
Left hand side<S-Down>
Right hand side 
DescriptionFast move up
Left hand side<S-Up>
Right hand side 
DescriptionCopy to clipboard and delete line
Left hand side<C-D>
Right hand side"+y<Esc>dd
DescriptionOpen compiler
Left hand side<F6>
Right hand side 
DescriptionCompiler redo
Left hand side<S-F6>
Right hand side 
Descriptioncompiler resume
Left hand side<S-F7>
Right hand side 
Description 
Left hand side<Plug>(MatchitNormalMultiForward)
Right hand side:<C-U>call matchit#MultiMatch("W", "n")<CR>
Description 
Left hand side<Plug>(MatchitNormalMultiBackward)
Right hand side:<C-U>call matchit#MultiMatch("bW", "n")<CR>
Description 
Left hand side<Plug>(MatchitNormalBackward)
Right hand side:<C-U>call matchit#Match_wrapper('',0,'n')<CR>
Description 
Left hand side<Plug>(MatchitNormalForward)
Right hand side:<C-U>call matchit#Match_wrapper('',1,'n')<CR>
DescriptionMove to right split
Left hand side<C-L>
Right hand side 

Visual mode keymaps

Descriptionindent line
Left hand side<Tab>
Right hand side>gv
DescriptionEvaluate Input
Left hand side dE
Right hand side 
Descriptioncomment line
Left hand side /
Right hand side<Esc><Cmd>lua require('Comment.api').toggle.linewise(vim.fn.visualmode())<CR>
DescriptionNvim builtin
Left hand side#
Right hand sidey?\V<C-R>"<CR>
Description 
Left hand side%
Right hand side<Plug>(MatchitVisualForward)
DescriptionNvim builtin
Left hand side*
Right hand sidey/\V<C-R>"<CR>
Descriptionunindent line
Left hand side<lt>
Right hand side<lt>gv
Descriptionindent line
Left hand side>
Right hand side>gv
DescriptionChange without yanking
Left hand sideC
Right hand side"_C
DescriptionG and go to the last position (visual)
Left hand sideG
Right hand side 
DescriptionYank what you are going to override, then paste
Left hand sideP
Right hand sidep
DescriptionDelete all characters in line
Left hand sideX
Right hand side"_X
Description 
Left hand side[%
Right hand side<Plug>(MatchitVisualMultiBackward)
Description 
Left hand side]%
Right hand side<Plug>(MatchitVisualMultiForward)
Description 
Left hand sidea%
Right hand side<Plug>(MatchitVisualTextObject)
DescriptionChange without yanking
Left hand sidec
Right hand side"_c
Descriptiongg and go to the first position (visual)
Left hand sidegg
Right hand side 
Description 
Left hand sideg%
Right hand side<Plug>(MatchitVisualBackward)
DescriptionComment toggle blockwise
Left hand sidegb
Right hand side 
DescriptionComment toggle linewise
Left hand sidegc
Right hand side 
DescriptionPaste content you’ve previourly yanked
Left hand sidep
Right hand sideP
DescriptionDelete all characters in line
Left hand sidex
Right hand side"_x
Descriptionunindent line
Left hand side<S-Tab>
Right hand side<lt>gv
DescriptionCopy to cliboard
Left hand side<C-Y>
Right hand side"+y<Esc>
DescriptionCopy to clipboard and delete line
Left hand side<C-D>
Right hand side"+y<Esc>dd
DescriptionHop to word
Left hand side<C-M>
Right hand side 
Description 
Left hand side<Plug>(MatchitVisualTextObject)
Right hand side<Plug>(MatchitVisualMultiBackward)o<Plug>(MatchitVisualMultiForward)
Description 
Left hand side<Plug>(MatchitVisualMultiForward)
Right hand side:<C-U>call matchit#MultiMatch("W", "n")<CR>m'gv``
Description 
Left hand side<Plug>(MatchitVisualMultiBackward)
Right hand side:<C-U>call matchit#MultiMatch("bW", "n")<CR>m'gv``
Description 
Left hand side<Plug>(MatchitVisualBackward)
Right hand side:<C-U>call matchit#Match_wrapper('',0,'v')<CR>m'gv``
Description 
Left hand side<Plug>(MatchitVisualForward)
Right hand side:<C-U>call matchit#Match_wrapper('',1,'v')<CR>:if col("''") != col("$") | exe ":normal! m'" | endif<CR>gv``

Operator mode keymaps

Description 
Left hand side%
Right hand side<Plug>(MatchitOperationForward)
Description 
Left hand side[%
Right hand side<Plug>(MatchitOperationMultiBackward)
Description 
Left hand side]%
Right hand side<Plug>(MatchitOperationMultiForward)
Description 
Left hand sideg%
Right hand side<Plug>(MatchitOperationBackward)
Description 
Left hand side<Plug>(MatchitOperationMultiForward)
Right hand side:<C-U>call matchit#MultiMatch("W", "o")<CR>
Description 
Left hand side<Plug>(MatchitOperationMultiBackward)
Right hand side:<C-U>call matchit#MultiMatch("bW", "o")<CR>
Description 
Left hand side<Plug>(MatchitOperationBackward)
Right hand side:<C-U>call matchit#Match_wrapper('',0,'o')<CR>
Description 
Left hand side<Plug>(MatchitOperationForward)
Right hand side:<C-U>call matchit#Match_wrapper('',1,'o')<CR>