[Newbies] Squeak and the Keyboard

David Shaffer cdshaffer at acm.org
Thu May 4 15:08:30 UTC 2006


Shawn MacIntyre wrote:

>
> I've been playing around in squeak for a few months now and one thing 
> that I find really frustrating is that it appears difficult to figure 
> out what all keyboard shortcuts are, what support there is from the 
> keyboard for editing text, and how to customize it. I have read a 
> number of tutorials but I am still confused.
>
> Is there an exhaustive list of keyboard shortcuts?
> If not, how does one find out what keyboard shortcuts are defined in 
> an image?
>
> Are there any packages or support for moving around text with the 
> same speed and ease as vi or emacs?
> Is there a vi or emacs keys package for squeak?
> I would love to learn "squeak keys" but from all the documentation I 
> have read, it seems very notepad-ish. Have I completely missed the boat?
>
> I use vi and emacs extensively and I love the fact I can customize 
> the way the keys work. How can I do this in squeak?


I use emacs and vi quite a bit as well.  They are part of my day to day
life.  One of my first projects in Squeak was Keymapping
(http://map1.squeakfoundation.org/account/package/51055995-d976-42da-ae18-7f3bdb9fb27d)
which gives you a simple UI for editing key bindings.

I took is a bit further and modified all of the tools in Squeak 3.7 to
have customizable keymaps.  By the time I was done with it I was
accustomed to the Squeak keybindings for most things :-(  Still I used
it every day in my development image.  I have shortcuts for raising
tools (process browser and moticello browser are the most common) and
for extending the text editor.  Keymapping works in Squeak 3.8 (and
_probably_ in 3.9) but I have never updated the extensions to the tools
so you don't get them by default.  So, under Squeak 3.8 and higher
Keymapping is good for:

1) adding keyboard shortcuts to your "world" to raise tools, switch
projects etc
2) adding/changing keyboard shortcuts in the ParagraphEditor (text
editor used by workspaces, class browsers etc)

but although they works in 3.7 the following things can't be done in 3.8
and higher

3) customize keybindings in existing tools such as the class browser
4) modify the "world" keybindings (you can add, just not modify the
hard-coded ones)

Keymapping is moderately easy to use once you look at examples.  The UI
can be opened at any time by pressing C-k.  It does modify several
Squeak internals so if you decide to use it I recommend that you load it
into a "play" image which has the same version as your work image...use
it a while to make sure it is stable.  Especially if you're using Squeak
3.9.

Hope that helps and welcome to Squeak!

David



More information about the Beginners mailing list