Somtimes I think it would be nice if people posted tips as well as questions. Here are two vim functions that I find convenient - I dislike having to postion the cursor on the relevant header and then navigate back to where I was. These vim functions prompt you for the new header and after changing the header, leave your cursor where you were. You do have edit_hdrs in mutt set don't you ;) """"""""""""""""""""""""""""""""""""""""""' fun! Edit_to() normal ms let argument = input("Enter To: ") let string = argument execute "%s/^To:.*/To: " . argument normal `s endf map \t :call Edit_to()<cr> """"""""""""""""""""""""""""""""""""""""""' """"""""""""""""""""""""""""""""""""""""""' fun! Edit_subject() normal ms let argument = input("Enter Subject: ") let string = argument execute "%s/^Subject:.*/Subject: " . argument normal `s endf map \e :call Edit_subject()<cr> """"""""""""""""""""""""""""""""""""""""""' -- Eric Smith