i am nodoka.
this post introduces my current shell tool stack. it was originally part of my my macos I blog, but that write-up became too long, so i moved the shell tooling into its own post.
in the process, i lost the original draft from the my macos I. that is probably for the better… the tools i listed then were not particularly strong (and i may feel the same about this list in a few months). for now, i’m calling this my shell toolkit i, leaving room for a future ii.
side note: i’ve finished my last exam this morning. this is my leisure time!
<aside>
https://github.com/neovim/neovim
</aside>
i talked about this already in my macos I blog, but neovim is where this whole shell obsession started. once i was living inside a terminal editor, everything else followed. i wanted the tools around it to match that speed and keyboard-first feel.
neovim is also what ties most of this stack together. ‣ as the grep backend, ‣ for fuzzy finding, https://github.com/tpope/vim-fugitive for git. they're all plugins or integrations that live inside neovim. so it belongs at the top.
if you haven't read the macos post, the short version: neovim is an improved vim where you write your config in .lua. start with https://github.com/nvim-lua/kickstart.nvim if you want to give it a try.
<aside>
</aside>
for obvious reasons, you need git. it tracks and manages changes in your code. technically, a "distributed version control system." note that git is not github. git is THE version control system. GitHub is just a web-based host for your git repos.
one thing i will say: just learn git. GUIs like https://github.com/gitkraken add a layer that makes version control slower and less capable, not easier. there was a whole reddit thread about GitKraken going paid and i think [deleted]'s response summed it up well. your product is built on top of git, which is free. learn the thing itself.
i use https://github.com/conventional-changelog/commitlint on git to maintain good commit comments. highly recommend that you use this.
but
git logis painful to read raw…