Uses

Standard Vim editor window.

Tapping into tsserver with coc.nvim to enable IDE-like functionality. The "floating window" functionality is provided by Neovim.

Using fzf (and fzf.vim) as a fuzzy file opener. Much faster than Ctrl-P, because file indexing happens asynchronously.

Using fzf to run an analogue of git log -p to quickly search a file's history.

Diffing files (and resolving merge conflicts) within Vim.

Staging files with Tig.

WTF terminal dashboard.

Editor

Neovim.

My setup can be found here.

Plugins

Several plugins I find indispensible:

  • janko/vim-test - Run specs asynchronously without leaving the editor.

  • junegunn/fzf.vim - Incredibly flexible fuzzy file finder. I use it for opening files, searching open buffers, searching files' git history, navigating between unstaged changes... the list goes on.

  • neoclide/coc.nvim - In my opinion, this is the most important plugin I has installed. Enables language server support for Vim, allowing for powerful, IDE like features like definition navigation, bulk renaming, etc.

  • scrooloose/nerdtree - I use this with vim-devicons to show filetype-based symbols by the filenames. It's aesthetically pleasing and has ergonomic shortcuts.

  • sheerun/vim-polyglot - A fairly high quality aggregator of language configurations. I've found that it "Just Works ™" when opening files of any type, no matter how arcane.

  • Many, many Tim Pope plugins.

Theme

I started coding with Sublime Text, and Monokai has never not been the most natural appearance of code for me.

Font

I use the NerdFont version of JetBrains Mono, which is a font with ligatures. It's not the most aesthetically pleasing font, but it is incredibly readable.

Terminal

I currently use Bash (my dotfiles can be found here). I've been telling myself to switch to Zsh for over 3 years, but my current setup is so ingrained into my muscle memory that I've been putting it off indefinitely.

I use kitty. It GPU-accelerated, which you wouldn't think is needed for a terminal emulator, but the difference is quite stunning. I will probably never go back. Also, the configuration is incredibly friendly.

I've also listed some specific tools I particularly enjoy here.

Last updated