As Carl stated that he would probably merge this one if someone tested it, here it comes: I tested it and it works great. When I define a non-existing directory as maildir it aborts with an error message that is visible to the user.
I put this in a branch based on cworth/master and with Jesse's permission, I renamed the functions and did some further cleanup (It's also integrated in the build system) The git branch is here: http://github.com/spaetz/notmuch-all-feature/tree/feature/elisp-fcc It's not enabled by default. Enable it with: (setq message-fcc-handler-function '(lambda (destdir) (notmuch-maildir-fcc-write-buffer-to-maildir destdir t))) (add-hook 'message-send-hook '(lambda () (message-add-header "Fcc: ~/mail/INBOX.Sent"))) in your .emacs for now. I'll send the patch series by mail in a second. I have the slight problem that offlineimap takes the message from INBOX.Sent/cur and stuffs it in INBOX.Sent/new (but that cannot really be related to this as the mail ends up correctly in /cur after sending it). Sebastian