I achieve similar functionality via spool to a file and use my favourite text editor, vi (vim).
SQL> set _editor=vim
SQL> spool a_file.txt
SQL> select col1, ...coln from a_table where...
SQL> spool off
SQL> ed a_file.txt
I though of that, but really? What a pain to have to do something like that around every query! BTW instead of 'ed a_file.txt' I'd probably use 'ho less a_file.txt;rm a_file.txt'.