Hi Rainer, Thanks for following up on this.
Rainer M Krug <rai...@krugs.de> writes: > Andreas Leha <andreas.l...@med.uni-goettingen.de> writes: > >> Hi all, > > Hi > >> >> There seems to be a bug in babel (at least for R) when it comes to >> source blocks producing file links but taking tables with headers. In >> that case, ':colnames yes' disables the ':results file' directive. > > I don't think this is a bug as it is not clear what should happen. I disagree. I consider it a bug because it is a functional limitation. If I see it correctly, there is no way to generate a file link when passing a table with header. I'd expect the :colnames yes to take effect only if there is actually a table. If that was the behaviour, then there would be no functional limitation of that kind. > In the org manual it states concerning the :results file > > ,---- > | * `file' The results will be interpreted as the path to a file, and > | will be inserted into the Org mode buffer as a file link. E.g., > | `:results value file'. > `---- > > But the :colnames only works on tables (i.e. :results table) - but the > result is represented as a link to a file. So what should happen? Well, I think -- as you say -- :colnames works only on tables. Since there is no table (more than that, actually: I specifically do *not want* a table), the :colnames should not apply. I ask org to produce a file link but get a table. For me that clearly is unexpected. > > If you would like to have a table with links to files, the easiest is to > put the file names into [[]] in R and then return them in a table - or > use :results output and "draw" the table. Exactly. > > But as it stands, these two header arguments do not go together. > > It would be nice to have a warning (or even error) in org, or at least a > table of header argument precedence. I'd say a warning does not fix this. As I might need ':colnames yes' for an input table and ':results file' for the output. At least that is my view. Thanks, Andreas > > By the way - never used the :results file - but now I will! Thanks. > > Hope this helps, > > Rainer > > >> >> Here is the Cm: >> * test >> >> #+BEGIN_SRC R :results file replace >> "some_file.csv" >> #+END_SRC >> >> #+RESULTS: >> [[file:some_file.csv]] >> >> #+BEGIN_SRC R :colnames yes :results file replace >> "some_file.csv" >> #+END_SRC >> >> #+RESULTS: >> | x | >> |---------------| >> | some_file.csv | >> >> >> >> * My Setup >> #+begin_src emacs-lisp >> (concat >> (replace-regexp-in-string " on .*" "" (emacs-version)) >> "\n" >> (replace-regexp-in-string " @.*" ")" (org-version nil t)) >> "\n" >> (replace-regexp-in-string "].*" "]" (ess-version))) >> #+end_src >> >> #+RESULTS: >> : GNU Emacs 24.4.50.1 (x86_64-apple-darwin13.3.0, NS appkit-1265.21 Version >> 10.9.4 (Build 13E28)) >> : of 2014-09-02 >> : Org-mode version 8.3beta (release_8.3beta-717-ga8096c) >> : ess-version: 14.05 [git: 4283f1304a54502c42707b6a4ba347703f0992dd] >> >> Regards, >> Andreas >> >> >>