Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail

2013-10-16 Thread Eric S Fraga
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

2013-10-16 Thread Eric S Fraga
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

2013-10-16 Thread Carsten Dominik
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

2013-10-16 Thread Rasmus

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

2013-10-16 Thread Carsten Dominik
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

2013-10-16 Thread Andreas Leha
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

2013-10-16 Thread Eric S Fraga
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

2013-10-16 Thread Eric S Fraga
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

2013-10-16 Thread Nicolas Goaziou
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



Re: [O] [bug] [exporter] Frame labels cause allowframebreaks option to fail

2013-10-15 Thread Eric S Fraga
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

2013-10-15 Thread Rasmus
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

2013-10-15 Thread Rasmus
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

2013-10-15 Thread Rasmus
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