Change Command Level of Existing Layout?

27 views
Skip to first unread message

Tom Gewecke

unread,
May 4, 2021, 4:42:12 PM5/4/21
to ukelel...@googlegroups.com
Is there any way to easily change just the Command level of an existing non-Latin Apple layout so as to make keyboard shortcuts work as they do with the normal US layout, without modifying each key individually? Divehi was the one I was looking at.

Sorin Paliga

unread,
May 4, 2021, 4:52:41 PM5/4/21
to ukelel...@googlegroups.com
This is a very good question, and I would have the same question even for some Latin-based keylayouts, e.g. mine for Czech, in which + is at the level option-shift-L because the normal location, the last key on the upper row is occupied by é É ě Ě put there from practical reasons.
The result is I cannot access Command + and Command -, I thought they remain there when pressing Command, but they do not!
So, good question!

> On 4 May 2021, at 23:42, Tom Gewecke <thge...@gmail.com> wrote:
>
> Is there any way to easily change just the Command level of an existing non-Latin Apple layout so as to make keyboard shortcuts work as they do with the normal US layout, without modifying each key individually? Divehi was the one I was looking at.
>
> --
> You received this message because you are subscribed to the Google Groups "Ukelele Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to ukelele-user...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/ukelele-users/B6C45401-BB3F-4A89-862A-EC0336AD3759%40gmail.com.

John Brownie

unread,
May 5, 2021, 1:34:05 AM5/5/21
to ukelel...@googlegroups.com
An interesting question. There are potentially a couple of solutions,
neither of which is as simple as you might want.

The first is to create a new modifier set, matching command, at the end
of the current list. This would work, as the specification says that the
last match in the list is the set that is chosen. Then you could make it
use the QWERTY layout. You would then have to fill in the non-alphabetic
characters. You could delete the old matching set afterwards.

The second solution would be to use sticky modifiers to get to the
command set, then temporarily change your active keyboard layout to US,
and then use the quick input mode to run through all the keys. One thing
to watch out for here is that output for some keys or the entire command
level may be linked to output at another level, so you may need to
unlink the modifier set before making the change.

Hopefully one of those two would get what you want with fairly minimal
effort.

John
--
John Brownie
Mussau-Emira language, New Ireland Province, Papua New Guinea
Kouvola, Finland

Gé van Gasteren

unread,
May 5, 2021, 3:32:46 AM5/5/21
to ukelel...@googlegroups.com
John,

What’s the best way to check if keys or modifier sets are linked?
Maybe looking at the XML would work well, if one knows the pattern to look for?

--
You received this message because you are subscribed to the Google Groups "Ukelele Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukelele-user...@googlegroups.com.

John Brownie

unread,
May 5, 2021, 4:11:52 AM5/5/21
to ukelel...@googlegroups.com
I can't think of a quick way of finding it out. In the XML, it would mean that the same action is assigned to a key in more than one level.

On the other hand, there's not a lot of cost in just unlinking anyway. At worst it makes the XML file more complicated than it might otherwise be, but that only becomes a factor when it gets compiled, usually when you log in or otherwise load the keyboard layout. The difference there is going to be milliseconds, I would imagine.

John

Gé van Gasteren wrote on 5/5/21 10:32:

Gé van Gasteren

unread,
May 5, 2021, 6:02:12 AM5/5/21
to ukelel...@googlegroups.com
Thanks, then all the steps for the procedure are clear.

Tom Gewecke

unread,
May 5, 2021, 6:30:26 PM5/5/21
to ukelel...@googlegroups.com


> On May 4, 2021, at 10:33 PM, John Brownie <john_b...@sil.org> wrote:
>
> The second solution would be to use sticky modifiers to get to the command set, then temporarily change your active keyboard layout to US, and then use the quick input mode to run through all the keys. One thing to watch out for here is that output for some keys or the entire command level may be linked to output at another level, so you may need to unlink the modifier set before making the change.

I had never noticed the Quick Entry Mode before I tried this on a copy of the Divehi layout, it only took a couple minutes, and seems to work fine, this keyboard now has the usual Command key shortcuts

Thanks!


Reply all
Reply to author
Forward
0 new messages