calculations: in insert mode, press C-r =
then insert your calculation
resizing panes Ctrl+w +
and Ctrl + -
fzf - fzf plugin
the_silver_searcher -searching in files for the fzf plugin
cargo / rust - rust LSP integration
pyright - Python LSP integration
Publishing my notes:
nnoremap <F1> :terminal make serve<CR>
nnoremap <F2> :!make rsync_upload<CR>
nnoremap <F3> :!make commit_push<CR>
binding action
F1 execute mdbook serve
F2 publish to notes.vdwaa.nl
F3 git commit and push
Standard vimwiki bindings:
binding action
<C-Space> toggle listitem on/off
gl* make the item before the cursor a list
<Tab> (insert mode) go next/create cell
+ create/decorate links
vimwiki diary
binding action
go to diary index
ww create a new diary entry
:VimwikiDiaryGenerateLinks update diary index
binding action
<space>ga git add
<space>gs git status
<space>gc git commit
<space>gt git commit (full path)
<space>gd git diff (:Gdiff)
<space>ge git edit (:Gedit)
<space>gr git read (:Gread)
<space>gw git write (:Gwrite)
<space>gl git log
<space>gp git grep
<space>gm git move
<space>gb git branch
<space>go git checkout
<space>gps git push
<space>gpl git pull
binding action
gd Go to definition
gr Go to references
gs Symbol search
K Display function/type info
gR Rename variable/function
binding action
gcc comment out a line (takes a count)
gcap comment out a paragaph
binding action
F1 bump pkgrel
F2 run updpkgsums
binding action
<Leader>b cargo test
<Leader>c cargo clippy
<Leader>x cargo run
<Leader>d set break point
<Leader>r run debugger
F5 start debugger
C-b compile rust
binding action
F Search all files
<space>gf Git Files
<space>ff Search in files using the_silver_searcher
<space>ss List all snippets
Git integration
Snippets
Debugging
Language features: completion, find function definitions
command description
continue continue execution normally
finish continue executing until function returns
step execute next line of source code
next execute next line of source code, without descending into functions
Providing args:
gdb --args python example.py
Or in the gdb shell
args --config foo.toml
Printing variables:
print filename
print config.interval
For the LSP use neovim's native LSP server and neovim/nvim-lspconfig
for configuration. Use :LspInfo
to verify a language server is available and works for the file you are editing.
null-ls => :NullLsInfo
Git integration => tpope/vim-fugitive
Searching files => telescope
Smart commentor
https://github.com/numToStr/Comment.nvim
https://github.com/nvim-treesitter/nvim-treesitter-context
cmp (completor)
lsif