Tools
A non-exhaustive list of tools I find useful.
Command line
- bat - Replaces cat.
- Cscope - A code search tool for C and other languages.
- exa - Replaces ls.
- fd - A modern alternative to find.
- fzf - A fuzzy-finder for files and directories.
- htop - Replaces top.
- HTTPie - A HTTP client.
- icdiff - Replaces diff.
- mosh - A robust replacement for ssh.
- ncdu - Disk usage analyser; replaces du.
- neovim - A text editor.
- Nix - A package manager.
- pass - A local password manager based on gpg.
- qmv - Quickly rename files in a text editor.
- ripgrep - A text search tool; replaces grep.
- una - A universal unarchiver.
- zsh - A shell.
zsh plugins
I use antigen to manage zsh plugins.
- zsh-completions - Additional completions for zsh.
- zsh-syntax-highlighting - Colours terminal commands as you type them.
(Neo)vim plugins
I use vim-plug to manage vim plugins.
- better-whitespace - Highlights trailing whitespace and makes it easy to remove.
- Cscope - A plugin for the code search tool mentioned above.
- ctrlp - File search plugin.
- fswitch - Toggles between C header and source files.
- gitgutter - Shows a git diff in the page gutter.
- neocomplete - Autocompletion engine that is very easy to set up.
- NERDTree - Nice directory browsing.
- numbertoggle - Toggle line numbers between absolute and relative mode.
- tComment - Provides shortcuts for commenting out blocks of code.
Python development
I typically write Python in terminal vim. These CLI tools make development easier:
Graphics
- ipe - 2D vector graphics editor.