Re: [O] [export] Beamer frames containing lstlisting are no longer made fragile

2013-10-05 Thread Christoph LANGE
Hi Nicolas,

I'm sorry I hadn't got back to this email – didn't notice it because of
a filtering mistake on my side.

2013-09-14 15:33 Nicolas Goaziou:
 Christoph LANGE math.semantic@gmail.com writes:
 Still I think the following sentence in the documentation (section 12.5)
 is easy to misunderstand:

 `fragile' option is added automatically if it contains source code that
 uses any verbatim environment.

 What would you suggest instead?

Let me see; I'd first have to understand how this mechanism works.  I do
not think it works in the same was as the old exporter worked.  I.e. I
think the new mechanism does not automatically add [fragile] on, e.g.,
encountering the following:

#+LATEX: \begin{lstlisting}
#+LATEX: ...
#+LATEX: \end{lstlisting}

 I think it means that when I use a proper source block using
 #+BEGIN_SRC, the exporter automatically sets the [fragile] option as
 needed.

 It isn't just about source blocks, see `org-beamer-verbatim-elements'.

OK, I had checked this variable before, but I don't understand it.  The
documentation says List of element or object types producing verbatim
text.  I presume elements and objects refer to things in Org-mode,
from which LaTeX is only generated later in the export process.  And as
the only thing (element or object?) on the Org-mode side that
generates {lstlisting} environments is a SRC-BLOCK, there is probably no
way of teaching the exporter the pre-Org-8.0 behaviour explained above,
i.e. enabling [fragile] on encountering \begin{lstlisting}.

 Anyway, you told me how to make my legacy {lstlisting} environments
 work.  Is this approach, of manually setting BEAMER_OPT: fragile the
 preferred way whenever you have a listing in a non-standard language,
 where the {lstlisting} environment requires special arguments (e.g.
 morekeywords)?  Or is there some way of passing extra arguments into
 the {lstlisting} environment that is created from #+BEGIN_SRC?

 At the moment, the only way to pass extra arguments to lstlisting is
 using `org-latex-listings-options'. IOW, it isn't possible to set
 specific options for a given block.

 Though, it should be fairly easy to implement an :extra attribute for
 source blocks. E.g.,

   #+attr_latex: :extra key1=val1,key2=val2
   #+begin_src
   ...
   #+end_src

Such a feature would of course be nice to have.  But it doesn't have the
highest priority for me, as I managed to reuse my existing

#+LATEX: \begin{lstlisting}

code, and as I'm not currently planning to export these Org files to
anything else but LaTeX-Beamer.

Cheers,

Christoph

-- 
Christoph Lange, School of Computer Science, University of Birmingham
http://cs.bham.ac.uk/~langec/, Skype duke4701

→ Mathematics in Computer Science Special Issue on “Enabling Domain
  Experts to use Formalised Reasoning”; submission until 31 October.
  http://cs.bham.ac.uk/research/projects/formare/pubs/mcs-doform/



Re: [O] [export] Beamer frames containing lstlisting are no longer made fragile

2013-10-05 Thread Christoph LANGE
Hi Eric,

I'm sorry I hadn't got back to this email – didn't notice it because of
a filtering mistake on my side.

2013-09-16 08:51 Eric S Fraga:
 My intuition after browsing the Org source code and documentation is
 that I should now use #+BEGIN_SRC and that then everything will be
 handled automatically.  However the language of my listings is a
 non-standard one, which requires a lot of custom options to the
 lstlisting environment.

 Could anyone kindly point me to an example?

 I am not sure what it is you want an example of?

I was interested in an example of defining a new language, including
keywords and comment and string syntaxes etc., so that one can use it
with #+BEGIN_SRC and that the exporter (case 4 of (defun
org-latex-src-block) in ox-latex.el) will create the right
\lstset{...}\begin{lstlisting}...\end{lstlisting} output.  I presume it
boils down to adding a custom language to Babel, but that's something I
haven't done before.

 If it's how to
 configure lstlisting for a new language, here are two examples:

Thanks!  With this way I'm familiar.  In case it may be of interest to
anyone, I recently made public a LaTeX package with \lstdefinelanguage
settings for a lot of languages I am interested in (mainly from the
Semantic Web): https://github.com/clange/latex/blob/master/lstsemantic.sty.

Cheers,

Christoph

-- 
Christoph Lange, School of Computer Science, University of Birmingham
http://cs.bham.ac.uk/~langec/, Skype duke4701

→ Mathematics in Computer Science Special Issue on “Enabling Domain
  Experts to use Formalised Reasoning”; submission until 31 October.
  http://cs.bham.ac.uk/research/projects/formare/pubs/mcs-doform/



Re: [O] [export] Beamer frames containing lstlisting are no longer made fragile

2013-09-16 Thread Eric S Fraga
Christoph LANGE allegris...@gmail.com writes:

 Dear all,

 having created a number of Beamer presentations with the old exporter
 (Org version 7), I'm now working on the first Beamer presentation with
 the new exporter.

 Frames that contain an lstlisting environment are no longer made fragile
 automatically.  (Thus I'm not sure the documentation in manual section
 12.5 Beamer export is still correct, which says `fragile' option is
 added automatically if it contains source code that uses any verbatim
 environment.)

 My intuition after browsing the Org source code and documentation is
 that I should now use #+BEGIN_SRC and that then everything will be
 handled automatically.  However the language of my listings is a
 non-standard one, which requires a lot of custom options to the
 lstlisting environment.

 Could anyone kindly point me to an example?

I am not sure what it is you want an example of?  If it's how to
configure lstlisting for a new language, here are two examples:

#+latex_header: \lstdefinelanguage{gams}{
#+latex_header: keywords={all, positive, variable, variables, equation, 
equations, model,%
#+latex_header: minimizing, parameter, parameters, display, solve, using, /},
#+latex_header: sensitive=false,
#+latex_header: morecomment=[f]*,%
#+latex_header: morecomment=[s]{$ontext}{$offtext},
#+latex_header: morestring=[b],
#+latex_header: morestring=[b]'
#+latex_header: }

#+latex_header: \lstdefinelanguage{Maxima}{
#+latex_header: 
keywords={addrow,addcol,zeromatrix,ident,augcoefmatrix,ratsubst,diff,ev,tex,%
#+latex_header: with_stdout,nouns,express,depends,load,submatrix,div,grad,curl,%
#+latex_header: rootscontract,solve,part,assume,sqrt,integrate,abs,inf,exp},
#+latex_header: sensitive=true,
#+latex_header: comment=[n]{/*}{*/}
#+latex_header: }

HTH,
eric
-- 
: Eric S Fraga (0xFFFCF67D), Emacs 24.3.50.1, Org release_8.1.1-7-gaecdf5




Re: [O] [export] Beamer frames containing lstlisting are no longer made fragile

2013-09-14 Thread Christoph LANGE
Hi Nicolas,

2013-09-13 17:32 Nicolas Goaziou:
 If you're inserting the environment manually, Beamer export back-end
 will not be able to detect that a fragile option is required. In that
 case, you can also insert that option manually, by setting BEAMER_OPT
 property to fragile in the headline representing your frame:

 * My frame
   :PROPERTIES:
   :BEAMER_OPT: fragile
   :END:

Thanks, that works – indeed I should have tried this first, as the
documentation actually mentions it.

Still I think the following sentence in the documentation (section 12.5)
is easy to misunderstand:

`fragile' option is added automatically if it contains source code that
uses any verbatim environment.

I think it means that when I use a proper source block using
#+BEGIN_SRC, the exporter automatically sets the [fragile] option as
needed.  However the sentence could also be interpreted as reflecting
the behaviour of the old exporter, which indeed scanned the full _LaTeX_
source code (e.g. in #+BEGIN_LaTeX) for certain environments and then
set the [fragile] option.

Anyway, you told me how to make my legacy {lstlisting} environments
work.  Is this approach, of manually setting BEAMER_OPT: fragile the
preferred way whenever you have a listing in a non-standard language,
where the {lstlisting} environment requires special arguments (e.g.
morekeywords)?  Or is there some way of passing extra arguments into
the {lstlisting} environment that is created from #+BEGIN_SRC?

Cheers, and thanks in advance,

Christoph

-- 
Christoph Lange, School of Computer Science, University of Birmingham
http://cs.bham.ac.uk/~langec/, Skype duke4701

→ Mathematics in Computer Science Special Issue on “Enabling Domain
  Experts to use Formalised Reasoning”; submission until 31 October.
  http://cs.bham.ac.uk/research/projects/formare/pubs/mcs-doform/



Re: [O] [export] Beamer frames containing lstlisting are no longer made fragile

2013-09-14 Thread Nicolas Goaziou
Hello,

Christoph LANGE math.semantic@gmail.com writes:

 Still I think the following sentence in the documentation (section 12.5)
 is easy to misunderstand:

 `fragile' option is added automatically if it contains source code that
 uses any verbatim environment.

What would you suggest instead?

 I think it means that when I use a proper source block using
 #+BEGIN_SRC, the exporter automatically sets the [fragile] option as
 needed.

It isn't just about source blocks, see `org-beamer-verbatim-elements'.

 Anyway, you told me how to make my legacy {lstlisting} environments
 work.  Is this approach, of manually setting BEAMER_OPT: fragile the
 preferred way whenever you have a listing in a non-standard language,
 where the {lstlisting} environment requires special arguments (e.g.
 morekeywords)?  Or is there some way of passing extra arguments into
 the {lstlisting} environment that is created from #+BEGIN_SRC?

At the moment, the only way to pass extra arguments to lstlisting is
using `org-latex-listings-options'. IOW, it isn't possible to set
specific options for a given block.

Though, it should be fairly easy to implement an :extra attribute for
source blocks. E.g.,

  #+attr_latex: :extra key1=val1,key2=val2
  #+begin_src
  ...
  #+end_src


Regards,

-- 
Nicolas Goaziou



[O] [export] Beamer frames containing lstlisting are no longer made fragile

2013-09-14 Thread Christoph LANGE
Dear all,

having created a number of Beamer presentations with the old exporter
(Org version 7), I'm now working on the first Beamer presentation with
the new exporter.

Frames that contain an lstlisting environment are no longer made fragile
automatically.  (Thus I'm not sure the documentation in manual section
12.5 Beamer export is still correct, which says `fragile' option is
added automatically if it contains source code that uses any verbatim
environment.)

My intuition after browsing the Org source code and documentation is
that I should now use #+BEGIN_SRC and that then everything will be
handled automatically.  However the language of my listings is a
non-standard one, which requires a lot of custom options to the
lstlisting environment.

Could anyone kindly point me to an example?

Cheers, and thanks in advance,

Christoph

-- 
Christoph Lange-Bever, http://www.facebook.com/ch.lange, Skype duke4701



[O] [export] Beamer frames containing lstlisting are no longer made fragile

2013-09-13 Thread Christoph LANGE
Dear all,

having created a number of Beamer presentations with the old exporter
(Org version 7), I'm now working on the first Beamer presentation with
the new exporter.

Frames that contain an lstlisting environment are no longer made fragile
automatically.  (Thus I'm not sure the documentation in manual section
12.5 Beamer export is still correct, which says `fragile' option is
added automatically if it contains source code that uses any verbatim
environment.)

My intuition after browsing the Org source code and documentation is
that I should now use #+BEGIN_SRC and that then everything will be
handled automatically.  However the language of my listings is a
non-standard one, which requires a lot of custom options to the
lstlisting environment.

Could anyone kindly point me to an example?

Cheers, and thanks in advance,

Christoph

-- 
Christoph Lange, School of Computer Science, University of Birmingham
http://cs.bham.ac.uk/~langec/, Skype duke4701

→ Mathematics in Computer Science Special Issue on “Enabling Domain
  Experts to use Formalised Reasoning”; submission until 31 October.
  http://cs.bham.ac.uk/research/projects/formare/pubs/mcs-doform/



Re: [O] [export] Beamer frames containing lstlisting are no longer made fragile

2013-09-13 Thread Nicolas Goaziou
Hello,

Christoph LANGE math.semantic@gmail.com writes:

 Frames that contain an lstlisting environment are no longer made fragile
 automatically.  (Thus I'm not sure the documentation in manual section
 12.5 Beamer export is still correct, which says `fragile' option is
 added automatically if it contains source code that uses any verbatim
 environment.)

If you're inserting the environment manually, Beamer export back-end
will not be able to detect that a fragile option is required. In that
case, you can also insert that option manually, by setting BEAMER_OPT
property to fragile in the headline representing your frame:

* My frame
  :PROPERTIES:
  :BEAMER_OPT: fragile
  :END:


Regards,

-- 
Nicolas Goaziou