Oh yeah. Thank you. That works.

I was trying to adapt the existing slick function with prompt, where
you only need to type a small subset. But your code works great. Thank
you.

  -k.


Chris O'Donnell writes:

> Hi Ken,
>
> I think I have a solution for you, a hybrid of the two options. I just
> tried it out myself, and it seems to work well for me. First set up your
> list of email addresses, like in the longer configuration.
>
> (setq mu4e-user-mail-address-list '("[email protected]"
>                                      "[email protected]"))
>
> Then add the following hook:
>
> (add-hook 'mu4e-compose-pre-hook
>           (defun my-set-from-address ()
>             "Set the From address based on the To address of the original."
>             (let ((msg mu4e-compose-parent-message)) ;; msg is shorter...
>               (setq user-mail-address
>                     (cond
>                      ((and msg
>                            (mu4e-message-contact-field-matches msg :to 
> "[email protected]"))
>                       "[email protected]")
>                      (t (completing-read "Compose with account: " 
> mu4e-user-mail-address-list
>                                          nil t nil nil (car 
> mu4e-user-mail-address-list))))))))
>
> That should give the behavior you're looking for.
>
> Chris
>
> [email protected] writes:
>
>> OK that is an improvement. I can now Compose. But if I add nothing to
>> mu4e-compose-pre-hook then when I compose I get to interactively
>> select one of my outgoing addresses. Now it defaults to the final (t
>> [email protected]).
>>
>>    -k.
>>
>> On Sun, 19 Jan 2014, Chris O'Donnell wrote:
>>
>>> Hi Ken,
>>>
>>> I'm actually just getting this set up myself and ran into the same problem.
>>> My solution was to replace each condition with something like this:
>>>
>>> ((and msg (mu4e-message-contact-field-matches msg :to "[email protected]"))
>>>  "[email protected]")
>>>
>>> If you have a lot of email addresses, it might be cleaner to put this short
>>> circuit outside the cond.
>>>
>>> Chris
>>>
>>> On Sunday, January 19, 2014 6:50:51 PM UTC-5, Ken Mankoff wrote:
>>>>
>>>> The example here
>>>> http://www.djcbsoftware.nl/code/mu/mu4e/Compose-hooks.html#Compose-hooksis 
>>>> a nice example and when I hit "reply" my outgoing message is now based
>>>> on who the incoming message was sent to.
>>>>
>>>> But when I try to compose a new message, rather than reply, it fails, with
>>>> "message must be non-nil".
>>>>
>>>> I've tried modifying that function (see below), but cannot get it to work.
>>>> Advice much appreciated...
>>>>
>>>>   -k.
>>>>
>>>>
>>>> (add-hook 'mu4e-compose-pre-hook
>>>>   (defun my-set-from-address ()
>>>>     "Set the From address based on the To address of the original."
>>>>     (let ((msg mu4e-compose-parent-message)) ;; msg is shorter...
>>>>                   (if (boundp 'msg)
>>>>   (setq user-mail-address
>>>> (cond
>>>>  ((mu4e-message-contact-field-matches msg :to "[email protected] <javascript:>")
>>>>   "[email protected] <javascript:>")
>>>>  ((mu4e-message-contact-field-matches msg :to "[email protected] <javascript:>")
>>>>   "[email protected] <javascript:>")
>>>>  (t "[email protected] <javascript:>")))
>>>>                     (setq user-mail-address "[email protected] <javascript:>") ;
>>>> default for COMPOSE
>>>>  )))
>>>>
>>>>
>>>
>>>
>
> -- 
> Sent with my mu4e

-- 
You received this message because you are subscribed to the Google Groups 
"mu-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to