The only reason I’m asking is because that’s how the gogo shell works in Felix. 
It has a context per shell. I was curious if you also wanted to go for that 
design, as sharing a context between multiple shells might give some awkward 
results (if you allow commands to operate on such context… cd / in one shell, 
then rm -rf * in the other :D).

On 3 November 2015 at 12:21:02, Pepijn Noltes (pepijnnol...@gmail.com) wrote:

Hi Marcel,  


On Tue, Nov 3, 2015 at 11:49 AM Marcel Offermans <  
marcel.offerm...@luminis.nl> wrote:  

> Hello Pepijn,  
>  
> If you’re going to support multiple shells concurrently, does that also  
> mean that each shell has its own “context” to keep state (ie to keep track  
> of things like current directory, environment variables, …)?  
>  

Currently not, so we only support multiple front-ends to a shared shell.  
This was already the situation before the ractoring, but in that case a  
global var was needed to keep track of the "current" file descriptor.  
Moving to a stream abstraction (FILE in c) removed this workaround.  

It there any specific reason you ask this ? To be honest, I never (yet) had  
the need for multiple shell contexts ...  

Greetings,  
Pepijn  




>  
> Greetings, Marcel  
>  
> On 3 November 2015 at 10:21:02, Pepijn Noltes (pepijnnol...@gmail.com)  
> wrote:  
>  
> Hi All,  
>  
> I just pushed the shell refactoring branch to develop. Within this feature  
> the command service has been updated. WIth this update you must implement a  
> execute function working with a FILE streams (FILE *), for "normal" and  
> error output, instead of two write functions. This was done so that it is  
> easier to support multiple connections (e.g. the remote shell).  
>  
> This update includes the needed updates for shell, shell_tui and  
> remote_shell. Current shell_bonjour is not yet supported.  
> Note that this is a backwards incompatible change, so if you created your  
> own shell commands these needs to be updated.  
>  
> I also took the liberty to change the 'ps' command to 'lb', more conform  
> the 'lb' command from the Apache Felix Gogo shell.  
>  
> Greetings,  
> Pepijn  
>  

Reply via email to