emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [Orgmode] Possible Calc support for Org-Babel?


From: Eric S Fraga
Subject: Re: [Orgmode] Possible Calc support for Org-Babel?
Date: Fri, 29 Oct 2010 20:53:26 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux)

"Eric Schulte" <address@hidden> writes:

> Eric S Fraga <address@hidden> writes:
>
>> Eric,
>>
>> This is really nice!
>>
>> I had a problem initially in that calc-push-list was undefined.  I had
>> to initiate calc first so maybe a
>>
>> : (require 'calc)
>>
>
> Ah yes, that is in the ob-calc.el file, but not in the code snippet I
> shared.  I'll commit this entire file to the repository.

Ah, so should I use the code snippet you sent or should I be requiring
'ob-calc?  In either case, I still have problems (see below).

>> is required to ensure the functions you use are available?
>>
>> Then, out of the three examples you give, only one (3^3) worked.  The
>> others give me:
>>
>
> I just made a change which should fix this issue.

Very strange.  I'm still seeing the same problems, both with
calc-push-list not known (having to manually require 'calc) and then
errors evaluating the 1+2 block:

--8<---------------cut here---------------start------------->8---
Debugger entered--Lisp error: (wrong-type-argument stringp (2 "Expected a 
number"))
  string-match("\\` *\\([0-9]+\\) *\\'" (2 "Expected a number"))
  math-read-number((2 "Expected a number"))
  (list (math-read-number (calc-eval line)))
  (calc-push-list (list (math-read-number ...)))
  (if (string= "'" (substring line 0 1)) (funcall (lookup-key calc-mode-map 
...) nil) (calc-push-list (list ...)))
  (progn (if (string= "'" ...) (funcall ... nil) (calc-push-list ...)))
  (if (> (length line) 0) (progn (if ... ... ...)))
  (when (> (length line) 0) (if (string= "'" ...) (funcall ... nil) 
(calc-push-list ...)))
  (lambda (line) (when (> ... 0) (if ... ... ...)))("  '+")
  mapcar((lambda (line) (when (> ... 0) (if ... ... ...))) ("  1" "  2" "  '+" 
""))
  org-babel-execute:calc("  1\n  2\n  '+\n" ((:colname-names) (:rowname-names) 
(:result-params "replace") (:result-type . value) (:comments . "") (:shebang . 
"") (:cache . "no") (:noweb . "no") (:tangle . "no") (:exports . "code") 
(:results . "replace") (:hlines . "no") (:session . "none")))
  org-babel-execute-src-block(nil ("calc" "  1\n  2\n  '+\n" ((:colname-names) 
(:rowname-names) (:result-params "replace") (:result-type . value) (:comments . 
"") (:shebang . "") (:cache . "no") (:noweb . "no") (:tangle . "no") (:exports 
. "code") (:results . "replace") (:hlines . "no") (:session . "none")) "" nil 
0))
  org-babel-execute-src-block-maybe()
  org-babel-execute-maybe()
  org-babel-execute-safely-maybe()
  run-hook-with-args-until-success(org-babel-execute-safely-maybe)
  org-ctrl-c-ctrl-c(nil)
  call-interactively(org-ctrl-c-ctrl-c nil nil)
--8<---------------cut here---------------end--------------->8---

org is up to date as of a minute or two ago:

: GNU Emacs 23.2.1 (i486-pc-linux-gnu, GTK+ Version 2.20.0)
:  of 2010-08-14 on raven, modified by Debian
: Org-mode version 7.02trans (release_7.02.18.g9c83)

> I'd be particularly interested if there are more natural or "idiomatic
> calc" ways to interact with Calc through a code block than the one
> implemented here.

Well, I like being able to say, for instance, =src_calc(2010-1989)= and
have the result appear in an export of the file.  By the way, this works
so some things are working just fine.

Thanks,
eric

-- 
Eric S Fraga
GnuPG: 8F5C 279D 3907 E14A 5C29  570D C891 93D8 FFFC F67D



reply via email to

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