Not sure what past history we inherited, but I am questioning the semantics of our key modifiers.�� My understanding is that the following is industry standard...��
�� �� OSX �� �� �� �� Windows �� �� �� Linux
�� �� option �� �� �� �� �� alt �� �� �� �� �� �� �� ��alt
�� �� cmd �� �� �� �� �� �� ��ctrl �� �� �� �� �� �� �� ctrl
with Copy being the simplest example of this...
�� �� cmd-c �� �� �� �� �� ctrl-c �� �� �� �� �� ��ctrl-c
Supporting this view:
* "option" and "alternative" are synonyms
* "command" and "control" have similar meaning (e.g. in the army if you command someone, you control them)
So examining this with
�� �� KMLog setDebug.Transcript open.
On OSX Pharo 50044 I get...��
�� �� option+arrowLeft --> [keystroke '<Opt-left>']
�� �� cmd+arrowLeft --> [keystroke '<Cmd-left>']
�� �� ctrl+arrowLeft --> OS changes screens
but I am told that Windows gives...
�� �� alt+arrowLeft --> [keystroke '<Cmd-left>']
�� �� ctrl+arrowLeft --> [keystroke '<Ctrl-left>']
when I believe Windows should be...
�� �� alt+arrowLeft --> [keystroke '<Opt-left>']
�� �� ctrl+arrowLeft --> [keystroke '<Cmd-left>']
Part of the issue I think is that our keystroke mapping should be more abstract.��
When I was using Pharo on Windows, sometimes it felt like a second class citizen wrt key mappings, mapping ctrl-c to an apple-named <cmd-c>.�� Perhaps what we should see is:
OSX...
�� �� option+arrowLeft --> [keystroke '<Meta-left>']
�� �� cmd+arrowLeft --> [keystroke '<Hotkey-left>']
Windows...
�� �� alt+arrowLeft --> [keystroke '<Meta-left>']
�� �� ctrl+arrowLeft --> [keystroke '<Hotkey-left>']
Otherwise there will always be the tension on windows that ctrl-c should generate [<keystroke '<Ctrl-c>] and we end up with definitions repetitively formed like...��
�� �� PharoShortcuts>>acceptShortcut
^ $s ctrl win | $s ctrl unix | $s command mac
which opens the door for inconsistencies.�� We should only need to do something like...
�� �� PharoShortcuts>>acceptShortcut
^ $s hotkey
and leave it to the platform default or user preference the define what the hotkey actually is. �� A status line in the Keymap Browser could display which actual real keys map to <Hotkey> and <Meta>.
What are you thoughts?
cheers -ben