Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
vim-matchup
vim match-up: even better % :facepunch: navigate and highlight matching words :facepunch: modern matchit and matchparen. Supports both vim and neovim + tree-sitter.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Lot of good answers here. fzf is certainly very handy to have. Also since, you asked about working within the context of a project, checkout Tim Pope’s vim-projections.
Ctrl+p: A plugin to quickly jump to a file by name.
Sometimes you want 1 window temporarily big, vim provides :only or o but that closes the other windows in the tab. https://github.com/szw/vim-maximizer lets you toggle the maximisation.
A file explorer to move in the folders is nice (I like ranger, there are some plugins for it, I like to put it in a floaterm https://github.com/voldikss/vim-floaterm . Floaterm is great for all terminal ui's by the way, like gitui)
Having bindings to switch buffers like ]b [b you get from https://github.com/tpope/vim-unimpaired
Also I like https://github.com/kana/vim-altr which defines some, and lets you define more rules to associate files with each other, like src/file.c with its include/file.h or some file with its test file, and then you can make a mapping to switch between these files (also more then 2).
Obviously use / and * where possible. https://github.com/junegunn/vim-slash makes this more bearable.
https://github.com/justinmk/vim-sneak gives you a little better f and t motions, meaning across lines, not just in the current line. And for 2 letters if you want.
Vim already comes with decent grep search (in the current directory and below I think) which puts results in your quickfixlist and then you can navigate through your qfl with mappings from unimpaired ( [q ]q ). I like to improve this behaviour further with https://github.com/kevinhwang91/nvim-bqf (I use neovim by the way) and https://github.com/mhinz/vim-grepper
Vim already comes with decent grep search (in the current directory and below I think) which puts results in your quickfixlist and then you can navigate through your qfl with mappings from unimpaired ( [q ]q ). I like to improve this behaviour further with https://github.com/kevinhwang91/nvim-bqf (I use neovim by the way) and https://github.com/mhinz/vim-grepper
I can't live without a LSP any longer, neovim comes with a built-in client now. https://github.com/neovim/nvim-lspconfig Vim also has some LSP plugins I believe.
Alternative to a LSP is to use tags, https://github.com/universal-ctags/ctags
https://github.com/mattn/emmet-vim seems incredible
Also there are matchit plugins which let you jump between opening/closing tags, not just braces etc, I think https://github.com/andymass/vim-matchup does this, but maybe vim already provides this for html.
A good commenter plugin eg caw, Debugger integration with eg vimspector, Repl code running with eg sniprun, autocompletion plugin like nvim-compe, a snippet plugin eg ultisnips, and tabnine (for compe) which is ai completion, Also read up on Sessions and use some Autosession plugin like https://github.com/tpope/vim-obsession,
Related posts
- Nvim-unception update - now supports git commits, multiple sessions, and free from reliance on external tools!
- Every day I lived without knowing you were wasted, I love you!
- regedit.vim - Access and edit the registers quickly and easily
- What dev feature is available in emacs but not in the current mainstream IDEs ?
- F/f/T/t highlight plugin?