emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Dan Davison <davison@stats.ox.ac.uk>
To: Eric Schulte <schulte.eric@gmail.com>
Cc: emacs-orgmode@gnu.org
Subject: Re: [CONTRIB?] using orgmode to send html mail?
Date: Mon, 05 Apr 2010 09:54:49 -0400	[thread overview]
Message-ID: <87bpdyf1hy.fsf@stats.ox.ac.uk> (raw)
In-Reply-To: <87aatizcef.fsf@gmail.com> (Eric Schulte's message of "Sun, 04 Apr 2010 23:39:04 -0600")

[-- Attachment #1: Type: text/plain, Size: 869 bytes --]

Hi Eric,

Thanks a lot for this, I think I'll use it quite a bit.

This may be specific to my setup, but in case this is useful to others,
as a gnus user I had to do

(setq mail-user-agent 'message-user-agent)

Without altering this --- i.e. with mail-user-agent set to the default
value of 'sendmail-user-agent --- org-mime-org-buffer-htmlize puts the
outgoing message in mail-mode (a.o.t. message-mode). For me, that meant
that the resulting outgoing email was rendered verbatim in gmail,
whereas from message-mode it is fine. The exact contents of outgoing
emails are below.

I noticed one small bug, but perhaps it's an org-mode bug? When I use
org-mime-org-buffer-htmlize on this

,----
| *** Tasks
|     - [ ] Check Popen.returncode of python system calls
`----

I get the following, which renders as a checkbox with an X, whereas my
checkbox was empty.

,----
| 

[-- Attachment #2.1: Type: text/plain, Size: 70 bytes --]

*** Tasks
|     - [ ] Check Popen.returncode of python system calls
| 

[-- Attachment #2.2: Type: text/html, Size: 136 bytes --]

[-- Attachment #3: Type: text/plain, Size: 419 bytes --]

`----

Comparison of outgoing mail from mail-mode and message-mode:

With an org buffer containing (as active region or not)

,----
| * heading
|   text
`----

Here is what the outgoing email (i.e. the stdin received by
sendmail-program) looks like from mail-mode (mail formed by
org-mime-org-buffer-htmlize)

--8<---------------cut here---------------start------------->8---
To: dandavison0@gmail.com
Subject: test16


[-- Attachment #4.1: Type: text/plain, Size: 17 bytes --]

* heading
  text

[-- Attachment #4.2: Type: text/html, Size: 146 bytes --]

[-- Attachment #5: Type: text/plain, Size: 3531 bytes --]

--8<---------------cut here---------------end--------------->8---


And here is what the outgoing email looks like from message-mode (exact
same content, but pasted from mail-mode into message-mode).

--8<---------------cut here---------------start------------->8---
From: Dan Davison <davison@stats.ox.ac.uk>
To: dandavison0@gmail.com
Subject: test16
Date: Mon, 05 Apr 2010 09:26:23 -0400
Message-ID: <87y6h2f2tc.fsf@stats.ox.ac.uk>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="=-=-="

--=-=-=

* heading
  text

--=-=-=
Content-Type: text/html

<div id="outline-container-1" class="outline-2">
<h2 id="sec-1">heading </h2>
<div class="outline-text-2" id="text-1">

<p>text
</p></div>
</div>

--=-=-=--
--8<---------------cut here---------------end--------------->8---

Dan

"Eric Schulte" <schulte.eric@gmail.com> writes:

> Hi,
>
> It is now possible to send HTML mail directly form an org-mode buffer.
>
> Calling `org-mime-org-buffer-htmlize' (could probably use a better name)
> from inside of an org-mode buffer will use `org-export-as-html' to
> generate HTML of the buffer (respecting regions and subtree narrowing),
> and will then package the resulting HTML with all linked images into a
> message buffer.
>
> As usual thanks to Carsten's thoughtfully organized functions and
> control variables this was surprisingly easy to implement.
>
> Cheers -- Eric
>
> The code is still up at http://github.com/eschulte/org-mime
>
> "Eric Schulte" <schulte.eric@gmail.com> writes:
>
>> Dan Davison <davison@stats.ox.ac.uk> writes:
>>
>> [...]
>>
>>>
>>> As I understand it the code you've written is designed to be called in a
>>> message-mode buffer with orgstruct-mode in force. Would it make sense to
>>> also include in your package a complementary function, that one calls in
>>> an org-mode buffer? I envisage this generating the HTML, forming the
>>> multipart email contents, and then saving it to the kill ring, so that
>>> it can be pasted into an email.
>>>
>>> This function would have access to the directory-name and so should be
>>> able to resolve relative paths. Also, there might be some other
>>> advantages -- for example when exporting just a region or subtree,
>>> buffer-wide properties such as #+TITLE and #+AUTHOR are picked up by the
>>> org exporter and packaged into the HTML.
>>>
>>> In other words, can I use your machinery to package up the HTML
>>> generated by Org's C-e dispatcher into an appropriately-constructed
>>> email?
>>>
>>
>> Hi Dan,
>>
>> That sounds like a good idea, I've added it to a fledgling task list
>> packaged in the README at [1].  I'd say there are two options.
>>
>> 1) which you mentioned saving the entire exported content to the
>>    kill-ring.  One problem here is that everything is still text and
>>    pastable only *before* the mime export process, which means that
>>    linked images wouldn't resolve after pasting into the email client.
>>
>> 2) having the function generate a new mail buffer containing the
>>    exported content.  This buffer would need to have it's
>>    `buffer-file-name' set, for images to resolve during export.  I'm not
>>    sure how this should best work.
>>
>> Thanks -- Eric
>>
>> Footnotes: 
>> [1]  http://github.com/eschulte/org-mime
>
>
> _______________________________________________
> Emacs-orgmode mailing list
> Please use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode

[-- Attachment #6: Type: text/plain, Size: 201 bytes --]

_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode

  parent reply	other threads:[~2010-04-05 13:54 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-22  2:34 using orgmode to send html mail? Matt Price
2010-03-22 15:44 ` Matt Price
2010-03-22 20:18 ` David Maus
2010-03-23 19:54   ` Eric Schulte
2010-03-23 21:46     ` Xiao-Yong Jin
2010-03-24 15:00       ` Eric Schulte
2010-03-24 17:50         ` Dan Davison
2010-03-24 18:01           ` Eric Schulte
2010-03-24 19:12             ` David Maus
2010-03-24 20:19               ` Eric Schulte
2010-03-25 21:17                 ` David Maus
2010-03-26 14:53                   ` Eric Schulte
2010-03-26 16:04                     ` David Maus
2010-03-26 16:32                       ` Eric Schulte
2010-03-31 18:12                         ` [CONTRIB?] " Eric Schulte
2010-03-31 20:05                           ` Dan Davison
2010-03-31 21:10                             ` Eric Schulte
2010-03-31 21:37                               ` Dan Davison
2010-04-01 14:22                                 ` Eric Schulte
2010-04-05  5:39                                   ` Eric Schulte
2010-04-05  6:49                                     ` Carsten Dominik
2010-04-05 15:31                                       ` Eric Schulte
2010-04-09 16:41                                         ` [ANN] org-mime -- " Eric Schulte
2010-04-09 17:41                                           ` Matt Price
2010-04-09 19:11                                             ` Eric Schulte
2010-04-09 19:22                                             ` David Maus
2010-04-09 20:34                                               ` Eric Schulte
2010-04-12 13:37                                           ` Andrew Hyatt
2010-04-12 17:22                                             ` Eric Schulte
2010-04-13  1:31                                               ` Andrew Hyatt
2010-04-14  0:57                                                 ` Eric Schulte
2010-04-14  1:57                                                   ` Andrew Hyatt
2010-04-14 14:59                                                     ` Eric Schulte
2010-04-14 18:00                                                       ` Andrew Hyatt
2010-04-14 19:26                                                         ` Bernt Hansen
2010-04-14  8:39                                                   ` Eric S Fraga
2010-04-14 15:12                                                     ` Eric Schulte
2010-04-14 19:38                                                       ` Eric S Fraga
2010-04-15  2:49                                                         ` Eric Schulte
2010-04-15 15:47                                                           ` Eric Schulte
2010-04-13 23:03                                           ` Eric S Fraga
2010-04-14  1:22                                             ` Eric Schulte
2010-04-05 13:54                                     ` Dan Davison [this message]
2010-04-05 14:50                                       ` [CONTRIB?] " David Maus
2010-04-05 14:53                                       ` Dan Davison
2010-04-05 15:30                                         ` Eric Schulte
2010-04-01 17:37                           ` Sivaram Neelakantan
2010-04-01 17:45                           ` Sivaram Neelakantan
2010-03-31 20:37                         ` David Maus
2010-03-31 22:03                           ` Eric Schulte
2010-04-02  7:04                             ` David Maus
2010-04-02 23:01                               ` Eric Schulte
2010-04-03  9:19                                 ` David Maus
2010-04-04 17:52                                   ` Eric Schulte
2010-04-01  7:53                           ` Vagn Johansen
2010-04-02  6:34                             ` David Maus
2010-04-02 14:57                               ` Dan Davison
2010-04-02 17:25                                 ` David Maus
2010-04-02 21:10                                   ` Eric Schulte
2010-04-03  9:00                                     ` David Maus
2010-04-03 12:03                                       ` David Maus
2010-04-04  2:41                                         ` Eric Schulte
2010-04-04 10:00                                           ` David Maus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87bpdyf1hy.fsf@stats.ox.ac.uk \
    --to=davison@stats.ox.ac.uk \
    --cc=emacs-orgmode@gnu.org \
    --cc=schulte.eric@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.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).