Tools

A non-exhaustive list of tools I find useful.

Command line

  • eza – Replaces ls.
  • fd – A modern alternative to find.
  • fzf – A fuzzy-finder for files and directories.
  • mosh – A robust replacement for ssh.
  • ncdu – Disk usage analyser; replaces du.
  • neovim – A text editor.
  • pass – A local password manager based on gpg.
  • pdfmerge – Merge, splice, and rotate PDF files.
  • qmv – Quickly rename files in a text editor.
  • ripgrep – A text search tool; replaces grep.
  • unar – Universal unarchiver for zip, tar, and other formats.
  • zsh – A shell.

zsh plugins

Neovim plugins

I use vim-plug to manage neovim plugins. You can find all of the plugins I use here.

Python

I typically write Python in terminal neovim. I previously used pyenv and poetry, but now I use uv for everything, including version management, virtual environments, publishing packages, and installing isolated tools.

Graphics

  • ipe – 2D vector graphics editor.
  • pinta – Simple image editor similar to Microsoft Paint.

Optimization

  • acados – Fast nonlinear model predictive control.
  • cvxpy – Model and solve general convex optimization problems in Python.
  • qpsolvers – Quickly test out different quadratic programming solvers in Python.