[Vm-dev] Re: [Pharo-dev] ctrl+a is seen as ctrl+home windows

Nicolai Hess nicolaihess at web.de
Fri May 15 06:40:30 UTC 2015


forward to vm-dev

2015-05-14 21:34 GMT+02:00 Nicolai Hess <nicolaihess at web.de>:

> I added an issue:
>
> 15541 <https://pharo.fogbugz.com/default.asp?15541> windows vm does not
> distinguish between ctrl+a and ctrl+home
>
> with a proposed solution:
> add $a-1 to the utf32Code field of the event struct, if the keyevent is a
> keystroke and the ctrl flag is set
>
> what do you think?
>
>
>


this happens on squeak (vm: Win32 built on Aug 22 2013 10:20:54 Compiler:
3.4.4 ) too.
But the eventbuffer is different:
pharo ctrl+a/ctrl+home both report:

#(2 TIMESTAMP 1 0 2 1 0 1)

squeak ctrl+a/ctrl+home both report:
#(2 TIMESTAMP 1 0 8 97 0 1)





>
>
> 2014-06-30 9:31 GMT+02:00 Guillermo Polito <guillermopolito at gmail.com>:
>
>> There is an end key in many keyboards, but some others do not have it.
>> Can you (or better, How would you) have ctrl+end in keyboards that doesn't?
>>
>> Some VMs hardcoded that Ctrl+a = ctrl+home and Ctrl+d = Ctrl+end because
>> that's how old terminals work... Now, why have hardcoded ctrl+a = ctrl +
>> home, if you can just add a keybinding to ctrl + a?
>>
>>
>> On Mon, Jun 30, 2014 at 8:55 AM, Nicolai Hess <nicolaihess at web.de> wrote:
>>
>>>
>>> 2014-06-29 16:34 GMT+02:00 Denis Kudriashov <dionisiydk at gmail.com>:
>>>
>>> Hi
>>>>
>>>> hasSpecialCTRLKeyValue was extracted by me when I hack keybindings to
>>>> make ctrl+home and ctrl+end working. Like you I was very surprised by such
>>>> keyboard events crappy state.
>>>>
>>>>
>>>
>>> So, having ctrl+end and ctrl+d working at the same time is not possible?
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>>
>>>>
>>>> 2014-06-25 11:22 GMT+04:00 Nicolai Hess <nicolaihess at web.de>:
>>>>
>>>> 2014-06-25 8:58 GMT+02:00 Guillermo Polito <guillermopolito at gmail.com>:
>>>>>
>>>>> There is a problem in the whole keyboard events: they treat keys as
>>>>>> characters and vice versa. And that's not always true:
>>>>>>  - the backspace key is a key, but currently the image interprets it
>>>>>> as a character because we only use keypress events in general.
>>>>>>  - the shift key is a key, and since current image does not use keyup
>>>>>> nor keydown, we cannot know if JUST a shift is pressed normally.
>>>>>>
>>>>>>
>>>>>> On Wed, Jun 25, 2014 at 8:53 AM, Sven Van Caekenberghe <sven at stfx.eu>
>>>>>> wrote:
>>>>>>
>>>>>>> I don't know anything about event handling, but I once had a look at
>>>>>>> Character constants, and found this:
>>>>>>>
>>>>>>> Character class>>#home
>>>>>>>   ^ self value: 1
>>>>>>>
>>>>>>> How about that ?? This is wrong IMHO, ASCII / Unicode value 1 is SOH
>>>>>>> (Start of header), sometimes typed as CTRL-A. And there are other strange
>>>>>>> constants like that there.
>>>>>>>
>>>>>>> On 25 Jun 2014, at 08:42, Tudor Girba <tudor at tudorgirba.com> wrote:
>>>>>>>
>>>>>>> > Hi,
>>>>>>> >
>>>>>>> > I am on Windows, using Pharo 3.0, and I am trying to get the
>>>>>>> keybindings to work in Rubric using Windows convention (so, Ctrl instead of
>>>>>>> Cmd as a modifier),
>>>>>>> >
>>>>>>> > It worked reasonably well, but the problem is that somehow Ctrl+a
>>>>>>> is mapped to Ctrl+Home. The problem is not specific to Rubric as I can
>>>>>>> detect the same behavior in the regular PluggableTextMorph.
>>>>>>> >
>>>>>>> > Does anyone have an idea of where the problem comes from?
>>>>>>> >
>>>>>>> > Doru
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>> > --
>>>>>>> > www.tudorgirba.com
>>>>>>> >
>>>>>>> > "Every thing has its own flow"
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>> ctrl+a has the same strange behavior as ctrl+d
>>>>> ctrl+a -> ctrl+home
>>>>> ctrl+d -> ctrl+end
>>>>>
>>>>> look at KeyboardEvent>>#hasSpecialCTRLKeyValue
>>>>> I am not exactly sure why it is handled that way.
>>>>> Replace the method with
>>>>>
>>>>> hasSpecialCTRLKeyValue
>>>>>     ^ self controlKeyPressed and: [ keyValue <= 26 ]
>>>>>
>>>>> now, ctr+a and ctr+d working as expected.
>>>>> But I don't know about the side-effects.
>>>>>
>>>>>
>>>>> nicolai
>>>>>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20150515/d98ff471/attachment.htm


More information about the Vm-dev mailing list