emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* [bug?][ox-beamer] hyperref crashes when options are specified
@ 2014-05-28 14:06 Rasmus
  2014-05-28 15:44 ` Nicolas Goaziou
  0 siblings, 1 reply; 4+ messages in thread
From: Rasmus @ 2014-05-28 14:06 UTC (permalink / raw)
  To: emacs-orgmode

Hi,

If you give hyperref options when exporting to Beamer it will
typically crash.

I load hyperref as follows to make it compatible with "exotic"
headlines in XeLaTeX:

  (setq org-latex-default-packages-alist
        '(("" "iftex" nil)
          ("" "fixltx2e" nil)
          ("AUTO" "inputenc" t)
          ("T1" "fontenc" t)
          ("AUTO" "babel" nil)
          ("" "scrpage2" nil)
          ("" "graphicx" t)
          ("" "amsmath" t)
          ("" "amssymb" t)
          ("" "booktabs" t)
          ("" "marvosym" t)
          ("" "microtype" nil)
          ("" "slantsc" nil)
          ("unicode, psdextra,hidelinks" "hyperref" nil)))

Because Beamer loads hyperref automatically this will crash.  The
correct way to load it is through the document class options, e.g.

     \documentclass[hyperref={unicode, psdextra,hidelinks}]{beamer}

Should ox-beamer automatically move the options in this case?
Unfortunately, it seems that I cannot directly modify the latex
package alist via a parse tree filter, which would have been the
easiest.

Alternatively, I could write a LaTeX hack using \@ifclassloaded or
using the final filter to move things around before compilation.

Thanks,
Rasmus

-- 
May the Force be with you

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [bug?][ox-beamer] hyperref crashes when options are specified
  2014-05-28 14:06 [bug?][ox-beamer] hyperref crashes when options are specified Rasmus
@ 2014-05-28 15:44 ` Nicolas Goaziou
  2014-05-28 16:47   ` Rasmus
  0 siblings, 1 reply; 4+ messages in thread
From: Nicolas Goaziou @ 2014-05-28 15:44 UTC (permalink / raw)
  To: Rasmus; +Cc: emacs-orgmode

Hello,

Rasmus <rasmus@gmx.us> writes:

> If you give hyperref options when exporting to Beamer it will
> typically crash.
>
> I load hyperref as follows to make it compatible with "exotic"
> headlines in XeLaTeX:
>
>   (setq org-latex-default-packages-alist
>         '(("" "iftex" nil)
>           ("" "fixltx2e" nil)
>           ("AUTO" "inputenc" t)
>           ("T1" "fontenc" t)
>           ("AUTO" "babel" nil)
>           ("" "scrpage2" nil)
>           ("" "graphicx" t)
>           ("" "amsmath" t)
>           ("" "amssymb" t)
>           ("" "booktabs" t)
>           ("" "marvosym" t)
>           ("" "microtype" nil)
>           ("" "slantsc" nil)
>           ("unicode, psdextra,hidelinks" "hyperref" nil)))
>
> Because Beamer loads hyperref automatically this will crash.  The
> correct way to load it is through the document class options, e.g.
>
>      \documentclass[hyperref={unicode, psdextra,hidelinks}]{beamer}
>
> Should ox-beamer automatically move the options in this case?

No, it shoudn't. This crash is not really Org's fault.

You could define an appropriate class for `beamer' back-end instead.


Regards,

-- 
Nicolas Goaziou

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [bug?][ox-beamer] hyperref crashes when options are specified
  2014-05-28 15:44 ` Nicolas Goaziou
@ 2014-05-28 16:47   ` Rasmus
  2014-05-28 17:33     ` Nicolas Goaziou
  0 siblings, 1 reply; 4+ messages in thread
From: Rasmus @ 2014-05-28 16:47 UTC (permalink / raw)
  To: emacs-orgmode

Hi,

Nicolas Goaziou <n.goaziou@gmail.com> writes:

> Hello,
>
> Rasmus <rasmus@gmx.us> writes:
>
>> If you give hyperref options when exporting to Beamer it will
>> typically crash.
>>
>> I load hyperref as follows to make it compatible with "exotic"
>> headlines in XeLaTeX:
>>
>>   (setq org-latex-default-packages-alist
>>         '(("" "iftex" nil)
>>           ("" "fixltx2e" nil)
>>           ("AUTO" "inputenc" t)
>>           ("T1" "fontenc" t)
>>           ("AUTO" "babel" nil)
>>           ("" "scrpage2" nil)
>>           ("" "graphicx" t)
>>           ("" "amsmath" t)
>>           ("" "amssymb" t)
>>           ("" "booktabs" t)
>>           ("" "marvosym" t)
>>           ("" "microtype" nil)
>>           ("" "slantsc" nil)
>>           ("unicode, psdextra,hidelinks" "hyperref" nil)))
>>
>> Because Beamer loads hyperref automatically this will crash.  The
>> correct way to load it is through the document class options, e.g.
>>
>>      \documentclass[hyperref={unicode, psdextra,hidelinks}]{beamer}
>>
>> Should ox-beamer automatically move the options in this case?
>
> No, it shoudn't. This crash is not really Org's fault.

Customizing an Org package alist, Org inserts code that is invalid in
a Beamer context.

> You could define an appropriate class for `beamer' back-end instead.

Org-latex-classes gives me access to [NO-DEFAULT-PACKAGES].  Not
removing a single element from it as far as I understand.  Or am i
mistaken?

IMO, a wrapper around the header like org-latex-guess-babel-language
would be better, but I don't have strong opinions on this.

—Rasmus

-- 
Dung makes an excellent fertilizer

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [bug?][ox-beamer] hyperref crashes when options are specified
  2014-05-28 16:47   ` Rasmus
@ 2014-05-28 17:33     ` Nicolas Goaziou
  0 siblings, 0 replies; 4+ messages in thread
From: Nicolas Goaziou @ 2014-05-28 17:33 UTC (permalink / raw)
  To: Rasmus; +Cc: emacs-orgmode

Rasmus <rasmus@gmx.us> writes:

> Customizing an Org package alist, Org inserts code that is invalid in
> a Beamer context.

Code generated is valid and conform to expectations, but, unfortunately,
incompatible with "beamer" class.

>> You could define an appropriate class for `beamer' back-end instead.
>
> Org-latex-classes gives me access to [NO-DEFAULT-PACKAGES].  Not
> removing a single element from it as far as I understand.  Or am i
> mistaken?

You probably shouldn't add this package to default header in the first
place. `org-latex-packages-alist' is a better place.

Anyway, yes, you need to remove all packages/default-packages first in
your dedicated "beamer" class.

> IMO, a wrapper around the header like org-latex-guess-babel-language
> would be better, but I don't have strong opinions on this.

Again, we shouldn't try to start fixing incompatibilities between
packages and classes, or between packages in Org. Your configuration is
broken, not Org.


Regards,

-- 
Nicolas Goaziou

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-05-28 17:32 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-28 14:06 [bug?][ox-beamer] hyperref crashes when options are specified Rasmus
2014-05-28 15:44 ` Nicolas Goaziou
2014-05-28 16:47   ` Rasmus
2014-05-28 17:33     ` Nicolas Goaziou

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).