From mboxrd@z Thu Jan 1 00:00:00 1970 From: Aaron Ecay Subject: Re: [PATCH] -for review- Tangling with variable transfer of variables Date: Thu, 19 Jun 2014 17:09:23 -0400 Message-ID: <87zjh8bo8s.fsf@gmail.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:38963) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WxjaK-0001Wp-Mm for emacs-orgmode@gnu.org; Thu, 19 Jun 2014 17:09:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WxjaJ-0004kf-7w for emacs-orgmode@gnu.org; Thu, 19 Jun 2014 17:09:28 -0400 Received: from mail-qc0-x22a.google.com ([2607:f8b0:400d:c01::22a]:44674) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WxjaJ-0004kJ-2T for emacs-orgmode@gnu.org; Thu, 19 Jun 2014 17:09:27 -0400 Received: by mail-qc0-f170.google.com with SMTP id l6so2799014qcy.1 for ; Thu, 19 Jun 2014 14:09:26 -0700 (PDT) In-Reply-To: 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: Rainer M Krug , emacs-orgmode@gnu.org Cc: Eric Schulte Hi Rainer, I have not tested the patch (I rarely use :var), but here are some comments from reading the patch. 2014ko ekainak 19an, Rainer M Krug-ek idatzi zuen: >=20 > Hi >=20 > This patch should fix the problem of tangling with variable transfer of > tables. It uses a textConection() instead of a file to transfer the > table. This results in variable transfer of variables in R, without > having to include additional files. >=20 > Hope this does not work only for me. >=20 > From f77e982e17909f2098974356c304bd29db04da79 Mon Sep 17 00:00:00 2001 > From: "Rainer M. Krug" > Date: Thu, 19 Jun 2014 22:03:46 +0200 > Subject: [PATCH] lisp/ob-R.el: Fix tangling with tables >=20 > * lisp/ob-R.el (org-babel-R-assign-elisp): Fix variable transfer of > tables by using text connections in R instead of files. Variable > transfer of tables does not depend on files anymore, i.e. works also > when tangling. The changelog comment should not be indented on the subsequent lines. I believe the standard is also to double-space after sentence-ending periods. > --- > lisp/ob-R.el | 13 ++++--------- > 1 file changed, 4 insertions(+), 9 deletions(-) >=20 > diff --git a/lisp/ob-R.el b/lisp/ob-R.el > index a3ae1ec..88f65f3 100644 > --- a/lisp/ob-R.el > +++ b/lisp/ob-R.el > @@ -190,25 +190,20 @@ This function is called by `org-babel-execute-src-b= lock'." > (if (listp value) > (let* ((lengths (mapcar 'length (org-remove-if-not 'sequencep valu= e))) > (max (if lengths (apply 'max lengths) 0)) > - (min (if lengths (apply 'min lengths) 0)) > - (transition-file (org-babel-temp-file "R-import-"))) > + (min (if lengths (apply 'min lengths) 0))) > ;; Ensure VALUE has an orgtbl structure (depth of at least 2). > (unless (listp (car value)) (setq value (list value))) > - (with-temp-file transition-file > - (insert > - (orgtbl-to-tsv value '(:fmt org-babel-R-quote-tsv-field)) > - "\n")) > - (let ((file (org-babel-process-file-name transition-file 'noquote)) > + (let ((file (orgtbl-to-tsv value '(:fmt org-babel-R-quote-tsv-field))) As a cosmetic issue, you might want to pick a different name for this variable now that it no longer holds a file name. > (header (if (or (eq (nth 1 value) 'hline) colnames-p) > "TRUE" "FALSE")) > (row-names (if rownames-p "1" "NULL"))) > (if (=3D max min) > - (format "%s <- read.table(\"%s\", > + (format "%s <- read.table(textConnection('%s'), This will fail if =E2=80=98file=E2=80=99 contains an apostrophe character. = I guess you need to escape apostrophes in =E2=80=98file=E2=80=99. HTH, --=20 Aaron Ecay