All of the above.
Just put in all of the options so that it is easy for each player to change it.
Well, for non-PvP, at least. If you want, you can leave most of them not bound to anything by default.
For PvP, hmmm... maybe no single-player UI (U-boat Interface

) for PvP? Maybe that would lower the player-base too much, hmm... something to think about.
But yeah, I would err on the side of giving the end user more control over how to control things.