[Glass] gsDevKit / tode first time setup

Dale Henrichs via Glass glass at lists.gemtalksystems.com
Wed Oct 21 07:39:51 PDT 2015



On 10/21/15 12:20 AM, Jon Paynter wrote:
> ok. context for frame 5
> Dictionary>>at:put: @3 line 9
> --------------------
> .         -> Dictionary>>at:put: @3 line 9
> (context) -> aGsNMethod
> (self)    -> aDictionary( )
> aKey      -> nil
> aValue    -> spec repository: nil
> anAssoc   -> nil
> hashVal   -> nil
> .t1       -> aDictionary( )
>
>
> .... based on my own poking around, its adding a new member spec with 
> a name=nil
> when I explore (dive?) into the MetacelloAddMemberSpec instance, 
> everything is nil except for the project & spec, but their instvars 
> are also all nil
And Jon what are the values in frame 13? ... that's the guy that is the 
source of the nils and I want to know which of the 
TDMetacelloUnloadedProjectRegistrationDefinition instances is causing 
the problem ... then I have a chance of reproducing the problem and/or 
understanding why the nils are being produced
>
> Do you have any docs for tode?   - in particular the configuration.
Man pages are the main source of documentation... there are several 
videos[1] that might give you insight (let me know if there is one that 
really helps:)... the newest is at the bottom ... be aware that all of 
the vids were done with older versions of tODE:)

[1] 
https://github.com/dalehenrich/tode/blob/master/docs/videos/videoHistory.md
> Currently I find it rather clunky because I dont know most of the 
> shortcuts.
Well all of the keyboard shortcuts (are you referring to keyboard 
shortcuts?) are on displayed on the menu (bug if they are not) ...

Otherwise I understand that getting used to a new system can be 
difficult... I plan to make videos, but I want to stabilize the Early 
Access first and your help and patience is greatly appreciated!
> but the 2 main annoyances:
> 1) how to shut off the auto code formatter?  it makes a hash of my 
> code whenever I accept a method.  I looked in the image settings but 
> could not find anything.
Good question ... you want the limit command ... `man limit` ... you can 
write a script in your home directory that you can run at login (yes I 
will have a kind of .toderc that automatically runs ... but not right 
now) I call mine go:

   touch tpz go
   edit go

add the following:

   limit format false

then save (ALT-S) ... then `/home/go` or `./go` when you login will 
clear autoformat ...
> 2) how to re-map "paste" to the normal Control+V instead of Alt+V  -- 
> im copying & pasting code from VW into tode
Yeah that is actually an unfortunate "bug/feature" of Pharo3.0 ... I've 
made several attempts to try to work around the problem to no avail ... 
Pharo4.0 seems to have the same problem and Pharo5.0 isn't ready for use 
...

When other things stabilize in the Early Access I can swing back around 
and take another crack at it ...
>
> A "nice to have" -- update the method list window after creating accessors
Yes ... I need to add events, but I have to be careful, since the 
updates to windows are going to cost in terms of network round trips 
...I have some ideas but not the time:)
>
> The auto-window layout is nice.  But I wish I could tell it where to 
> place the various windows.  I frequently wind up with 3-4 Hierarchy 
> windows on top of each other.  It would be nice if they would all tile 
> within their designated space.
Yeah, I use the blank space on the right to move the hierarchy windows 
to a separate spot ... the window layout is a work in progress (as are 
many things:) ... I suggest you also play around with "Window > history" 
... for the fixed position windows you can visit any older version (from 
the current session) of the window akin to the back button in a web 
browser ... it works in any window other that than the button bar ... 
and I wouldn't recommend using it with the debugger:) I haven't put a 
keyboard shortcut on it yet, but if folks find it useful I will ...
> But -im hoping a working project browser will let me browse stuff by 
> category instead of having to deal with several of the Hierarchy browsers.
Yeah ... I need to know which 
TDMetacelloUnloadedProjectRegistrationDefinition is causing the problemj:)
>
> The folder layout paradigm (.  vs ..) for the inspector window is neat 
> once you get used to it.
Good I'm glad that it's working for you ... Note that the "Parents" menu 
will allow you to quickly navigate up the chain once you've navigated in ...


Also I recommend playing with  the "Window > clone window" menu item as 
you can peel off a window instance (this works for all windows ... 
except console) especially useful for a method window if you want to 
look at several methods "side by side" ...  And finally "Window > open 
workspace" is how you can write expressions against any object (like 
from the context window of the debugger) ... also works with any window
>
> And lastly - how can i get the image to save the set of open windows 
> when im done for the day?
>

`windows restore` is my attempt at this ...  when you login at your next 
session, `windows restore` should restore all of the windows that were 
open when you logged out ... some windows are not persisted, like 
debuggers, but most of the other windows can be restored ... There seem 
to be a couple of glitches in that occasionally a window doesn't get 
reconnected, but I think it's the functionarlity that you are looking 
for and I will eventually get rid of the glitches:)

Until then you might want to play with the rich variety of `browse` 
commands (`man browse`) and add them to your `go` script then you can 
basically pre-open a set of windows for your current working set ... 
here are some examples:

   browse category --exact Topez-Server-Core
   browse class --hier method|stream
   browse method --regex at\:put\:|nextPutAll\:

and the following is often useful:

     browse diff TDShellTool>>findMethods: `TDShellTool class>>browse`


Well I really appreciate your feedback and I plan to use this post as a 
template for a FAQ question or two ... again when I things settle down a 
bit in the Early Access

Dale


More information about the Glass mailing list