* Orgmode and Beamer
@ 2024-10-28 22:27 David Masterson
2024-10-28 23:57 ` Naresh Gurbuxani
2024-10-29 2:05 ` Leo Butler
0 siblings, 2 replies; 5+ messages in thread
From: David Masterson @ 2024-10-28 22:27 UTC (permalink / raw)
To: emacs-orgmode
Does anyone have a recommendation on how to structure an Org document
such that it can be exported to either Latex or Beamer? Suppose you have
a (small) thesis that you are writing and you want to generate Beamer
slides of a high-level view of the document, but also generate a PDF for
the whole document. I suppose you could break it into two files, but
then you'd have to copy (certain) changes from file to file. I was
wondering if it could be done with one file such that updates to the
master document are simultaneously reflected in the Beamer slides. Is
this going to involve liberal use of #+BEGIN...#+END blocks?
David Masterson
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Orgmode and Beamer
2024-10-28 22:27 Orgmode and Beamer David Masterson
@ 2024-10-28 23:57 ` Naresh Gurbuxani
2024-10-29 0:47 ` David Masterson
2024-10-29 2:05 ` Leo Butler
1 sibling, 1 reply; 5+ messages in thread
From: Naresh Gurbuxani @ 2024-10-28 23:57 UTC (permalink / raw)
To: David Masterson; +Cc: emacs-orgmode@gnu.org
Comment out one of these:
#+latex_class: article
#+latex_class: beamer
Sent from my iPhone
> On Oct 28, 2024, at 6:32 PM, David Masterson <dsmasterson92630@outlook.com> wrote:
>
> Does anyone have a recommendation on how to structure an Org document such that it can be exported to either Latex or Beamer? Suppose you have a (small) thesis that you are writing and you want to generate Beamer slides of a high-level view of the document, but also generate a PDF for the whole document. I suppose you could break it into two files, but then you'd have to copy (certain) changes from file to file. I was wondering if it could be done with one file such that updates to the master document are simultaneously reflected in the Beamer slides. Is this going to involve liberal use of #+BEGIN...#+END blocks?
>
> David Masterson
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Orgmode and Beamer
2024-10-28 23:57 ` Naresh Gurbuxani
@ 2024-10-29 0:47 ` David Masterson
0 siblings, 0 replies; 5+ messages in thread
From: David Masterson @ 2024-10-29 0:47 UTC (permalink / raw)
To: Naresh Gurbuxani; +Cc: emacs-orgmode@gnu.org
Ok. Can that be done based upon which export engine you choose --
ox-latex or ox-beamer? Example?
On 10/28/24 16:57, Naresh Gurbuxani wrote:
> Comment out one of these:
>
> #+latex_class: article
> #+latex_class: beamer
>
>
> Sent from my iPhone
>
>> On Oct 28, 2024, at 6:32 PM, David Masterson <dsmasterson92630@outlook.com> wrote:
>>
>> Does anyone have a recommendation on how to structure an Org document such that it can be exported to either Latex or Beamer? Suppose you have a (small) thesis that you are writing and you want to generate Beamer slides of a high-level view of the document, but also generate a PDF for the whole document. I suppose you could break it into two files, but then you'd have to copy (certain) changes from file to file. I was wondering if it could be done with one file such that updates to the master document are simultaneously reflected in the Beamer slides. Is this going to involve liberal use of #+BEGIN...#+END blocks?
>>
>> David Masterson
>>
>>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Orgmode and Beamer
2024-10-28 22:27 Orgmode and Beamer David Masterson
2024-10-28 23:57 ` Naresh Gurbuxani
@ 2024-10-29 2:05 ` Leo Butler
2024-10-29 3:38 ` David Masterson
1 sibling, 1 reply; 5+ messages in thread
From: Leo Butler @ 2024-10-29 2:05 UTC (permalink / raw)
To: David Masterson; +Cc: emacs-orgmode@gnu.org
[-- Attachment #1: Type: text/plain, Size: 1255 bytes --]
On Mon, Oct 28 2024, David Masterson <dsmasterson92630@outlook.com> wrote:
> Does anyone have a recommendation on how to structure an Org document
> such that it can be exported to either Latex or Beamer? Suppose you
> have a (small) thesis that you are writing and you want to generate
> Beamer slides of a high-level view of the document, but also generate
> a PDF for the whole document. I suppose you could break it into two
> files, but then you'd have to copy (certain) changes from file to
> file. I was wondering if it could be done with one file such that
> updates to the master document are simultaneously reflected in the
> Beamer slides. Is this going to involve liberal use of
> #+BEGIN...#+END blocks?
>
> David Masterson
>
>
I think I would add the tags
#+TAGS: beameronly latexonly noexport
and then define an elisp function that changes beameronly tags to
noexport when the export backend is latex and similar for latexonly.
Add that function to the `org-export-before-processing-functions' so it
gets executed before export begins.
Attached is an example.
Note that you likely would need to fiddle with conditionally loading
packages, depending on the export backend.
Best regards,
Leo
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: beamer-latex.org --]
[-- Type: text/x-org; name="beamer-latex.org", Size: 938 bytes --]
#+TITLE: LaTeX and Beamer
#+TAGS: beameronly(b) latexonly(l) noexport(n)
#+OPTIONS: tags:nil
* Code :noexport:
#+begin_src elisp
(defun ltb-org-export-filter (backend)
(let ((regex (cl-case backend
(latex ":beameronly:")
(beamer ":latexonly:")
(t nil))))
(when regex
(save-excursion
(goto-char (point-min))
(while (search-forward-regexp regex nil t)
(replace-match ":noexport:"))))))
(add-hook 'org-export-before-processing-functions 'ltb-org-export-filter)
#+end_src
* Some Beamer stuff :beameronly:
** Frame 1 :B_frame:
:PROPERTIES:
:BEAMER_env: frame
:END:
* Some LaTeX stuff :latexonly:
In the beginning, there was \TeX{}.
* Other stuff
The end
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Orgmode and Beamer
2024-10-29 2:05 ` Leo Butler
@ 2024-10-29 3:38 ` David Masterson
0 siblings, 0 replies; 5+ messages in thread
From: David Masterson @ 2024-10-29 3:38 UTC (permalink / raw)
To: Leo Butler; +Cc: emacs-orgmode@gnu.org
Thanks. That's what I was looking for. Didn't previously understand
the use of the :*only: tags.
On 10/28/24 19:05, Leo Butler wrote:
> On Mon, Oct 28 2024, David Masterson <dsmasterson92630@outlook.com> wrote:
>
>> Does anyone have a recommendation on how to structure an Org document
>> such that it can be exported to either Latex or Beamer? Suppose you
>> have a (small) thesis that you are writing and you want to generate
>> Beamer slides of a high-level view of the document, but also generate
>> a PDF for the whole document. I suppose you could break it into two
>> files, but then you'd have to copy (certain) changes from file to
>> file. I was wondering if it could be done with one file such that
>> updates to the master document are simultaneously reflected in the
>> Beamer slides. Is this going to involve liberal use of
>> #+BEGIN...#+END blocks?
>>
>> David Masterson
>>
>>
> I think I would add the tags
>
> #+TAGS: beameronly latexonly noexport
>
> and then define an elisp function that changes beameronly tags to
> noexport when the export backend is latex and similar for latexonly.
> Add that function to the `org-export-before-processing-functions' so it
> gets executed before export begins.
>
> Attached is an example.
>
> Note that you likely would need to fiddle with conditionally loading
> packages, depending on the export backend.
>
> Best regards,
> Leo
>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2024-10-29 3:39 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-28 22:27 Orgmode and Beamer David Masterson
2024-10-28 23:57 ` Naresh Gurbuxani
2024-10-29 0:47 ` David Masterson
2024-10-29 2:05 ` Leo Butler
2024-10-29 3:38 ` David Masterson
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).