Hi Rainer and Andreas, 2015ko urtarrilak 6an, Rainer M Krug-ek idatzi zuen: > What would definitely solve the issue is if the string containing the > tabs would use \t instead - but I have no idea how this could be > achieved easily.
This could be achieved by modifying the call to orgtbl-to-csv in org-babel-R-assign-elisp: diff --git i/lisp/ob-R.el w/lisp/ob-R.el index 6f76aa5..ec3f110 100644 --- i/lisp/ob-R.el +++ w/lisp/ob-R.el @@ -239,7 +239,10 @@ This function is called by `org-babel-execute-src-block'." (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))) - (let ((file (orgtbl-to-tsv value '(:fmt org-babel-R-quote-tsv-field))) + (let ((file (replace-regexp-in-string + "\t" "\\t" + (orgtbl-to-tsv value '(:raw t :fmt org-babel-R-quote-tsv-field)) + nil t)) (header (if (or (eq (nth 1 value) 'hline) colnames-p) "TRUE" "FALSE")) (row-names (if rownames-p "1" "NULL"))) (This is just a quick hack; if it works then the code should actually use orgtbl-to-generic to do the conversion in a single step.) > ,---- > | ... > | sep = \"\", ;;;;;<<<<<<<<< was before sep = \"\\t\" > | ... > `---- > > This will set the separator to "whitespace", i.e. "that is one or more > spaces, tabs, newlines or carriage returns" (from R help). This was the approach that Michael took in his original patch. It introduces new bugs related to the handling of quotes, though – see the “Details” section of ?scan in R for the gory details (beginning with “If ‘sep’ is the default”...). Andreas raised a bug a while ago that indicates to me that this code should switch to csv rather than a whitespace-delimited format. But there are lots of corner cases, and I have not had time to work on a patch that I am confident could cover them all. Andreas’s original report (also referenced earlier in this thread): http://news.gmane.org/find-root.php?message_id=olulhmmtei5.fsf%40med.uni%2dgoettingen.de Thanks, -- Aaron Ecay