diff --git a/etc/ORG-NEWS b/etc/ORG-NEWS index 7933a49fd..c0aaf88af 100644 --- a/etc/ORG-NEWS +++ b/etc/ORG-NEWS @@ -54,6 +54,10 @@ alternative was removed and there is no more a :use-xcolor options since now it's implicitly always true. ** New features +*** Handle overlay specification for notes in Beamer export + +This aligns Beamer notes with slide overlays. + *** Add a dispatcher command to insert dynamic blocks You can add dynamic block into ~org-dynamic-block-alist~ with function diff --git a/lisp/ox-beamer.el b/lisp/ox-beamer.el index 05894ffab..7811dd6b5 100644 --- a/lisp/ox-beamer.el +++ b/lisp/ox-beamer.el @@ -645,13 +645,22 @@ as a communication channel." contents)) ;; Case 4: HEADLINE is a note. ((member environment '("note" "noteNH")) - (format "\\note{%s}" - (concat (and (equal environment "note") - (concat - (org-export-data - (org-element-property :title headline) info) - "\n")) - (org-trim contents)))) + (concat "\\note" + ;; Overlay specification. + (let ((overlay (org-element-property :BEAMER_ACT headline))) + (when overlay + (org-beamer--normalize-argument + overlay + (if (string-match "\\`\\[.*\\]\\'" overlay) + 'defaction 'action)))) + (format "{%s}" + (concat (and (equal environment "note") + (concat + (org-export-data + (org-element-property :title headline) + info) + "\n")) + (org-trim contents))))) ;; Case 5: HEADLINE is a frame. ((= level frame-level) (org-beamer--format-frame headline contents info))