From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rainer M Krug Subject: [PATCH]: Add header-args property to source block info Date: Tue, 10 Feb 2015 10:09:04 +0100 Message-ID: Mime-Version: 1.0 Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:57103) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YL6ot-0002Ik-A0 for emacs-orgmode@gnu.org; Tue, 10 Feb 2015 04:09:24 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YL6oo-0005id-8N for emacs-orgmode@gnu.org; Tue, 10 Feb 2015 04:09:23 -0500 Received: from plane.gmane.org ([80.91.229.3]:42308) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YL6oo-0005iR-0s for emacs-orgmode@gnu.org; Tue, 10 Feb 2015 04:09:18 -0500 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1YL6om-0003dc-Ug for emacs-orgmode@gnu.org; Tue, 10 Feb 2015 10:09:17 +0100 Received: from arn78-1-88-186-171-7.fbx.proxad.net ([88.186.171.7]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 10 Feb 2015 10:09:16 +0100 Received: from Rainer by arn78-1-88-186-171-7.fbx.proxad.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 10 Feb 2015 10:09:16 +0100 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org --==-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable 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 |=20 `---- 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.=20 The same applir=3Des 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: =2D-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=20 cat(13+14) #+end_src * and here only code :PROPERTIES: :header-args+: exports code :END: #+begin_src R=20 paste(13+14) #+end_src =2D-8<---------------cut here---------------end--------------->8--- --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=add-header-args-to-output.diff Content-Description: Add :header-args to output 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 --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable =2D-=20 Rainer M. Krug email: Rainerkrugsde PGP: 0x0F52F982 --=-=-=-- --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.22 (Darwin) iQEcBAEBAgAGBQJU2cq1AAoJENvXNx4PUvmCxfYH/37rZSOfnl9TMViANIaRb+uS FKpWPxVTR53lgTmww2TCwk8p1MbtXxD3lphyAcMkz6XYxmZCfZ+0YQHrSy+vvlLc Lj8zUy6bCAEUyde+gfa3C9/CQMlEmkTmRhjoHp7m3Ii+mqc47D+bcelTQi759Qzc P2b///a7CphfToSHUC3OMYEw8SeKx+teOMtECqhES5u8T/+DTCXO3n8hY1qwYZT8 FBPoMPUkTP5gP5bHWI6GXoTibNlCLLtUfML1v7biNGzVw//HRsZee/BtKLlwGOwY yjNKRzf93z3AzX+zh/LfB8kT2uw1W5uveX3z+AcXI5v4E82NKyfRYa+ZneMMJAk= =ziT1 -----END PGP SIGNATURE----- --==-=-=--