John Hendy <jw.he...@gmail.com> wrote: > > I think the magic for latex headers happens in org-infile-export-plist: > > but the function has not been told about #+BEAMER_* stuff, so it'll need > > the addition of a few more cases to handle the beamer stuff. > > > Great. Thanks for checking into this. I don't know how to fix it, so > I'll simply stick to #+latex_header, as this is working fine at the > moment. It's interesting that #+beamer_ options work from the file > itself, but not from the setupfile, considering it sounds like all the > setupfile line does it treat the contents as if it's in the file > itself. Something's getting lost in there. > >
org-infile-export-plist parses the current buffer and takes care of #+SETUPFILE: options (even recursive ones). It constructs an options property list and returns it. The latex exporter stashes it into org-export-latex-options-plist which is then consulted by the exporter (in all cases, including the beamer case). The trouble is that org-infile-export-plist does not know about #+BEAMER_HEADER_EXTRA or #+BEAMER_FRAME_LEVEL, so it does not put them in the plist it returns. It is a trivial thing to add them however: they are exactly analogous to LATEX_HEADER and LATEX_CLASS options, both of which org-infile-export-plist handles fine. Nick