emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* my-mini-table(something)
@ 2009-06-18  9:56 Stefan Vollmar
  2009-06-18 12:25 ` my-mini-table(something) Matthew Lundin
  0 siblings, 1 reply; 6+ messages in thread
From: Stefan Vollmar @ 2009-06-18  9:56 UTC (permalink / raw)
  To: emacs-orgmode

Hello,

we have used org-mode for creating HTML content for software  
documentation and it beats everything we have tried over the last  
couple of years hands down, excellent work!

For one project, I used several statements like this (simplified):

#+HTML: <table><tr><td><img src="./images/icon.png"/></ 
td><td<code>something</code></td></tr></table>

#+HTML: <table><tr><td><img src="./images/icon.png"/></ 
td><td<code>other</code></td></tr></table>

The result looks exactly the way we have planned it, however, ideally  
one would want to write:

\my-mini-table(something)
\my-mini-table(other)

(with a suitable syntax) in the org source, and this should only be  
expanded when exporting the document, so I never need to look at the  
HTML code (if I do not want to).

This is probably already possible with org-mode using the html-export- 
hook and a little Lisp function. Many thanks in advance for any hints!

Warm regards,
Stefan
-- 
Dr. Stefan Vollmar, Dipl.-Phys.
Max-Planck-Institut für neurologische Forschung
Gleuelerstr. 50, 50931 Köln, Germany
Tel.: +49-221-4726-213  FAX +49-221-4726-298
Tel.: +49-221-478-5713  Mobile: 0160-93874279
Email: vollmar@nf.mpg.de   http://www.nf.mpg.de

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: my-mini-table(something)
  2009-06-18  9:56 my-mini-table(something) Stefan Vollmar
@ 2009-06-18 12:25 ` Matthew Lundin
  2009-06-19  0:19   ` my-mini-table(something) Bastien
  0 siblings, 1 reply; 6+ messages in thread
From: Matthew Lundin @ 2009-06-18 12:25 UTC (permalink / raw)
  To: Stefan Vollmar; +Cc: emacs-orgmode

Hi Stefan,

Stefan Vollmar <vollmar@nf.mpg.de> writes:

> we have used org-mode for creating HTML content for software
> documentation and it beats everything we have tried over the last
> couple of years hands down, excellent work!
>
> For one project, I used several statements like this (simplified):
>
> #+HTML: <table><tr><td><img src="./images/icon.png"/></
> td><td<code>something</code></td></tr></table>
>
> #+HTML: <table><tr><td><img src="./images/icon.png"/></
> td><td<code>other</code></td></tr></table>
>
> The result looks exactly the way we have planned it, however, ideally
> one would want to write:
>
> \my-mini-table(something)
> \my-mini-table(other)
>
> (with a suitable syntax) in the org source, and this should only be
> expanded when exporting the document, so I never need to look at the
> HTML code (if I do not want to).

Perhaps the easiest way to do this would be to define a macro at the top
of your org file:

--8<---------------cut here---------------start------------->8---
#+MACRO: special-table #+HTML: <table><tr><td><img src="./images/icon.png"/></td><td<code>something</code></td></tr></table>
--8<---------------cut here---------------end--------------->8---

Then, any time you wanted the html snippet to appear in the export, you
could place the following in your org file:

{{{special-table}}}

During export this will be replaced by the definition above. (At first I
wasn't sure this would work because of the extra comment notation in the
macro definition, but I tested it and it seemed to work fine.)

For more information on macros, see

http://orgmode.org/org.html#Macro-replacement

Regards,
Matt

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Re: my-mini-table(something)
@ 2009-06-18 13:11 giovanni.ridolfi
  0 siblings, 0 replies; 6+ messages in thread
From: giovanni.ridolfi @ 2009-06-18 13:11 UTC (permalink / raw)
  To: emacs-orgmode, Stefan Vollmar, Carsten Dominik


--- Gio 18/6/09, Stefan Vollmar <vollmar@nf.mpg.de> ha scritto:
> #+MACRO is exactly what I was looking for.
> 
> (1) The release notes of 6.27 say:
> > Macro processing for export has been enhanced: 
> > - You can use arguments in a macro, for example 
> #+macro hello Greet the $1: Hello $1
> which is just what I had been hoping for! This important
> change has not yet made it into org.pdf of the 6.27a
> distribution. 

???? really ?????

at page 106 of the pdf version, that you can download from the site,
http://orgmode.org/org.pdf

I can read: "Macro replacement"!

> (2) The next logical step is to collect a number of useful
> macros in one include file. However, when I use
> #+INCLUDE: "./include.org"
> which contains the MACRO, the macro expansion does not work
> (if the same MACRO statements are part of the org-file where
> I use them, they work just fine), all other org content is
> included as expected. Is this is a bug?

I think this is a not, yet?, implemented feature ;-)

*Macro processing* is intended *for export* (release notes)
so, I think, Carsten considered only the macros in the 
current file/buffer.

cheers,
Giovanni




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Re: my-mini-table(something)
  2009-06-18 12:25 ` my-mini-table(something) Matthew Lundin
@ 2009-06-19  0:19   ` Bastien
  2009-06-19  6:06     ` Carsten Dominik
  0 siblings, 1 reply; 6+ messages in thread
From: Bastien @ 2009-06-19  0:19 UTC (permalink / raw)
  To: Matthew Lundin; +Cc: emacs-orgmode

Matthew Lundin <mdl@imapmail.org> writes:

> #+MACRO: special-table #+HTML: <table><tr><td><img src="./images/icon.png"/></td><td<code>something</code></td></tr></table>

Note that you can also use a variable in your macro:

#+MACRO: special-table #+HTML: <table><tr><td><img src="./images/icon.png"/></td><td<code>$1</code></td></tr></table>

{{{special-table(something)}}}

PS: this is not yet documented in the manual.

-- 
 Bastien

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Re: my-mini-table(something)
  2009-06-19  0:19   ` my-mini-table(something) Bastien
@ 2009-06-19  6:06     ` Carsten Dominik
  2009-06-19  9:44       ` Bastien
  0 siblings, 1 reply; 6+ messages in thread
From: Carsten Dominik @ 2009-06-19  6:06 UTC (permalink / raw)
  To: Bastien; +Cc: Matthew Lundin, emacs-orgmode


On Jun 19, 2009, at 2:19 AM, Bastien wrote:

> Matthew Lundin <mdl@imapmail.org> writes:
>
>> #+MACRO: special-table #+HTML: <table><tr><td><img src="./images/ 
>> icon.png"/></td><td<code>something</code></td></tr></table>
>
> Note that you can also use a variable in your macro:
>
> #+MACRO: special-table #+HTML: <table><tr><td><img src="./images/ 
> icon.png"/></td><td<code>$1</code></td></tr></table>
>
> {{{special-table(something)}}}
>
> PS: this is not yet documented in the manual.

It is now.  Thanks.

- Carsten

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Re: my-mini-table(something)
  2009-06-19  6:06     ` Carsten Dominik
@ 2009-06-19  9:44       ` Bastien
  0 siblings, 0 replies; 6+ messages in thread
From: Bastien @ 2009-06-19  9:44 UTC (permalink / raw)
  To: Carsten Dominik; +Cc: Matthew Lundin, emacs-orgmode

Carsten Dominik <carsten.dominik@gmail.com> writes:

>> PS: this is not yet documented in the manual.
>
> It is now.  Thanks.

Thanks :)

-- 
 Bastien

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2009-06-19  9:45 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-06-18  9:56 my-mini-table(something) Stefan Vollmar
2009-06-18 12:25 ` my-mini-table(something) Matthew Lundin
2009-06-19  0:19   ` my-mini-table(something) Bastien
2009-06-19  6:06     ` Carsten Dominik
2009-06-19  9:44       ` Bastien
  -- strict thread matches above, loose matches on Subject: below --
2009-06-18 13:11 giovanni.ridolfi

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).