Nicolas Goaziou <n.goaz...@gmail.com> writes: > Hello, > > Ezequiel Birman <stormwa...@espiga4.com.ar> writes: > >> Is it possible to write something like this with the new exporter? >> >> #+OPTIONS: (if (and (boundp 'org-export-current-backend) (eq >> org-export-current-backend 'e-beamer)) "H:1" "H:3") > > There is no `org-export-current-backend' in the new exporter. Besides, > what you want is the default behaviour (see `org-e-beamer-frame-level' > variable).
'backend' is in the scope of transcoding functions like inline-src-block. I am currently taking advantage of this, but it is a shortcut rather than a necessity. Is your advice "Don't do that" ? Chuck > >> From what I read in org-export.el the backend is stored in a plist, not >> sure how to get it's value when exporting. >> >> Or, maybe I need to write a filter function to be run from >> org-export-before-process-hook? > > Filters are different from hook. A function in a hook operates on an Org > buffer. A filter function operates either on a string in output syntax > or on the parse tree. > > If, for some reason, you want to modify export options "on the fly", you > could create a filter function for parse tree, and modify options plist > from it: > > #+begin_src emacs-lisp > (defun my-options-change-fun (tree backend info) > (when (org-export-derived-backend-p backend 'e-beamer) > (plist-put info :with-author nil)) > ;; Don't forget to return tree. > tree) > > (add-to-list 'org-export-filter-parse-tree-functions > 'my-options-change-fun) > #+end_src > > > Regards,