Christian Moe <m...@christianmoe.com> writes: > Hi, > > I cannot replicate Karl's problem. I copied the code examples, and got > the right results on Org 8.0-pre (pulled this morning). > > I did have to make one change -- Babel wouldn't recognize the variables > until I passed them with :var rather than in parens after the codeblock > name. (I saw there was some discussion on dropping the latter syntax; > whoa -- has it already happened?)
Yes, this syntax has been removed. > But that much was clear from the error messages I got, so Karl's > problem must be something different. > > Yours, > Christian > > Darlan Cavalcante Moreira writes: > >> I have my own difficulties using sbe and decided to try your example. >> >> I even created the shell babel block below which does the same think as the >> python code >> >> #+NAME: epoch2dayshell(epoch=1) >> #+begin_src sh >> echo `date --d @$epoch -u +"[%F %a %T]"` >> #+end_src >> >> but I got the same result. Actually, I realize a small detail. >> >> In your example, when you evaluated the table formula you got as result the >> 1970 date. However, this does not mean that your python code was >> executed. You got that answer because you have evaluated the python code >> previously with the default argument (equal to 1) and thus you had >> >> #+RESULTS: epoch2day >> : [1970-01-01 Thu 00:00:01] >> >> in your file. If you erase the #+RESULTS and reevaluate the table you will >> get an ERROR. That indicates that sbe is not calling the babel block as I >> (and probably you too) was expecting. >> >> However, looking at sbe's documentation I can't see anything wrong with the >> formula you wrote. I'm still confused on how to correctly use sbe. >> >> -- >> Darlan >> >> At Thu, 11 Apr 2013 16:26:12 +0200, >> Karl Voit wrote: >>> >>> Hi! >>> >>> I want to define a babel function named epoch2day which I am able to use in >>> a >>> table to convert UNIX epoch times to Org-mode time stamps: >>> >>> #+NAME: epoch2day(epoch=1) >>> #+BEGIN_SRC python :results output >>> time = epoch >>> import datetime >>> strtime = str(time) >>> datetimestamp = >>> datetime.datetime.utcfromtimestamp(int(strtime[:10])) >>> print datetimestamp.strftime('[%Y-%m-%d %a %H:%M:%S]') >>> #+END_SRC >>> >>> #+RESULTS: epoch2day >>> : [1970-01-01 Thu 00:00:01] >>> >>> ... this works so far. However, in a table I can't "overwrite" the default >>> value with a column value: >>> >>> | epoch | day | >>> |---------------+---------------------------| >>> | 1262675465119 | [1970-01-01 Thu 00:00:01] | >>> #+TBLFM: $2='(sbe epoch2day (epoch $1)) >>> >>> ... but $2 should be: [2010-01-05 Tue 07:11:05] >>> >>> >>> On [1] I found another example: >>> >>> #+name: add1(x=1) :results silent >>> #+begin_src python >>> return x + 1 >>> #+end_src >>> >>> #+RESULTS: add1 >>> : 2 >>> >>> | foo | bar | 3 | 2 | >>> #+TBLFM: @1$4='(sbe add1 (x $3)) >>> >>> #+CALL: add1(x=2) >>> >>> #+RESULTS: add1(x=2) >>> : 2 >>> >>> So this simple example does not work either at my side[2]. >>> >>> >>> What is my error? Or did I found a bug? >>> >>> Thanks! >>> >>> >>> 1. http://stackoverflow.com/questions/9595310/org-babel-sbe-syntax >>> 2. Org-mode 1af215bb4668bf3e778175e68fcaf from git >>> -- >>> mail|git|SVN|photos|postings|SMS|phonecalls|RSS|CSV|XML to Org-mode: >>> > get Memacs from https://github.com/novoid/Memacs < >>> >>> https://github.com/novoid/extract_pdf_annotations_to_orgmode + more on >>> github >>> >>> > > -- Eric Schulte http://cs.unm.edu/~eschulte