Obviously the editor used by the user must be configured for this. For vim there's definitely an autosave plugin. We can provide configuration examples in the wiki for example.
On the aerc side my suggestion is to a) have a configuration available to the user to enable this feature (or probably better: have it enabled by default). When enable we automatically create postponed messages on opening the compose window, we watch the created /tmp
file and on an update to the file we also update the postponed message. On send or discard we silently delete the postponed message.