Very painful to read.

Yes. I agree with the problem statement, but have no idea what the solution is BUT it does involve lots of key bindings.

LOTs of key bindings.