emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* [PATCH]: Add header-args property to source block info
@ 2015-02-10  9:09 Rainer M Krug
  2015-02-10 13:39 ` [PATCH]: BUG fix and " Rainer M Krug
  2015-02-10 17:58 ` [PATCH]: " Charles C. Berry
  0 siblings, 2 replies; 14+ messages in thread
From: Rainer M Krug @ 2015-02-10  9:09 UTC (permalink / raw)
  To: emacs-orgmode


[-- Attachment #1.1: Type: text/plain, Size: 1971 bytes --]

Hi

Following a recent discussion (based on me forgetting a ":" when setting
the property :header-args), I added the output of the property
header-args to the output of org-babel-get-src-block-info to make
debugging easier. Before the function resulted in the following output
(using my faulty code block):

,----
| Lang: R
| Header Arguments:
| 	:cache		no
| 	:exports	both
| 	:hlines		no
| 	:noweb		no
| 	:results	code exports output replace
| 	:session	somename
| 	:tangle		no
| 
`----

One only saw that the property :results was not correct but not where it
came from.

Using the patched version, one gets the following:

,----
| Lang: R
| Properties:
| 	:header-args 	:exports both :results output exports code
| 	:header-args:R 	:session somename
| Header Arguments:
| 	:cache		no
| 	:exports	both
| 	:hlines		no
| 	:noweb		no
| 	:results	code exports output replace
| 	:session	somename
| 	:tangle		no
`----

Here one can clearly see that the property :header-args is not set
correctly and can easily trace it down in the original org file.

Also, actually seeing the property :header-args makes it easier to
understand the whole inheritance of header arguments and how header-args
and header-args+ interact. 

The same applir=es to the property :header-args:R (or any language
specific header-args:language property)

Cheers,

Rainer


Here is again the faulty org file which lead to the patch:

--8<---------------cut here---------------start------------->8---
#+PROPERTY: header-args:R :session somename
#+PROPERTY: header-args :exports both
#+PROPERTY: header-args+ :results output
* The bug
This file create an (possibly endless?) loop during export
* here exports both
#+begin_src R 
cat(13+14)
#+end_src

* and here only code
:PROPERTIES:
:header-args+: exports code
:END:
#+begin_src R 
paste(13+14)
#+end_src
--8<---------------cut here---------------end--------------->8---


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: Add :header-args to output --]
[-- Type: text/x-patch, Size: 759 bytes --]

diff --git a/lisp/ob-core.el b/lisp/ob-core.el
index ceda1aa..94a07f6 100644
--- a/lisp/ob-core.el
+++ b/lisp/ob-core.el
@@ -409,6 +409,10 @@ a window into the `org-babel-get-src-block-info' function."
 	      (header-args (nth 2 info)))
 	  (when name            (funcall printf "Name: %s\n"     name))
 	  (when lang            (funcall printf "Lang: %s\n"     lang))
+	  (funcall printf "Properties:\n")
+	  (funcall printf "\t:header-args \t%s\n" (org-entry-get (point) "header-args" t))
+	  (funcall printf "\t:header-args:%s \t%s\n" lang (org-entry-get (point) (concat "header-args:" lang) t))
+
 	  (when (funcall full switches) (funcall printf "Switches: %s\n" switches))
 	  (funcall printf "Header Arguments:\n")
 	  (dolist (pair (sort header-args

[-- Attachment #1.3: Type: text/plain, Size: 71 bytes --]


-- 
Rainer M. Krug
email: Rainer<at>krugs<dot>de
PGP: 0x0F52F982

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 494 bytes --]

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

end of thread, other threads:[~2015-02-13  9:51 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-02-10  9:09 [PATCH]: Add header-args property to source block info Rainer M Krug
2015-02-10 13:39 ` [PATCH]: BUG fix and " Rainer M Krug
2015-02-10 21:36   ` Nicolas Goaziou
2015-02-10 21:58     ` Rainer M Krug
2015-02-11 12:10       ` Alan Schmitt
2015-02-12  9:34         ` Rainer M Krug
2015-02-12  9:36       ` Rainer M Krug
2015-02-12 18:27         ` Charles C. Berry
2015-02-12 23:45         ` Nicolas Goaziou
2015-02-13  9:21           ` Rainer M Krug
2015-02-13  9:36             ` Sebastien Vauban
2015-02-13  9:51               ` Rainer M Krug
2015-02-10 17:58 ` [PATCH]: " Charles C. Berry
2015-02-10 20:54   ` Rainer M Krug

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).