emacs org mode to beamer: how to do multicolumn text - emacs

I'm trying to display two columns of itemizes next to each other on a beamer document written in emacs org mode. For the export, I followed this tutorial: http://emacs-fu.blogspot.com/2009/10/writing-presentations-with-org-mode-and.html
I tried to include latex code in the document
\begin{columns}
\column{0.45\textwidth}
- topic
- subtopic
- sub
- topic
\column{0.45\textwidth}
- topic
- topic
\end{columns}
This put the columns next to each other as wanted, but the list inbetween was just plain text in a single line. As I use org mode to avoid writing all the latex code by hand, I tried a couple of tutorials.
They all suggested something like
*** list heading
:OPTIONS:
:BEAMER_col: 0.45
:END:
<content>
Which was completely ignored in my output. When I insert tags like :BCOL: after the heading, they get displayed as plain text on the resulting slides
When I moved the :END: down like this:
*** list heading
:OPTIONS:
:BEAMER_col: 0.45
<content>
:END:
then sometimes the headings got moved to columns. I'm not really sure what I'm doing wrong, if the tutorials are outdated, or if my emacs version is.
I don't have administrative access to the machine here, and don't think I can talk the admin into updating 1000+ machines just for my document ;-)
Other beamer environments like :BEAMER_env: block get ignored, too.
Emacs 23.4.1 (x86_64-pc-linux-gnu, GTK+ Version 2.24.10) of 2012-09-08 on trouble, modified by Debian
Thanks for your help.

The following does work for me (with Org 8).
* Slide
** Col left :BMCOL:
:PROPERTIES:
:BEAMER_col: 0.45
:END:
- topic
- subtopic
- sub
- topic
** Col right :BMCOL:
:PROPERTIES:
:BEAMER_col: 0.45
:END:
- topic
- topic
See http://screencast.com/t/snlR2ii0xTZ for the results.

And if you want to have the columns vertically aligned at the top, att :BEAMER_opt: [t], as in (use [T] if your columns include graphics):
* Slide
** Col left :BMCOL:
:PROPERTIES:
:BEAMER_col: 0.45
:BEAMER_opt: [t]
:END:
- topic
- subtopic
- sub
- topic
** Col right :BMCOL:
:PROPERTIES:
:BEAMER_col: 0.45
:BEAMER_opt: [t]
:END:
- topic
- topic

Related

Ignoring all org-mode headings to export beamer slides with no titles

I like presentation zen, where less is more. I would like to export my org-mode files as beamer slides, but have the heading title ignored so as not to position a title at the top left of the each slide.
I can do it on a per-slide basis with:
** My slide title
:PROPERTIES:
:BEAMER_ENV: fullframe
:END:
Is there a way of applying this rule to every slide, without having to add this :PROPERTIES: section beneath every heading in my org file?
Several answers were suggested on the org mode mailing list here.
The one solution that worked for me was to put the following line at the top of my org file:
#+LATEX_HEADER: \setbeamertemplate{frametitle}{}

How to add [t] option to column export to beamer in org-mode?

how do I tell org-mode to include the [t] option in a column in a beamer presentation?
I need the following exported code:
\begin{columns}
\begin{column}[t]{0.45\textwidth}
\begin{itemize}[<+->]
\item foo
\item bar
\end{itemize}
\end{column}
so far I have tried:
*** columna izq
:PROPERTIES:
:BEAMER_col: 0.45
:BEAMER_envargs: [t]
:END:
but it does not seem to work. I have checked http://orgmode.org/worg/exporters/beamer/ox-beamer.html but failed to find the solution.
Any tip?
Well ... using BEAMER_envargs is for the old exporter. BEAMER_opt should be
recognized by the new exporter.
You could be interested by my "refcard" (still work in progress, though), available on https://github.com/fniessen/refcard-org-beamer.

How can I repeat a beamer frame with Org-mode?

With Beamer frames can be repeated by labeling the frame that should be repeated such as
\begin{frame}[label=framelabel]
...
\end{frame}
and then using \againframe{framelabel} at the place where that frame is to be repeated.
How can this method be used with Org-mode's Beamer export? The label can obviously be added by putting it in BEAMER_envargs such as:
* Org-mode section
:PROPERTIES:
:BEAMER_envargs: [label=questions]
:END:
But there are two problems in using \againframe via Org-mode:
\againframe is placed badly both if it is placed under an Org-mode section and if it is put directly in an Org-mode section. The problem is that in the former case is that is is placed inside a frame when it should be placed between. The problem in the latter case is that it is placed inside \frametitle.
\againframe is either swallowed by Org-mode sections or it is marked as one. Both are poor logical representations of its function.
So is there some effective way of using \againframe with Beamer or is there some other way to repeat frames with Org-mode that I have overlooked?
I have already looked at http://lists.gnu.org/archive/html/emacs-orgmode/2011-05/msg00954.html in trying to work this out.
I am running Org-mode 7.6 in Emacs 23.3.1 and I use Beamer 3.13.
The current org-mode has support for againframe. Just create a frame and add the beamer option BEAMER_env = againframe to the corresponding section. Or use C-c C-b a to insert it if you initialized the beamer mode on org-startup.
More information can be found in the org-mode documentation.
An example is available in the original proposal of the syntax:
* section
** My frame title :B_frame:
:PROPERTIES:
:BEAMER_env: frame
:END:
Some text. Some text. Some text. Some text.
Some text. Some text. Some text. Some text.
** section :B_againframe:
:PROPERTIES:
:BEAMER_env: againframe
:BEAMER_act: 2
:BEAMER_ref: *My frame title
:END:
This section will create "\againframe<2>{sec-1-2}".
** Following frame
etc.
I don't think this is currently possible. The limitation lies in the tree structure of an org document. As far as I understood from your question, the \againframe{...} command basically repeats a slide as is. In org terms, that means the original tree used to generate the slide is repeated. Since the org document format doesn't let you have any content which is not part of a tree (other than the frontmatter/header at the top of a file), I believe this is not possible. This has been discussed on the mailing list a few times, from what I understood there are no plans to implement something like this.

How do I use overlay specifications for lists in org-mode's beamer export feature?

It seems like itemize lists are automatically generated in the beamer export for org-mode. I can specify things like <only#2> for things like blocks, but it seems like I have to write out an itemize list by hand if I want to use it with an item. For example, I expect to type this and see one list item at a time, but I don't, I see them all in one slide:
*** Test
**** one
:PROPERTIES:
:BEAMER_envargs: <only#+>
:END:
**** two
:PROPERTIES:
:BEAMER_envargs: <only#+>
:END:
**** three
:PROPERTIES:
:BEAMER_envargs: <only#+>
:END:
Also, it seems like I should be able to do:
*** Test
:PROPERTIES:
:BEAMER_envargs: [<only#+>]
:END:
- one
- two
- three
for the same effect, but I see the whole list. This doesn't work either:
*** Test
:PROPERTIES:
:BEAMER_envargs: [<only#+>]
:END:
**** one
**** two
**** three
What am I missing here?
The org-mode Info node has some extensive examples (at least in the most up to date development version).
The following minimal example should work exactly as you wish
#+LATEX_CLASS: beamer
* Section
*** Slide
List
#+ATTR_BEAMER: :overlay +-
- item 1
- item 2
Let me know if I misunderstood your request.

Adding up the item values in a list with Emacs/Org-Mode

Is it possible to add up values in a list so the value next to 'Items Total' is the sum of all the sum items? Something like -
* Items Total [10]
** Items 1 [1]
** Items 2 [5]
** Items 3 [4]
Or if you have some other way of get the sum of values in org-mode I'd be glad to hear it.
I think the only way to do that is using a table instead of a list. Tables let you perform complex math on columns/rows/etc and are basically a mini-spreadsheet.
There is another way to do it where you mention keep the index as a property and enable the column mode view. A typical part of my document would look like this
* Heading 1
:PROPERTIES:
:COLUMNS: %DURATION{+}
** Heading 2
SCHEDULED: <2011-05-02 Mon 10:00>
:PROPERTIES:
:PEOPLE: Shyam, Archana, Santosh
:DURATION: 2 hours
:END:
- Architecture Description
- Register Set Description
- Issues Discussion
** Heading 2 Part 1
SCHEDULED: <2011-05-02 Mon 10:00>
:PROPERTIES:
:PEOPLE: Shyam, Archana, Santosh
:DURATION: 4 hours
:END:
- Design and Architecture
- Issues Discussion
With the above section in an org mode buffer, C-c C-x C-c enables the Column view and you can see the DURATION property showing up the sum of the Durations for Heading2 and Heading2 Part 2 which is 6 hours.
More info here
http://orgmode.org/manual/Column-attributes.html#Column-attributes
Thanks
Shyam