I am a very big fan of tmux and oh-my-zsh, which allow me to navigate around my computers with minimal fuss. For tmux, I have a dedicated sessionizer program for fuzzy finding project directories. The following two lines in my zshrc configure the directories to be searched (separated by colons) and set up a custom keybinding for me to activate the script:
export WORKSPACES=$HOME/Documents:$HOME/docs/programming:$WORKSPACES
bindkey -s "^f" "tmuxs -d 4\n"
I use a custom neovim setup with LSP integration and theme switching. You can try it via docker.
I’ve also written a set of vimrc’s with my favorite settings and features that one would expect from a modern editor. They’re meant to be dropped onto newly minted servers or containers for immediate use.
# Full-featured LSP version (requires git)
curl -LJ https://git.junickim.me/junikimm717/vim2023/raw/branch/master/lsp.vimrc -o $HOME/.vimrc
# Version with minimal plugins (requires git)
curl -LJ https://git.junickim.me/junikimm717/vim2023/raw/branch/master/minimal.vimrc -o $HOME/.vimrc
# No plugins required (good for bare minimal container or vps instances)
curl -LJ https://git.junickim.me/junikimm717/vim2023/raw/branch/master/noplug.vimrc -o $HOME/.vimrc
Everything here is just my opinion, and you can theoretically build anything in any Turing-complete language. That being said, I do find certain frameworks and languages nicer to work with than others. If I had to start a new project right now, I would probably choose a subset of the following technologies given they end up being useful: