emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] How to end a :session?


From: Rainer M Krug
Subject: Re: [O] How to end a :session?
Date: Thu, 28 May 2015 14:08:47 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (darwin)

Andreas Leha <address@hidden> writes:

> Rainer M Krug <address@hidden> writes:
>> Andreas Leha <address@hidden> writes:
>>
>>> Hi Rainer,
>>>
>>> Rainer M Krug <address@hidden> writes:
>>>> Andreas Leha <address@hidden> writes:
>>>>
>>>>> Hi Rainer,
>>>>
>>>> Hi Andreas,
>>>>
>>>>>
>>>>> Rainer M Krug <address@hidden> writes:
>>>>>> Christopher Witte <address@hidden> writes:
>>>>>>
>>>>>>> perhaps what you want is a named session, see
>>>>>>> http://orgmode.org/manual/session.html
>>>>>>
>>>>>> Sure - that's what I have.
>>>>>>
>>>>>> But how can I close the named session when I don't need it anymore, or
>>>>>> want to start, the next time I use the named session, with a new
>>>>>> session?
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> On 28 May 2015 at 10:44, Rainer M Krug <address@hidden> wrote:
>>>>>>>
>>>>>>>> Hi
>>>>>>>>
>>>>>>>> I can start a session as follow:
>>>>>>>>
>>>>>>>> --8<---------------cut here---------------start------------->8---
>>>>>>>> #+begin_src R :session Test
>>>>>>>> cat("Session Test\n")
>>>>>>>> #+end_src
>>>>>>>> --8<---------------cut here---------------end--------------->8---
>>>>>>>>
>>>>>>>> Now I hava an R session named *Test*. But how can I closes this 
>>>>>>>> session?
>>>>>>>> I thought about just quitting R
>>>>>>>>
>>>>>>>> --8<---------------cut here---------------start------------->8---
>>>>>>>> #+begin_src R :session Test
>>>>>>>> q(save = "no)
>>>>>>>> #+end_src
>>>>>>>> --8<---------------cut here---------------end--------------->8---
>>>>>>>>
>>>>>>>> but this does not return as ESS is waiting for the prompt (">").
>>>>>>>>
>>>>>>>> Is there a way of closing the session *Test* and close the buffer?
>>>>>>>>
>>>>>>>> My reasoning is that I want to do different longer analysis in one org
>>>>>>>> file and start each in its own session, i.e. clean R. But as they
>>>>>>>> involve several steps, I don't want to put them into one code block.
>>>>>>>>
>>>>>>>> So I have several code blocks which I want to execute in a "throw away
>>>>>>>> session" which I would like to discard afterwards.
>>>>>>>>
>>>>>>>> So I am looking for something like
>>>>>>>>
>>>>>>>> #+CLOSE_SESSION Test
>>>>>>>>
>>>>>>>> which would then close the session *Test*
>>>>>>>>
>>>>>>>> Is something like this possible at the moment?
>>>>>>>>
>>>>>
>>>>> How about
>>>>>
>>>>> #+name: killRsession
>>>>> #+begin_src emacs-lisp :var rsession="*myR*" :results none
>>>>> (progn
>>>>>   (switch-to-buffer rsession)
>>>>>   (ess-quit)
>>>>>   (sleep-for 1)
>>>>>   (kill-buffer))
>>>>> #+end_src
>>>>>
>>>>>
>>>>> #+call: killRsession("*myR*") :results none
>>>>
>>>> Thanks - this works. But I get an error which says:
>>>>
>>>> ,----
>>>> | save-excursion: Wrong type argument: integer-or-marker-p, nil
>>>> `----
>>>>
>>>> Any suggestion on how to avoid this?
>>>>
>>>
>>> I do not see that error, so hard to say.  Do you have a backtrace?  Wild
>>> guess: Maybe the ess-quit changed?  What version of ess are you using?
>>
>> ess-15.03
>>
>
> I am on ess-15.09-devel.

That might explain. For some time, I was using the git version (and I
still update it daily) but I was quite a few times bitten by changes /
bugs so I decided to use the latest stable release of ESS.

>
>>>
>>> Note, that this could be improved by replacing the (sleep-for 1) with
>>> something that actually waits until R has quit...
>>
>> I can live with the error for now, but I might look into it some time
>> later.
>>
>
> Fine.
>
> Andreas
>
>

-- 
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, 
UCT), Dipl. Phys. (Germany)

Centre of Excellence for Invasion Biology
Stellenbosch University
South Africa

Tel :       +33 - (0)9 53 10 27 44
Cell:       +33 - (0)6 85 62 59 98
Fax :       +33 - (0)9 58 10 27 44

Fax (D):    +49 - (0)3 21 21 25 22 44

email:      address@hidden

Skype:      RMkrug

PGP: 0x0F52F982

Attachment: signature.asc
Description: PGP signature


reply via email to

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