Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-15 Thread Eric Schulte
Org-mime should now fully support the WL mailer, thanks to Eric S Fraga.

I've updated the documentation on worg, but basically to use org-mime
with WL, you need only add the following to your config.

--8---cut here---start-8---
(require 'org-mime)
(setq org-mime-library 'semi)
--8---cut here---end---8---

Now if any VM users want to add VM mime syntax to the `org-mime-file'
and `org-mime-multipart' functions we should have full coverage of the
big 3 Emacs mailers.

Thanks -- Eric

Eric Schulte schulte.e...@gmail.com writes:

 Eric S Fraga ucec...@ucl.ac.uk writes:

 [...]

 Thanks.   I've pulled and it now works better, in that the HTML
 element is now not-nil.  However, it's not quite right and other
 aspects are still not working.  I'm attaching three files: the original
 org file I'm using to test the mime encoding, a small image used for
 the test, and the resulting message I receive when I've sent the
 result of mime exporting.

 There are definitely problems in encoding images, whether one
 explicitly linked to in the org file or one created for latex
 equations.  Some (maybe all?) of the problems may be due to
 Wanderlust.  I imagine you don't use WL so if there's any help I can
 provide in debugging this combination, please let me know!


 Yes, there absolutely is something you can do to help.

 I think you're right that my poor WL syntax is most likely the problem.
 All of the WL specific syntax is in the `org-mime-file' and
 `org-mime-multipart' functions.  To start could you try replace the
 'semi portion of the case statement in `org-mime-multipart' with the
 following (I'd paste the whole function but it'd break my outgoing gnus
 email) the syntax here is updated based on a function from
 http://www.emacswiki.org/emacs/WlFaq#toc10.

 ('semi (concat
 -- alternative-{\n
 -- [[text/plain]]\n plain
 -- [[text/html]]\n  html
 -- }-alternative\n))

 That *should* fix the exportation of html portions w/o pictures, the WL
 syntax in `org-mime-file' will need to be fixed for image attachments.


 I do note that the text contents for the email created in the buffer
 do differ from what I get when I explicitly insert attachments.


 yes, hopefully once these are brought into line then org-mime will work
 for WL as well as gnus.

 Thanks -- Eric


___
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


Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-14 Thread Eric S Fraga
On Tue, 13 Apr 2010 18:57:07 -0600, Eric Schulte schulte.e...@gmail.com 
wrote:
 
 So, for some reason the `org-mime-org-export' helper function is
 returning nil on your (and Eric's) machines.  Could you try evaluating
 (C-M-x) the following in your *scratch* buffer?
 
 (insert (org-mime-org-export html - first
 - second
 - third (make-temp-file quick-test)))

I get exactly the same as you do.

 to export a non-html buffer to html, or you could also try starting up
 Emacs with the -Q option, then loading org-mime.el, opening an org-mode
 file, and calling org-mime-org-buffer-htmlize, and sending an email to
 yourself.

Interesting.  This fails for me:

1. emacs -Q
2. in *scratch*: set load path appropriately, (require 'org-install), (require 
'org-mime)
3. visit org test buffer
4. invoke org-mime-org-buffer-htmlize which fails with 

   org-mime-file: Symbol's function definition is void: case

   although the HTML has been created and pushed to the kill ring
   according to the *Messages* buffer.

5. so try (require 'cl)
6. try org-mime-org-buffer-htmlize again and now there is no error but
   the output is:

   ,
   |#multipart type=alternative#part type=text/plain
   | * Testing mime in org
   | 
   |   This file will provide a simple test for the new mime encoding and
   |   exporting features in org-mode.
   | 
   |   The most interesting aspect may be the use of \(y = \sum_i^n x_i^2\)
   |   and, please, see the figure:
   | 
   |   [[./mip.png]]
   |   #part type=text/htmlnil#/multipart
   |   #part type=image/png filename=/home/ucecesf/s/test/mip.png 
id=_home_ucecesf_s_test_mip.png
   |   #/part
   `

I hope some of this might help identify where the problem may lie?  I
can obviously send you my full org environment if you wish. I'm also
happy to debug the org-mime code directly if you give me some idea of
where to look!

Thanks,
eric


___
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


Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-14 Thread Eric Schulte
Hi Andrew,

I started my emacs with the -Q option, and to my surprise I got the same
error that you have described.  I've been able to hunt down the source
of this problem, and it is an old version of org-export-as-org, which
means that you are not loading the latest version of the core org-mode,
but rather the version distributed with Emacs.

This is what happened to me when I started with the -Q option and simple
required org-install without first adding the path to the newer version
of org-mode to my load path.

An easy way to verify that this is the case is to call describe-function
with C-h f org-export-as-org, then jump to the source-code of the
function by pressing enter on the linked function name, and jumping down
to the last 5 lines of the function definition.  If they don't look like

#+begin_src emacs-lisp
  (if (equal to-buffer 'string)
(progn (setq str-ret (buffer-string))
   (kill-buffer (current-buffer))
   str-ret)
  (kill-buffer (current-buffer)))
#+end_src

then you are still using an old version of Org-mode.  Hopefully once you
are sync'd to the head of the org-mode repository this error will be
fixed.

Hope this helps, Best -- Eric

Andrew Hyatt ahy...@gmail.com writes:

 I do get the same result you do.  Hopefully, I'll have some time tomorrow to
 look into the issue.  RIght now, though, my problem is not the nil, but the
 error I reported in my previous email.

 On Tue, Apr 13, 2010 at 8:57 PM, Eric Schulte schulte.e...@gmail.comwrote:

 So, for some reason the `org-mime-org-export' helper function is
 returning nil on your (and Eric's) machines.  Could you try evaluating
 (C-M-x) the following in your *scratch* buffer?

 (insert (org-mime-org-export html - first
 - second
 - third (make-temp-file quick-test)))

 When I execute the above it inserts the following into the scratch
 buffer

 ul
 li
 first
 /li
 li
 second
 /li
 li
 third
 /li
 /ul

 If instead you get an error, or it inserts nil, then it means that our
 systems are somehow different with respect to that function, which is a
 slight alteration of `org-run-like-in-org-mode'.

 At that point you could try using something like

 (org-run-like-in-org-mode 'org-export-as-html)

 to export a non-html buffer to html, or you could also try starting up
 Emacs with the -Q option, then loading org-mime.el, opening an org-mode
 file, and calling org-mime-org-buffer-htmlize, and sending an email to
 yourself.

 Sorry I can't be of more help, I'm really mystified as to how this
 function could be returning nil.

 Best -- Eric

 Andrew Hyatt ahy...@gmail.com writes:

  Thanks for the response.  I upgraded, now I get a
 
  Debugger entered--Lisp error: (wrong-type-argument arrayp t)
   substring(t 33)
   (progn (insert org-mime-default-header) (insert body) (write-file
 tmp-file)
  (org-load-modules-maybe) (unless org-local-vars (setq org-local-vars
 ...))
  (substring (eval ...) (if ... ... 0)))
   (unwind-protect (progn (insert org-mime-default-header) (insert body)
  (write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars
 ...)
  (substring ... ...)) (and (buffer-name temp-buffer) (kill-buffer
  temp-buffer)))
   (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ...
  ... ... ... ... ...) (and ... ...)))
   (with-current-buffer temp-buffer (unwind-protect (progn ... ... ... ...
 ...
  ...) (and ... ...)))
   (let ((temp-buffer ...)) (with-current-buffer temp-buffer
 (unwind-protect
  ... ...)))
   (with-temp-buffer (insert org-mime-default-header) (insert body)
  (write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars
 (setq
  org-local-vars ...)) (substring (eval ...) (if ... ... 0)))
   (save-excursion (with-temp-buffer (insert org-mime-default-header)
 (insert
  body) (write-file tmp-file) (org-load-modules-maybe) (unless
 org-local-vars
  ...) (substring ... ...)))
   org-mime-org-export(org #(\nHTML test\n\n~foo~\n=bar=\n_baz_\n\n| 1 |
 2
  |\n| a | b |\n 0 1 (fontified t) 1 11 (fontified t) 11 12 (fontified t)
 12
  18 (fontified t) 18 24 (fontified t) 24 30 (fontified t) 30 31 (fontified
 t)
  31 40 (fontified t face (gnus-cite-1 message-cited-text)) 40 41
 (fontified
  t) 41 50 (fontified t face (gnus-cite-1 message-cited-text)) 50 51
  (fontified t)) /tmp/mail2522ZvL)
   (let* ((region-p ...) (html-start ...) (html-end ...) (raw-body ...)
  (tmp-file ...) (body ...) (org-export-skip-text-before-1st-heading nil)
  (org-export-htmlize-output-type ...) (org-export-preserve-breaks
  org-mime-preserve-breaks) (html-and-images ...) (html-images ...) (html
  ...)) (delete-region html-start html-end) (save-excursion (goto-char
  html-start) (insert ... ...)))
   org-mime-htmlize(nil)
   call-interactively(org-mime-htmlize record nil)
 
  I tried this with orgstruct-mode off and on, but it was the same error
  either way.  Earlier, before I got the latest version, I tried with
  orgstruct-mode on, and it successfull htmlized my mail. 

Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-14 Thread Eric Schulte
Hi Eric,

Thanks for the explicit feedback, it's very helpful.

Eric S Fraga ucec...@ucl.ac.uk writes:

[...]

 Interesting.  This fails for me:

 1. emacs -Q
 2. in *scratch*: set load path appropriately, (require 'org-install), 
 (require 'org-mime)
 3. visit org test buffer
 4. invoke org-mime-org-buffer-htmlize which fails with 

org-mime-file: Symbol's function definition is void: case

although the HTML has been created and pushed to the kill ring
according to the *Messages* buffer.

 5. so try (require 'cl)

Ah, thanks, I've added (require 'cl) to org-mime.el

 
 6. try org-mime-org-buffer-htmlize again and now there is no error but
 the output is:


I see the problem here, I've just pushed up a change to org-mime.el
which will ensure that your html mime alternative will no longer be nil.
However, you will continue to have t as your text alternative until
you ensure that you are loading the latest version of the core of
org-mode, as described in my recent email to Andrew.

Please let me know how this goes.

Best -- Eric


,
|#multipart type=alternative#part type=text/plain
| * Testing mime in org
| 
|   This file will provide a simple test for the new mime encoding and
|   exporting features in org-mode.
| 
|   The most interesting aspect may be the use of \(y = \sum_i^n x_i^2\)
|   and, please, see the figure:
| 
|   [[./mip.png]]
|   #part type=text/htmlnil#/multipart
|   #part type=image/png filename=/home/ucecesf/s/test/mip.png 
 id=_home_ucecesf_s_test_mip.png
|   #/part
`

 I hope some of this might help identify where the problem may lie?  I
 can obviously send you my full org environment if you wish. I'm also
 happy to debug the org-mime code directly if you give me some idea of
 where to look!

 Thanks,
 eric


___
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


Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-14 Thread Andrew Hyatt
Thanks! I  finally got it to work. I actually did have the latest code, but
my issue was that when I upgraded to the new org, I forgot to byte-compile
before I did M-x org-reload.

After I got your latest code, it all works now.  I'm looking forward to
using it!

On Wed, Apr 14, 2010 at 10:59 AM, Eric Schulte schulte.e...@gmail.comwrote:

 Hi Andrew,

 I started my emacs with the -Q option, and to my surprise I got the same
 error that you have described.  I've been able to hunt down the source
 of this problem, and it is an old version of org-export-as-org, which
 means that you are not loading the latest version of the core org-mode,
 but rather the version distributed with Emacs.

 This is what happened to me when I started with the -Q option and simple
 required org-install without first adding the path to the newer version
 of org-mode to my load path.

 An easy way to verify that this is the case is to call describe-function
 with C-h f org-export-as-org, then jump to the source-code of the
 function by pressing enter on the linked function name, and jumping down
 to the last 5 lines of the function definition.  If they don't look like


 (if (equal to-buffer 'string)
   (progn (setq str-ret (buffer-string))
  (kill-buffer (current-buffer))
  str-ret)
 (kill-buffer (current-buffer)))



 then you are still using an old version of Org-mode.  Hopefully once you
 are sync'd to the head of the org-mode repository this error will be
 fixed.

 Hope this helps, Best -- Eric

 Andrew Hyatt ahy...@gmail.com writes:

  I do get the same result you do.  Hopefully, I'll have some time tomorrow
 to
  look into the issue.  RIght now, though, my problem is not the nil, but
 the
  error I reported in my previous email.
 
  On Tue, Apr 13, 2010 at 8:57 PM, Eric Schulte schulte.e...@gmail.com
 wrote:
 
  So, for some reason the `org-mime-org-export' helper function is
  returning nil on your (and Eric's) machines.  Could you try evaluating
  (C-M-x) the following in your *scratch* buffer?
 
  (insert (org-mime-org-export html - first
  - second
  - third (make-temp-file quick-test)))
 
  When I execute the above it inserts the following into the scratch
  buffer
 
  ul
  li
  first
  /li
  li
  second
  /li
  li
  third
  /li
  /ul
 
  If instead you get an error, or it inserts nil, then it means that our
  systems are somehow different with respect to that function, which is a
  slight alteration of `org-run-like-in-org-mode'.
 
  At that point you could try using something like
 
  (org-run-like-in-org-mode 'org-export-as-html)
 
  to export a non-html buffer to html, or you could also try starting up
  Emacs with the -Q option, then loading org-mime.el, opening an org-mode
  file, and calling org-mime-org-buffer-htmlize, and sending an email to
  yourself.
 
  Sorry I can't be of more help, I'm really mystified as to how this
  function could be returning nil.
 
  Best -- Eric
 
  Andrew Hyatt ahy...@gmail.com writes:
 
   Thanks for the response.  I upgraded, now I get a
  
   Debugger entered--Lisp error: (wrong-type-argument arrayp t)
substring(t 33)
(progn (insert org-mime-default-header) (insert body) (write-file
  tmp-file)
   (org-load-modules-maybe) (unless org-local-vars (setq org-local-vars
  ...))
   (substring (eval ...) (if ... ... 0)))
(unwind-protect (progn (insert org-mime-default-header) (insert body)
   (write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars
  ...)
   (substring ... ...)) (and (buffer-name temp-buffer) (kill-buffer
   temp-buffer)))
(save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn
 ...
   ... ... ... ... ...) (and ... ...)))
(with-current-buffer temp-buffer (unwind-protect (progn ... ... ...
 ...
  ...
   ...) (and ... ...)))
(let ((temp-buffer ...)) (with-current-buffer temp-buffer
  (unwind-protect
   ... ...)))
(with-temp-buffer (insert org-mime-default-header) (insert body)
   (write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars
  (setq
   org-local-vars ...)) (substring (eval ...) (if ... ... 0)))
(save-excursion (with-temp-buffer (insert org-mime-default-header)
  (insert
   body) (write-file tmp-file) (org-load-modules-maybe) (unless
  org-local-vars
   ...) (substring ... ...)))
org-mime-org-export(org #(\nHTML test\n\n~foo~\n=bar=\n_baz_\n\n|
 1 |
  2
   |\n| a | b |\n 0 1 (fontified t) 1 11 (fontified t) 11 12 (fontified
 t)
  12
   18 (fontified t) 18 24 (fontified t) 24 30 (fontified t) 30 31
 (fontified
  t)
   31 40 (fontified t face (gnus-cite-1 message-cited-text)) 40 41
  (fontified
   t) 41 50 (fontified t face (gnus-cite-1 message-cited-text)) 50 51
   (fontified t)) /tmp/mail2522ZvL)
(let* ((region-p ...) (html-start ...) (html-end ...) (raw-body ...)
   (tmp-file ...) (body ...) (org-export-skip-text-before-1st-heading
 nil)
   (org-export-htmlize-output-type ...) (org-export-preserve-breaks
   org-mime-preserve-breaks) 

Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-14 Thread Eric S Fraga
On Wed, 14 Apr 2010 09:12:59 -0600, Eric Schulte schulte.e...@gmail.com 
wrote:
 
 Hi Eric,
 
 Thanks for the explicit feedback, it's very helpful.

You're very welcome!  It's the least I can do.

  6. try org-mime-org-buffer-htmlize again and now there is no error but
  the output is:
 
 
 I see the problem here, I've just pushed up a change to org-mime.el
 which will ensure that your html mime alternative will no longer be
 nil.

Thanks.   I've pulled and it now works better, in that the HTML
element is now not-nil.  However, it's not quite right and other
aspects are still not working.  I'm attaching three files: the original
org file I'm using to test the mime encoding, a small image used for
the test, and the resulting message I receive when I've sent the
result of mime exporting.

There are definitely problems in encoding images, whether one
explicitly linked to in the org file or one created for latex
equations.  Some (maybe all?) of the problems may be due to
Wanderlust.  I imagine you don't use WL so if there's any help I can
provide in debugging this combination, please let me know!

I do note that the text contents for the email created in the buffer
do differ from what I get when I explicitly insert attachments.

 However, you will continue to have t as your text alternative until
 you ensure that you are loading the latest version of the core of
 org-mode, as described in my recent email to Andrew.

I am most definitely *always* using the latest version!  Currently, I
have Org-mode version 6.35g (release_6.35g.48.g3102).

Thanks,
eric

* Testing mime in org

This file will provide a simple test for the new mime encoding and
exporting features in org-mode.

The most interesting aspect may be the use of \(\displaystyle y = \sum_i^n 
x_i^2\)
and, please, see the figure:

[[./mip.png]]
inline: mip.png

6128.eml
Description: Binary data
___
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


Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-14 Thread Eric Schulte
Eric S Fraga ucec...@ucl.ac.uk writes:

[...]

 Thanks.   I've pulled and it now works better, in that the HTML
 element is now not-nil.  However, it's not quite right and other
 aspects are still not working.  I'm attaching three files: the original
 org file I'm using to test the mime encoding, a small image used for
 the test, and the resulting message I receive when I've sent the
 result of mime exporting.

 There are definitely problems in encoding images, whether one
 explicitly linked to in the org file or one created for latex
 equations.  Some (maybe all?) of the problems may be due to
 Wanderlust.  I imagine you don't use WL so if there's any help I can
 provide in debugging this combination, please let me know!


Yes, there absolutely is something you can do to help.

I think you're right that my poor WL syntax is most likely the problem.
All of the WL specific syntax is in the `org-mime-file' and
`org-mime-multipart' functions.  To start could you try replace the
'semi portion of the case statement in `org-mime-multipart' with the
following (I'd paste the whole function but it'd break my outgoing gnus
email) the syntax here is updated based on a function from
http://www.emacswiki.org/emacs/WlFaq#toc10.

--8---cut here---start-8---
('semi (concat
-- alternative-{\n
-- [[text/plain]]\n plain
-- [[text/html]]\n  html
-- }-alternative\n))
--8---cut here---end---8---

That *should* fix the exportation of html portions w/o pictures, the WL
syntax in `org-mime-file' will need to be fixed for image attachments.


 I do note that the text contents for the email created in the buffer
 do differ from what I get when I explicitly insert attachments.


yes, hopefully once these are brought into line then org-mime will work
for WL as well as gnus.

Thanks -- Eric


___
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


Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-13 Thread Eric S Fraga
Eric,

I have been away a couple of weeks where I have avoided using email as
much as possible.  I have therefore come back to find this whole
incredible thread that has led to org-mime.  Very exciting!  Although
I'm not a big fan of html email in general, an easy to use mime
interface which allows me to embed equations easily is very welcome.

However, it doesn't appear to work very well for me, with org-mode
from git as of a couple of hours ago:

- GNU Emacs 23.1.1 (i486-pc-linux-gnu, GTK+ Version 2.18.2) of
  2009-11-02 on raven, modified by Debian

- Org-mode version 6.35g (release_6.35g.41.g9cfe)

- Wanderlust/2.15.9 (Almost Unreal)

What I get when I try your example, by copying your original org text
into my email buffer and invoking org-mime-htmlize, is:

,
| | - *tables*
|   | colname one | colname two |
|   |-+-|
|   |   1 |   1 |
|   |   2 |   4 |
|   |   3 |   9 | 
| 
| - *inline images* including latex equations $f(n) = n + \frac{1}{n}
|   \int_{0}^{n}{d_x f(x) + f(n - x)}$ and the results of ditaa blocks,
|   etc...
| 
|   #+begin_src ditaa :file blue.png :cmdline -r
|   +-+
|   | cBLU|
|   | |
|   |++
|   ||cPNK|
|   |||
|   +++
|   #+end_src
| 
| - *blockquotes*
|   #+begin_quote
| HTML e-mail is the use of a subset of HTML (often ill-defined) to
| provide formatting and semantic markup capabilities in e-mail that
| are not available with plain text. -- wikipedia
|   #+end_quote
| 
| - fontified *code blocks* (shown below)
| 
| - and *HTML character* conversion, like \forall character c s.t. \exists
|   h \in /HTML characters/ and c \equiv h, org-html-export of c results
|   in h
| 
| --; charset=US-ASCII

| | 

binRkJ8AWzno7.bin
Description: Binary data


binCrMS27xDLX.bin
Description: Binary data
___
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


Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-13 Thread Eric Schulte
So, for some reason the `org-mime-org-export' helper function is
returning nil on your (and Eric's) machines.  Could you try evaluating
(C-M-x) the following in your *scratch* buffer?

(insert (org-mime-org-export html - first
- second
- third (make-temp-file quick-test)))

When I execute the above it inserts the following into the scratch
buffer

ul
li
first
/li
li
second
/li
li
third
/li
/ul

If instead you get an error, or it inserts nil, then it means that our
systems are somehow different with respect to that function, which is a
slight alteration of `org-run-like-in-org-mode'.

At that point you could try using something like

(org-run-like-in-org-mode 'org-export-as-html)

to export a non-html buffer to html, or you could also try starting up
Emacs with the -Q option, then loading org-mime.el, opening an org-mode
file, and calling org-mime-org-buffer-htmlize, and sending an email to
yourself.

Sorry I can't be of more help, I'm really mystified as to how this
function could be returning nil.

Best -- Eric

Andrew Hyatt ahy...@gmail.com writes:

 Thanks for the response.  I upgraded, now I get a

 Debugger entered--Lisp error: (wrong-type-argument arrayp t)
  substring(t 33)
  (progn (insert org-mime-default-header) (insert body) (write-file tmp-file)
 (org-load-modules-maybe) (unless org-local-vars (setq org-local-vars ...))
 (substring (eval ...) (if ... ... 0)))
  (unwind-protect (progn (insert org-mime-default-header) (insert body)
 (write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars ...)
 (substring ... ...)) (and (buffer-name temp-buffer) (kill-buffer
 temp-buffer)))
  (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ...
 ... ... ... ... ...) (and ... ...)))
  (with-current-buffer temp-buffer (unwind-protect (progn ... ... ... ... ...
 ...) (and ... ...)))
  (let ((temp-buffer ...)) (with-current-buffer temp-buffer (unwind-protect
 ... ...)))
  (with-temp-buffer (insert org-mime-default-header) (insert body)
 (write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars (setq
 org-local-vars ...)) (substring (eval ...) (if ... ... 0)))
  (save-excursion (with-temp-buffer (insert org-mime-default-header) (insert
 body) (write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars
 ...) (substring ... ...)))
  org-mime-org-export(org #(\nHTML test\n\n~foo~\n=bar=\n_baz_\n\n| 1 | 2
 |\n| a | b |\n 0 1 (fontified t) 1 11 (fontified t) 11 12 (fontified t) 12
 18 (fontified t) 18 24 (fontified t) 24 30 (fontified t) 30 31 (fontified t)
 31 40 (fontified t face (gnus-cite-1 message-cited-text)) 40 41 (fontified
 t) 41 50 (fontified t face (gnus-cite-1 message-cited-text)) 50 51
 (fontified t)) /tmp/mail2522ZvL)
  (let* ((region-p ...) (html-start ...) (html-end ...) (raw-body ...)
 (tmp-file ...) (body ...) (org-export-skip-text-before-1st-heading nil)
 (org-export-htmlize-output-type ...) (org-export-preserve-breaks
 org-mime-preserve-breaks) (html-and-images ...) (html-images ...) (html
 ...)) (delete-region html-start html-end) (save-excursion (goto-char
 html-start) (insert ... ...)))
  org-mime-htmlize(nil)
  call-interactively(org-mime-htmlize record nil)

 I tried this with orgstruct-mode off and on, but it was the same error
 either way.  Earlier, before I got the latest version, I tried with
 orgstruct-mode on, and it successfull htmlized my mail. But, when I received
 it, the mail only contained the word nil.

 On Mon, Apr 12, 2010 at 1:22 PM, Eric Schulte schulte.e...@gmail.comwrote:

 Hi Andrew,

 Thanks for the report.  My guess is that somehow the call to
 org-export-as-html is erroring out because some org-mode variables
 aren't being set, maybe you don't have orgstruct-mode as a minor-mode in
 your email composition -- not that it's required, but that could be the
 difference between our setups which is causing you to see the bug and
 not me.

 I've changed the `org-mime-org-export' so it more closely mimics the
 `org-run-like-in-org-mode' wrapping function, which should hopefully fix
 this problem.  Please let me know either way, and if the problem
 persists we can try to figure out exactly which variable isn't being
 initialized.

 Thanks for the report! -- Eric

 Andrew Hyatt ahy...@gmail.com writes:

  This looks great.  However, I get an error on my test mail:
 
  This is should be HTML mode.
 
  ~foo~
  =bar=
  _baz_
 
  | Table | A |
  | 1 | 2 |
 
  On calling org-mime-htmlize
 
  Debugger entered--Lisp error: (wrong-type-argument stringp nil)
string-match(nil #(This is should be HTML mode. 0 28 (fontified t)))
byte-code(\304\211. \305\n \\203A
org-html-handle-time-stamps(#(This is should be HTML mode. 0 28
  (fontified t)))
byte-code( \203.
org-export-as-html(nil nil nil string t)
(let nil (org-export-as-html nil nil nil (quote string) t))
eval((let nil (org-export-as-html nil nil nil (quote string) t)))
(progn (insert org-mime-default-header) (insert body) (write-file
  tmp-file) (eval 

Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-13 Thread Eric Schulte
Hi Eric,

It looks like you're having the same issue as Andrew.  Could you try the
suggestions I put in the email to him and let me know the results?

Thanks -- Eric

Eric S Fraga ucec...@ucl.ac.uk writes:

 Eric,

 I have been away a couple of weeks where I have avoided using email as
 much as possible.  I have therefore come back to find this whole
 incredible thread that has led to org-mime.  Very exciting!  Although
 I'm not a big fan of html email in general, an easy to use mime
 interface which allows me to embed equations easily is very welcome.

 However, it doesn't appear to work very well for me, with org-mode
 from git as of a couple of hours ago:

 - GNU Emacs 23.1.1 (i486-pc-linux-gnu, GTK+ Version 2.18.2) of
   2009-11-02 on raven, modified by Debian

 - Org-mode version 6.35g (release_6.35g.41.g9cfe)

 - Wanderlust/2.15.9 (Almost Unreal)

 What I get when I try your example, by copying your original org text
 into my email buffer and invoking org-mime-htmlize, is:

 ,
 | | | 


___
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


Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-13 Thread Andrew Hyatt
I do get the same result you do.  Hopefully, I'll have some time tomorrow to
look into the issue.  RIght now, though, my problem is not the nil, but the
error I reported in my previous email.

On Tue, Apr 13, 2010 at 8:57 PM, Eric Schulte schulte.e...@gmail.comwrote:

 So, for some reason the `org-mime-org-export' helper function is
 returning nil on your (and Eric's) machines.  Could you try evaluating
 (C-M-x) the following in your *scratch* buffer?

 (insert (org-mime-org-export html - first
 - second
 - third (make-temp-file quick-test)))

 When I execute the above it inserts the following into the scratch
 buffer

 ul
 li
 first
 /li
 li
 second
 /li
 li
 third
 /li
 /ul

 If instead you get an error, or it inserts nil, then it means that our
 systems are somehow different with respect to that function, which is a
 slight alteration of `org-run-like-in-org-mode'.

 At that point you could try using something like

 (org-run-like-in-org-mode 'org-export-as-html)

 to export a non-html buffer to html, or you could also try starting up
 Emacs with the -Q option, then loading org-mime.el, opening an org-mode
 file, and calling org-mime-org-buffer-htmlize, and sending an email to
 yourself.

 Sorry I can't be of more help, I'm really mystified as to how this
 function could be returning nil.

 Best -- Eric

 Andrew Hyatt ahy...@gmail.com writes:

  Thanks for the response.  I upgraded, now I get a
 
  Debugger entered--Lisp error: (wrong-type-argument arrayp t)
   substring(t 33)
   (progn (insert org-mime-default-header) (insert body) (write-file
 tmp-file)
  (org-load-modules-maybe) (unless org-local-vars (setq org-local-vars
 ...))
  (substring (eval ...) (if ... ... 0)))
   (unwind-protect (progn (insert org-mime-default-header) (insert body)
  (write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars
 ...)
  (substring ... ...)) (and (buffer-name temp-buffer) (kill-buffer
  temp-buffer)))
   (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ...
  ... ... ... ... ...) (and ... ...)))
   (with-current-buffer temp-buffer (unwind-protect (progn ... ... ... ...
 ...
  ...) (and ... ...)))
   (let ((temp-buffer ...)) (with-current-buffer temp-buffer
 (unwind-protect
  ... ...)))
   (with-temp-buffer (insert org-mime-default-header) (insert body)
  (write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars
 (setq
  org-local-vars ...)) (substring (eval ...) (if ... ... 0)))
   (save-excursion (with-temp-buffer (insert org-mime-default-header)
 (insert
  body) (write-file tmp-file) (org-load-modules-maybe) (unless
 org-local-vars
  ...) (substring ... ...)))
   org-mime-org-export(org #(\nHTML test\n\n~foo~\n=bar=\n_baz_\n\n| 1 |
 2
  |\n| a | b |\n 0 1 (fontified t) 1 11 (fontified t) 11 12 (fontified t)
 12
  18 (fontified t) 18 24 (fontified t) 24 30 (fontified t) 30 31 (fontified
 t)
  31 40 (fontified t face (gnus-cite-1 message-cited-text)) 40 41
 (fontified
  t) 41 50 (fontified t face (gnus-cite-1 message-cited-text)) 50 51
  (fontified t)) /tmp/mail2522ZvL)
   (let* ((region-p ...) (html-start ...) (html-end ...) (raw-body ...)
  (tmp-file ...) (body ...) (org-export-skip-text-before-1st-heading nil)
  (org-export-htmlize-output-type ...) (org-export-preserve-breaks
  org-mime-preserve-breaks) (html-and-images ...) (html-images ...) (html
  ...)) (delete-region html-start html-end) (save-excursion (goto-char
  html-start) (insert ... ...)))
   org-mime-htmlize(nil)
   call-interactively(org-mime-htmlize record nil)
 
  I tried this with orgstruct-mode off and on, but it was the same error
  either way.  Earlier, before I got the latest version, I tried with
  orgstruct-mode on, and it successfull htmlized my mail. But, when I
 received
  it, the mail only contained the word nil.
 
  On Mon, Apr 12, 2010 at 1:22 PM, Eric Schulte schulte.e...@gmail.com
 wrote:
 
  Hi Andrew,
 
  Thanks for the report.  My guess is that somehow the call to
  org-export-as-html is erroring out because some org-mode variables
  aren't being set, maybe you don't have orgstruct-mode as a minor-mode in
  your email composition -- not that it's required, but that could be the
  difference between our setups which is causing you to see the bug and
  not me.
 
  I've changed the `org-mime-org-export' so it more closely mimics the
  `org-run-like-in-org-mode' wrapping function, which should hopefully fix
  this problem.  Please let me know either way, and if the problem
  persists we can try to figure out exactly which variable isn't being
  initialized.
 
  Thanks for the report! -- Eric
 
  Andrew Hyatt ahy...@gmail.com writes:
 
   This looks great.  However, I get an error on my test mail:
  
   This is should be HTML mode.
  
   ~foo~
   =bar=
   _baz_
  
   | Table | A |
   | 1 | 2 |
  
   On calling org-mime-htmlize
  
   Debugger entered--Lisp error: (wrong-type-argument stringp nil)
 string-match(nil #(This is should be HTML mode. 0 28 (fontified
 t)))
 

Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-12 Thread Andrew Hyatt
This looks great.  However, I get an error on my test mail:

This is should be HTML mode.

~foo~
=bar=
_baz_

| Table | A |
| 1 | 2 |

On calling org-mime-htmlize

Debugger entered--Lisp error: (wrong-type-argument stringp nil)
  string-match(nil #(This is should be HTML mode. 0 28 (fontified t)))
  byte-code(\304\211\305\n\\203A
  org-html-handle-time-stamps(#(This is should be HTML mode. 0 28
(fontified t)))
  byte-code(\203
  org-export-as-html(nil nil nil string t)
  (let nil (org-export-as-html nil nil nil (quote string) t))
  eval((let nil (org-export-as-html nil nil nil (quote string) t)))
  (progn (insert org-mime-default-header) (insert body) (write-file
tmp-file) (eval (list ... org-local-vars ...)))
  (unwind-protect (progn (insert org-mime-default-header) (insert body)
(write-file tmp-file) (eval ...)) (and (buffer-name temp-buffer)
(kill-buffer temp-buffer)))
  (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ...
... ... ...) (and ... ...)))
  (with-current-buffer temp-buffer (unwind-protect (progn ... ... ... ...)
(and ... ...)))
  (let ((temp-buffer ...)) (with-current-buffer temp-buffer (unwind-protect
... ...)))
  (with-temp-buffer (insert org-mime-default-header) (insert body)
(write-file tmp-file) (eval (list ... org-local-vars ...)))
  (save-excursion (with-temp-buffer (insert org-mime-default-header) (insert
body) (write-file tmp-file) (eval ...)))
  org-mime-org-export(html #(\nThis is should be HTML
mode.\n\n~foo~\n=bar=\n_baz_\n\n| Table | A |\n| 1 | 2 | \n\n-- \n 0 1
(fontified t) 1 42 (fontified t) 42 43 (fontified t) 43 44 (article-type
emphasis fontified t) 44 47 (fontified t) 47 48 (article-type emphasis
fontified t) 48 50 (fontified t) 50 63 (fontified t face (gnus-cite-1
message-cited-text)) 63 64 (fontified t) 64 78 (fontified t face
(gnus-cite-1 message-cited-text)) 78 79 (fontified t rear-nonsticky t) 79 80
(fontified t) 80 84 (fontified t)) /tmp/mail2522NRw)
  (org-mime-replace-images (org-mime-org-export html raw-body tmp-file)
tmp-file)
  (let* ((region-p ...) (html-start ...) (html-end ...) (raw-body ...)
(tmp-file ...) (body ...) (org-export-skip-text-before-1st-heading nil)
(org-export-htmlize-output-type ...) (org-export-preserve-breaks
org-mime-preserve-breaks) (html-and-images ...) (html-images ...) (html
...)) (delete-region html-start html-end) (save-excursion (goto-char
html-start) (insert ... ...)))
  org-mime-htmlize(nil)


On Fri, Apr 9, 2010 at 12:41 PM, Eric Schulte schulte.e...@gmail.comwrote:

 Announcing the addition of org-mime to the contrib directory of Org-mode

 this allows sending HTML email using org-mode including...


- *tables*   colname onecolname two  11 24 39
- *inline images* including latex equations [image: $f(n) = n +
\frac{1}{n} \int_{0}^{n}{d_x f(x) + f(n - x)}$] and the results of
ditaa blocks, etc…

 [image: blue.png]

- *blockquotes*

HTML e-mail is the use of a subset of HTML (often ill-defined) to
provide formatting and semantic markup capabilities in e-mail that are not
available with plain text. – wikipedia

 - fontified *code blocks* (shown below)
- and *HTML character* conversion, like ∀ character c s.t. ∃ h ∈ *HTML
characters* and c ≡ h, org-html-export of c results in h



 The original org-mode formatted plain text is included as a text/plain
 mime alternative to the generated html.

 Below find the org-mime export of the org-mime worg page which will be
 available at http://orgmode.org/worg/org-contrib/org-mime.php.

 Best -- Eric

 General

 org-mime can be used to send HTML email using Org-mode HTML export.

 This approximates a WYSiWYG HTML mail editor from within Emacs, and can be
 useful for sending tables, notified source code, and inline images in email.

   How to use it
  Setup

 org-mime exposes two functions
  `org-mime-htmlize' can be called from within a mail composition buffer to
 export either the entire buffer or just the active region to html, and embed
 the results into the buffer as a text/html mime section.

 org-mime-htmlize is an interactive Lisp function in `org-mime.el'.

 (org-mime-htmlize ARG)

 Export a portion of an email body composed using `mml-mode' to
 html using `org-mode'.  If called with an active region only
 export that region, otherwise export the entire body.

  `org-mime-org-buffer-htmlize' can be called from within an Org-mode
 buffer to export either the whole buffer or the narrowed subtree or active
 region to HTML, and open a new email buffer including the resulting HTML
 content as an embedded mime section.

 org-mime-org-buffer-htmlize is an interactive Lisp function in
 `org-mime.el'.

 (org-mime-org-buffer-htmlize)

 Export the current org-mode buffer to HTML using
 `org-export-as-html' and package the results into an email
 handling with appropriate MIME encoding.

  The following key bindings are suggested, which bind the C-c M-o key
 sequence to the appropriate org-mime function in both email 

Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-12 Thread Eric Schulte
Hi Andrew,

Thanks for the report.  My guess is that somehow the call to
org-export-as-html is erroring out because some org-mode variables
aren't being set, maybe you don't have orgstruct-mode as a minor-mode in
your email composition -- not that it's required, but that could be the
difference between our setups which is causing you to see the bug and
not me.

I've changed the `org-mime-org-export' so it more closely mimics the
`org-run-like-in-org-mode' wrapping function, which should hopefully fix
this problem.  Please let me know either way, and if the problem
persists we can try to figure out exactly which variable isn't being
initialized.

Thanks for the report! -- Eric

Andrew Hyatt ahy...@gmail.com writes:

 This looks great.  However, I get an error on my test mail:

 This is should be HTML mode.

 ~foo~
 =bar=
 _baz_

 | Table | A |
 | 1 | 2 |

 On calling org-mime-htmlize

 Debugger entered--Lisp error: (wrong-type-argument stringp nil)
   string-match(nil #(This is should be HTML mode. 0 28 (fontified t)))
   byte-code(\304\211.\305\n\\203A
   org-html-handle-time-stamps(#(This is should be HTML mode. 0 28
 (fontified t)))
   byte-code(\203.
   org-export-as-html(nil nil nil string t)
   (let nil (org-export-as-html nil nil nil (quote string) t))
   eval((let nil (org-export-as-html nil nil nil (quote string) t)))
   (progn (insert org-mime-default-header) (insert body) (write-file
 tmp-file) (eval (list ... org-local-vars ...)))
   (unwind-protect (progn (insert org-mime-default-header) (insert body)
 (write-file tmp-file) (eval ...)) (and (buffer-name temp-buffer)
 (kill-buffer temp-buffer)))
   (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ...
 ... ... ...) (and ... ...)))
   (with-current-buffer temp-buffer (unwind-protect (progn ... ... ... ...)
 (and ... ...)))
   (let ((temp-buffer ...)) (with-current-buffer temp-buffer (unwind-protect
 ... ...)))
   (with-temp-buffer (insert org-mime-default-header) (insert body)
 (write-file tmp-file) (eval (list ... org-local-vars ...)))
   (save-excursion (with-temp-buffer (insert org-mime-default-header) (insert
 body) (write-file tmp-file) (eval ...)))
   org-mime-org-export(html #(\nThis is should be HTML
 mode.\n\n~foo~\n=bar=\n_baz_\n\n| Table | A |\n| 1 | 2 | \n\n-- \n 0 1
 (fontified t) 1 42 (fontified t) 42 43 (fontified t) 43 44 (article-type
 emphasis fontified t) 44 47 (fontified t) 47 48 (article-type emphasis
 fontified t) 48 50 (fontified t) 50 63 (fontified t face (gnus-cite-1
 message-cited-text)) 63 64 (fontified t) 64 78 (fontified t face
 (gnus-cite-1 message-cited-text)) 78 79 (fontified t rear-nonsticky t) 79 80
 (fontified t) 80 84 (fontified t)) /tmp/mail2522NRw)
   (org-mime-replace-images (org-mime-org-export html raw-body tmp-file)
 tmp-file)
   (let* ((region-p ...) (html-start ...) (html-end ...) (raw-body ...)
 (tmp-file ...) (body ...) (org-export-skip-text-before-1st-heading nil)
 (org-export-htmlize-output-type ...) (org-export-preserve-breaks
 org-mime-preserve-breaks) (html-and-images ...) (html-images ...) (html
 ...)) (delete-region html-start html-end) (save-excursion (goto-char
 html-start) (insert ... ...)))
   org-mime-htmlize(nil)


 On Fri, Apr 9, 2010 at 12:41 PM, Eric Schulte schulte.e...@gmail.comwrote:

 Announcing the addition of org-mime to the contrib directory of Org-mode

 this allows sending HTML email using org-mode including...


- *tables*   colname onecolname two  11 24 39
- *inline images* including latex equations [image: $f(n) = n +
\frac{1}{n} \int_{0}^{n}{d_x f(x) + f(n - x)}$] and the results of
ditaa blocks, etc…

 [image: blue.png]

- *blockquotes*

HTML e-mail is the use of a subset of HTML (often ill-defined) to
provide formatting and semantic markup capabilities in e-mail that are not
available with plain text. – wikipedia

 - fontified *code blocks* (shown below)
- and *HTML character* conversion, like ∀ character c s.t. ∃ h ∈ *HTML
characters* and c ≡ h, org-html-export of c results in h



 The original org-mode formatted plain text is included as a text/plain
 mime alternative to the generated html.

 Below find the org-mime export of the org-mime worg page which will be
 available at http://orgmode.org/worg/org-contrib/org-mime.php.

 Best -- Eric

 General

 org-mime can be used to send HTML email using Org-mode HTML export.

 This approximates a WYSiWYG HTML mail editor from within Emacs, and can be
 useful for sending tables, notified source code, and inline images in email.

   How to use it
  Setup

 org-mime exposes two functions
  `org-mime-htmlize' can be called from within a mail composition buffer to
 export either the entire buffer or just the active region to html, and embed
 the results into the buffer as a text/html mime section.

 org-mime-htmlize is an interactive Lisp function in `org-mime.el'.

 (org-mime-htmlize ARG)

 Export a portion of an email body composed using `mml-mode' to
 

Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-12 Thread Andrew Hyatt
Thanks for the response.  I upgraded, now I get a

Debugger entered--Lisp error: (wrong-type-argument arrayp t)
 substring(t 33)
 (progn (insert org-mime-default-header) (insert body) (write-file tmp-file)
(org-load-modules-maybe) (unless org-local-vars (setq org-local-vars ...))
(substring (eval ...) (if ... ... 0)))
 (unwind-protect (progn (insert org-mime-default-header) (insert body)
(write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars ...)
(substring ... ...)) (and (buffer-name temp-buffer) (kill-buffer
temp-buffer)))
 (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ...
... ... ... ... ...) (and ... ...)))
 (with-current-buffer temp-buffer (unwind-protect (progn ... ... ... ... ...
...) (and ... ...)))
 (let ((temp-buffer ...)) (with-current-buffer temp-buffer (unwind-protect
... ...)))
 (with-temp-buffer (insert org-mime-default-header) (insert body)
(write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars (setq
org-local-vars ...)) (substring (eval ...) (if ... ... 0)))
 (save-excursion (with-temp-buffer (insert org-mime-default-header) (insert
body) (write-file tmp-file) (org-load-modules-maybe) (unless org-local-vars
...) (substring ... ...)))
 org-mime-org-export(org #(\nHTML test\n\n~foo~\n=bar=\n_baz_\n\n| 1 | 2
|\n| a | b |\n 0 1 (fontified t) 1 11 (fontified t) 11 12 (fontified t) 12
18 (fontified t) 18 24 (fontified t) 24 30 (fontified t) 30 31 (fontified t)
31 40 (fontified t face (gnus-cite-1 message-cited-text)) 40 41 (fontified
t) 41 50 (fontified t face (gnus-cite-1 message-cited-text)) 50 51
(fontified t)) /tmp/mail2522ZvL)
 (let* ((region-p ...) (html-start ...) (html-end ...) (raw-body ...)
(tmp-file ...) (body ...) (org-export-skip-text-before-1st-heading nil)
(org-export-htmlize-output-type ...) (org-export-preserve-breaks
org-mime-preserve-breaks) (html-and-images ...) (html-images ...) (html
...)) (delete-region html-start html-end) (save-excursion (goto-char
html-start) (insert ... ...)))
 org-mime-htmlize(nil)
 call-interactively(org-mime-htmlize record nil)

I tried this with orgstruct-mode off and on, but it was the same error
either way.  Earlier, before I got the latest version, I tried with
orgstruct-mode on, and it successfull htmlized my mail. But, when I received
it, the mail only contained the word nil.

On Mon, Apr 12, 2010 at 1:22 PM, Eric Schulte schulte.e...@gmail.comwrote:

 Hi Andrew,

 Thanks for the report.  My guess is that somehow the call to
 org-export-as-html is erroring out because some org-mode variables
 aren't being set, maybe you don't have orgstruct-mode as a minor-mode in
 your email composition -- not that it's required, but that could be the
 difference between our setups which is causing you to see the bug and
 not me.

 I've changed the `org-mime-org-export' so it more closely mimics the
 `org-run-like-in-org-mode' wrapping function, which should hopefully fix
 this problem.  Please let me know either way, and if the problem
 persists we can try to figure out exactly which variable isn't being
 initialized.

 Thanks for the report! -- Eric

 Andrew Hyatt ahy...@gmail.com writes:

  This looks great.  However, I get an error on my test mail:
 
  This is should be HTML mode.
 
  ~foo~
  =bar=
  _baz_
 
  | Table | A |
  | 1 | 2 |
 
  On calling org-mime-htmlize
 
  Debugger entered--Lisp error: (wrong-type-argument stringp nil)
string-match(nil #(This is should be HTML mode. 0 28 (fontified t)))
byte-code(\304\211. \305\n \\203A
org-html-handle-time-stamps(#(This is should be HTML mode. 0 28
  (fontified t)))
byte-code( \203.
org-export-as-html(nil nil nil string t)
(let nil (org-export-as-html nil nil nil (quote string) t))
eval((let nil (org-export-as-html nil nil nil (quote string) t)))
(progn (insert org-mime-default-header) (insert body) (write-file
  tmp-file) (eval (list ... org-local-vars ...)))
(unwind-protect (progn (insert org-mime-default-header) (insert body)
  (write-file tmp-file) (eval ...)) (and (buffer-name temp-buffer)
  (kill-buffer temp-buffer)))
(save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn
 ...
  ... ... ...) (and ... ...)))
(with-current-buffer temp-buffer (unwind-protect (progn ... ... ...
 ...)
  (and ... ...)))
(let ((temp-buffer ...)) (with-current-buffer temp-buffer
 (unwind-protect
  ... ...)))
(with-temp-buffer (insert org-mime-default-header) (insert body)
  (write-file tmp-file) (eval (list ... org-local-vars ...)))
(save-excursion (with-temp-buffer (insert org-mime-default-header)
 (insert
  body) (write-file tmp-file) (eval ...)))
org-mime-org-export(html #(\nThis is should be HTML
  mode.\n\n~foo~\n=bar=\n_baz_\n\n| Table | A |\n| 1 | 2 | \n\n-- \n 0
 1
  (fontified t) 1 42 (fontified t) 42 43 (fontified t) 43 44 (article-type
  emphasis fontified t) 44 47 (fontified t) 47 48 (article-type emphasis
  fontified t) 48 50 (fontified t) 50 63 (fontified t face (gnus-cite-1
  

Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-09 Thread Eric Schulte
Announcing the addition of org-mime to the contrib directory of Org-mode

this allows sending HTML email using org-mode including...
#+TITLE: NONE
#+OPTIONS: latex:t
- *tables*
  | colname one | colname two |
  |-+-|
  |   1 |   1 |
  |   2 |   4 |
  |   3 |   9 | 

- *inline images* including latex equations $f(n) = n + \frac{1}{n}
  \int_{0}^{n}{d_x f(x) + f(n - x)}$ and the results of ditaa blocks,
  etc...

  #+begin_src ditaa :file blue.png :cmdline -r
  +-+
  | cBLU|
  | |
  |++
  ||cPNK|
  |||
  +++
  #+end_src

- *blockquotes*
  #+begin_quote
HTML e-mail is the use of a subset of HTML (often ill-defined) to
provide formatting and semantic markup capabilities in e-mail that
are not available with plain text. -- wikipedia
  #+end_quote

- fontified *code blocks* (shown below)

- and *HTML character* conversion, like \forall character c s.t. \exists
  h \in /HTML characters/ and c \equiv h, org-html-export of c results
  in h
attachment: blue.pngattachment: mail78058-A_b023893fa20418a1525cad63accc444e9a8954d3.png
The original org-mode formatted plain text is included as a text/plain
mime alternative to the generated html.

Below find the org-mime export of the org-mime worg page which will be
available at http://orgmode.org/worg/org-contrib/org-mime.php.

Best -- Eric
#+TITLE: org-mime.el --- org html export for text/html MIME emails
#+OPTIONS:H:3 num:nil toc:3 \n:nil @:t ::t |:t ^:t -:t f:t *:t TeX:t 
LaTeX:t skip:nil d:(HIDE) tags:not-in-toc
#+STARTUP:align fold nodlcheck hidestars oddeven lognotestate
#+SEQ_TODO:   TODO(t) INPROGRESS(i) WAITING(w@) | DONE(d) CANCELED(c@)
#+TAGS:   Write(w) Update(u) Fix(f) Check(c) 
#+AUTHOR: Eric Schulte
#+EMAIL:  schulte.eric at gmail dot com
#+LANGUAGE:   en
#+PRIORITIES: A C B
#+CATEGORY:   worg

* General

=org-mime= can be used to send HTML email using Org-mode HTML export.

This approximates a WYSiWYG HTML mail editor from within Emacs, and
can be useful for sending tables, notified source code, and inline
images in email.

* How to use it

** Setup
=org-mime= exposes two functions

- `org-mime-htmlize' :: can be called from within a mail composition
 buffer to export either the entire buffer or just the active
 region to html, and embed the results into the buffer as a
 text/html mime section.
 : org-mime-htmlize is an interactive Lisp function in `org-mime.el'.
 : 
 : (org-mime-htmlize ARG)
 : 
 : Export a portion of an email body composed using `mml-mode' to
 : html using `org-mode'.  If called with an active region only
 : export that region, otherwise export the entire body.

- `org-mime-org-buffer-htmlize' :: can be called from within an
 Org-mode buffer to export either the whole buffer or the narrowed
 subtree or active region to HTML, and open a new email buffer
 including the resulting HTML content as an embedded mime section.
 : org-mime-org-buffer-htmlize is an interactive Lisp function in
 : `org-mime.el'.
 : 
 : (org-mime-org-buffer-htmlize)
 : 
 : Export the current org-mode buffer to HTML using
 : `org-export-as-html' and package the results into an email
 : handling with appropriate MIME encoding.

The following key bindings are suggested, which bind the =C-c M-o= key
sequence to the appropriate =org-mime= function in both email and
Org-mode buffers.
#+begin_src emacs-lisp
  (add-hook 'message-mode-hook
(lambda ()
  (local-set-key \C-c\M-o 'org-mime-htmlize)))
  
  (add-hook 'org-mode-hook
(lambda ()
  (local-set-key \C-c\M-o 'org-mime-org-buffer-htmlize)))
#+end_src

** CSS style customization
Email clients will often strip all global CSS from email messages.  In
the case of web-based email readers this is essential in order to
protect the CSS of the containing web site.  To ensure that your CSS
styles are rendered correctly they must be included in the actual body
of the elements to which they apply.

The `org-mime-html-hook' allows for the insertion of these important
CSS elements into the resulting HTML before mime encoding.  The
following are some possible uses of this hook.

- for those who use color themes with Dark backgrounds it is useful to
  set a dark background for all exported code blocks and example
  regions.  This can be accomplished with the following
  #+begin_src emacs-lisp
(add-hook 'org-mime-html-hook
  (lambda ()
(org-mime-change-element-style
 pre (format color: %s; background-color: %s; padding: 
0.5em;
   #E6E1DC #232323
  #+end_src
- the following can be used to nicely offset block quotes in email
  bodies
  #+begin_src emacs-lisp
(add-hook 'org-mime-html-hook
  (lambda ()
(org-mime-change-element-style
 

Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-09 Thread Matt Price
eric, this looks great --
On Fri, Apr 9, 2010 at 12:41 PM, Eric Schulte schulte.e...@gmail.comwrote:


   Setup

 org-mime exposes two functions
  `org-mime-htmlize' can be called from within a mail composition buffer to
 export either the entire buffer or just the active region to html, and embed
 the results into the buffer as a text/html mime section.

 org-mime-htmlize is an interactive Lisp function in `org-mime.el'.

 (org-mime-htmlize ARG)

 Export a portion of an email body composed using `mml-mode' to
 html using `org-mode'.  If called with an active region only
 export that region, otherwise export the entire body.

  `org-mime-org-buffer-htmlize' can be called from within an Org-mode
 buffer to export either the whole buffer or the narrowed subtree or active
 region to HTML, and open a new email buffer including the resulting HTML
 content as an embedded mime section.

 org-mime-org-buffer-htmlize is an interactive Lisp function in
 `org-mime.el'.

 (org-mime-org-buffer-htmlize)

 Export the current org-mode buffer to HTML using
 `org-export-as-html' and package the results into an email
 handling with appropriate MIME encoding.

  The following key bindings are suggested, which bind the C-c M-o key
 sequence to the appropriate org-mime function in both email and Org-mode
 buffers.

 (add-hook 'message-mode-hook
   (lambda ()
 (local-set-key \C-c\M-o 'org-mime-htmlize)))
 (add-hook 'org-mode-hook
   (lambda ()
 (local-set-key \C-c\M-o 'org-mime-org-buffer-htmlize)))


Just quickly -- so if I'm using wanderlust, will the resultant message still
be properly formatted?  I remember there was some discussion about the
separation syntax in different mailers but don'tremember how it turned out.
thanks for this -- man, does it look good in html!

matt
___
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


Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-09 Thread Eric Schulte
Matt Price mopto...@gmail.com writes:

 eric, this looks great --

Thanks

 Just quickly -- so if I'm using wanderlust, will the resultant message still
 be properly formatted?  I remember there was some discussion about the
 separation syntax in different mailers but don'tremember how it turned out.
 thanks for this -- man, does it look good in html!


Wanderlust should be supported, however there is not yet any VM
integration.  It should be easy to adjust the `org-mime-file' and
`org-mime-multipart' functions to add VM support.

Best -- Eric


 matt
 ___
 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


___
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


Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-09 Thread David Maus
Matt Price wrote:

Just quickly -- so if I'm using wanderlust, will the resultant
message still be properly formatted?

This depends *entirely on recipients environment*.  May be, may be
not.  Maybe the parts are displayed, maybe they are not:

http://s1.directupload.net/images/user/100402/plz64u4a.png
(second and fourth part NOT displayed)

Parts of the mail will be rendered as plain text, others as html.
Maybe different font sizes and shapes (plain text vs. html markup).
Maybe the recipient cannot display images at all.  Maybe recipient's
mail program explodes: Heck, there weren't even tests to see how
mailers other than Google webmail, GMX webmail (see above!), Gnus,
Wanderlust, Thunderbird and Outlook Express 6 cope with these
messages.

Just consider this: Messaging might be WYSIWYG

What *you* see is what *you* get

But not WYSIWRG

What *you* see is what *recipient* gets.

When communication with others it's all about WRGIWYM

What *recipient* gets is what *you* meant.

@Erik:

 Emacs is about giving users as much power and choice as possible,
 even if that amounts to given them enough rope to hang themselves.

Then please at least /tell/ users of org-mime that they might break
their necks while just using org-mime to bundle message parts
together.

 -- David

--
OpenPGP... 0x99ADB83B5A4478E6
Jabber dmj...@jabber.org
Email. dm...@ictsoc.de


pgpMyYSDtRCYm.pgp
Description: PGP signature
___
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


Re: [Orgmode] [ANN] org-mime -- using orgmode to send html mail?

2010-04-09 Thread Eric Schulte
David Maus dm...@ictsoc.de writes:

 Matt Price wrote:

Just quickly -- so if I'm using wanderlust, will the resultant
message still be properly formatted?


I think the question was if wanderlust mime encoding works correctly.  I
believe the answer here is yes, but I do not have a wanderlust install
and can't personally verify.



[...]

 @Erik:

 Emacs is about giving users as much power and choice as possible,
 even if that amounts to given them enough rope to hang themselves.

 Then please at least /tell/ users of org-mime that they might break
 their necks while just using org-mime to bundle message parts
 together.


I'll put a warning up on the org-mime page on Worg.  But again,
personally I don't think this is a big deal.

Best -- Eric


  -- David

 --
 OpenPGP... 0x99ADB83B5A4478E6
 Jabber dmj...@jabber.org
 Email. dm...@ictsoc.de
 ___
 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


___
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