Re: [julia-users] Re: Hide and disable REPL

2016-11-15 Thread cdm

it seems like some of the client.jl code

   https://github.com/JuliaLang/julia/blob/master/base/client.jl


should provide the foundation ...


maybe something around active_repl_backend or some active_repl
switching.

also from code comments:

atreplinit(f)
Register a one-argument function to be called before the REPL interface is 
initialized in
interactive sessions; this is useful to customize the interface.

hopefully, helpful in the slightest ...



On Tuesday, November 15, 2016 at 2:51:35 PM UTC-8, David Anthoff wrote:
>
> That deletes everything, but really I just want to hide the current prompt.
>  
>

>
> I.e. the user could continue editing the stuff that he/she was working on 
> before the background task briefly took over.
>
>  
>
> Thanks,
>
> David
>
>
>

RE: [julia-users] Re: Hide and disable REPL

2016-11-15 Thread David Anthoff
I think most of them just have the code pasted into the REPL. That would work 
for us as well, but then we can’t do things like eval code in the context of a 
specific module.

 

From: julia-users@googlegroups.com [mailto:julia-users@googlegroups.com] On 
Behalf Of cdm
Sent: Monday, November 14, 2016 6:27 PM
To: julia-users <julia-users@googlegroups.com>
Subject: Re: [julia-users] Re: Hide and disable REPL

 

 

do you know of there are analogs of your process flow

in other VS Code extensions, say the python extension

for VS Code ... ?

 

it seems that perhaps another VS Code implementation

would have had to also cross this bridge ... ?

 

~ cdm

 



On Monday, November 14, 2016 at 1:27:18 PM UTC-8, ant...@berkeley.edu 
<mailto:ant...@berkeley.edu>  wrote: 

Bump, any help would really be appreciated. We are very, very close to 
releasing an amazing new version of the julia extension for VS Code, this is 
pretty much the only thing holding that release back right now. 

 

Thanks,

David



RE: [julia-users] Re: Hide and disable REPL

2016-11-15 Thread David Anthoff
That deletes everything, but really I just want to hide the current prompt. So 
say this is how the console looks:



julia> println(5)

5

julia>function foo(x)

   println(x)



So in this case the users is in the middle of entering something new into the 
REPL (i.e. the definition of foo). Assume that at this point my background task 
receives a message. I then want to be able to delete line 3+5, and position the 
cursor on column 1 line 3. Then I’ll execute the code that was sent to the 
server. Once that is finished, I want to print line 3+4, as it was before I hid 
the current prompt, again, starting at whatever the current cursor position is.

 

For example, say the background task received some code that printed “Foo” 
to the console, then I want the console to look like this, immediately after 
that code was executed:



julia> println(5)

5

Foo

julia>function foo(x)

   println(x)



I.e. the user could continue editing the stuff that he/she was working on 
before the background task briefly took over.

 

Thanks,

David

 

From: julia-users@googlegroups.com [mailto:julia-users@googlegroups.com] On 
Behalf Of Steven G. Johnson
Sent: Tuesday, November 15, 2016 5:29 AM
To: julia-users <julia-users@googlegroups.com>
Subject: Re: [julia-users] Re: Hide and disable REPL

 



On Friday, November 4, 2016 at 1:28:16 PM UTC-4, David Anthoff wrote: 

 

The complete setup is slightly more complicated, but you can imagine just the 
following: start a normal julia REPL. Then include a file that will start a 
server listening on some socket. This server is all async, so as soon as the 
server is started, the prompt appears again and one can use this REPL window in 
the normal way. Now some other process connects to the socket, and sends some 
code that this server will eval. Before the server evals this code, I would 
like it to switch off the prompt, then eval the code, then switch the prompt on 
again.

 

Base.Terminals.clear(Base.active_repl.t); sleep(10)

 

will clear the REPL window (including prompt) for 10 seconds.  Instead of 
sleep(10), you can do wait(c) where c is a Condition variable that gets 
notified by the server thread once it is ready.  See 
http://docs.julialang.org/en/latest/stdlib/parallel/?highlight=wait



Re: [julia-users] Re: Hide and disable REPL

2016-11-15 Thread Steven G. Johnson


On Friday, November 4, 2016 at 1:28:16 PM UTC-4, David Anthoff wrote:
>
>
> The complete setup is slightly more complicated, but you can imagine just 
> the following: start a normal julia REPL. Then include a file that will 
> start a server listening on some socket. This server is all async, so as 
> soon as the server is started, the prompt appears again and one can use 
> this REPL window in the normal way. Now some other process connects to the 
> socket, and sends some code that this server will eval. Before the server 
> evals this code, I would like it to switch off the prompt, then eval the 
> code, then switch the prompt on again.
>

Base.Terminals.clear(Base.active_repl.t); sleep(10)

will clear the REPL window (including prompt) for 10 seconds.  Instead of 
sleep(10), you can do wait(c) where c is a Condition variable that gets 
notified by the server thread once it is ready. 
 See http://docs.julialang.org/en/latest/stdlib/parallel/?highlight=wait


Re: [julia-users] Re: Hide and disable REPL

2016-11-14 Thread cdm

do you know of there are analogs of your process flow
in other VS Code extensions, say the python extension
for VS Code ... ?

it seems that perhaps another VS Code implementation
would have had to also cross this bridge ... ?

~ cdm



On Monday, November 14, 2016 at 1:27:18 PM UTC-8, ant...@berkeley.edu wrote:
>
> Bump, any help would really be appreciated. We are very, very close to 
> releasing an amazing new version of the julia extension for VS Code, this 
> is pretty much the only thing holding that release back right now.
>
> Thanks,
> David
>
>

Re: [julia-users] Re: Hide and disable REPL

2016-11-14 Thread anthoff
Bump, any help would really be appreciated. We are very, very close to 
releasing an amazing new version of the julia extension for VS Code, this 
is pretty much the only thing holding that release back right now.

Thanks,
David

On Friday, November 4, 2016 at 10:28:16 AM UTC-7, David Anthoff wrote:
>
> Ah, I should have been clearer. I just want to hide the prompt temporarily.
>
>  
>
> The complete setup is slightly more complicated, but you can imagine just 
> the following: start a normal julia REPL. Then include a file that will 
> start a server listening on some socket. This server is all async, so as 
> soon as the server is started, the prompt appears again and one can use 
> this REPL window in the normal way. Now some other process connects to the 
> socket, and sends some code that this server will eval. Before the server 
> evals this code, I would like it to switch off the prompt, then eval the 
> code, then switch the prompt on again.
>
>  
>
> The setup is that VS Code starts a new julia process, and shows the normal 
> julia REPL in a terminal emulation within VS Code. This instance is running 
> the server I just described. The julia VS Code extension that will send 
> code to this REPL window if a user hits Ctrl+Enter in any of the open 
> editor windows.
>
>  
>
> Not sure this is much clearer, let me know if you need more info!
>
>  
>
> Best,
>
> David
>
>  
>
> *From:* julia-users@googlegroups.com [mailto:julia-users@googlegroups.com] 
> *On Behalf Of *Isaiah Norton
> *Sent:* Thursday, November 3, 2016 8:38 PM
> *To:* julia-users@googlegroups.com
> *Subject:* Re: [julia-users] Re: Hide and disable REPL
>
>  
>
> Can you explain the setup further -- Where is the REPL running? How are 
> you interacting with it? If I take "I want to temporarily switch the REPL 
> off, i.e. it should visually disappear" literally then it seems like a 
> strange thing to do, so I may be missing something
>
>  
>
> If you *do* want to hide the terminal window (if any) the REPL is (may be) 
> running in, that's going to be very hard to do generally and across 
> platforms (on Windows under Console you can use GetActiveWindow or 
> GetActiveConsole, but on real pty platforms the process doesn't necessarily 
> know anything about the terminal it is connected to beyond termcap and i/o).
>
>  
>
> On Thu, Nov 3, 2016 at 7:41 PM, <anth...@berkeley.edu> wrote:
>
> Bump, it would be great if someone could point me to some approach for 
> this. We are getting an integrated terminal ready in VS Code, and this is 
> the one piece missing right now.
>
>  
>
> Thanks,
>
> David
>
>
>
> On Thursday, June 23, 2016 at 5:00:22 PM UTC-7, David Anthoff wrote:
>
> Hi,
>
>  
>
> is there a way to switch off the REPL and then on again, from a task?
>
>  
>
> Specifically, I want to start a julia instance and pass a script in with 
> the –L parameter that will open a socket, listen for connections and the 
> process messages from that socket. This server listening code is all 
> wrapped in @async macro calls. So when I start things this way, julia shows 
> the REPL and at the same time listens for incoming messages. I can use the 
> REPL etc. This is exactly what I want.
>
>  
>
> But when I receive a message, I want to temporarily switch the REPL off, 
> i.e. it should visually disappear while I process that message, and then I 
> want to switch it back on once I’m done processing that message.
>
>  
>
> Can that be done somehow?
>
>  
>
> Thanks,
>
> David
>
>  
>
> --
>
> David Anthoff
>
> University of California, Berkeley
>
>  
>
> http://www.david-anthoff.com
>
>  
>
>  
>


RE: [julia-users] Re: Hide and disable REPL

2016-11-04 Thread David Anthoff
Ah, I should have been clearer. I just want to hide the prompt temporarily.

 

The complete setup is slightly more complicated, but you can imagine just the 
following: start a normal julia REPL. Then include a file that will start a 
server listening on some socket. This server is all async, so as soon as the 
server is started, the prompt appears again and one can use this REPL window in 
the normal way. Now some other process connects to the socket, and sends some 
code that this server will eval. Before the server evals this code, I would 
like it to switch off the prompt, then eval the code, then switch the prompt on 
again.

 

The setup is that VS Code starts a new julia process, and shows the normal 
julia REPL in a terminal emulation within VS Code. This instance is running the 
server I just described. The julia VS Code extension that will send code to 
this REPL window if a user hits Ctrl+Enter in any of the open editor windows.

 

Not sure this is much clearer, let me know if you need more info!

 

Best,

David

 

From: julia-users@googlegroups.com [mailto:julia-users@googlegroups.com] On 
Behalf Of Isaiah Norton
Sent: Thursday, November 3, 2016 8:38 PM
To: julia-users@googlegroups.com
Subject: Re: [julia-users] Re: Hide and disable REPL

 

Can you explain the setup further -- Where is the REPL running? How are you 
interacting with it? If I take "I want to temporarily switch the REPL off, i.e. 
it should visually disappear" literally then it seems like a strange thing to 
do, so I may be missing something

 

If you *do* want to hide the terminal window (if any) the REPL is (may be) 
running in, that's going to be very hard to do generally and across platforms 
(on Windows under Console you can use GetActiveWindow or GetActiveConsole, but 
on real pty platforms the process doesn't necessarily know anything about the 
terminal it is connected to beyond termcap and i/o).

 

On Thu, Nov 3, 2016 at 7:41 PM, <anth...@berkeley.edu 
<mailto:anth...@berkeley.edu> > wrote:

Bump, it would be great if someone could point me to some approach for this. We 
are getting an integrated terminal ready in VS Code, and this is the one piece 
missing right now.

 

Thanks,

David



On Thursday, June 23, 2016 at 5:00:22 PM UTC-7, David Anthoff wrote:

Hi,

 

is there a way to switch off the REPL and then on again, from a task?

 

Specifically, I want to start a julia instance and pass a script in with the –L 
parameter that will open a socket, listen for connections and the process 
messages from that socket. This server listening code is all wrapped in @async 
macro calls. So when I start things this way, julia shows the REPL and at the 
same time listens for incoming messages. I can use the REPL etc. This is 
exactly what I want.

 

But when I receive a message, I want to temporarily switch the REPL off, i.e. 
it should visually disappear while I process that message, and then I want to 
switch it back on once I’m done processing that message.

 

Can that be done somehow?

 

Thanks,

David

 

--

David Anthoff

University of California, Berkeley

 

http://www.david-anthoff.com

 

 



Re: [julia-users] Re: Hide and disable REPL

2016-11-03 Thread Isaiah Norton
Can you explain the setup further -- Where is the REPL running? How are you
interacting with it? If I take "I want to temporarily switch the REPL off,
i.e. it should visually disappear" literally then it seems like a strange
thing to do, so I may be missing something

If you *do* want to hide the terminal window (if any) the REPL is (may be)
running in, that's going to be very hard to do generally and across
platforms (on Windows under Console you can use GetActiveWindow or
GetActiveConsole, but on real pty platforms the process doesn't necessarily
know anything about the terminal it is connected to beyond termcap and i/o).

On Thu, Nov 3, 2016 at 7:41 PM,  wrote:

> Bump, it would be great if someone could point me to some approach for
> this. We are getting an integrated terminal ready in VS Code, and this is
> the one piece missing right now.
>
> Thanks,
> David
>
>
> On Thursday, June 23, 2016 at 5:00:22 PM UTC-7, David Anthoff wrote:
>>
>> Hi,
>>
>>
>>
>> is there a way to switch off the REPL and then on again, from a task?
>>
>>
>>
>> Specifically, I want to start a julia instance and pass a script in with
>> the –L parameter that will open a socket, listen for connections and the
>> process messages from that socket. This server listening code is all
>> wrapped in @async macro calls. So when I start things this way, julia shows
>> the REPL and at the same time listens for incoming messages. I can use the
>> REPL etc. This is exactly what I want.
>>
>>
>>
>> But when I receive a message, I want to temporarily switch the REPL off,
>> i.e. it should visually disappear while I process that message, and then I
>> want to switch it back on once I’m done processing that message.
>>
>>
>>
>> Can that be done somehow?
>>
>>
>>
>> Thanks,
>>
>> David
>>
>>
>>
>> --
>>
>> David Anthoff
>>
>> University of California, Berkeley
>>
>>
>>
>> http://www.david-anthoff.com
>>
>>
>>
>