[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#734353: libexo-1-0: does not handle email body for mutt



On Mon, 6 Jan 2014 "Alexandra N. Kossovsky" wrote:
> 
> I use mutt as e-mail client.  mutt itself perfectly handles mailto:
> URLs, including the mail body.  When using it via xfce, the mail body is gone.

Please find below a patch that fixes this.

It also moves the "-s subject" option to the front. As documented in the
man page, the "-a attachments" must be the last option, and it can take
multiple arguments. The '--' delimiter is used to mark the end of the
options; the remaining arguments are the recipients. Passing the message
body is possible by adding a mailto uri there, too.


--- exo-compose-mail-1.orig     2020-07-12 10:46:48.390415327 +0200
+++ exo-compose-mail-1  2020-07-13 23:56:48.089760063 +0200
@@ -221,16 +221,20 @@
 }
 elsif ($style eq 'mutt') {
        # generate the parameters for mutt
+       $subject and push (@argv, '-s', $subject);
        for my $cc (@cc) {
                push (@argv, '-c', $cc);
        }
        for my $bcc (@bcc) {
                push (@argv, '-b', $bcc);
        }
-       for my $uri (@attachments) {
-               push (@argv, '-a', $uri->path ());
+       if (@attachments > 0) {
+               push (@argv, '-a');
+               for my $uri (@attachments) {
+                       push (@argv, $uri->path ());
+               }
        }
-       $subject and push (@argv, '-s', $subject);
+       push (@argv, '--');
        for my $to (@to) {
                push (@argv, $to);
        }
@@ -239,6 +243,8 @@
        # any, just append an empty string and mutt
        # will prompt for the To: address
        (not @to) and push (@argv, '');
+
+       $body and push(@argv, 'mailto:?body=' . uri_escape($body));
 }
 else {
        print STDERR "$0: Unsupported style '$style'.\n";


Reply to: