Home Normal


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


Neovimcraft entry


Lazy managed plugins

Normal Keymaps

normal mode keymaps

FIX: Prevent TAB from behaving like , as they share the same internal code 
Toggle animationsuA  
New filenenew 
Save as sudoW  
Change line numberingun  
Toggle wrapuw  
Home screenh  
Comment line/  
Horizontal split buffer from tablineb\  
View Git blamegl  
View full Git blamegL  
Find commandsfC  
Preview Git hunkgp  
Find vim registersfv  
Reset Git hunkgh  
Find words in projectff  
Reset Git buffergr  
Stage Git hunkgs  
Find snippetsfs  
Stage Git buffergS  
Open compilerlc  
Unstage Git hunkgu  
View Git diffgd  
Toggleterm horizontal splitthToggleTerm size=10 direction=horizontal 
Open in githubgP  
ToggleTerm lazygitgg  
Toggle neotreeeNeotree toggle 
Toggle Neotree Focuso  
Load last sessionSlSessionManager! load_last_session 
Save this sessionSsSessionManager! save_current_session 
Delete sessionSdSessionManager! delete_session 
Toggle Breakpoint (F9)db  
Clear BreakpointsdB  
Search sessionsSfSessionManager! load_session 
Step Into (F11)di  
Terminate Session (S-F5)dQ  
Load current directory sessionS.SessionManager! load_current_dir_session 
Toggle REPLdR  
Run To Cursords  
Evaluate InputdE  
Toggle Debugger UIdu  
Debugger Hoverdh  
Unit in debuggerTd  
Toggle CoverageTc  
Ask chatgpta  
Toggle symbols treels  
Git branchesgb  
Git commits (repository)gc  
Git commits (current file)gC  
Git statusgt  
Resume previous searchf  
Find marksf’  
Find nvim config filesfa  
Find buffersfB  
Find word under cursor in projectfw  
Find helpfh  
ToggleTerm floatttToggleTerm direction=float 
Find keymapsfk  
Find manfm  
Find notificationsfn  
Toggleterm vertical splittvToggleTerm size=80 direction=vertical 
Find recentfo  
Find themesft  
Find words in project (no hidden)fF  
Find words in current bufferf/  
Search symbolslt  
Find projectfp  
Toggle find and replace word in projectfr  
Toggle find and replace word in bufferfb  
Find recorded macrosfc  
Find recorded macrosfq  
Find in undo treefu  
Plugins Installpi  
Toggle compiler resultslC  
Plugins Statusps  
Plugins SyncpS  
Plugins Check Updatespu  
Plugins UpdatepU  
Start/Continue (F5)dc  
Mason InstallerpmMason 
Conditional Breakpoint (S-F9)dC  
Mason UpdatepMMasonUpdateAll 
Step Over (F10)do  
Update Plugins and MasonpaNvimUpdatePackages 
Step Out (S-F11)dO  
Nvim UpdatepANvimUpdate 
Close Sessiondq  
Nvim VersionpvNvimVersion 
Pause (F6)dp  
Nvim ChangelogplNvimChangelog 
Restart (C-F5)dr  
Wipe bufferc  
Close bufferC  
Close all buffers except currentbc  
Close all buffersbC  
Stop unitTs  
Select buffer from tablinebb  
Delete buffer from tablinebd  
Close all buffers to the leftbl  
Close all buffers to the rightbr  
Sort by extension (buffers)bse  
Sort by relative path (buffers)bsr  
Sort by full path (buffers)bsp  
Sort by buffer number (buffers)bsi  
Sort by modification (buffers)bsm  
Vertical split buffer from tablineb  
Markdown previewDp  
Toggle CodeLensuL  
Zen modebz  
Toggle autopairsua  
Toggle UI notificationsuN  
Toggle backgroundub  
Toggle paste modeup  
Toggle autocompletionuc  
Toggle spellcheckus  
Toggle color highlightuCColorizerToggle 
Toggle concealuS  
Toggle diagnosticsud  
Toggle tablineut  
Change indent settinguD  
Toggle URL highlightuu  
Toggle signcolumnug  
Toggle statuslineul  
Toggle syntax highlightuy  
Toggle foldcolumnuh  
Nvim builtin&:&& 
Go to the fist character of the line (aliases 0 to ^)0^ 
Move buffer tab leftb  
Move buffer tab right>b  
Change without yankingC“_C 
G and go to the last positionG  
Nvim builtinYy$ 
Previous Git hunk[g  
Previous buffer[b  
Previous tab[t  
Horizontal Split\split 
Next Git hunk]g  
Next buffer]b  
Next tab]t  
Change without yankingc“_c 
Open the file under cursor with system appgx  
gg and go to the first positiongg  
Comment toggle blockwisegb  
Comment toggle linewisegc  
Move cursor downjv:count == 0 ? ‘gj’ : ‘j’ 
Move cursor upkv:count == 0 ? ‘gk’ : ‘k’ 
Delete character without yanking itx  
Fold morezm  
Open all foldszR  
Close all foldszM  
Fold lesszr  
Peek foldzp  
Vertical Split  vsplit
Move to above split  
Page down exactly a 20% of the total size of the buffer  
Page up exactly 20% of the total size of the buffer  
Copy to cliboard“+y 
Paste from cliboard“+p 
Open compiler  
Toggle terminalToggleTerm 
Toggle terminal<C-‘>ToggleTerm 
Debugger: Start  
Debugger: Stop  
Debugger: Conditional Breakpoint  
Debugger: Restart  
Debugger: Pause  
Debugger: Toggle Breakpoint  
Debugger: Step Over  
Debugger: Step Into  
Debugger: Step Out  
Move to left split  
Resize split up  
Resize split down  
Resize split left  
Resize split right  
Hop to word  
Copy to clipboard and delete line“+ydd 
Visually select all  
Toggle compiler resume  
Move to below split  
Fast move down  
Fast move up  
Force writew! 
 (MatchitNormalMultiForward):call matchit#MultiMatch("W", "n") 
 (MatchitNormalMultiBackward):call matchit#MultiMatch("bW", "n") 
 (MatchitNormalBackward):call matchit#Match_wrapper('',0,'n') 
 (MatchitNormalForward):call matchit#Match_wrapper('',1,'n') 
Move to right split  

visual mode keymaps

indent line>gv  
Toggle comment line/lua require('Comment.api').toggle.linewise(vim.fn.visualmode())  
Evaluate InputdE   
Nvim builtin#y?\V"  
Nvim builtin*y/\V"  
unindent linegv  
indent line>>gv  
G and go to the last position (visual)G   
Yank what you are going to override, then pastePp  
gg and go to the first position (visual)gg   
Comment toggle blockwisegb   
Comment toggle linewisegc   
Paste content you’ve previourly yankedpP  
Delete character without yanking itx“_x  
unindent linegv  
Copy to clipboard and delete line“+ydd  
Hop to word   
Copy to cliboard“+y  
 (MatchitVisualMultiForward):call matchit#MultiMatch("W", "n")m'gv``  
 (MatchitVisualMultiBackward):call matchit#MultiMatch("bW", "n")m'gv``  
 (MatchitVisualBackward):call matchit#Match_wrapper('',0,'v')m'gv``  
 (MatchitVisualForward):call matchit#Match_wrapper('',1,'v'):if col("''") != col("$")exe “:normal! m’”endifgv``

operator mode keymaps

 (MatchitOperationMultiForward):call matchit#MultiMatch("W", "o")
 (MatchitOperationMultiBackward):call matchit#MultiMatch("bW", "o")
 (MatchitOperationBackward):call matchit#Match_wrapper('',0,'o')
 (MatchitOperationForward):call matchit#Match_wrapper('',1,'o')
This post is licensed under CC BY 4.0 by the author.