emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Happily exporting LaTeX, now want to export to text and HTML, ca


From: Berry, Charles
Subject: Re: [O] Happily exporting LaTeX, now want to export to text and HTML, can't figure how to handle latex markup
Date: Wed, 2 Aug 2017 16:15:48 +0000

> On Aug 1, 2017, at 10:20 PM, Grant Rettke <address@hidden> wrote:
> 
> Good morning,
> 
> I'm happily exporting an Org-Mode document to LaTeX using the nifty
> `letterine' package. An example is attached. Writing using it has been
> so fun that naturally now I want to export it both to text and HTML.
> My source document looks like this for reference and all of this works
> fine:
> 
>> start
> #+TITLE: A Poem Title
> #+AUTHOR:
> #+DATE:
> #+OPTIONS: num:nil
> #+LATEX: \pagenumbering{gobble}
> 
> #+BEGIN_CENTER
> @@latex:\lettrine[lines=1]{T}{this}@@ is line 1.
> 
> @@latex:\lettrine[lines=1]{H}{ere}@@ is line 2.
> 
> @@latex:\lettrine[lines=1]{O}{ver}@@ there is line 3.
> #+END_CENTER
>> end
> 
> Now I'm left be wondering how I can using a single document and export
> it correctly to LaTeX, HTML and text. Here are some ideas I came up
> with:
> 
> - Write the same line two times, one for each exporter. Redundant but
> it would work.
> - Use a source block that takes a line of text, checks the type of
> exporter running, and returns an appropriate markup then on export it
> works right.
> - Maybe there is a macro for this?

Putting together a macro seems like the best option.  Recall that you can use 
elisp in macros by placing it between `(eval’ and `)', so the following emits 
“def’ in all but latex exports and “abc” for latex.

#+BEGIN_SRC emacs-lisp
(defun foo (a b) (if (eq 'latex org-export-current-backend) a b))
#+END_SRC


#+MACRO: bar (eval (foo $1 $2))


{{{bar("abc" "def")}}}

HTH,

Chuck


reply via email to

[Prev in Thread] Current Thread [Next in Thread]