I find myself wanting global keyboard shortcuts for such things as
invoking an external browser, switching focus between windows, opening
new tool windows, executing various World menu options, executing my
own scripts, etc.

After working for years in corporations doing Windows-based
development in Microsoft Visual Studio, I find the necessity of
constantly reaching for the mouse in Pharo to be cumbersome and
unproductive.

I was able to add some shortcut keys to invoke commands that I
prepared by sending messages like this:

    World respondToCommand: $l bySending: #startExternalWebBrowser to:
TFCommands.

However, this only works when no window has the keyboard focus.

I followed the keystroke handling path in the debugger and I think I
can probably find a place to hook in some special handling for my
globally-accessible keystrokes.

My questions are:

1. Has somebody already done this?

2. Is there a "standard" or "best practice" way of accomplishing this?

Regards,
TF

Reply via email to