Line buffer editing/positioning shouldn't be handled by st itself, it should be delegated to an external tools (most likely the shell). Else none of ^e, ^a, and such keystrokes should be available/hardcoded into the terminal emulator. We should think in terms of "shell container" rather than "terminal emulator". Well, I'm pretty aware it's a bit extreme but hope someone else will agree with me.
Regards, Claudio M. Alessi