For a long time I used VSCode as my go-to editor, with a vim keybindings plugin for better editing. However I was never quite happy with the solution: I missed some of the features of native vim, and occasionally VSCode would become very sluggish. This all came to a head when I was working on a Matlab project, and the syntax highlighting plugin would cause the editor to lag horribly on files with anything more than 100 or so lines of code.
After a lot of tinkering, I have created a vim configuration which makes it feel a lot like a modern IDE, but with the added perks of native vim keybindings and great performance (so far). This repository hosts the full Neovim configuration.
Some of the highlights:
- Semantic completion with Conquer of Completion.
- NERDTree for directory navigation. Toggle with
- Dashboard for easy sessions and a nice splash screen.
- Fuzzy search with fzf.vim. Hit
öto search files in repository (skipping files from
- Proper indentation handling with vim-sleuth and indentLine
- Auto-save functionality
- Basic functionality to easily build/run/test code with GNU Make:
<F4>: calls the
<F5>: calls the
<F6>: calls the
<F9>: calls the
- Some custom keybinds:
Ctrl-Tabto cycle tabs
>to navigate buffers
<C-w>to close the current buffer
<C-q>to close vim (
Clone the repo and run the installation script:
git clone email@example.com:SeanBone/bones-dotfiles.git cd bones-dotfiles bash -x install.sh # Verbose run
Note that this may mess with previous installations of vim. Check the install script before running!
Also, don’t forget to set the JetBrainsMono patched font as the font for your terminal.