Post

Beethoven Neovim Configuration Information

Personal Neovim configuration of mechanical engineering student Alexander Vazquez. See the videos on plugin setup and workstation setup.

  • Install and initialize: lazyman -w Beethoven
  • Configuration category: Personal
  • Base configuration: Custom
  • Plugin manager: Lazy
  • Installation location: ~/.config/nvim-Beethoven

Git repository

https://github.com/Elteoremadebeethoven/nvim-config

YouTube channel

https://www.youtube.com/@TheoremofBeethoven

Lazy managed plugins

Beethoven Keymaps

Normal mode keymaps

DescriptionSearch on current file
Left hand side sp
Right hand side<Cmd>lua require("spectre").open_file_search({select_word=true})<CR>
DescriptionOpen Spectre
Left hand side E
Right hand side<Cmd>lua require("spectre").open()<CR>
DescriptionLSP: Navbuddy
Left hand side U
Right hand side:Navbuddy<CR>
Description 
Left hand side p
Right hand side<Cmd>lua require('illuminate').goto_prev_reference()<CR>
Description 
Left hand side n
Right hand side<Cmd>lua require('illuminate').goto_next_reference()<CR>
Description 
Left hand side f
Right hand side<Cmd>lua vim.lsp.buf.format{async=true}<CR>
Description 
Left hand side F
Right hand side<Cmd>lua vim.lsp.buf.formatting()<CR>
Description 
Left hand side tr
Right hand side<Cmd>TroubleToggle workspace_diagnostics<CR><Cmd>TroubleToggle lsp_references<CR>
Description 
Left hand side tl
Right hand side<Cmd>TroubleToggle workspace_diagnostics<CR><Cmd>TroubleToggle loclist<CR>
Description 
Left hand side tq
Right hand side<Cmd>TroubleToggle workspace_diagnostics<CR><Cmd>TroubleToggle quickfix<CR>
Description 
Left hand side td
Right hand side<Cmd>TroubleToggle workspace_diagnostics<CR><Cmd>TroubleToggle document_diagnostics<CR>
Description 
Left hand side tw
Right hand side<Cmd>TroubleToggle workspace_diagnostics<CR><Cmd>TroubleToggle workspace_diagnostics<CR>
Description 
Left hand side tt
Right hand side<Cmd>TroubleToggle<CR>
Description 
Left hand side Q
Right hand side<Cmd>:q<CR>
DescriptionLSP: Show line diagnostic
Left hand side L
Right hand side<Cmd>lua vim.diagnostic.open_float({scope="line"}) <CR>
Description[/] Fuzzily search in current buffer
Left hand side g
Right hand side 
Description[?] Find recently opened files
Left hand side ?
Right hand side 
DescriptionOpen diagnostics list
Left hand side q
Right hand side 
Description 
Left hand side e
Right hand side<Cmd>:NvimTreeToggle<CR>
DescriptionLSP: Refresh
Left hand side R
Right hand side<Cmd>w<CR><Cmd>e!<CR>
Description 
Left hand side N
Right hand side*
DescriptionLSP: [W]orkspace [L]ist Folders
Left hand side wl
Right hand side 
DescriptionLSP: [W]orkspace [R]emove Folder
Left hand side wr
Right hand side 
DescriptionLSP: [W]orkspace [A]dd Folder
Left hand side wa
Right hand side 
DescriptionLSP: Signature Documentation
Left hand side l
Right hand side 
DescriptionLSP: [W]orkspace [S]ymbols
Left hand side ws
Right hand side 
DescriptionLSP: [D]ocument [S]ymbols
Left hand side ds
Right hand side 
DescriptionLSP: Type [D]efinition
Left hand side D
Right hand side 
Description 
Left hand side ca
Right hand side 
DescriptionLSP: [R]e[n]ame
Left hand side rn
Right hand side 
Description[S]earch [D]iagnostics
Left hand side sd
Right hand side 
Description[S]earch by [G]rep
Left hand side sg
Right hand side 
DescriptionSearch current word
Left hand side sw
Right hand side<Cmd>lua require("spectre").open_visual({select_word=true})<CR>
Description[S]earch [H]elp
Left hand side sh
Right hand side 
Description[S]earch [F]iles
Left hand side sf
Right hand side 
Description 
Left hand side X
Right hand side:qa!<CR>
Description 
Left hand side h
Right hand side:noh<CR>
Description 
Left hand side B
Right hand side:<C-U>bprevious | bdelete #<CR>
Description 
Left hand side x
Right hand side:<C-U>bprevious | bdelete #<CR>
Description 
Left hand side /
Right hand side<Cmd>lua require("Comment.api").toggle.linewise.current()<CR>
Description 
Left hand side%
Right hand side<Plug>(MatchitNormalForward)
DescriptionNvim builtin
Left hand side&
Right hand side:&&<CR>
Description 
Left hand side+
Right hand side<C-A>
Description 
Left hand side-
Right hand side<C-X>
Description 
Left hand sideH
Right hand side<Cmd>BufferLineCyclePrev<CR>
DescriptionLSP: Hover Documentation
Left hand sideK
Right hand side 
Description 
Left hand sideL
Right hand side<Cmd>BufferLineCycleNext<CR>
Description 
Left hand sideS
Right hand side:HopWord<CR>
DescriptionNvim builtin
Left hand sideY
Right hand sidey$
DescriptionGo to previous diagnostic message
Left hand side[d
Right hand side 
Description 
Left hand side[%
Right hand side<Plug>(MatchitNormalMultiBackward)
Description 
Left hand side\\gS
Right hand side<Plug>(VM-Reselect-Last)
Description 
Left hand side\\/
Right hand side<Plug>(VM-Start-Regex-Search)
Description 
Left hand side\\\
Right hand side<Plug>(VM-Add-Cursor-At-Pos)
Description 
Left hand side\\A
Right hand side<Plug>(VM-Select-All)
DescriptionGo to next diagnostic message
Left hand side]d
Right hand side 
Description 
Left hand side]%
Right hand side<Plug>(MatchitNormalMultiForward)
Description 
Left hand sidec
Right hand side"_c
Description 
Left hand sidedw
Right hand sidediw
DescriptionLSP: [G]oto [D]eclaration
Left hand sidegD
Right hand side 
DescriptionLSP: [G]oto [I]mplementation
Left hand sidegI
Right hand side 
DescriptionLSP: [G]oto [R]eferences
Left hand sidegr
Right hand side 
DescriptionLSP: [G]oto [D]efinition
Left hand sidegd
Right hand side 
Description 
Left hand sidegpr
Right hand side<Cmd>lua require('goto-preview').goto_preview_references()<CR>
Description 
Left hand sidegP
Right hand side<Cmd>lua require('goto-preview').close_all_win()<CR>
Description 
Left hand sidegpi
Right hand side<Cmd>lua require('goto-preview').goto_preview_implementation()<CR>
Description 
Left hand sidegpd
Right hand side<Cmd>lua require('goto-preview').goto_preview_definition()<CR>
Description 
Left hand sidegx
Right hand side<Plug>NetrwBrowseX
Description 
Left hand sideg%
Right hand side<Plug>(MatchitNormalBackward)
DescriptionComment insert end of line
Left hand sidegcA
Right hand side 
DescriptionComment insert above
Left hand sidegcO
Right hand side 
DescriptionComment insert below
Left hand sidegco
Right hand side 
DescriptionComment toggle current block
Left hand sidegbc
Right hand side 
DescriptionComment toggle current line
Left hand sidegcc
Right hand side 
DescriptionComment toggle blockwise
Left hand sidegb
Right hand side<Plug>(comment_toggle_blockwise)
DescriptionComment toggle linewise
Left hand sidegc
Right hand side<Plug>(comment_toggle_linewise)
Description 
Left hand sidej
Right hand sidev:count == 0 ? 'gj' : 'j'
Description 
Left hand sidek
Right hand sidev:count == 0 ? 'gk' : 'k'
Description 
Left hand sidesh
Right hand side:noh<CR>
Description 
Left hand sides
Right hand side:HopAnywhere<CR>
Description 
Left hand sidesv
Right hand side:vsplit<CR><C-W>w
Description 
Left hand sidess
Right hand side:split<CR><C-W>w
Description 
Left hand sidete
Right hand side:tabedit<CR>
Description 
Left hand sidex
Right hand side"_x
Description 
Left hand side<M-N>
Right hand side*
Description 
Left hand side<M-Q>
Right hand side:qa!<CR>
Description 
Left hand side<M-J>
Right hand side<C-W>-
Description 
Left hand side<M-K>
Right hand side<C-W>+
Description 
Left hand side<M-L>
Right hand side<C-W>>
Description 
Left hand side<M-H>
Right hand side<C-W><lt>
Description 
Left hand side<C-J>
Right hand side<C-W>j
Description 
Left hand side<C-K>
Right hand side<C-W>k
Description 
Left hand side<C-H>
Right hand side<C-W>h
Description 
Left hand side<M-X>
Right hand side:<C-U>bprevious | bdelete #<CR>
Description 
Left hand side<M-S>
Right hand side:SymbolsOutline<CR>
Description 
Left hand side<C-S>
Right hand side:w<CR>
Description 
Left hand side<M-b>
Right hand side:BufferLineMovePrev<CR>
Description 
Left hand side<M-m>
Right hand side:BufferLineMoveNext<CR>
Description 
Left hand side<M-k>
Right hand side:m .-2<CR>==
Description 
Left hand side<M-j>
Right hand side:m .+1<CR>==
DescriptionToggle Terminal
Left hand side<M-F>
Right hand side<Cmd>execute v:count . "ToggleTerm"<CR>
Description 
Left hand side<Plug>NetrwBrowseX
Right hand side:call netrw#BrowseX(netrw#GX(),netrw#CheckIfRemote(netrw#GX()))<CR>
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>
Description 
Left hand side<M-C-RightMouse>
Right hand side<Plug>(VM-Mouse-Column)
Description 
Left hand side<C-RightMouse>
Right hand side<Plug>(VM-Mouse-Word)
Description 
Left hand side<C-LeftMouse>
Right hand side<Plug>(VM-Mouse-Cursor)
Description 
Left hand side<M-C-K>
Right hand side<Plug>(VM-Add-Cursor-Up)
Description 
Left hand side<M-C-J>
Right hand side<Plug>(VM-Add-Cursor-Down)
Description 
Left hand side<C-Down>
Right hand side<Plug>(VM-Add-Cursor-Down)
Description 
Left hand side<C-Up>
Right hand side<Plug>(VM-Add-Cursor-Up)
Description 
Left hand side<S-Right>
Right hand side<Plug>(VM-Select-l)
Description 
Left hand side<S-Left>
Right hand side<Plug>(VM-Select-h)
Description 
Left hand side<C-N>
Right hand side<Plug>(VM-Find-Under)
Description 
Left hand side<Plug>(VM-Select-BBW)
Right hand side:<C-U>call vm#commands#motion('BBW', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-gE)
Right hand side:<C-U>call vm#commands#motion('gE', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-ge)
Right hand side:<C-U>call vm#commands#motion('ge', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-E)
Right hand side:<C-U>call vm#commands#motion('E', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-e)
Right hand side:<C-U>call vm#commands#motion('e', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-B)
Right hand side:<C-U>call vm#commands#motion('B', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-b)
Right hand side:<C-U>call vm#commands#motion('b', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-W)
Right hand side:<C-U>call vm#commands#motion('W', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-w)
Right hand side:<C-U>call vm#commands#motion('w', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-l)
Right hand side:<C-U>call vm#commands#motion('l', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-k)
Right hand side:<C-U>call vm#commands#motion('k', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-j)
Right hand side:<C-U>call vm#commands#motion('j', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Select-h)
Right hand side:<C-U>call vm#commands#motion('h', v:count1, 1, 0)<CR>
Description 
Left hand side<Plug>(VM-Mouse-Column)
Right hand side:call vm#commands#mouse_column()<CR>
Description 
Left hand side<Plug>(VM-Mouse-Word)
Right hand side<Plug>(VM-Left-Mouse)<Plug>(VM-Find-Under)
Description 
Left hand side<Plug>(VM-Mouse-Cursor)
Right hand side<Plug>(VM-Left-Mouse)<Plug>(VM-Add-Cursor-At-Pos)
Description 
Left hand side<Plug>(VM-Left-Mouse)
Right hand side<LeftMouse>
Description 
Left hand side<Plug>(VM-Slash-Search)
Right hand side@=vm#commands#find_by_regex(3)<CR>
Description 
Left hand side<Plug>(VM-Start-Regex-Search)
Right hand side@=vm#commands#find_by_regex(1)<CR>
Description 
Left hand side<Plug>(VM-Find-Under)
Right hand side:<C-U>call vm#commands#ctrln(v:count1)<CR>
Description 
Left hand side<Plug>(VM-Select-All)
Right hand side:call vm#commands#find_all(0, 1)<CR>
Description 
Left hand side<Plug>(VM-Reselect-Last)
Right hand side:call vm#commands#reselect_last()<CR>
Description 
Left hand side<Plug>(VM-Select-Cursor-Up)
Right hand side:<C-U>call vm#commands#add_cursor_up(1, v:count1)<CR>
Description 
Left hand side<Plug>(VM-Select-Cursor-Down)
Right hand side:<C-U>call vm#commands#add_cursor_down(1, v:count1)<CR>
Description 
Left hand side<Plug>(VM-Add-Cursor-Up)
Right hand side:<C-U>call vm#commands#add_cursor_up(0, v:count1)<CR>
Description 
Left hand side<Plug>(VM-Add-Cursor-Down)
Right hand side:<C-U>call vm#commands#add_cursor_down(0, v:count1)<CR>
Description 
Left hand side<Plug>(VM-Add-Cursor-At-Word)
Right hand side:call vm#commands#add_cursor_at_word(1, 1)<CR>
Description 
Left hand side<Plug>(VM-Add-Cursor-At-Pos)
Right hand side:call vm#commands#add_cursor_at_pos(0)<CR>
DescriptionMove to previous reference
Left hand side<M-p>
Right hand side 
DescriptionMove to next reference
Left hand side<M-n>
Right hand side 
DescriptionComment toggle blockwise with count
Left hand side<Plug>(comment_toggle_blockwise_count)
Right hand side 
DescriptionComment toggle linewise with count
Left hand side<Plug>(comment_toggle_linewise_count)
Right hand side 
DescriptionComment toggle current block
Left hand side<Plug>(comment_toggle_blockwise_current)
Right hand side 
DescriptionComment toggle current line
Left hand side<Plug>(comment_toggle_linewise_current)
Right hand side 
DescriptionComment toggle blockwise
Left hand side<Plug>(comment_toggle_blockwise)
Right hand side 
DescriptionComment toggle linewise
Left hand side<Plug>(comment_toggle_linewise)
Right hand side 
Description 
Left hand side<Plug>PlenaryTestFile
Right hand side:lua require('plenary.test_harness').test_directory(vim.fn.expand("%:p"))<CR>
Description 
Left hand side<Plug>luasnip-expand-repeat
Right hand side 
Description 
Left hand side<Plug>luasnip-delete-check
Right hand side 
Description 
Left hand side<C-S-V>
Right hand side"+p
Description 
Left hand side<C-S-C>
Right hand side"+y
Description 
Left hand side<C-L>
Right hand side<C-W>l

Visual mode keymaps

Description 
Left hand side p
Right hand side"_dP
DescriptionSearch current word
Left hand side sw
Right hand side<Esc><Cmd>lua require("spectre").open_visual()<CR>
Description 
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>
Description 
Left hand side<lt>
Right hand side<lt>gv
Description 
Left hand side>
Right hand side>gv
Description 
Left hand side[%
Right hand side<Plug>(MatchitVisualMultiBackward)
Description 
Left hand side\\c
Right hand side<Plug>(VM-Visual-Cursors)
Description 
Left hand side\\a
Right hand side<Plug>(VM-Visual-Add)
Description 
Left hand side\\f
Right hand side<Plug>(VM-Visual-Find)
Description 
Left hand side\\/
Right hand side<Plug>(VM-Visual-Regex)
Description 
Left hand side\\A
Right hand side<Plug>(VM-Visual-All)
Description 
Left hand side]%
Right hand side<Plug>(MatchitVisualMultiForward)
Description 
Left hand sidea%
Right hand side<Plug>(MatchitVisualTextObject)
Description 
Left hand sidegx
Right hand side<Plug>NetrwBrowseXVis
Description 
Left hand sideg%
Right hand side<Plug>(MatchitVisualBackward)
DescriptionComment toggle blockwise (visual)
Left hand sidegb
Right hand side<Plug>(comment_toggle_blockwise_visual)
DescriptionComment toggle linewise (visual)
Left hand sidegc
Right hand side<Plug>(comment_toggle_linewise_visual)
Description 
Left hand side<C-J>
Right hand side<C-W>j
Description 
Left hand side<C-K>
Right hand side<C-W>k
Description 
Left hand side<C-H>
Right hand side<C-W>h
Description 
Left hand side<M-k>
Right hand side:m '<lt>-2<CR>gv=gv
Description 
Left hand side<M-j>
Right hand side:m '>+1<CR>gv=gv
Description 
Left hand side<Plug>NetrwBrowseXVis
Right hand side:<C-U>call netrw#BrowseXVis()<CR>
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``
Description 
Left hand side<M-i>
Right hand side 
Description 
Left hand side<Plug>luasnip-expand-repeat
Right hand side 
Description 
Left hand side<C-N>
Right hand side<Plug>(VM-Find-Subword-Under)
Description 
Left hand side<Plug>(VM-Visual-Regex)
Right hand side:call vm#commands#find_by_regex(2)<CR>:call feedkeys('/', 'n')<CR>
Description 
Left hand side<Plug>(VM-Find-Subword-Under)
Right hand side<SNR>17_Visual('under')
Description 
Left hand side<Plug>(VM-Visual-Reduce)
Right hand side:<C-U>call vm#visual#reduce()<CR>
Description 
Left hand side<Plug>(VM-Visual-Add)
Right hand side<Esc>:call vm#commands#visual_add()<CR>
Description 
Left hand side<Plug>(VM-Visual-Cursors)
Right hand side<Esc>:call vm#commands#visual_cursors()<CR>
Description 
Left hand side<Plug>(VM-Visual-All)
Right hand side<SNR>17_Visual('all')
Description 
Left hand side<Plug>(VM-Visual-Find)
Right hand sidevm#operators#find(1, 1)
DescriptionComment toggle blockwise (visual)
Left hand side<Plug>(comment_toggle_blockwise_visual)
Right hand side<Esc><Cmd>lua require("Comment.api").locked("toggle.blockwise")(vim.fn.visualmode())<CR>
DescriptionComment toggle linewise (visual)
Left hand side<Plug>(comment_toggle_linewise_visual)
Right hand side<Esc><Cmd>lua require("Comment.api").locked("toggle.linewise")(vim.fn.visualmode())<CR>
Description 
Left hand side<C-S-C>
Right hand side"+y
Description 
Left hand side<C-L>
Right hand side<C-W>l

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<C-J>
Right hand side<C-W>j
Description 
Left hand side<C-K>
Right hand side<C-W>k
Description 
Left hand side<C-H>
Right hand side<C-W>h
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>
Description 
Left hand side<M-i>
Right hand side 
Description 
Left hand side<Plug>luasnip-expand-repeat
Right hand side 
Description 
Left hand side<C-L>
Right hand side<C-W>l