Browse Source

Removing all support for hlines/colnames -- they persist in branch rowcolnames. Also removing comments.

Dan Davison 16 years ago
parent
commit
f6452b272a
1 changed files with 7 additions and 33 deletions
  1. 7 33
      lisp/org-babel-R.el

+ 7 - 33
lisp/org-babel-R.el

@@ -62,16 +62,14 @@ R process in `org-babel-R-buffer'."
   (unless org-babel-R-buffer (error "No active R buffer"))
   (org-babel-R-input-command
    (if (listp value)
-       (let ((transition-file (make-temp-file "org-babel-R-import"))
-	     has-header)
+       (let ((transition-file (make-temp-file "org-babel-R-import")))
 	 ;; ensure VALUE has an orgtbl structure (depth of at least 2)
 	 (unless (listp (car value)) (setq value (list value)))
-	 (setq has-header (and (symbolp (cadr value)) (equal (cadr value) 'hline)))
 	 (with-temp-file transition-file
 	   (insert (orgtbl-to-tsv value '(:fmt org-babel-R-quote-tsv-field)))
 	   (insert "\n"))
-	 (format "%s <- read.table(\"%s\", header=%s, sep=\"\\t\", as.is=TRUE)"
-		 name transition-file (if has-header "TRUE" "FALSE")))
+	 (format "%s <- read.table(\"%s\", header=FALSE, sep=\"\\t\", as.is=TRUE)"
+		 name transition-file))
      (format "%s <- %s" name (org-babel-R-quote-tsv-field value)))))
 
 (defun org-babel-R-to-elisp (func-name)
@@ -79,8 +77,9 @@ R process in `org-babel-R-buffer'."
 `org-babel-R-buffer' as Emacs lisp."
   (let ((tmp-file (make-temp-file "org-babel-R")) result)
     (org-babel-R-input-command
-     (format "write.table(%s(), file=\"%s\", sep=\"\\t\", na=\"nil\",row.names=FALSE, col.names=FALSE, quote=FALSE)"
-	     func-name tmp-file))
+     (format
+      "write.table(%s(), file=\"%s\", sep=\"\\t\", na=\"nil\",row.names=FALSE, col.names=FALSE, quote=FALSE)"
+      func-name tmp-file))
     (with-temp-buffer
       (condition-case nil
           (progn
@@ -88,9 +87,7 @@ R process in `org-babel-R-buffer'."
             (delete-file tmp-file)
             (setq result (mapcar (lambda (row)
                                    (mapcar #'org-babel-R-read row))
-                                 (org-table-to-lisp)))
-	    ;; (setq result (org-babel-R-set-header-row result))
-	    )
+                                 (org-table-to-lisp))))
         (error nil))
       (if (null (cdr result)) ;; if result is trivial vector, then scalarize it
           (if (consp (car result))
@@ -100,27 +97,6 @@ R process in `org-babel-R-buffer'."
             (car result))
         result))))
 
-(defun org-babel-R-set-header-row (table)
-  "Check whether the table appears to have (a) genuine
-user-supplied column names, or (b) default column names added
-automatically by R. In case (a), maintain the first row of the
-table as a header row and insert an hline. In case (b), remove
-the first row and return the org table without an hline."
-  (if (or (string-equal (caar table) "V1")
-	  (string-equal (caar table) "x"))
-
-      ;; write.table(1, col.names=TRUE) makes a colname called "x". I
-      ;; think shows that this approach is too much of a hack: we
-      ;; can't take some totally different action just because we see
-      ;; an "x" there that might or might not be a automatic name.
-
-      ;; The first row looks like it contains default column names
-      ;; added by R. This condition could be improved so that it
-      ;; checks whether the first row is ("V1" "V2" ... "V$n") where
-      ;; $n is the number of columns.
-      (cdr table)
-    (cons (car table) (cons 'hline (cdr table)))))
-
 (defun org-babel-R-read (cell)
   "Strip nested \"s from around strings in exported R values."
   (org-babel-read (or (and (stringp cell)
@@ -134,8 +110,6 @@ the first row and return the org table without an hline."
 
 (defun org-babel-R-initiate-R-buffer ()
   "If there is not a current R process then create one."
-  ;; DED: Ideally I think we should use ESS mechanisms for this sort
-  ;; of thing. See ess-force-buffer-current.
   (unless (and (buffer-live-p org-babel-R-buffer) (get-buffer org-babel-R-buffer))
     (save-excursion
       (R)