emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] cleaning all the #+results from an org document


From: Eric Schulte
Subject: Re: [O] cleaning all the #+results from an org document
Date: Fri, 29 Jul 2011 10:38:58 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

"Sebastien Vauban" <address@hidden> writes:

> Hi Eric,
>
> "Sebastien Vauban" wrote:
>> Eric Schulte wrote:
>>> Ista Zahn <address@hidden> writes:
>>>> On Thu, Jul 28, 2011 at 8:59 AM, Stephen Eglen
>>>> <address@hidden> wrote:
>>>>> Thanks Torsten, you've expressed it elegantly!
>>>>>>
>>>>>> c) to delete all the old results and start "fresh"
>>>>
>>>> +1 for c. I often work with R objects that are simply too large to store
>>>> in org tables, so I use babel caching + session + write / load R data
>>>> files from disk. This works, but it becomes easy to get to an inconsistent
>>>> state, and I would like to be able to delete the results blocks and run
>>>> the whole thing fresh.
>>>
>>> You could try evaluating the following with "M-x :" in an Org-mode buffer.
>>>
>>> #+begin_src emacs-lisp
>>>   (org-babel-map-src-blocks nil (org-babel-remove-result))
>>> #+end_src
>>
>> On the file I took for testing, this works OK.
>
> More complete test...
>
> * Test 1 -- OK!
>
> ** Anonym block
>
> #+begin_src emacs-lisp :results output org
> (print "Test")
> #+end_src
>
> #+results:
> #+BEGIN_ORG
>
> "Test"
> #+END_ORG
>
> ** Named block
>
> #+source: echo
> #+begin_src emacs-lisp :var n="me"
>   (message "hi %s" n)
> #+end_src
>
> #+results: echo
> : hi me
>
> * Test 2 -- OK!
>
> Setting a global data through a fake results block:
>
> #+results: max-lines
> : 200
>
> Then using it:
>
> #+source: print-max-lines
> #+begin_src emacs-lisp :var n=max-lines
>   (message "there are %s lines" n)
> #+end_src
>
> #+results: print-max-lines
> : there are 200 lines
>
> The latter results block is deleted. The former, with the assignation, is not.
> Excellent!
>
> * Test 3 -- Not OK... <<<
>
> And the call line for the named block:
>
> #+call: echo()
>
> #+results: echo()
> : hi me
>
> This results block is not deleted, while it should?
>

Thanks,

I've just pushed up a new interactive function `org-babel-kill-results'
which deletes code block results, inline code block results, and call
line results.

>
>> Regarding a key binding, looking at =C-c C-v h=, this is already quite full.
>> Though, =k= is free, and could be used for "killing the results".
>

Sounds good to me, the above function is now bound to "C-c C-v k".  If
called w/o a prefix argument it only applies to the current code block,
when called with a prefix argument it applies to the entire buffer.

Best -- Eric

>
> Best regards,
>   Seb

-- 
Eric Schulte
http://cs.unm.edu/~eschulte/



reply via email to

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