fc
Opens the previous command in your editor; saving is running.
When the fix is too big for carets, fc — fix command — opens the last line in your $EDITOR. Whatever is in the file when you save and quit gets executed.
It takes the same addresses as the designators: fc -2 opens the one before last, fc grep the last one starting with grep, and fc -3 -1 opens the last three together — they come back as a one-shot script.
$ fc
(your $EDITOR opens with the last line;
save and quit, and what's there is executed)