Although fields such as edit and compose are fairly focused on mail programs, existing examples need to be found to make use of them. A command trait could be a good way to share %s replacement work between them all.
edit
compose
command
%s