... defined some keys to have alt or ctrl states

I’m not sure if this is a new behavior in Keyman Developer 14. When I switch from Layout (Code) to Icon, Build, etc a message comes up saying:
“You have already defined some keys to have alt or ctrl states. If you continue, these shift states will be converted to left-alt and left-ctrl respectively.
Continue and convert shift states?”
I do have a few keys which I deliberately defined as CTRL or ALT rather than LCTRL/RCTRL or LALT or RALT, so that either the left or the right keys could be used. Does this no longer work?
It doesn’t seem to make any difference if I click on OK or Cancel. When I click on OK (i.e. to convert shift states) no changes are made in the KMN file.
What is the idea behind this? Thanks!

I just downloaded the stable version of Keyman Developer 14 and tested this again.
Now Keyman Developer realizes that changes have been made and asks me if I want to save the changes when I quit Keyman Developer. Good!

Not so good, however, is the following:

  • Keyman Developer not only changes CTRL to LCTRL and ALT to LALT, but it also deletes any comments on that line! Very naughty!
  • In addition it changes any U+xxxx codes after the wedge to the actual character, which makes especially combining characters hard to read.
  • And finally, if CTRL stands behind another character in a statement it is not changed to LCTRL. Thus, e.g.
    + [SHIFT CTRL K_COMMA] > ‘‘’ is changed to + [SHIFT LCTRL K_COMMA] > ‘‘’
    but
    ’‘’ + [SHIFT CTRL K_COMMA] > ‘“’ remains unchanged

Thanks for looking into that.

I still don’t quite understand why Keyman Developer actually wants to change CTRL to LCTRL and ALT to LALT. Is this described somewhere?

(I was trying to attach a screenshot to make things clearer, but haven’t found out if and how I could do that.)

Sorry that you experience this issue. Could you send the keyboard to us so that we can try and repro this behavior? Send it to our team here. Thanks.

I sent you a reply on the link you gave me. I hope you got it.

Yes, we got it. Thanks.

I understand why this is happening, and it shouldn’t be happening. It’s because the keyboard editor is trying to display a visual version of your keyboard: the visual editor has a limitation where you can either use left/right modifiers (aka “chiral modifiers”) or undifferentiated modifiers – not both, because it’s too hard to represent both visually.

However, the keyboard is too complex to display visually, and this message should only be appearing in the visual editor context.

Certainly that deleting of comments and the change of character code display is a hassle also – although that would be avoided if Keyman Developer simply didn’t try and convert your modifier keys.

I’ve opened an issue and hope to investigate and resolve this one soon: bug(developer): chiral modifier warning should only appear when switching to layout design view · Issue #4803 · keymanapp/keyman · GitHub

We have a fix implemented for this that will land soon – it doesn’t do everything but it does eliminate the annoying nag dialog every time you switch tabs and makes it much more optional. See #4934 for more detail.