From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Davison Subject: Re: [CONTRIB?] using orgmode to send html mail? Date: Mon, 05 Apr 2010 09:54:49 -0400 Message-ID: <87bpdyf1hy.fsf@stats.ox.ac.uk> References: <878w9krtyn.wl%dmaus@ictsoc.de> <871vfa24qo.fsf@gmail.com> <87pr2uww2d.fsf@columbia.edu> <87tys5zrwm.fsf@gmail.com> <87sk7pzk02.fsf@stats.ox.ac.uk> <87tys5r3q6.fsf@gmail.com> <87ocid7cuj.wl%dmaus@ictsoc.de> <874ok5qxp9.fsf@gmail.com> <87vdckksnj.wl%dmaus@ictsoc.de> <874ok33zje.fsf@gmail.com> <87zl1vf4ru.wl%dmaus@ictsoc.de> <874ok311t9.fsf@gmail.com> <87y6h85pid.fsf_-_@gmail.com> <87fx3g1cld.fsf@stats.ox.ac.uk> <87eij05had.fsf@gmail.com> <878w98w4sz.fsf@stats.ox.ac.uk> <87sk7f8d6x.fsf@gmail.com> <87aatizcef.fsf@gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="==-=-=" Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NymlX-0001cZ-0U for emacs-orgmode@gnu.org; Mon, 05 Apr 2010 09:54:59 -0400 Received: from [140.186.70.92] (port=51905 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NymlV-0001bz-D1 for emacs-orgmode@gnu.org; Mon, 05 Apr 2010 09:54:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NymlT-00070y-Ay for emacs-orgmode@gnu.org; Mon, 05 Apr 2010 09:54:57 -0400 Received: from markov.stats.ox.ac.uk ([163.1.210.1]:39334) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NymlT-00070i-1o for emacs-orgmode@gnu.org; Mon, 05 Apr 2010 09:54:55 -0400 In-Reply-To: <87aatizcef.fsf@gmail.com> (Eric Schulte's message of "Sun, 04 Apr 2010 23:39:04 -0600") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Eric Schulte Cc: emacs-orgmode@gnu.org --==-=-= 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. ,---- | --==-=-= Content-Type: multipart/alternative; boundary="===-=-=" --===-=-= *** Tasks | - [ ] Check Popen.returncode of python system calls | --===-=-= Content-Type: text/html |
    |
  • | [X] Check Popen.returncode of python system calls
    |
  • |
| --===-=-=-- --==-=-= `---- 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 --==-=-= Content-Type: multipart/alternative; boundary="====-=-=" --====-=-= * heading text --====-=-= Content-Type: text/html

heading

text

--====-=-=-- --==-=-= --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 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

heading

text

--=-=-=-- --8<---------------cut here---------------end--------------->8--- Dan "Eric Schulte" 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" writes: > >> Dan Davison 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 --==-=-= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ 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 --==-=-=--