[ESS] Pause between startup commands

Henric Nilsson henric.nilsson at statisticon.se
Mon Jan 8 11:05:07 CET 2007


Martin,

Martin Maechler said the following on 2007-01-05 18:56:
> I'm finally getting back to this :
> 
>>>>>> "MM" == Martin Maechler <maechler at stat.math.ethz.ch>
>>>>>>     on Wed, 23 Aug 2006 13:42:21 +0200 writes:
> 
>>>>>> "MM" == Martin Maechler <maechler at stat.math.ethz.ch>
>>>>>>     on Wed, 23 Aug 2006 11:44:25 +0200 writes:
> 
>>>>>> "DavidB" == Brahm, David <David.Brahm at geodecapital.com>
>>>>>>     on Tue, 22 Aug 2006 15:53:07 -0400 writes:
> 
>     DavidB> When I start up ESS 5.3.1, I get:
>     >>>> if(!exists("baseenv", mode="function")) baseenv <-
>     >>>> function() NULL
>     DavidB> options(STERM='iESS', editor='emacsclient')
>     >>>> >
> 
>     DavidB> A little ugly, as the two commands run together.
> 
>     MM> well, yes,...  {we never felt a need to consider a
>     MM> patch, now that you bring it up with a patch proposal
>     MM> makes it a different story}
> 
>     MM>   [..........]
> 
>     MM> and many such cases of lines sent too fast and "> > ..."
>     MM> are known to happen in similar cases.  I think the
>     MM> reason is that emacs has become too fast :-) The crucial
>     MM> function is (ess-eval-linewise .)  defined in
>     MM> lisp/ess-inf.el and there I think it's (line 1009):
> 
>   [...trying something in ess-eval-linewise that does NOT work ...]
> 
>     MM> Rather it's the part in ( ess-eval-linewise ) that says
>     MM> "... Terrible kludge ..."  and later ;; A kludge to
>     MM> prevent the delay between insert and process output ;;
>     MM> affecting the display.  A case for a
>     MM> comint-send-input-hook?
> 
>     MM> that probably could be tweaked.  But I don't have the
>     MM> time to try getting into this at the moment.
> 
> I have a pretty nice solution --- without any (sleep-for ..)
> uglyness but only for non-Windows {more specifically for the
> case when   microsoft-p  is not true, i.e. when the DDE client
> is *not* used}.
> Since (if microsoft-p ...), the function (ess-eval-linewise-ddeclient ..) 
> is used and that does not allow the explicit fix that I've added
> for the non-DDE case.
> 
> Since I can't test that case at all, I'm asking for some user
> feedback of Windows ESS users now:
> 
> Do you see "lines running together" in the initial startup,
> notably
>      if(!exists("baseenv", mode="function")) baseenv <- function() NULL
> and
>      options(STERM='iESS', editor='emacsclient')
> 
> not nicely ending in the *R* buffer as
> "
>> if(!exists("baseenv", mode="function")) baseenv <- function() NULL
>> options(STERM='iESS', editor='emacsclient')
> "

On my Windows machine, I see the "lines running together" at start-up.


Thanks for looking into the issue,
Henric



> 
> If you do see that problem on windows, I think we need a
> "(sleep-for ..)" solution there
> and I have implemented it already more or less,
> but don't want to put it - and all related bits {customization of the
> timeout length, e.g.} into the code, unless there's a need.
> 
> Martin Maechler,
> ETH Zurich
> 
> ______________________________________________
> ESS-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/ess-help




More information about the ESS-help mailing list