The only sane way to do this is with a proper IDE. Doing it via the command line is pure masochism.
Why? I use git add -p absolutely all the time, its really simple to learn
Regardless I also really like `git add -p`. I don't use it often but it really makes me focus on and consider each hunk. It was the defacto way to do it at an old company I worked at and no, it was not a small startup "hipster" company, we built enterprise ERP software.