* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 @ 2023-12-04 23:26 rameiko87 2023-12-05 14:32 ` Eli Zaretskii 0 siblings, 1 reply; 16+ messages in thread From: rameiko87 @ 2023-12-04 23:26 UTC (permalink / raw) To: 67638 I would appreciate clarifying this variable. I have difficulties understanding what the variable message-mail-user-agent means and what the options mean. The description for this variable doesn't help: > Like ‘mail-user-agent’. I don't know what this sentence means. > Except if it is nil, use Gnus native MUA; if it is t, use > ‘mail-user-agent’. Please remove Except from the beginning of the sentence, because non-native English speakers like myself think that "Except if it is nil" means "Whenever not nil". It may be correct, but it's confusing to some people. Perhaps the confusion arises because there's a full stop rather than a comma. If the except links the sentence to the one above, then why write "if it is t, use ‘mail-user-agent’ ", which is a repetition at this point? Now it looks from the description like there should be two options, but instead there's five. I'm totally at loss! ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-04 23:26 bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 rameiko87 @ 2023-12-05 14:32 ` Eli Zaretskii 2023-12-05 16:22 ` rameiko87 0 siblings, 1 reply; 16+ messages in thread From: Eli Zaretskii @ 2023-12-05 14:32 UTC (permalink / raw) To: rameiko87; +Cc: 67638 > Date: Mon, 04 Dec 2023 23:26:39 +0000 > From: rameiko87@posteo.net > > I would appreciate clarifying this variable. Thanks, I did that on the emacs-29 branch. > > Like ‘mail-user-agent’. > I don't know what this sentence means. It means you should click the link and read on mail-user-agent, before you continue reading this doc string. This is the style we use to avoid repeating the same information in more than one doc string. > > Except if it is nil, use Gnus native MUA; if it is t, use > > ‘mail-user-agent’. > Please remove Except from the beginning of the sentence, because > non-native English speakers like myself think that "Except if it is nil" > means "Whenever not nil". It may be correct, but it's confusing to some > people. Perhaps the confusion arises because there's a full stop rather > than a comma. > > If the except links the sentence to the one above, then why write "if it > is t, use ‘mail-user-agent’ ", which is a repetition at this point? Now > it looks from the description like there should be two options, but > instead there's five. > > I'm totally at loss! Here's the new doc string: "Your preferred mail composition package when reading email with message.el. Like `mail-user-agent' (which see), this specifies the mail-sending package you prefer. The value can be any value accepted by `mail-user-agent', and in addition it can be nil or t. If the value is nil, use the Gnus native Mail User Agent (MUA); if it is t, use the value of `mail-user-agent'." ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-05 14:32 ` Eli Zaretskii @ 2023-12-05 16:22 ` rameiko87 2023-12-05 17:13 ` Eli Zaretskii 0 siblings, 1 reply; 16+ messages in thread From: rameiko87 @ 2023-12-05 16:22 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 67638 Dear Eli, Thanks very much for your swift reply. Please understand that I mean no disturbance through my questions, I'm only trying to understand. What is confusing me still is that mail-user-agent sets the composition package for outgoing emails (in my personal configuration this is the Message package, in my mind this is the MUA being used when writing emails). The message-mail-user-agent variable instead it's not clear what is setting. > "Your preferred mail composition package when reading email with > message.el. But I read my emails with Rmail. Perhaps you meant "when composing emails with message.el"? If yes, I thought that the message package was the email composition package and that I assigned this with the variable mail-user-agent, so I'm not sure what I'm setting here. > Like `mail-user-agent' (which see), this specifies the mail-sending > package you prefer. Now the composition package from the first quote turned into sending package! What is a mail sending package? How is this variable the "analogous" of mail-user-agent (I really don't like that "Like")? > The value can be any value accepted by `mail-user-agent', and in > addition it can be nil or t. If the value is nil, use the Gnus native > Mail User Agent (MUA); if it is t, use the value of `mail-user-agent'." Why is the default the Gnus package? The problem is that I still don't understand the difference with mail-user-agent. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-05 16:22 ` rameiko87 @ 2023-12-05 17:13 ` Eli Zaretskii 2023-12-06 23:53 ` rameiko87 0 siblings, 1 reply; 16+ messages in thread From: Eli Zaretskii @ 2023-12-05 17:13 UTC (permalink / raw) To: rameiko87; +Cc: 67638 > Date: Tue, 05 Dec 2023 16:22:17 +0000 > From: rameiko87@posteo.net > Cc: 67638@debbugs.gnu.org > > Dear Eli, > Thanks very much for your swift reply. Please understand that I mean no > disturbance through my questions, I'm only trying to understand. What is > confusing me still is that mail-user-agent sets the composition package > for outgoing emails (in my personal configuration this is the Message > package, in my mind this is the MUA being used when writing emails). The > message-mail-user-agent variable instead it's not clear what is setting. message.el basically implements the message-mode, which is a specialized text-editing mode. It does not itself deal with email-specific stuff, like mail headers, the structure of the message according to the various RFCs, and neither does it handle the sending process itself. > > "Your preferred mail composition package when reading email with > > message.el. > > But I read my emails with Rmail. Perhaps you meant "when composing > emails with message.el"? No. > If yes, I thought that the message package was > the email composition package No, see above. "Mail User Agent" is separate from message.el. > and that I assigned this with the variable > mail-user-agent, so I'm not sure what I'm setting here. If you want mail-user-agent to take precedence, you need to customize message-mail-user-agent to the value t. That's what the doc string says. > > Like `mail-user-agent' (which see), this specifies the mail-sending > > package you prefer. > > Now the composition package from the first quote turned into sending > package! What is a mail sending package? Mail User Agent is both. See below. > How is this variable the > "analogous" of mail-user-agent (I really don't like that "Like")? Once again, "like", with a hyperlink after it, invites you to read the documentation of mail-user-agent. This is our usual style in doc strings to avoid repetition. > > The value can be any value accepted by `mail-user-agent', and in > > addition it can be nil or t. If the value is nil, use the Gnus native > > Mail User Agent (MUA); if it is t, use the value of `mail-user-agent'." > > Why is the default the Gnus package? Because message.el was originally part of Gnus, and Gnus users expect that default. > The problem is that I still don't understand the difference with > mail-user-agent. They are two separate options, and users have the freedom which one to customize and how. Next iteration of the doc string below. "Your preferred package for composing and sending email when using message.el. Like `mail-user-agent' (which see), this specifies the package you prefer to use for composing and sending email messages. The value can be anything accepted by `mail-user-agent', and in addition it can be nil or t. If the value is nil, use the Gnus native Mail User Agent (MUA); if it is t, use the value of `mail-user-agent'. For more about mail user agents, see Info node `(emacs)Mail Methods'" ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-05 17:13 ` Eli Zaretskii @ 2023-12-06 23:53 ` rameiko87 2023-12-07 7:05 ` Eli Zaretskii 0 siblings, 1 reply; 16+ messages in thread From: rameiko87 @ 2023-12-06 23:53 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 67638 Dear Eli, Please understand that I'm really trying my best to get this variable, which remains obscure and mysterious despite my technical proficiency, which I consider to be above-average. This is the only variable which I currently have a problem with (as far as the Mail group is concerned). > "Your preferred package for composing and sending email when using > message.el. I read very attentively your previous message. mail-user-agent is the package which is started when, say, I click on a mailto link. In my case, this is the Message package, which as far as I understand is exactly message.el > Like `mail-user-agent' (which see), this specifies the package you > prefer to use for composing and sending email messages. Then, I understand that while we're using message.el, and we're done writing the email, we need to send. Is it here that message-mail-user-agent intervenes? > The value can be anything accepted by `mail-user-agent', and in > addition it can be nil or t. If the value is nil, use the Gnus native > Mail User Agent (MUA); if it is t, use the value of `mail-user-agent'. This doesn't check out, even just because mail-user-agent accepts five options which are Message, Mail package, MH, Message_withGnusfeatures, but instead here we miss the options for "Message package" and "Message_withGnusfeatures", so message-mail-user-agent doesn't offer all the options that mail-user-agent offers. One explanation for this would be that "Message" doesn't help with the task which message-mail-user-agent wants to accomplish, therefore "Message" is absent from the options and "Message_withGnusfeatures" becomes "Gnus native" in the options. But it can't be the case because then a contradiction would follow: say I set the value of message-mail-user-agent to t, and the value of mail-user-agent is "Message package": this is an absurdity because then "Message" would be tasked with what message-mail-user-agent wants to accomplish, and we excluded this by hypothesis. And also setting the value of message-mail-user-agent to nil: is it the same as setting the value of message-mail-user-agent to t and the value of mail-user-agent to Message_withGnusfeatures? ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-06 23:53 ` rameiko87 @ 2023-12-07 7:05 ` Eli Zaretskii 2023-12-07 14:47 ` rameiko87 0 siblings, 1 reply; 16+ messages in thread From: Eli Zaretskii @ 2023-12-07 7:05 UTC (permalink / raw) To: rameiko87; +Cc: 67638 > Date: Wed, 06 Dec 2023 23:53:19 +0000 > From: rameiko87@posteo.net > Cc: 67638@debbugs.gnu.org > > Dear Eli, > Please understand that I'm really trying my best to get this variable, > which remains obscure and mysterious despite my technical proficiency, > which I consider to be above-average. This is the only variable which I > currently have a problem with (as far as the Mail group is concerned). > > > "Your preferred package for composing and sending email when using > > message.el. > > I read very attentively your previous message. mail-user-agent is the > package which is started when, say, I click on a mailto link. In my > case, this is the Message package, which as far as I understand is > exactly message.el > > > Like `mail-user-agent' (which see), this specifies the package you > > prefer to use for composing and sending email messages. > > Then, I understand that while we're using message.el, and we're done > writing the email, we need to send. Is it here that > message-mail-user-agent intervenes? No, it intervenes also _before_ you write the message. For example, if you reply to an incoming message (type 'r' in Rmail), the mail-user-agent's compose function is called to prepare the headers of the response for you, before you type the body of your response. Then the send function of mail-user-agent is invoked when you type the key to send the response. I added the link to the Info manual so you could read up on Mail User Agents and understand what they are for. > > The value can be anything accepted by `mail-user-agent', and in > > addition it can be nil or t. If the value is nil, use the Gnus native > > Mail User Agent (MUA); if it is t, use the value of `mail-user-agent'. > > This doesn't check out, even just because mail-user-agent accepts five > options which are Message, Mail package, MH, Message_withGnusfeatures, > but instead here we miss the options for "Message package" and > "Message_withGnusfeatures", so message-mail-user-agent doesn't offer all > the options that mail-user-agent offers. "Like" doesn't mean "100% identical", it means "similar". The intent is for you to read the doc string of that other variable, and then continue reading the doc string of this variable, with the information about mail-user-agent in mind. > And also setting the value of message-mail-user-agent to nil: is it the > same as setting the value of message-mail-user-agent to t and the value > of mail-user-agent to Message_withGnusfeatures? I think so, yes. But I don't use message.el, so I wouldn't know for sure. Why won't you try this and report back? ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-07 7:05 ` Eli Zaretskii @ 2023-12-07 14:47 ` rameiko87 2023-12-07 17:14 ` Eli Zaretskii 0 siblings, 1 reply; 16+ messages in thread From: rameiko87 @ 2023-12-07 14:47 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 67638 Dear Eli, Can you please kindly explain in one sentence where message-mail-user-agent and mail-user-agent intervene during the process of replying to an email message which I'm reading using Rmail? >> And also setting the value of message-mail-user-agent to nil: is it >> the same as setting the value of message-mail-user-agent to t and the >> value of mail-user-agent to Message_withGnusfeatures? > > I think so, yes. But I don't use message.el, so I wouldn't know for > sure. Why won't you try this and report back? I'm happy to try this, but before I do I must understand what these two variables are for. >> > The value can be anything accepted by `mail-user-agent', and in addition it can be nil or t. I still think this sentence doesn't check out, because the value of message-mail-user-agent cannot be "Message package" and "Message_withGnusfeatures", which instead are accepted values for the variable mail-user-agent. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-07 14:47 ` rameiko87 @ 2023-12-07 17:14 ` Eli Zaretskii 2023-12-07 17:27 ` rameiko87 0 siblings, 1 reply; 16+ messages in thread From: Eli Zaretskii @ 2023-12-07 17:14 UTC (permalink / raw) To: rameiko87; +Cc: 67638 > Date: Thu, 07 Dec 2023 14:47:20 +0000 > From: rameiko87@posteo.net > Cc: 67638@debbugs.gnu.org > > Can you please kindly explain in one sentence where > message-mail-user-agent and mail-user-agent intervene during the process > of replying to an email message which I'm reading using Rmail? When you type 'r', Emacs invokes rmail-reply, which calls rmail-start-mail, which calls compose-mail. compose-mail invokes the composition function of mail-user-agent, and when you invoke the command to send the response, Emacs invokes the send-mail function of mail-user-agent. rmail-start-mail (and thus compose-mail) is also called by commands rmail-mail, rmail-continue, rmail-forward, and a couple of others. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-07 17:14 ` Eli Zaretskii @ 2023-12-07 17:27 ` rameiko87 2023-12-07 17:40 ` Eli Zaretskii 0 siblings, 1 reply; 16+ messages in thread From: rameiko87 @ 2023-12-07 17:27 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 67638 >> Can you please kindly explain in one sentence where >> message-mail-user-agent and mail-user-agent intervene during the >> process of replying to an email message which I'm reading using Rmail? > > When you type 'r', Emacs invokes rmail-reply, which calls > rmail-start-mail, which calls compose-mail. compose-mail invokes the > composition function of mail-user-agent, and when you invoke the > command to send the response, Emacs invokes the send-mail function of > mail-user-agent. > > rmail-start-mail (and thus compose-mail) is also called by commands > rmail-mail, rmail-continue, rmail-forward, and a couple of others. Thanks. Can you please explain where the variable message-mail-user-agent intervenes in the process above? Because only mail-user-agent appears in your description. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-07 17:27 ` rameiko87 @ 2023-12-07 17:40 ` Eli Zaretskii 2023-12-07 17:53 ` Eli Zaretskii 0 siblings, 1 reply; 16+ messages in thread From: Eli Zaretskii @ 2023-12-07 17:40 UTC (permalink / raw) To: rameiko87; +Cc: 67638 > Date: Thu, 07 Dec 2023 17:27:21 +0000 > From: rameiko87@posteo.net > Cc: 67638@debbugs.gnu.org > > >> Can you please kindly explain in one sentence where > >> message-mail-user-agent and mail-user-agent intervene during the > >> process of replying to an email message which I'm reading using Rmail? > > > > When you type 'r', Emacs invokes rmail-reply, which calls > > rmail-start-mail, which calls compose-mail. compose-mail invokes the > > composition function of mail-user-agent, and when you invoke the > > command to send the response, Emacs invokes the send-mail function of > > mail-user-agent. > > > > rmail-start-mail (and thus compose-mail) is also called by commands > > rmail-mail, rmail-continue, rmail-forward, and a couple of others. > > Thanks. Can you please explain where the variable > message-mail-user-agent intervenes in the process above? Because only > mail-user-agent appears in your description. Please take a look at the code of compose-mail. It is defined in simple.el. You will see the answer there. It might also be educational to look at define-mail-user-agent (in subr.el), which is the function used to define all the mail-user-agent's we have in Emacs. Its doc string describes, among other things, what constitutes a "mail user agent" in Emacs. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-07 17:40 ` Eli Zaretskii @ 2023-12-07 17:53 ` Eli Zaretskii 2023-12-08 11:41 ` rameiko87 0 siblings, 1 reply; 16+ messages in thread From: Eli Zaretskii @ 2023-12-07 17:53 UTC (permalink / raw) To: rameiko87; +Cc: 67638 > Cc: 67638@debbugs.gnu.org > Date: Thu, 07 Dec 2023 19:40:31 +0200 > From: Eli Zaretskii <eliz@gnu.org> > > > > rmail-start-mail (and thus compose-mail) is also called by commands > > > rmail-mail, rmail-continue, rmail-forward, and a couple of others. > > > > Thanks. Can you please explain where the variable > > message-mail-user-agent intervenes in the process above? Because only > > mail-user-agent appears in your description. Oh, and message-setup binds mail-user-agent to a value derived from message-mail-user-agent. Maybe this is the missing piece you were looking for. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-07 17:53 ` Eli Zaretskii @ 2023-12-08 11:41 ` rameiko87 2023-12-08 12:32 ` Eli Zaretskii 2023-12-08 13:01 ` CHENG Gao via Bug reports for GNU Emacs, the Swiss army knife of text editors 0 siblings, 2 replies; 16+ messages in thread From: rameiko87 @ 2023-12-08 11:41 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 67638 Dear Eli, > Oh, and message-setup binds mail-user-agent to a value derived from > message-mail-user-agent. Maybe this is the missing piece you were > looking for. This may be the key. Let's see if I understand correctly. I would be immensely grateful if you could check the "decision-making pseudocode" below. CASE A. We're outside of message.el In this case check the variable mail-user-agent to decide how to create the email. mail-user-agent may say to use something different from the Message package, in which case message-mail-user-agent will never intervene unless we use Gnus, and it doesn't matter what it's set up to. CASE B. We're inside of message.el This may happen either because mail-user-agent is set to the Message package, so brings us to use message.el, or because we're inside Gnus which always calls the Message package no matter the value of mail-user-agent. Now that we're in message.el, first we look at message-mail-user-agent and temporarily ignore mail-user-agent: CASE B.1 It's the Message package, so send the email this way. Note that mail-user-agent does not intervene at all here in B.1, except perhaps to choose case B instead of case A. CASE B.2 It's something else from the Message package and is explicitly set: use that whatever it is. Note that also in this case then mail-user-agent doesn't matter, except perhaps to choose case B instead of case A. Case B.3 It says to look at the value of mail-user-agent. Then if it's the message package, this is the same as case B.1 (except that inside B.3 we have used the value of mail-user-agent), otherwise use whatever other package mail-user-agent says to use. Do you think this is correct? ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-08 11:41 ` rameiko87 @ 2023-12-08 12:32 ` Eli Zaretskii 2023-12-08 14:37 ` rameiko87 2023-12-08 13:01 ` CHENG Gao via Bug reports for GNU Emacs, the Swiss army knife of text editors 1 sibling, 1 reply; 16+ messages in thread From: Eli Zaretskii @ 2023-12-08 12:32 UTC (permalink / raw) To: rameiko87; +Cc: 67638 > Date: Fri, 08 Dec 2023 11:41:34 +0000 > From: rameiko87@posteo.net > Cc: 67638@debbugs.gnu.org > > > Oh, and message-setup binds mail-user-agent to a value derived from > > message-mail-user-agent. Maybe this is the missing piece you were > > looking for. > > This may be the key. Let's see if I understand correctly. I would be > immensely grateful if you could check the "decision-making pseudocode" > below. > > CASE A. We're outside of message.el > > In this case check the variable mail-user-agent to decide how to create > the email. mail-user-agent may say to use something different from the > Message package, in which case message-mail-user-agent will never > intervene unless we use Gnus, and it doesn't matter what it's set up to. > > CASE B. We're inside of message.el > > This may happen either because mail-user-agent is set to the Message > package, so brings us to use message.el, or because we're inside Gnus > which always calls the Message package no matter the value of > mail-user-agent. > > Now that we're in message.el, first we look at message-mail-user-agent > and temporarily ignore mail-user-agent: > CASE B.1 It's the Message package, so send the email this way. Note that > mail-user-agent does not intervene at all here in B.1, except perhaps to > choose case B instead of case A. > CASE B.2 It's something else from the Message package and is explicitly > set: use that whatever it is. Note that also in this case then > mail-user-agent doesn't matter, except perhaps to choose case B instead > of case A. > Case B.3 It says to look at the value of mail-user-agent. Then if it's > the message package, this is the same as case B.1 (except that inside > B.3 we have used the value of mail-user-agent), otherwise use whatever > other package mail-user-agent says to use. > > Do you think this is correct? Almost. In case B.1 we do involve mail-user-agent: message.el binds its value to what message-mail-user-agent tells it. IOW, the lower-level functionality of composing and sending email always looks at mail-user-agent, so any package that wants to override the value of mail-user-agent must bind it to some other value. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-08 12:32 ` Eli Zaretskii @ 2023-12-08 14:37 ` rameiko87 2023-12-08 14:42 ` Eli Zaretskii 0 siblings, 1 reply; 16+ messages in thread From: rameiko87 @ 2023-12-08 14:37 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 67638 >> This may be the key. Let's see if I understand correctly. I would be >> immensely grateful if you could check the "decision-making pseudocode" >> below. >> >> CASE A. We're outside of message.el >> >> In this case check the variable mail-user-agent to decide how to >> create >> the email. mail-user-agent may say to use something different from the >> Message package, in which case message-mail-user-agent will never >> intervene unless we use Gnus, and it doesn't matter what it's set up >> to. >> >> CASE B. We're inside of message.el >> >> This may happen either because mail-user-agent is set to the Message >> package, so brings us to use message.el, or because we're inside Gnus >> which always calls the Message package no matter the value of >> mail-user-agent. >> >> Now that we're in message.el, first we look at message-mail-user-agent >> and temporarily ignore mail-user-agent: >> CASE B.1 It's the Message package, so send the email this way. Note >> that >> mail-user-agent does not intervene at all here in B.1, except perhaps >> to >> choose case B instead of case A. >> CASE B.2 It's something else from the Message package and is >> explicitly >> set: use that whatever it is. Note that also in this case then >> mail-user-agent doesn't matter, except perhaps to choose case B >> instead >> of case A. >> Case B.3 It says to look at the value of mail-user-agent. Then if it's >> the message package, this is the same as case B.1 (except that inside >> B.3 we have used the value of mail-user-agent), otherwise use whatever >> other package mail-user-agent says to use. >> >> Do you think this is correct? > > Almost. In case B.1 we do involve mail-user-agent: message.el binds > its value to what message-mail-user-agent tells it. IOW, the > lower-level functionality of composing and sending email always looks > at mail-user-agent, so any package that wants to override the value of > mail-user-agent must bind it to some other value. Wait up I disagree: case B.1 means that the value of message-mail-user-agent is nil, therefore in message-setup the expression: https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/gnus/message.el?id=841614c72272146fff1b9afa05d52150da6d6e66#n6814 is true, therefore we call: https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/gnus/message.el?id=841614c72272146fff1b9afa05d52150da6d6e66#n6815 and there's no mail-user-agent involved and message.el doesn't touch the value of mail-user-agent in case B.1. The value of mail-user-agent is changed only in https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/gnus/message.el?id=841614c72272146fff1b9afa05d52150da6d6e66#n6825 which lies in the part of the "if" that is not run. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-08 14:37 ` rameiko87 @ 2023-12-08 14:42 ` Eli Zaretskii 0 siblings, 0 replies; 16+ messages in thread From: Eli Zaretskii @ 2023-12-08 14:42 UTC (permalink / raw) To: rameiko87; +Cc: 67638 > Date: Fri, 08 Dec 2023 14:37:30 +0000 > From: rameiko87@posteo.net > Cc: 67638@debbugs.gnu.org > > >> Do you think this is correct? > > > > Almost. In case B.1 we do involve mail-user-agent: message.el binds > > its value to what message-mail-user-agent tells it. IOW, the > > lower-level functionality of composing and sending email always looks > > at mail-user-agent, so any package that wants to override the value of > > mail-user-agent must bind it to some other value. > > Wait up I disagree Noted. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 2023-12-08 11:41 ` rameiko87 2023-12-08 12:32 ` Eli Zaretskii @ 2023-12-08 13:01 ` CHENG Gao via Bug reports for GNU Emacs, the Swiss army knife of text editors 1 sibling, 0 replies; 16+ messages in thread From: CHENG Gao via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2023-12-08 13:01 UTC (permalink / raw) To: 67638 Grepping shows: ,---- | | (define-mail-user-agent 'gnus-user-agent 'gnus-msg-mail 'message-send-and-exit 'message-kill-buffer 'message-send-hook) | (define-mail-user-agent 'message-user-agent 'message-mail 'message-send-and-exit 'message-kill-buffer 'message-send-hook) | (define-mail-user-agent 'mh-e-user-agent 'mh-user-agent-compose 'mh-send-letter 'mh-fully-kill-draft 'mh-before-send-letter-hook) | (define-mail-user-agent 'sendmail-user-agent #'sendmail-user-agent-compose #'mail-send-and-exit) `---- Seems they are all mail-user-agents defined in current Emacs, that define how to compose mail (using Mail mode in sendmail.el or Message mode in message.el) and how to send mail (using sendmail in sendmail.el or smtp in smtpmail.el). My understanding is For composing mail, gnus-user-agent is like message-user-agent plus, with some extra headers and rendering Other than sending mail, sendmail package is also for composing mail (Mail mode), as used by RMAIL IIUC. Not sure about mh-e-user-agent. Seems it uses its own composing mode other than Mail and Message modes. And uses sendmail package for sending mail. Among these four mail-user-agents defined, only gnus-user-agent is used also as variable (to define what to put in User-Agent header of mail or news message). All others are only used for property list of named symbols. And only COMPOSEFUNC & SENDFUNC of sendmail-user-agent are used in current Emacs codes (for bug reporting). I'd say it is in fact fairly complicated and to some extend misleading (esp. sendmail-user-agent serving composition besides delivery). ^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2023-12-08 14:42 UTC | newest] Thread overview: 16+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-12-04 23:26 bug#67638: Description of the variable message-mail-user-agent in Emacs 29.1 rameiko87 2023-12-05 14:32 ` Eli Zaretskii 2023-12-05 16:22 ` rameiko87 2023-12-05 17:13 ` Eli Zaretskii 2023-12-06 23:53 ` rameiko87 2023-12-07 7:05 ` Eli Zaretskii 2023-12-07 14:47 ` rameiko87 2023-12-07 17:14 ` Eli Zaretskii 2023-12-07 17:27 ` rameiko87 2023-12-07 17:40 ` Eli Zaretskii 2023-12-07 17:53 ` Eli Zaretskii 2023-12-08 11:41 ` rameiko87 2023-12-08 12:32 ` Eli Zaretskii 2023-12-08 14:37 ` rameiko87 2023-12-08 14:42 ` Eli Zaretskii 2023-12-08 13:01 ` CHENG Gao via Bug reports for GNU Emacs, the Swiss army knife of text editors
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).