[notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-12 Thread Sebastian Spaeth
On Fri, 12 Mar 2010 10:22:09 -0500, Jameson Rollins  wrote:
> To me it seems the issue here is the distinction between the notmuch
> CLI, and any other reader UI that uses it.  AFAICT, the CLI actually has
> no need to know what "your" email address is, so I don't see why it
> should be configured in the notmuch config.  Your reader on the other
> hand does need to know, so it should be set there.

+1. Except for making the "from:~me" synonym available for searches :)

> This is related to another current pet peeve of mine which is that
> notmuch puts my email address in the Bcc: field in my response template.
> I do not want to bcc myself on my responses.  Generally, I don't think
> it should be the business of the CLI to set any of the header fields in
> mail that I send out.

+1 I agree. The mailer should be putting a BCC in, if that is what the
user wants, not notmuch

Sebastian


[notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-12 Thread Jameson Rollins
On Fri, 12 Mar 2010 08:49:35 +0100, Michal Sojka  wrote:
> Hmm, I understand. My worry about this approach is the following: Now it
> is very straightforward to start using notmuch. You only answer a few
> questions when you run notmuch for the first time and then it works. If
> we apply your patch, some additional configuration is needed and a
> novice might not know how to do it.

To me it seems the issue here is the distinction between the notmuch
CLI, and any other reader UI that uses it.  AFAICT, the CLI actually has
no need to know what "your" email address is, so I don't see why it
should be configured in the notmuch config.  Your reader on the other
hand does need to know, so it should be set there.

This is related to another current pet peeve of mine which is that
notmuch puts my email address in the Bcc: field in my response template.
I do not want to bcc myself on my responses.  Generally, I don't think
it should be the business of the CLI to set any of the header fields in
mail that I send out.

In short, the CLI should deal with indexing my mail.  It really has no
need to know who I am.

jamie.
-- next part --
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: 



[notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-12 Thread James Vasile
On Fri, 12 Mar 2010 08:49:35 +0100, Michal Sojka  wrote:
> On Thu, 11 Mar 2010, James Vasile wrote:
> > On Thu, 11 Mar 2010 17:22:41 +0100, Michal Sojka  
> > wrote:
> > > thanks for clarification. It all sounds reasonable. The only problem I
> > > can see now is that if I create a new account on my machine and run
> > > emacs there, then the value of user-mail-address is @
> > > which doesn't refer to existing mailbox. I think that the header should
> > > only be rewritten if these variables are known to have valid values. Do
> > > you know how to do this?
> > > 
> > 
> > I explicitly set these in my .emacs file, so I don't do any detection.
> > If you could define "valid" I suppose you could test for such things.
> > 
> > Something like the following works for me.  I run mail-profile-foo with
> > M-x or run it automatically with profile-guessing/setting routines.
> > When I get the system ironed out, I'll emit patches and a wiki entry.
> > 
> > (defun message-mode-set-profile ()
> >   (save-excursion
> > (when (string= "message-mode" major-mode)
> >   (goto-char (point-min))
> >   (when (re-search-forward "^From: " nil t)
> > (kill-line)
> > (insert (format "%s <%s>" user-full-name user-mail-address)))
> > 
> >   (goto-char (point-min))
> >   (when (re-search-forward "^Bcc: " nil t)
> > (kill-line)
> > (insert (format "%s <%s>" user-full-name user-mail-address))
> > 
> > (defun mail-profile-hv ()
> >   (interactive)
> >   (setq mail-host-address "hackervisions.org"
> >   user-full-name "James Vasile"
> >   message-sendmail-extra-arguments '("-a" "hv")
> >   user-mail-address "james at hackervisions.org")
> >   (message-mode-set-profile)
> >   user-mail-address)
> > (mail-profile-hv)
> > 
> > 
> 
> Hmm, I understand. My worry about this approach is the following: Now it
> is very straightforward to start using notmuch. You only answer a few
> questions when you run notmuch for the first time and then it works. If
> we apply your patch, some additional configuration is needed and a
> novice might not know how to do it.

I disagree as to how much time notmuch currently takes.  To get a
workable setup, you need to answer a few questions, setup offlineimap,
write a tagging script, setup up folders, apply a bunch of patches,
etc.  

I've been telling people to wait 6 months instead of trying notmuch.
That's based on how much work it is to setup, incomplete MUA, bugs, etc.

> So at least notmuch should tell the user what and where needs to be
> configured. Or better, provide some sane default which can be overridden
> in a way you want it.
> 
> That's only my opinion. I personally would have no problem with
> additional configuration, but on the other side I like programs which do
> not steel my time if it is not necessary.

That's a fair point.  I hope notmuch gets easier over time, and one of
the things I'd like to implement is sane defaults.  As notmuch gets more
user friendly, I'd like to make the pieces I write less onerous to
configure.

For example, I have some stub code for a default profile that pulls
values from ~/.notmuch.  Then if the user doesn't do the setup, things
should be not much different than they are now.

-J


[notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-12 Thread Michal Sojka
On Thu, 11 Mar 2010, James Vasile wrote:
> On Thu, 11 Mar 2010 17:22:41 +0100, Michal Sojka  
> wrote:
> > thanks for clarification. It all sounds reasonable. The only problem I
> > can see now is that if I create a new account on my machine and run
> > emacs there, then the value of user-mail-address is @
> > which doesn't refer to existing mailbox. I think that the header should
> > only be rewritten if these variables are known to have valid values. Do
> > you know how to do this?
> > 
> 
> I explicitly set these in my .emacs file, so I don't do any detection.
> If you could define "valid" I suppose you could test for such things.
> 
> Something like the following works for me.  I run mail-profile-foo with
> M-x or run it automatically with profile-guessing/setting routines.
> When I get the system ironed out, I'll emit patches and a wiki entry.
> 
> (defun message-mode-set-profile ()
>   (save-excursion
> (when (string= "message-mode" major-mode)
>   (goto-char (point-min))
>   (when (re-search-forward "^From: " nil t)
>   (kill-line)
>   (insert (format "%s <%s>" user-full-name user-mail-address)))
> 
>   (goto-char (point-min))
>   (when (re-search-forward "^Bcc: " nil t)
>   (kill-line)
>   (insert (format "%s <%s>" user-full-name user-mail-address))
> 
> (defun mail-profile-hv ()
>   (interactive)
>   (setq mail-host-address "hackervisions.org"
>   user-full-name "James Vasile"
>   message-sendmail-extra-arguments '("-a" "hv")
>   user-mail-address "james at hackervisions.org")
>   (message-mode-set-profile)
>   user-mail-address)
> (mail-profile-hv)
> 
> 

Hmm, I understand. My worry about this approach is the following: Now it
is very straightforward to start using notmuch. You only answer a few
questions when you run notmuch for the first time and then it works. If
we apply your patch, some additional configuration is needed and a
novice might not know how to do it.

So at least notmuch should tell the user what and where needs to be
configured. Or better, provide some sane default which can be overridden
in a way you want it.

That's only my opinion. I personally would have no problem with
additional configuration, but on the other side I like programs which do
not steel my time if it is not necessary.

Bye
-Michal


Re: [notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-12 Thread Jameson Rollins
On Fri, 12 Mar 2010 08:49:35 +0100, Michal Sojka sojk...@fel.cvut.cz wrote:
 Hmm, I understand. My worry about this approach is the following: Now it
 is very straightforward to start using notmuch. You only answer a few
 questions when you run notmuch for the first time and then it works. If
 we apply your patch, some additional configuration is needed and a
 novice might not know how to do it.

To me it seems the issue here is the distinction between the notmuch
CLI, and any other reader UI that uses it.  AFAICT, the CLI actually has
no need to know what your email address is, so I don't see why it
should be configured in the notmuch config.  Your reader on the other
hand does need to know, so it should be set there.

This is related to another current pet peeve of mine which is that
notmuch puts my email address in the Bcc: field in my response template.
I do not want to bcc myself on my responses.  Generally, I don't think
it should be the business of the CLI to set any of the header fields in
mail that I send out.

In short, the CLI should deal with indexing my mail.  It really has no
need to know who I am.

jamie.


pgpYm5JQPX5uP.pgp
Description: PGP signature
___
notmuch mailing list
notmuch@notmuchmail.org
http://notmuchmail.org/mailman/listinfo/notmuch


Re: [notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-12 Thread Sebastian Spaeth
On Fri, 12 Mar 2010 10:22:09 -0500, Jameson Rollins 
jroll...@finestructure.net wrote:
 To me it seems the issue here is the distinction between the notmuch
 CLI, and any other reader UI that uses it.  AFAICT, the CLI actually has
 no need to know what your email address is, so I don't see why it
 should be configured in the notmuch config.  Your reader on the other
 hand does need to know, so it should be set there.

+1. Except for making the from:~me synonym available for searches :)

 This is related to another current pet peeve of mine which is that
 notmuch puts my email address in the Bcc: field in my response template.
 I do not want to bcc myself on my responses.  Generally, I don't think
 it should be the business of the CLI to set any of the header fields in
 mail that I send out.

+1 I agree. The mailer should be putting a BCC in, if that is what the
user wants, not notmuch

Sebastian
___
notmuch mailing list
notmuch@notmuchmail.org
http://notmuchmail.org/mailman/listinfo/notmuch


[notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-11 Thread Michal Sojka
On Thu, 11 Mar 2010, James Vasile wrote:
> On Thu, 11 Mar 2010 14:00:08 +0100, Michal Sojka  
> wrote:
> > Hi James,
> > 
> > On Tue, 09 Mar 2010, James Vasile wrote:
> > > When notmuch creates a reply buffer, it guesses the From and Bcc
> > > addresses.  The client is in a better position to guess these, and this
> > > patch adjusts notmuch-reply accordingly.
> > > 
> > > diff --git a/notmuch.el b/notmuch.el
> > > index ab56f48..07f957e 100644
> > > --- a/notmuch.el
> > > +++ b/notmuch.el
> > > @@ -436,10 +436,20 @@ buffer."
> > >(message "Done"))
> > >  
> > >  (defun notmuch-reply (query-string)
> > > +  "Prepare a reply draft buffer.
> > > +
> > > +Have notmuch create a reply buffer, then adjust the from and bcc
> > > +headers to match our current user-full-name and
> > > +user-mail-address."
> > >(switch-to-buffer (generate-new-buffer "notmuch-draft"))
> > >(call-process notmuch-command nil t nil "reply" query-string)
> > >(message-insert-signature)
> > >(goto-char (point-min))
> > > +  (kill-line)
> > > +  (insert (format "From: %s <%s>" user-full-name user-mail-address))
> > 
> > Notmuch reply contains From: address which is based on the addresses in
> > .notmuch-config and the replied message. When you use multiple addresses
> > (e.g. home and work address), notmuch puts there the one used in the
> > replied message. It seems that your patch would break this feature.
> > 
> > -Michal
> 
> Yes, it does break that feature, and intentionally so.  The MUA should
> select the From: address.  I have profile selection code that sets my
> user-full-name and user-mail-address based on some context.  When I
> reply to somebody, the correct From: address is not who they think I am
> but rather who *I* think I am.
> 
> Here's my use case: I have a job in the free software world.  There's an
> email address attached to that.  I also serve on the board of a free
> software project.  There's another email for that.  People email me
> about the project using my work email, but I always reply using the
> project email, and my MUA knows that.  Notmuch doesn't.
> 
> Also: my girlfriend's family sometimes emails me at work.  I don't want
> personal email at my work address, so I always reply using a personal
> address.
> 
> Also: I have an old email address that I've deprecated, but old friends
> still use it.  I always reply with my newer address and they eventually
> start using the new one.
> 
> My profile code is usable but not complete.  It looks at folder contents
> to pick the correct From: address automatically (you can override the
> choice, of course), which is good when you have 400+ folders.  If
> anybody wants it before it's done, I can put it in a public branch.

Hi,

thanks for clarification. It all sounds reasonable. The only problem I
can see now is that if I create a new account on my machine and run
emacs there, then the value of user-mail-address is @
which doesn't refer to existing mailbox. I think that the header should
only be rewritten if these variables are known to have valid values. Do
you know how to do this?

-Michal


[notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-11 Thread James Vasile
On Thu, 11 Mar 2010 17:22:41 +0100, Michal Sojka  wrote:
> thanks for clarification. It all sounds reasonable. The only problem I
> can see now is that if I create a new account on my machine and run
> emacs there, then the value of user-mail-address is @
> which doesn't refer to existing mailbox. I think that the header should
> only be rewritten if these variables are known to have valid values. Do
> you know how to do this?
> 

I explicitly set these in my .emacs file, so I don't do any detection.
If you could define "valid" I suppose you could test for such things.

Something like the following works for me.  I run mail-profile-foo with
M-x or run it automatically with profile-guessing/setting routines.
When I get the system ironed out, I'll emit patches and a wiki entry.

(defun message-mode-set-profile ()
  (save-excursion
(when (string= "message-mode" major-mode)
  (goto-char (point-min))
  (when (re-search-forward "^From: " nil t)
(kill-line)
(insert (format "%s <%s>" user-full-name user-mail-address)))

  (goto-char (point-min))
  (when (re-search-forward "^Bcc: " nil t)
(kill-line)
(insert (format "%s <%s>" user-full-name user-mail-address))

(defun mail-profile-hv ()
  (interactive)
  (setq mail-host-address "hackervisions.org"
  user-full-name "James Vasile"
  message-sendmail-extra-arguments '("-a" "hv")
  user-mail-address "james at hackervisions.org")
  (message-mode-set-profile)
  user-mail-address)
(mail-profile-hv)




[notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-11 Thread Michal Sojka
Hi James,

On Tue, 09 Mar 2010, James Vasile wrote:
> When notmuch creates a reply buffer, it guesses the From and Bcc
> addresses.  The client is in a better position to guess these, and this
> patch adjusts notmuch-reply accordingly.
> 
> diff --git a/notmuch.el b/notmuch.el
> index ab56f48..07f957e 100644
> --- a/notmuch.el
> +++ b/notmuch.el
> @@ -436,10 +436,20 @@ buffer."
>(message "Done"))
>  
>  (defun notmuch-reply (query-string)
> +  "Prepare a reply draft buffer.
> +
> +Have notmuch create a reply buffer, then adjust the from and bcc
> +headers to match our current user-full-name and
> +user-mail-address."
>(switch-to-buffer (generate-new-buffer "notmuch-draft"))
>(call-process notmuch-command nil t nil "reply" query-string)
>(message-insert-signature)
>(goto-char (point-min))
> +  (kill-line)
> +  (insert (format "From: %s <%s>" user-full-name user-mail-address))

Notmuch reply contains From: address which is based on the addresses in
.notmuch-config and the replied message. When you use multiple addresses
(e.g. home and work address), notmuch puts there the one used in the
replied message. It seems that your patch would break this feature.

-Michal


[notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-11 Thread James Vasile
On Thu, 11 Mar 2010 14:00:08 +0100, Michal Sojka  wrote:
> Hi James,
> 
> On Tue, 09 Mar 2010, James Vasile wrote:
> > When notmuch creates a reply buffer, it guesses the From and Bcc
> > addresses.  The client is in a better position to guess these, and this
> > patch adjusts notmuch-reply accordingly.
> > 
> > diff --git a/notmuch.el b/notmuch.el
> > index ab56f48..07f957e 100644
> > --- a/notmuch.el
> > +++ b/notmuch.el
> > @@ -436,10 +436,20 @@ buffer."
> >(message "Done"))
> >  
> >  (defun notmuch-reply (query-string)
> > +  "Prepare a reply draft buffer.
> > +
> > +Have notmuch create a reply buffer, then adjust the from and bcc
> > +headers to match our current user-full-name and
> > +user-mail-address."
> >(switch-to-buffer (generate-new-buffer "notmuch-draft"))
> >(call-process notmuch-command nil t nil "reply" query-string)
> >(message-insert-signature)
> >(goto-char (point-min))
> > +  (kill-line)
> > +  (insert (format "From: %s <%s>" user-full-name user-mail-address))
> 
> Notmuch reply contains From: address which is based on the addresses in
> .notmuch-config and the replied message. When you use multiple addresses
> (e.g. home and work address), notmuch puts there the one used in the
> replied message. It seems that your patch would break this feature.
> 
> -Michal

Yes, it does break that feature, and intentionally so.  The MUA should
select the From: address.  I have profile selection code that sets my
user-full-name and user-mail-address based on some context.  When I
reply to somebody, the correct From: address is not who they think I am
but rather who *I* think I am.

Here's my use case: I have a job in the free software world.  There's an
email address attached to that.  I also serve on the board of a free
software project.  There's another email for that.  People email me
about the project using my work email, but I always reply using the
project email, and my MUA knows that.  Notmuch doesn't.

Also: my girlfriend's family sometimes emails me at work.  I don't want
personal email at my work address, so I always reply using a personal
address.

Also: I have an old email address that I've deprecated, but old friends
still use it.  I always reply with my newer address and they eventually
start using the new one.

My profile code is usable but not complete.  It looks at folder contents
to pick the correct From: address automatically (you can override the
choice, of course), which is good when you have 400+ folders.  If
anybody wants it before it's done, I can put it in a public branch.

-J


Re: [notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-11 Thread James Vasile
On Thu, 11 Mar 2010 17:22:41 +0100, Michal Sojka sojk...@fel.cvut.cz wrote:
 thanks for clarification. It all sounds reasonable. The only problem I
 can see now is that if I create a new account on my machine and run
 emacs there, then the value of user-mail-address is login@hostname
 which doesn't refer to existing mailbox. I think that the header should
 only be rewritten if these variables are known to have valid values. Do
 you know how to do this?
 

I explicitly set these in my .emacs file, so I don't do any detection.
If you could define valid I suppose you could test for such things.

Something like the following works for me.  I run mail-profile-foo with
M-x or run it automatically with profile-guessing/setting routines.
When I get the system ironed out, I'll emit patches and a wiki entry.

(defun message-mode-set-profile ()
  (save-excursion
(when (string= message-mode major-mode)
  (goto-char (point-min))
  (when (re-search-forward ^From:  nil t)
(kill-line)
(insert (format %s %s user-full-name user-mail-address)))

  (goto-char (point-min))
  (when (re-search-forward ^Bcc:  nil t)
(kill-line)
(insert (format %s %s user-full-name user-mail-address))

(defun mail-profile-hv ()
  (interactive)
  (setq mail-host-address hackervisions.org
  user-full-name James Vasile
  message-sendmail-extra-arguments '(-a hv)
  user-mail-address ja...@hackervisions.org)
  (message-mode-set-profile)
  user-mail-address)
(mail-profile-hv)

other mail-profile-foo functions
___
notmuch mailing list
notmuch@notmuchmail.org
http://notmuchmail.org/mailman/listinfo/notmuch


[notmuch] [PATCH] Change From and Bcc when creating reply draft buffer

2010-03-09 Thread James Vasile
When notmuch creates a reply buffer, it guesses the From and Bcc
addresses.  The client is in a better position to guess these, and this
patch adjusts notmuch-reply accordingly.

diff --git a/notmuch.el b/notmuch.el
index ab56f48..07f957e 100644
--- a/notmuch.el
+++ b/notmuch.el
@@ -436,10 +436,20 @@ buffer."
   (message "Done"))

 (defun notmuch-reply (query-string)
+  "Prepare a reply draft buffer.
+
+Have notmuch create a reply buffer, then adjust the from and bcc
+headers to match our current user-full-name and
+user-mail-address."
   (switch-to-buffer (generate-new-buffer "notmuch-draft"))
   (call-process notmuch-command nil t nil "reply" query-string)
   (message-insert-signature)
   (goto-char (point-min))
+  (kill-line)
+  (insert (format "From: %s <%s>" user-full-name user-mail-address))
+  (re-search-forward "^Bcc: " nil t)
+  (kill-line)
+  (insert (format "%s <%s>" user-full-name user-mail-address))
   (if (re-search-forward "^$" nil t)
   (progn
(insert "--text follows this line--")