emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] [babel] sbe not working properly


From: Eric Schulte
Subject: Re: [O] [babel] sbe not working properly
Date: Fri, 12 Apr 2013 16:22:19 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Christian Moe <address@hidden> 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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]