[plt-scheme] Project management

From: Robby Findler (robby at cs.uchicago.edu)
Date: Sun Jul 1 23:59:44 EDT 2007

No, not from the interactions window. Programs running in drscheme
cannot tell that they are running in drscheme (by design!). Otherwise,
it would be too easy to write a program that would work in the
development environment, but wouldn't work in the deployment
environment.

You can, however, make a tool that would do that.

Open file and open new window already have keybindings, of course. See
the menu shortcuts. Also, control-x control-f opens a new file. (I
don't think that there is anoter way to open a new window, but you
coudl add one with a keybindings file).

Finally, just as a side-note, adding sleeps to avoid timing issues is
a sure way to write buggy code. But, even if you do go to the tool
route, you wouldn't need them. There's only one thread involved.

Robby

On 7/1/07, Corey Sweeney <corey.sweeney at gmail.com> wrote:
> I see.  Is there a "open new window" command, and a "load file"
> command, so that I could do something like:
>
>
> > (drscheme:new-window)
> > (drscheme:load-file "file-for-win-1-tab-1")
> > (drscheme:load-file "file-for-win-1-tab-2")
> > (drscheme:new-window)
> > (drscheme:load-file "file-for-win-2-tab-1")
> > (drscheme:load-file "file-for-win-2-tab-2")
>
> from a "interactions window"?
>
> (with some possible "sleeps" to avoid timing issues)
>
>
> Or perhaps some keybindings (that don't interfere with the emacs
> keybindings) could be written for "open new window" and "open file",
> and I could write a project manager from the macro language of the
> window manager....
>
> Corey
>
>
>
> On 7/1/07, Robby Findler <robby at cs.uchicago.edu> wrote:
> > Maybe it helps to know that, when you open a new file, it goes into
> > the frontmost drscheme window as a tab (when you have the open-in-tabs
> > preference set)?
> >
> > Robby
> >
> > On 7/1/07, Corey Sweeney <corey.sweeney at gmail.com> wrote:
> > > I seem toI have managed to exceed the 2 Gigs of memory in my new
> > > machine during development, so I'm interested in looking at more
> > > efficent ways of doing project management.
> > >
> > > Right now, I have a linux (bash) script launch 4 copies of drscheme,
> > > each copy with about 10 tabs.
> > >
> > > Is there a way to open a second window from the command prompt, and
> > > load files into tabs in the second window?  My idea is that by only
> > > loading drscheme once, I'm hoping it will save memory.
> > >
> > >
> > > Or, alternatively, is there a way of opening windows, and loading
> > > files into tabs from the interaction prompt?  Something like:
> > >
> > > > (define window1 (drscheme:new-window))
> > > > (drscheme:load-file-in-tab "file1.scm" window1)
> > > > (drscheme:load-file -in-tab "file2.ss" window1)
> > > > (define window2 (drscheme:new-window))
> > > > (drscheme:load-file-in-tab  "file3.ss" window2)
> > > > (drscheme:load-file-in-tab  "file4.scm" window2)
> > >
> > > Due to some conversations I've had in the past, I'm guessing that
> > > would have to be nested,  I.E. every time I wanted to edit a file,
> > > load drscheme, and have it open a file, which has (require
> > > "drscheme.ss") or something in it, and auto-run it.  (by the way, how
> > > do you "auto-run" a program in drscheme?), then type something like
> > > that at the interaction prompt, which would open the tabs in a nested
> > > copy of drscheme?  Which would give me 2 running copies of drscheme,
> > > which while non-ideal, would be better then 4.
> > >
> > > Or would the "load-file-in-tab" functions be protected behind a module
> > > barrier, and thefrore inaccessable?
> > >
> > > I'm not really sure about anything here, so this is kind of a general
> > > probe.  I'm just looking for a solution that I can interactively
> > > improve from the "interactions area" as i'm using it.
> > >
> > >
> > > Corey
> > >
> > >
> > > --
> > > ((lambda (y) (y y)) (lambda (y) (y y)))
> > > _________________________________________________
> > >   For list-related administrative tasks:
> > >   http://list.cs.brown.edu/mailman/listinfo/plt-scheme
> > >
> >
>
>
> --
> ((lambda (y) (y y)) (lambda (y) (y y)))
>


Posted on the users mailing list.