Neovim Cheatsheet (Your Config)

by Codex

Neovim Cheatsheet (Current Setup)

This page includes:

Minimal Changes Added (2026-02-20)

ModeKeyWhat it does
Normal<leader>bdClose current buffer (:bdelete)
Normal<leader>qoOpen quickfix list (:copen)
Normal<leader>qcClose quickfix list (:cclose)
InsertjkExit to Normal mode

Existing Always-On Custom Mappings

ModeKeyWhat it does
Normal<Esc>Clear search highlight
Normal<C-h> <C-j> <C-k> <C-l>Move between splits
Normal/Insert/Visual<C-s>Save file
Normal<C-p>Find files (Telescope)
Normal<F2>Rename symbol
Normal\\Open netrw sidebar (:Lexplore)
Normal<leader>\\Open netrw fullscreen (:Explore)
Normal<leader>qSend diagnostics to location list
Normal<leader>fFormat buffer

Telescope Leader Shortcuts

KeyWhat it does
<leader>shHelp tags
<leader>skKeymaps
<leader>sfFind files
<leader>ssTelescope pickers
<leader>swSearch word under cursor
<leader>sgLive grep
<leader>sdDiagnostics picker
<leader>srResume last picker
<leader>s.Recent files
<leader><leader>Open buffers
<leader>/Fuzzy find in current buffer
<leader>s/Live grep in open files
<leader>snSearch your Neovim config

Completion (blink.cmp, super-tab preset)

ModeKeyWhat it does
Insert<Tab>Accept selected completion item (and snippet jump behavior)
Insert<C-n> or <Down>Select next completion item
Insert<C-p> or <Up>Select previous completion item
Insert<C-space>Open completion/docs
Insert<C-e>Hide completion menu
Insert<C-k>Toggle signature help

Built-in Neovim Keys You Should Know (Core)

These are built in and not all appear as :map entries.

Movement and Navigation

KeyWhat it does
h j k lMove cursor left/down/up/right
w b eNext word / previous word / end of word
0 ^ $Start of line / first non-blank / end of line
gg GTop of file / bottom of file
{ }Previous/next paragraph
%Jump between matching pairs
<C-o> <C-i>Jump back / jump forward

Editing Operators

KeyWhat it does
d{motion}Delete by motion
c{motion}Change by motion
y{motion}Yank by motion
p PPaste after / before
u <C-r>Undo / redo
.Repeat last change

Text Objects

PatternWhat it does
ciwChange inside word
ci" ci' ci)Change inside quote/quote/paren
di( da(Delete inside/around parens
vi{ va{Select inside/around braces

Search and Replace

KeyWhat it does
/pattern ?patternSearch forward/backward
n NNext/previous match
* #Search word under cursor forward/backward
:%s/old/new/gReplace in file

Windows and Tabs

KeyWhat it does
<C-w>v <C-w>sVertical/horizontal split
<C-w>q <C-w>oClose split / close other splits
<C-w>wCycle windows
:tabnew gt gTNew tab / next tab / previous tab

Built-in Neovim Default Mappings Active in Your Setup

These come from Neovim runtime defaults and are active now.

ModeKeyWhat it does
Normal[d / ]dPrevious/next diagnostic
Normal[D / ]DFirst/last diagnostic in buffer
Normal<C-w>dShow diagnostic float
Normal[q / ]qPrevious/next quickfix item
Normal[Q / ]QFirst/last quickfix item
Normal[l / ]lPrevious/next location list item
Normal[L / ]LFirst/last location list item
Normal[b / ]bPrevious/next buffer
Normal[B / ]BFirst/last buffer
NormalgrnLSP rename
Normal/VisualgraLSP code action
NormalgrrLSP references
NormalgriLSP implementation
NormalgrtLSP type definition
NormalgOLSP document symbols

Conditional / Buffer-Local Mappings

LSP Attach (when an LSP is attached to the buffer)

ModeKeyWhat it does
NormalgrnRename symbol
Normal/VisualgraCode action
NormalgrrReferences (Telescope)
NormalgriImplementations (Telescope)
NormalgrdDefinitions (Telescope)
NormalgrDDeclaration
NormalgrtType definitions (Telescope)
NormalgODocument symbols
NormalgWWorkspace symbols
Normal<leader>thToggle inlay hints (if supported)

gitsigns Attach (when file is in a Git repo)

ModeKeyWhat it does
Normal]c / [cNext/previous git hunk
Normal/Visual<leader>hsStage hunk
Normal/Visual<leader>hrReset hunk
Normal<leader>hSStage buffer
Normal<leader>huUndo stage hunk
Normal<leader>hRReset buffer
Normal<leader>hpPreview hunk
Normal<leader>hbBlame line
Normal<leader>hdDiff against index
Normal<leader>hDDiff against last commit
Normal<leader>tbToggle line blame
Normal<leader>tDToggle deleted lines preview

Full Active Mapping Dump

Generated from your current config with headless Neovim (nmap, imap, vmap, omap, smap, tmap, cmap).

Normal Mode (:nmap)



n  <Esc>       * <Cmd>nohlsearch<CR>
   <Space>f    * <Lua 81: ~/.local/share/nvim/lazy/lazy.nvim/lua/lazy/core/handler/keys.lua:121>
                 [F]ormat buffer
n  <Space>\    * <Cmd>Explore<CR>
                 Fullscreen file explorer
n  <Space>q    * <Lua 62: ~/.local/nvim-linux-x86_64/share/nvim/runtime/lua/vim/diagnostic.lua:2445>
                 Open diagnostic [Q]uickfix list
n  <Space>qc   * <Cmd>cclose<CR>
                 [Q]uickfix [C]lose
n  <Space>qo   * <Cmd>copen<CR>
                 [Q]uickfix [O]pen
n  <Space>bd   * <Cmd>bdelete<CR>
                 [B]uffer [D]elete
n  %             <Plug>(MatchitNormalForward)
n  &           * :&&<CR>
                 :help &-default
n  Y           * y$
                 :help Y-default
n  [%            <Plug>(MatchitNormalMultiBackward)
n  [<Space>    * <Lua 60: vim/_defaults.lua:0>
                 Add empty line above cursor
n  [B          * <Lua 58: vim/_defaults.lua:0>
                 :brewind
n  [b          * <Lua 56: vim/_defaults.lua:0>
                 :bprevious
n  [<C-T>      * <Lua 54: vim/_defaults.lua:0>
                  :ptprevious
n  [T          * <Lua 52: vim/_defaults.lua:0>
                 :trewind
n  [t          * <Lua 50: vim/_defaults.lua:0>
                 :tprevious
n  [A          * <Lua 48: vim/_defaults.lua:0>
                 :rewind
n  [a          * <Lua 46: vim/_defaults.lua:0>
                 :previous
n  [<C-L>      * <Lua 44: vim/_defaults.lua:0>
                 :lpfile
n  [L          * <Lua 42: vim/_defaults.lua:0>
                 :lrewind
n  [l          * <Lua 40: vim/_defaults.lua:0>
                 :lprevious
n  [<C-Q>      * <Lua 38: vim/_defaults.lua:0>
                 :cpfile
n  [Q          * <Lua 36: vim/_defaults.lua:0>
                 :crewind
n  [q          * <Lua 34: vim/_defaults.lua:0>
                 :cprevious
n  [D          * <Lua 32: vim/_defaults.lua:0>
                 Jump to the first diagnostic in the current buffer
n  [d          * <Lua 30: vim/_defaults.lua:0>
                 Jump to the previous diagnostic in the current buffer
n  \           * <Cmd>Lexplore<CR>
                 Toggle file explorer sidebar
n  ]%            <Plug>(MatchitNormalMultiForward)
n  ]<Space>    * <Lua 61: vim/_defaults.lua:0>
                 Add empty line below cursor
n  ]B          * <Lua 59: vim/_defaults.lua:0>
                 :blast
n  ]b          * <Lua 57: vim/_defaults.lua:0>
                 :bnext
n  ]<C-T>      * <Lua 55: vim/_defaults.lua:0>
                 :ptnext
n  ]T          * <Lua 53: vim/_defaults.lua:0>
                 :tlast
n  ]t          * <Lua 51: vim/_defaults.lua:0>
                 :tnext
n  ]A          * <Lua 49: vim/_defaults.lua:0>
                 :last
n  ]a          * <Lua 47: vim/_defaults.lua:0>
                 :next
n  ]<C-L>      * <Lua 45: vim/_defaults.lua:0>
                 :lnfile
n  ]L          * <Lua 43: vim/_defaults.lua:0>
                 :llast
n  ]l          * <Lua 41: vim/_defaults.lua:0>
                 :lnext
n  ]<C-Q>      * <Lua 39: vim/_defaults.lua:0>
                 :cnfile
n  ]Q          * <Lua 37: vim/_defaults.lua:0>
                 :clast
n  ]q          * <Lua 35: vim/_defaults.lua:0>
                 :cnext
n  ]D          * <Lua 31: vim/_defaults.lua:0>
                 Jump to the last diagnostic in the current buffer
n  ]d          * <Lua 29: vim/_defaults.lua:0>
                 Jump to the next diagnostic in the current buffer
n  g%            <Plug>(MatchitNormalBackward)
n  g]            <Lua 165: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1233>
                 Move to right "around"
n  g[            <Lua 162: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1232>
                 Move to left "around"
n  gO          * <Lua 22: vim/_defaults.lua:0>
                 vim.lsp.buf.document_symbol()
n  grt         * <Lua 21: vim/_defaults.lua:0>
                 vim.lsp.buf.type_definition()
n  gri         * <Lua 20: vim/_defaults.lua:0>
                 vim.lsp.buf.implementation()
n  grr         * <Lua 19: vim/_defaults.lua:0>
                 vim.lsp.buf.references()
n  gra         * <Lua 17: vim/_defaults.lua:0>
                 vim.lsp.buf.code_action()
n  grn         * <Lua 16: vim/_defaults.lua:0>
                 vim.lsp.buf.rename()
n  gcc         * <Lua 14: vim/_defaults.lua:0>
                 Toggle comment line
n  gc          * <Lua 12: vim/_defaults.lua:0>
                 Toggle comment
n  gx          * <Lua 10: vim/_defaults.lua:0>
                 Opens filepath or URI under cursor with the system handler (file explorer, web browser, …)
n  shn         * <Lua 272: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Highlight next surrounding
n  shl         * <Lua 270: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Highlight previous surrounding
n  sh          * <Lua 235: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Highlight surrounding
n  sFn         * <Lua 183: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find next left surrounding
n  sFl         * <Lua 239: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find previous left surrounding
n  sF          * <Lua 182: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find left surrounding
n  sfn         * <Lua 243: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find next right surrounding
n  sfl         * <Lua 233: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find previous right surrounding
n  sf          * <Lua 244: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find right surrounding
n  srn         * <Lua 242: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1255>
                 Replace next surrounding
n  srl         * <Lua 240: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1255>
                 Replace previous surrounding
n  sr          * <Lua 238: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1255>
                 Replace surrounding
n  sdn         * <Lua 236: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1255>
                 Delete next surrounding
n  sdl         * <Lua 234: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1255>
                 Delete previous surrounding
n  sd          * <Lua 218: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1255>
                 Delete surrounding
n  s           * <Nop>
n  sa          * <Lua 181: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1255>
                 Add surrounding
n  <Plug>(MatchitNormalMultiForward) * :<C-U>call matchit#MultiMatch("W",  "n")<CR>
n  <Plug>(MatchitNormalMultiBackward) * :<C-U>call matchit#MultiMatch("bW", "n")<CR>
n  <Plug>(MatchitNormalBackward) * :<C-U>call matchit#Match_wrapper('',0,'n')<CR>
n  <Plug>(MatchitNormalForward) * :<C-U>call matchit#Match_wrapper('',1,'n')<CR>
   <Plug>luasnip-expand-repeat * <Lua 105: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:35>
                 LuaSnip: Repeat last node expansion
n  <Plug>luasnip-delete-check * <Lua 103: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:28>
                 LuaSnip: Removes current snippet from jumplist
n  <F2>        * <Lua 23: ~/.local/nvim-linux-x86_64/share/nvim/runtime/lua/vim/lsp/buf.lua:640>
                 Rename symbol
n  <C-P>       * <Lua 24: ~/.config/nvim/init.lua:213>
                 Find files
n  <C-S>       * <Cmd>w<CR>
                 Save file
n  <C-K>       * <C-W><C-K>
                 Move focus to the upper window
n  <C-J>       * <C-W><NL>
                 Move focus to the lower window
n  <C-H>       * <C-W><C-H>
                 Move focus to the left window
n  <C-W><C-D>    <C-W>d
                 Show diagnostics under the cursor
n  <C-W>d      * <Lua 33: vim/_defaults.lua:0>
                 Show diagnostics under the cursor
n  <C-L>       * <C-W><C-L>
                 Move focus to the right window

Insert Mode (:imap)



!  <Plug>luasnip-expand-repeat * <Lua 116: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:38>
                 LuaSnip: Repeat last node expansion
!  <Plug>luasnip-delete-check * <Lua 104: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:31>
                 LuaSnip: Removes current snippet from jumplist
i  <Plug>luasnip-jump-prev * <Lua 102: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:24>
                 LuaSnip: Jump to the previous node
i  <Plug>luasnip-jump-next * <Lua 97: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:21>
                 LuaSnip: Jump to the next node
i  <Plug>luasnip-prev-choice * <Lua 96: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:18>
                 LuaSnip: Change to the previous choice from the choiceNode
i  <Plug>luasnip-next-choice * <Lua 95: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:15>
                 LuaSnip: Change to the next choice from the choiceNode
i  <Plug>luasnip-expand-snippet * <Lua 94: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:12>
                 LuaSnip: Expand the current snippet
i  <Plug>luasnip-expand-or-jump * <Lua 93: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:9>
                 LuaSnip: Expand or jump in the current snippet
i  <S-Tab>     * <C-D>
i  <C-S>       * <Cmd>w<CR>
                 Save file
i  <C-W>       * <C-G>u<C-W>
                 :help i_CTRL-W-default
i  <C-U>       * <C-G>u<C-U>
                 :help i_CTRL-U-default
i  <Tab>       * <Lua 25: vim/_defaults.lua:0>
                 vim.snippet.jump if active, otherwise <Tab>
i  jk          * <Esc>
                 Escape insert mode

Visual/Select Mode (:vmap)



s  <Tab>       * <Lua 26: vim/_defaults.lua:0>
                 vim.snippet.jump if active, otherwise <Tab>
   <Space>f    * <Lua 81: ~/.local/share/nvim/lazy/lazy.nvim/lua/lazy/core/handler/keys.lua:121>
                 [F]ormat buffer
x  #           * <Lua 9: vim/_defaults.lua:0>
                 :help v_#-default
x  %             <Plug>(MatchitVisualForward)
x  *           * <Lua 4: vim/_defaults.lua:0>
                 :help v_star-default
x  @           * mode() ==# 'V' ? ':normal! @'.getcharstr().'<CR>' : '@'
                 :help v_@-default
x  Q           * mode() ==# 'V' ? ':normal! @<C-R>=reg_recorded()<CR><CR>' : 'Q'
                 :help v_Q-default
x  [%            <Plug>(MatchitVisualMultiBackward)
x  ]%            <Plug>(MatchitVisualMultiForward)
x  a%            <Plug>(MatchitVisualTextObject)
x  al            <Lua 117: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Around last textobject
x  an            <Lua 116: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Around next textobject
x  a             <Lua 112: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Around textobject
x  g%            <Plug>(MatchitVisualBackward)
x  g]            <Lua 110: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1233>
                 Move to right "around"
x  g[            <Lua 107: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1232>
                 Move to left "around"
x  gra         * <Lua 18: vim/_defaults.lua:0>
                 vim.lsp.buf.code_action()
x  gc          * <Lua 13: vim/_defaults.lua:0>
                 Toggle comment
x  gx          * <Lua 11: vim/_defaults.lua:0>
                 Opens filepath or URI under cursor with the system handler (file explorer, web browser, …)
x  il            <Lua 119: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Inside last textobject
x  in            <Lua 118: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Inside next textobject
x  i             <Lua 113: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Inside textobject
x  sFn         * <Lua 192: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find next left surrounding
x  sFl         * <Lua 188: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find previous left surrounding
x  sF          * <Lua 161: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find left surrounding
x  sfn         * <Lua 165: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find next right surrounding
x  sfl         * <Lua 169: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find previous right surrounding
x  sf          * <Lua 187: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find right surrounding
x  s           * <Nop>
x  sa          * :<C-U>lua MiniSurround.add("visual")<CR>
                 Add surrounding to selection
x  <Plug>(MatchitVisualTextObject)   <Plug>(MatchitVisualMultiBackward)o<Plug>(MatchitVisualMultiForward)
x  <Plug>(MatchitVisualMultiForward) * :<C-U>call matchit#MultiMatch("W",  "n")<CR>m'gv``
x  <Plug>(MatchitVisualMultiBackward) * :<C-U>call matchit#MultiMatch("bW", "n")<CR>m'gv``
x  <Plug>(MatchitVisualBackward) * :<C-U>call matchit#Match_wrapper('',0,'v')<CR>m'gv``
x  <Plug>(MatchitVisualForward) * :<C-U>call matchit#Match_wrapper('',1,'v')<CR>:if col("''") != col("$") | exe ":normal! m'" | endif<CR>gv``
s  <Plug>luasnip-jump-prev * <Lua 209: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:57>
                 LuaSnip: Jump to the previous node
s  <Plug>luasnip-jump-next * <Lua 208: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:54>
                 LuaSnip: Jump to the next node
s  <Plug>luasnip-prev-choice * <Lua 205: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:51>
                 LuaSnip: Change to the previous choice from the choiceNode
s  <Plug>luasnip-next-choice * <Lua 204: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:48>
                 LuaSnip: Change to the next choice from the choiceNode
s  <Plug>luasnip-expand-snippet * <Lua 203: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:45>
                 LuaSnip: Expand the current snippet
s  <Plug>luasnip-expand-or-jump * <Lua 202: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:42>
                 LuaSnip: Expand or jump in the current snippet
   <Plug>luasnip-expand-repeat * <Lua 151: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:35>
                 LuaSnip: Repeat last node expansion
s  <S-Tab>     * <Lua 28: vim/_defaults.lua:0>
                 vim.snippet.jump if active, otherwise <S-Tab>
v  <C-S>       * <Cmd>w<CR>
                 Save file

Operator-Pending Mode (:omap)



   <Space>f    * <Lua 87: ~/.local/share/nvim/lazy/lazy.nvim/lua/lazy/core/handler/keys.lua:121>
                 [F]ormat buffer
o  %             <Plug>(MatchitOperationForward)
o  [%            <Plug>(MatchitOperationMultiBackward)
o  ]%            <Plug>(MatchitOperationMultiForward)
o  al            <Lua 135: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Around last textobject
o  an            <Lua 134: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Around next textobject
o  a             <Lua 128: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Around textobject
o  g%            <Plug>(MatchitOperationBackward)
o  g]            <Lua 125: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1233>
                 Move to right "around"
o  g[            <Lua 122: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1232>
                 Move to left "around"
o  gc          * <Lua 15: vim/_defaults.lua:0>
                 Comment textobject
o  il            <Lua 137: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Inside last textobject
o  in            <Lua 136: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Inside next textobject
o  i             <Lua 129: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/ai.lua:1236>
                 Inside textobject
o  sFn         * <Lua 89: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find next left surrounding
o  sFl         * <Lua 169: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find previous left surrounding
o  sF          * <Lua 81: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find left surrounding
o  sfn         * <Lua 168: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find next right surrounding
o  sfl         * <Lua 80: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find previous right surrounding
o  s           * <Nop>
o  sf          * <Lua 167: ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua:1276>
                 Find right surrounding
o  <Plug>(MatchitOperationMultiForward) * :<C-U>call matchit#MultiMatch("W",  "o")<CR>
o  <Plug>(MatchitOperationMultiBackward) * :<C-U>call matchit#MultiMatch("bW", "o")<CR>
o  <Plug>(MatchitOperationBackward) * :<C-U>call matchit#Match_wrapper('',0,'o')<CR>
o  <Plug>(MatchitOperationForward) * :<C-U>call matchit#Match_wrapper('',1,'o')<CR>
   <Plug>luasnip-expand-repeat * <Lua 141: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:35>
                 LuaSnip: Repeat last node expansion

Select Mode (:smap)



s  <Tab>       * <Lua 26: vim/_defaults.lua:0>
                 vim.snippet.jump if active, otherwise <Tab>
   <Space>f    * <Lua 86: ~/.local/share/nvim/lazy/lazy.nvim/lua/lazy/core/handler/keys.lua:121>
                 [F]ormat buffer
s  <Plug>luasnip-jump-prev * <Lua 131: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:57>
                 LuaSnip: Jump to the previous node
s  <Plug>luasnip-jump-next * <Lua 123: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:54>
                 LuaSnip: Jump to the next node
s  <Plug>luasnip-prev-choice * <Lua 122: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:51>
                 LuaSnip: Change to the previous choice from the choiceNode
s  <Plug>luasnip-next-choice * <Lua 120: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:48>
                 LuaSnip: Change to the next choice from the choiceNode
s  <Plug>luasnip-expand-snippet * <Lua 119: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:45>
                 LuaSnip: Expand the current snippet
s  <Plug>luasnip-expand-or-jump * <Lua 108: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:42>
                 LuaSnip: Expand or jump in the current snippet
   <Plug>luasnip-expand-repeat * <Lua 106: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:35>
                 LuaSnip: Repeat last node expansion
s  <S-Tab>     * <Lua 28: vim/_defaults.lua:0>
                 vim.snippet.jump if active, otherwise <S-Tab>
v  <C-S>       * <Cmd>w<CR>
                 Save file

Terminal Mode (:tmap)



t  <Esc><Esc>  * <C-\><C-N>
                 Exit terminal mode

Command-Line Mode (:cmap)



!  <Plug>luasnip-expand-repeat * <Lua 145: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:38>
                 LuaSnip: Repeat last node expansion
!  <Plug>luasnip-delete-check * <Lua 143: ~/.local/share/nvim/lazy/LuaSnip/plugin/luasnip.lua:31>
                 LuaSnip: Removes current snippet from jumplist

Notes