[squeak-dev] The Trunk: Morphic-cmm.409.mcz

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Mon Apr 5 20:45:37 UTC 2010


2010/4/5 Chris Muller <asqueaker at gmail.com>:
>> The intention was Ctrl+0, but we decided to add it to 7-8-9 too, because
>> some keyboard layouts don't have 0 without other modifiers.
>
> We cannot be wasting so many keys.  Other applications want to be
> written in Squeak that make use of hot-keys, and so we don't want 7,
> 8, 9, and 0 to be all used up by one function.
>
> Under the "keyboard" category of Preferences, there are various
> settings; duplicateAllControlAndAltKeys, etc.  These ideas do not make
> the situation any easier to understand, and ended up consuming tons of
> extra keys just because there was this idea years ago that we need to
> cater to newbies demanding to use Control key for cut and paste.   So
> now we have to support this shit, "dup all Alt and Control keys" and,
> unfortuntaely, Squeak is still does not look-and-feel enough like
> MS-Excel for the newbies to be happy...
>
> Sorry, I was off on rant there..
>

Hi Chris,
You certainly are on a Mac, so you like your cmd+c because it's
uniform thru all apps.
It simply respects platforms feels.
Switching between ctrl+c and alt+c on other platforms is a pain, not
only for newbies.
I would say this is a REALLY usefull feature.
Of course it's not enough...

>> Ctrl+9 was unused, Ctrl+( (which is Ctrl+Shift+9) is used for surrounding
>> with ().
>
> That wasn't working, and it is *very* important to me.  I use it many
> times per day.  Also, Control+9 is consistent with the other "shifted"
> enclosers, which do not require a Shift+Control modifier..
>
>> There's no guarantee that the Search Bar will be always the 7th item in the
>> docking bar,
>
> Sure there is.  Have a look at TheWorldMainDockingBar>>#menusOn:.
> Each of the menus is hard-coded, along with the search-bar.  There is
> no variance, therefore, currently, the search bar will always be the
> 7th item.
>
> You might be saying, "There's no guarantee *in the future*, that the
> Search Bar will be always the 7th item in the docking bar..." and, if
> so, I argue that there is no guarantee that "Projects" menu will
> always be Control+2, or that "Tools" will be Control+3.  I doubt we
> will be adding many more menus in the future, but we have to accept,
> when using these numerical / positional hot-keys that they *might*
> change in the future.
>
>>  therefore 0 is a better choice IMHO, since 0 is usuall on the
>> right side of the keyboard, just like the Search Bar is on the right side of
>> the screen (if the docking bar is up or down).
>
> What about left or right?  :)
>
> To me, positional consistency valuable, but less important than the
> parenthetical enclosing.  If you can find a way to have it be
> Control+0 without breaking Control+9 for parenthetical enclosure, I
> would support that (but I still think Control+7 is more consistent).
>
>  - Chris
>
>
>>> =============== Diff against Morphic-ar.408 ===============
>>>
>>> Item was changed:
>>>  ----- Method: DockingBarMorph>>handleListenEvent: (in category
>>> 'events-processing') -----
>>>  handleListenEvent: anEvent
>>>        " I am registered as a keyboardListener of the ActiveHand,
>>>        watching for ctrl-<n> keystrokes, and upon them if I have
>>>        an nth menu item, I'll activate myself and select it. "
>>>
>>>        (anEvent controlKeyPressed and: [
>>>                anEvent keyValue
>>>                        between: 48 " $0 asciiValue "
>>> +                       and: 55 " $7 asciiValue " ]) ifTrue: [
>>> -                       and: 57 " $9 asciiValue " ]) ifTrue: [
>>>                | index itemToSelect |
>>>                index := anEvent keyValue - 48.
>>>                itemToSelect := (submorphs select: [ :each |
>>>                        each isKindOf: DockingBarItemMorph ])
>>>                                at: index
>>>                                ifAbsent: [
>>>                                        ^self searchBarMorph ifNotNil: [
>>> :searchBar |
>>>                                                searchBar activate: anEvent
>>> ] ].
>>>                self activate: anEvent.
>>>                self
>>>                        selectItem: itemToSelect
>>>                        event: anEvent ]!
>>>
>>>
>>>
>>
>>
>
>



More information about the Squeak-dev mailing list