Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Rasmus ras...@gmx.us writes: Eric S Fraga e.fr...@ucl.ac.uk writes: Hello, technically, I guess this is a bug in beamer and not in org's exporter. However, if I specify the =allowframebreaks= option for a frame, the exporter generates the following LaTeX code on beamer export: \begin{frame}[allowframebreaks,label=sec-1-1-1]{Some definitions} Interesting (I can reproduce here). Perhaps you should fill a bug report: https://bitbucket.org/rivanvx/beamer/wiki/Home Thanks for the confirmation. I will file a report. It is indeed a problem with beamer and not org but, for the time being, I have modified org (my copy) to avoid the problem as I need to generate my slides for lectures now... Also thanks for the other suggestions on how to filter the export. -- : Eric S Fraga (0xFFFCF67D), Emacs 24.3.50.1, Org release_8.2.1-84-g2829fd
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Eric S Fraga e.fr...@ucl.ac.uk writes: Rasmus ras...@gmx.us writes: Eric S Fraga e.fr...@ucl.ac.uk writes: Hello, technically, I guess this is a bug in beamer and not in org's exporter. However, if I specify the =allowframebreaks= option for a frame, the exporter generates the following LaTeX code on beamer export: \begin{frame}[allowframebreaks,label=sec-1-1-1]{Some definitions} Interesting (I can reproduce here). Perhaps you should fill a bug report: https://bitbucket.org/rivanvx/beamer/wiki/Home Thanks for the confirmation. I will file a report. It is indeed a problem with beamer and not org but, for the time being, I have modified org (my copy) to avoid the problem as I need to generate my slides for lectures now... Also thanks for the other suggestions on how to filter the export. To follow up on this, what is the benefit of automatically generating labels for frames? How can these be used? I mean, I have no way of knowing what the actual label is that is being generated. If I want to refer to a slide elsewhere, I will need to specify the label myself. I would be curious to know if anybody makes use of these automatic labels? If not, it may be simplest to apply the patch I posted yesterday which removes the automatic generation of frame labels. Of course, whether the label is automatically generated or specified by me, having a label still breaks beamer functionality when it comes to automatic frame breaks. I have filed a bug report for beamer on this, as you suggested. Thanks again, eric -- : Eric S Fraga (0xFFFCF67D), Emacs 24.3.50.1, Org release_8.2.1-100-gfb5003
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Hi Eric, I think ox-beamer will turn id: links, search links and custom-id lines into clickable references in beamer. I have not tried this myself, but looking at the code, this seems to be the case. Regards - Carsten On Oct 16, 2013, at 12:25 PM, Eric S Fraga e.fr...@ucl.ac.uk wrote: Eric S Fraga e.fr...@ucl.ac.uk writes: Rasmus ras...@gmx.us writes: Eric S Fraga e.fr...@ucl.ac.uk writes: Hello, technically, I guess this is a bug in beamer and not in org's exporter. However, if I specify the =allowframebreaks= option for a frame, the exporter generates the following LaTeX code on beamer export: \begin{frame}[allowframebreaks,label=sec-1-1-1]{Some definitions} Interesting (I can reproduce here). Perhaps you should fill a bug report: https://bitbucket.org/rivanvx/beamer/wiki/Home Thanks for the confirmation. I will file a report. It is indeed a problem with beamer and not org but, for the time being, I have modified org (my copy) to avoid the problem as I need to generate my slides for lectures now... Also thanks for the other suggestions on how to filter the export. To follow up on this, what is the benefit of automatically generating labels for frames? How can these be used? I mean, I have no way of knowing what the actual label is that is being generated. If I want to refer to a slide elsewhere, I will need to specify the label myself. I would be curious to know if anybody makes use of these automatic labels? If not, it may be simplest to apply the patch I posted yesterday which removes the automatic generation of frame labels. Of course, whether the label is automatically generated or specified by me, having a label still breaks beamer functionality when it comes to automatic frame breaks. I have filed a bug report for beamer on this, as you suggested. Thanks again, eric -- : Eric S Fraga (0xFFFCF67D), Emacs 24.3.50.1, Org release_8.2.1-100-gfb5003 signature.asc Description: Message signed with OpenPGP using GPGMail
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Eric writes: If not, it may be simplest to apply the patch I posted yesterday which removes the automatic generation of frame labels. Did you try the /second/ filter I posted? It should do what you want, but only break the frames that has the offending mark. Carsten Dominik drostekirs...@gmail.com writes: I think ox-beamer will turn id: links, search links and custom-id lines into clickable references in beamer. I have not tried this myself, but looking at the code, this seems to be the case. Correct, it seems. Check this example * test (require 'ox-beamer) * test 2 [[test]] Of course custom-id is better. –Rasmus -- Er du tosset for noge' lårt!
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
test, please ignore, may mailer is acting up. On Oct 16, 2013, at 12:25 PM, Eric S Fraga e.fr...@ucl.ac.uk wrote: Eric S Fraga e.fr...@ucl.ac.uk writes: Rasmus ras...@gmx.us writes: Eric S Fraga e.fr...@ucl.ac.uk writes: Hello, technically, I guess this is a bug in beamer and not in org's exporter. However, if I specify the =allowframebreaks= option for a frame, the exporter generates the following LaTeX code on beamer export: \begin{frame}[allowframebreaks,label=sec-1-1-1]{Some definitions} Interesting (I can reproduce here). Perhaps you should fill a bug report: https://bitbucket.org/rivanvx/beamer/wiki/Home Thanks for the confirmation. I will file a report. It is indeed a problem with beamer and not org but, for the time being, I have modified org (my copy) to avoid the problem as I need to generate my slides for lectures now... Also thanks for the other suggestions on how to filter the export. To follow up on this, what is the benefit of automatically generating labels for frames? How can these be used? I mean, I have no way of knowing what the actual label is that is being generated. If I want to refer to a slide elsewhere, I will need to specify the label myself. I would be curious to know if anybody makes use of these automatic labels? If not, it may be simplest to apply the patch I posted yesterday which removes the automatic generation of frame labels. Of course, whether the label is automatically generated or specified by me, having a label still breaks beamer functionality when it comes to automatic frame breaks. I have filed a bug report for beamer on this, as you suggested. Thanks again, eric -- : Eric S Fraga (0xFFFCF67D), Emacs 24.3.50.1, Org release_8.2.1-100-gfb5003 signature.asc Description: Message signed with OpenPGP using GPGMail
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Rasmus ras...@gmx.us writes: Eric writes: If not, it may be simplest to apply the patch I posted yesterday which removes the automatic generation of frame labels. Did you try the /second/ filter I posted? It should do what you want, but only break the frames that has the offending mark. Carsten Dominik drostekirs...@gmail.com writes: I think ox-beamer will turn id: links, search links and custom-id lines into clickable references in beamer. I have not tried this myself, but looking at the code, this seems to be the case. Correct, it seems. Check this example * test (require 'ox-beamer) * test 2 [[test]] Of course custom-id is better. –Rasmus Hi all, I had the same problem and :BEAMER_opt: allowframebreaks,label= (with an empty label) does the trick for me here. - Andreas
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Andreas Leha andreas.l...@med.uni-goettingen.de writes: [...] Hi all, I had the same problem and :BEAMER_opt: allowframebreaks,label= (with an empty label) does the trick for me here. Brilliant! This does work and doesn't require any filters or changes to org. Thanks. -- : Eric S Fraga (0xFFFCF67D), Emacs 24.3.50.1, Org release_8.2.1-100-gfb5003
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Carsten Dominik drostekirs...@gmail.com writes: Hi Eric, I think ox-beamer will turn id: links, search links and custom-id lines into clickable references in beamer. I have not tried this myself, but looking at the code, this seems to be the case. Indeed but I'm not sure what this has to do with automatic generation of labels of the form sec-1-1-1? I understand the benefit of user specified links, whichever way they are created. I just don't see the use case for automatic labelling. Or am I missing something really fundamental here? (with org, that is often the case as I think I maybe understand 5% of what it is capable of...) But now that an easy solution exists to get around the beamer bug, leaving the exporter as it stands is perfectly fine. Thanks again to all, eric -- : Eric S Fraga (0xFFFCF67D), Emacs 24.3.50.1, Org release_8.2.1-100-gfb5003
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Hello, Eric S Fraga e.fr...@ucl.ac.uk writes: Carsten Dominik drostekirs...@gmail.com writes: Hi Eric, I think ox-beamer will turn id: links, search links and custom-id lines into clickable references in beamer. I have not tried this myself, but looking at the code, this seems to be the case. Indeed but I'm not sure what this has to do with automatic generation of labels of the form sec-1-1-1? I understand the benefit of user specified links, whichever way they are created. I just don't see the use case for automatic labelling. Or am I missing something really fundamental here? (with org, that is often the case as I think I maybe understand 5% of what it is capable of...) If you don't label frames, internal links are broken, unless there's a way to refer to a frame without labelling it first. Regards, -- Nicolas Goaziou
[O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Hello, technically, I guess this is a bug in beamer and not in org's exporter. However, if I specify the =allowframebreaks= option for a frame, the exporter generates the following LaTeX code on beamer export: \begin{frame}[allowframebreaks,label=sec-1-1-1]{Some definitions} The label=sec-1-1-1 seems to make beamer ignore the allowframebreaks option. If I remove the label= directive from the options, everything works fine. Otherwise, the frame contents to not break over multiple frames. The question is: how can I tell the exporter to *not* generate label= directives? I have no need for these and, at the moment, I am having to edit the LaTeX source to get my slides done. Thanks, eric -- : Eric S Fraga (0xFFFCF67D), Emacs 24.3.50.1, Org release_8.2.1-100-gfb5003
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Eric S Fraga e.fr...@ucl.ac.uk writes: [...] The question is: how can I tell the exporter to *not* generate label= directives? I have no need for these and, at the moment, I am having to edit the LaTeX source to get my slides done. I found some time to look at the code and it appears that the automatic creation of labels for frames happens always. There is no customisation possible. As this problem is stopping me from generating the slides I need for my lectures *now*, I have removed the automatic label generation, leaving the possibility of user specified labels. A patch is attached in case this is of more general interest. A better solution would be to have a variable to be able to customise this behaviour, I imagine. Thanks, eric -- : Eric S Fraga (0xFFFCF67D), Emacs 24.3.50.1, Org release_8.2.1-86-gbe3dad From 8e841c8caa79707e098d691a44a90c9d9faff073 Mon Sep 17 00:00:00 2001 From: Eric S Fraga e.fr...@ucl.ac.uk Date: Tue, 15 Oct 2013 17:39:40 +0100 Subject: [PATCH] Removed automatic creation of labels for frames in beamer export * lisp/ox-beamer.el (org-beamer--format-frame) The options passed to the frame command will include only labels defined explicitly in the org file. Automatic labels will not be generated. It seems that labels prevent beamer from processing other options, allowframebreaks in particular. --- lisp/ox-beamer.el | 9 + 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/lisp/ox-beamer.el b/lisp/ox-beamer.el index 74d99ed..6410615 100644 --- a/lisp/ox-beamer.el +++ b/lisp/ox-beamer.el @@ -507,14 +507,7 @@ used as a communication channel. ;; them. (and (string-match ^\\[?\\(.*\\)\\]?$ beamer-opt) (match-string 1 beamer-opt)) - ,)) - ;; Provide an automatic label for the frame - ;; unless the user specified one. - (unless (and beamer-opt - (string-match \\(^\\|,\\)label= beamer-opt)) - (list - (format label=%s -(org-beamer--get-label headline info))) + ,) ;; Change options list into a string. (org-beamer--normalize-argument (mapconcat -- 1.8.1.2
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Eric S Fraga e.fr...@ucl.ac.uk writes: Hello, technically, I guess this is a bug in beamer and not in org's exporter. However, if I specify the =allowframebreaks= option for a frame, the exporter generates the following LaTeX code on beamer export: \begin{frame}[allowframebreaks,label=sec-1-1-1]{Some definitions} Interesting (I can reproduce here). Perhaps you should fill a bug report: https://bitbucket.org/rivanvx/beamer/wiki/Home (I couldn't find any references to this problem, but I didn't look very hard) The label=sec-1-1-1 seems to make beamer ignore the allowframebreaks option. If I remove the label= directive from the options, everything works fine. Otherwise, the frame contents to not break over multiple frames. The question is: how can I tell the exporter to *not* generate label= directives? I have no need for these and, at the moment, I am having to edit the LaTeX source to get my slides done. From a quick skim through ox-beamer I don't think you can disable it. I don't know that it generally makes sense to do this. You could use a regexp filter. Perhaps org-export-filter-headline-functions like this quick-and-dirty solution. * test :PROPERTIES: :BEAMER_opt: allowframebreaks :END: hest #+begin_src emacs-lisp (defun rasmus/condtionally-remove-label (headline backend info) condtionally remove label (if (and (org-export-derived-backend-p backend 'beamer) (string-match [.*?allowframebreaks.*?] headline)) (replace-regexp-in-string ,? ?label=[-sec0-9]+ headline) headline)) (add-to-list 'org-export-filter-headline-functions 'rasmus/condtionally-remove-label) #+end_src -- El Rey ha muerto. ¡Larga vida al Rey!
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Eric S Fraga e.fr...@ucl.ac.uk writes: A better solution would be to have a variable to be able to customise this behaviour, I imagine. Why? Labels are /usually/ completely harmless. Please open a bug report at Beamer's Bitbucket. –Rasmus -- I hear there's rumors on the, uh, Internets. . .
Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail
Rasmus ras...@gmx.us writes: #+begin_src emacs-lisp (defun rasmus/condtionally-remove-label (headline backend info) condtionally remove label (if (and (org-export-derived-backend-p backend 'beamer) (string-match [.*?allowframebreaks.*?] headline)) (replace-regexp-in-string ,? ?label=[-sec0-9]+ headline) headline)) (add-to-list 'org-export-filter-headline-functions 'rasmus/condtionally-remove-label) #+end_src That's pretty unstable, it turns out. Headlines encompass more in ox-beamer than how I remember them from ox-latex. Here's a better one as long as you don't use newlines (\n) in your headings. Are '\\' stil used for denoting subtitles in ox-beamer? * test :PROPERTIES: :BEAMER_opt: allowframebreaks :END: horses like allowframebreaks * on allowframebreaks cows #+begin_src emacs-lisp (defun rasmus/condtionally-remove-label (headline backend info) condtionally remove label (let* ((h (string-match \n headline)) (head (substring headline 0 h))) (if (and (org-export-derived-backend-p backend 'beamer) (string-match \\[.*?allowframebreaks.*?\\].*? head)) (concat (replace-regexp-in-string ,? ?label=[-sec0-9]+ head) \n (substring headline (1+ h))) headline))) (add-to-list 'org-export-filter-headline-functions 'rasmus/condtionally-remove-label) #+end_src –Rasmus -- The Kids call him Billy the Saint