emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* [new exporter] two unexpected behaviours of an #+INCLUDEd #+call
@ 2012-10-18 15:07 Myles English
  2012-10-22 12:10 ` Myles English
  2012-10-28 15:27 ` Nicolas Goaziou
  0 siblings, 2 replies; 4+ messages in thread
From: Myles English @ 2012-10-18 15:07 UTC (permalink / raw)
  To: Emacs-orgmode


Hi,

I think there is a bug here.

Given the situation below, I would expect that the block named xxx
would never be evaluated:

#--------------------- file b.org -------------------
#+TITLE:     b.org
#+EXPORT_SELECT_TAGS: export
#+EXPORT_EXCLUDE_TAGS: noexport

* A heading            	   :noexport:

#+INCLUDE: "c.org"

#--------------------- file c.org -------------------
* A Heading in c.org
#+name: xxx
#+BEGIN_SRC sh
echo "Evaluated" > c.out
#+END_SRC

#+call: xxx()

#----------------------------------------------------

And maybe it isn't evaluated but the call is still processed to some
extent upon latex export:

#+BEGIN_SRC sh :shebang "#!/usr/bin/env bash" :tangle eval_bug.sh
emacs -Q --batch --eval "(progn
               (add-to-list 'load-path
                 (expand-file-name \"./lisp/\"))
               (add-to-list 'load-path
                 (expand-file-name \"./contrib/lisp/\" t))
               (require 'org-e-latex)
               (org-babel-do-load-languages
                'org-babel-load-languages
                '((sh . t)))
               (find-file \"b.org\")
               (org-e-latex-export-to-latex))"
#+END_SRC

 $ ./eval_bug.sh
Loading /home/myles/.emacs.d/plugins/org-mode/lisp/org-loaddefs.el (source)...
OVERVIEW
Loading vc-git...
OVERVIEW
OVERVIEW
Reference 'xxx' not found in this buffer

Removing the :noexport: results in the same message as above, removing
the #+call causes c.org to be included but even adding these line to the
batch function above will not cause the block to be evaluated
(i.e. there is no c.out written):

(setq org-confirm-babel-evaluate nil)
(setq org-export-babel-evaluate t)

This is with Org-mode version 7.9.2 (release_7.9.2-454-g949709 @
/home/myles/.emacs.d/plugins/org-mode/lisp/).

Thanks,

Myles

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

* Re: [new exporter] two unexpected behaviours of an #+INCLUDEd #+call
  2012-10-18 15:07 [new exporter] two unexpected behaviours of an #+INCLUDEd #+call Myles English
@ 2012-10-22 12:10 ` Myles English
  2012-10-22 17:04   ` Nicolas Goaziou
  2012-10-28 15:27 ` Nicolas Goaziou
  1 sibling, 1 reply; 4+ messages in thread
From: Myles English @ 2012-10-22 12:10 UTC (permalink / raw)
  To: Emacs-orgmode


Myles English writes:

> Hi,
>
> I think there is a bug here.

Just adding some evidence: similar behaviour was reported in this
thread:

http://lists.gnu.org/archive/html/emacs-orgmode/2012-09/msg00634.html

Myles

>
>
> Given the situation below, I would expect that the block named xxx
> would never be evaluated:
>
> #--------------------- file b.org -------------------
> #+TITLE:     b.org
> #+EXPORT_SELECT_TAGS: export
> #+EXPORT_EXCLUDE_TAGS: noexport
>
> * A heading            	   :noexport:
>
> #+INCLUDE: "c.org"
>
> #--------------------- file c.org -------------------
> * A Heading in c.org
> #+name: xxx
> #+BEGIN_SRC sh
> echo "Evaluated" > c.out
> #+END_SRC
>
> #+call: xxx()
>
> #----------------------------------------------------
>
> And maybe it isn't evaluated but the call is still processed to some
> extent upon latex export:
>
> #+BEGIN_SRC sh :shebang "#!/usr/bin/env bash" :tangle eval_bug.sh
> emacs -Q --batch --eval "(progn
>                (add-to-list 'load-path
>                  (expand-file-name \"./lisp/\"))
>                (add-to-list 'load-path
>                  (expand-file-name \"./contrib/lisp/\" t))
>                (require 'org-e-latex)
>                (org-babel-do-load-languages
>                 'org-babel-load-languages
>                 '((sh . t)))
>                (find-file \"b.org\")
>                (org-e-latex-export-to-latex))"
> #+END_SRC
>
>  $ ./eval_bug.sh
> Loading /home/myles/.emacs.d/plugins/org-mode/lisp/org-loaddefs.el (source)...
> OVERVIEW
> Loading vc-git...
> OVERVIEW
> OVERVIEW
> Reference 'xxx' not found in this buffer
>
> Removing the :noexport: results in the same message as above, removing
> the #+call causes c.org to be included but even adding these line to the
> batch function above will not cause the block to be evaluated
> (i.e. there is no c.out written):
>
> (setq org-confirm-babel-evaluate nil)
> (setq org-export-babel-evaluate t)
>
> This is with Org-mode version 7.9.2 (release_7.9.2-454-g949709 @
> /home/myles/.emacs.d/plugins/org-mode/lisp/).
>
> Thanks,
>
> Myles

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

* Re: [new exporter] two unexpected behaviours of an #+INCLUDEd #+call
  2012-10-22 12:10 ` Myles English
@ 2012-10-22 17:04   ` Nicolas Goaziou
  0 siblings, 0 replies; 4+ messages in thread
From: Nicolas Goaziou @ 2012-10-22 17:04 UTC (permalink / raw)
  To: Myles English; +Cc: Emacs-orgmode

Hello,

"Myles English" <mylesenglish@gmail.com> writes:

> Just adding some evidence: similar behaviour was reported in this
> thread:
>
> http://lists.gnu.org/archive/html/emacs-orgmode/2012-09/msg00634.html

Yes, I'm working on it on my spare time but it requires some
modifications to Babel core, so I'm advancing slowly.

Thanks for the report, btw.


Regards,

-- 
Nicolas Goaziou

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

* Re: [new exporter] two unexpected behaviours of an #+INCLUDEd #+call
  2012-10-18 15:07 [new exporter] two unexpected behaviours of an #+INCLUDEd #+call Myles English
  2012-10-22 12:10 ` Myles English
@ 2012-10-28 15:27 ` Nicolas Goaziou
  1 sibling, 0 replies; 4+ messages in thread
From: Nicolas Goaziou @ 2012-10-28 15:27 UTC (permalink / raw)
  To: Myles English; +Cc: Emacs-orgmode

Hello,

"Myles English" <mylesenglish@gmail.com> writes:

> Given the situation below, I would expect that the block named xxx
> would never be evaluated:
>
> #--------------------- file b.org -------------------
> #+TITLE:     b.org
> #+EXPORT_SELECT_TAGS: export
> #+EXPORT_EXCLUDE_TAGS: noexport
>
> * A heading            	   :noexport:
>
> #+INCLUDE: "c.org"
>
> #--------------------- file c.org -------------------
> * A Heading in c.org
> #+name: xxx
> #+BEGIN_SRC sh
> echo "Evaluated" > c.out #+END_SRC
>
> #+call: xxx()
>
> #----------------------------------------------------

:noexport: doesn't mean Babel blocks within shouldn't be evaluated. It
just means contents will eventually be ignored.

> And maybe it isn't evaluated but the call is still processed to some
> extent upon latex export:
>
> #+BEGIN_SRC sh :shebang "#!/usr/bin/env bash" :tangle eval_bug.sh
> emacs -Q --batch --eval "(progn
>                (add-to-list 'load-path
>                  (expand-file-name \"./lisp/\"))
>                (add-to-list 'load-path
>                  (expand-file-name \"./contrib/lisp/\" t))
>                (require 'org-e-latex)
>                (org-babel-do-load-languages
>                 'org-babel-load-languages
>                 '((sh . t)))
>                (find-file \"b.org\")
>                (org-e-latex-export-to-latex))"
> #+END_SRC
>
>  $ ./eval_bug.sh
> Loading /home/myles/.emacs.d/plugins/org-mode/lisp/org-loaddefs.el (source)...
> OVERVIEW
> Loading vc-git...
> OVERVIEW
> OVERVIEW
> Reference 'xxx' not found in this buffer
>
> Removing the :noexport: results in the same message as above, removing
> the #+call causes c.org to be included but even adding these line to the
> batch function above will not cause the block to be evaluated
> (i.e. there is no c.out written):

This should be fixed in master. Thank you for the report.


Regards,

-- 
Nicolas Goaziou

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

end of thread, other threads:[~2012-10-28 15:30 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-10-18 15:07 [new exporter] two unexpected behaviours of an #+INCLUDEd #+call Myles English
2012-10-22 12:10 ` Myles English
2012-10-22 17:04   ` Nicolas Goaziou
2012-10-28 15:27 ` 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).