Hi,
I think this could be a bug in TextEditor>>#enclose:. On a Qwerty keyboard, everything might work as expected. But for example on a Qwertz keyboard, none of '{}|"<>' is entered by holding shift and pressing one of the keys for '[]\'',.'.
But I do not really understand this method fully: When is this shift transformation ever used? At least in my image (running on Win10), KeyboardEvent>>#keyCharacter always respects the shift state and directly returns $( or similar values. Disabling this section does not appear to change any observable behavior. Is this OS specific or even keyboard layout specific, or is #enclose: out of date?
In case the section is still relevant: Does Squeak currently has any logic regarding the local keyboard layout? If not, a simple approach might be to introduce a keyboard layout preference and to define a default dictionary for these shift replacements per keyboard layout.
Looking forward to your answers :)
Best,
Christoph