Hello Dario,
On 12 February 2013 17:09, Dario Hamidi <[email protected]> wrote:
>
> Hello Jonathan,
>
> > Using your patch as is would wrap the source blocks in both example and
> > verbatim blocks. If going with verbatim it would be better to remove all
> > references to @example/@end example.
>
> I don't understand where the problem lies with having a `@verbatim'
> within a `@example'. Could you maybe explain to me why this is
> problematic?
>
> Using both environments seems to achieve the goal of having an idented
> source block in the resulting info file without having to further
> process the source block before export.
>
> Consider exporting
>
> #+BEGIN_SRC sh
> function fails
> {
> echo "this causes an error with makeinfo"
> }
> #+END_SRC
>
> with only the verbatim environment:
>
> File: test.info, Node: Top, Up: (dir)
>
> Manual
> ******
>
> function fails
> {
> echo "this causes an error with makeinfo"
> }
>
> and with verbatim in example:
>
> File: test.info, Node: Top, Up: (dir)
>
> Manual
> ******
>
> function fails
> {
> echo "this causes an error with makeinfo"
> }
>
> > It should be possible to escape any braces or @ before inserting them
> into
> > the
> > example block to ensure there is no expansion.
>
> While it certainly is possible, it would also mean to properly escape
> *all* characters with a special meaning to TeX. I suppose that making
> text containing such characters visible in a document without having to
> escape them is what the verbatim environment is for.
>
> > The only differences in using @verbatim over escaping any characters in
> > @example are the following:
> > - Tabs are treated as tabs and not as single spaces
> > - The code block is not indented.
>
> Preserving whitespace seems like a good idea when displaying python
> source code or makefiles.
>
> Dario
>
I've implemented a fix for this that should resolve the issue. `@ { }` are
now
properly escaped before export within source blocks. I didn't wrap the one
block in the other since the issue also existed within lisp blocks (where
inserting a verbatim block within a lisp block would have likely caused
issues
had someone wanted to extract any @lisp code from the info file.
Regards,
Jon