<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hi Luciano,</p>
<div class="moz-cite-prefix">On 2026-01-15 5:21 AM, Luciano
Notarfrancesco via Cuis-dev wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CAL5GDyo-Yr7n=XGpjrWVBPDKx+aH=FRrrSA+SqQTEuA=p5DMXA@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">
<div dir="auto">Interesting, perhaps they do that in that
mechanical keyboard because Alt and Command have commonly the
same position in the keyboard? But they are conceptually
different keys, and mechanical keyboards usually have firmware
that can be set to Mac or PC mode with a keystroke, and
changes the flags that the modifier keys set in the HID codes
sent to the computer, right?</div>
</div>
</blockquote>
<p>I don't know if that's right. My Logitech mechanical keyboard may
allow that, but I never found the need. I use it with MacOS, and
virtualized Ubuntu and Windows. Have tweaked a bit keyboard
settings both @ MacOS and VMware level, though.</p>
<blockquote type="cite"
cite="mid:CAL5GDyo-Yr7n=XGpjrWVBPDKx+aH=FRrrSA+SqQTEuA=p5DMXA@mail.gmail.com">
<div dir="ltr">
<div dir="auto">I see that mostly Alt is identified with Option,
not Cmd. See for example the Alt page in wikipedia: <a
href="https://en.wikipedia.org/wiki/Alt_key" target="_blank"
style="font-size:inherit" moz-do-not-send="true"
class="moz-txt-link-freetext">https://en.wikipedia.org/wiki/Alt_key</a></div>
<div dir="auto">Or Apple documentation: <a
href="https://developer.apple.com/documentation/uikit/uikeymodifierflags?language=objc"
style="font-size:inherit" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">https://developer.apple.com/documentation/uikit/uikeymodifierflags?language=objc</a></div>
</div>
</blockquote>
<p>You're right! I had forgotten I had configured MacOS to swap
option and command on my Logi keyboard. The MacBook keyboard swaps
their position, and the inconsistency between both keyboards was
driving me insane.</p>
<blockquote type="cite"
cite="mid:CAL5GDyo-Yr7n=XGpjrWVBPDKx+aH=FRrrSA+SqQTEuA=p5DMXA@mail.gmail.com">
<div dir="ltr">
<div dir="auto">I think the use of the keys in Cuis is a good
tradeoff, I’m not proposing to change the editor shortcuts or
any shortcuts that people are used to (and they are
user-configurable anyway). But I’d like to have more
consistent access to modifier keys across Mac and PC, and use
them properly in my software following UX best practices and
conventions. For example the tracker I’m developing, as most
trackers, is very keyboard-oriented, and with good and
consistent keyboard mappings the workflow can be very smooth
and you can program songs super fast. I’d also like to use
mostly the same shortcuts that Renoise uses in both Mac and
PC.</div>
</div>
</blockquote>
<p>Supporting that kind of use is our top priority. I mean it.</p>
<blockquote type="cite"
cite="mid:CAL5GDyo-Yr7n=XGpjrWVBPDKx+aH=FRrrSA+SqQTEuA=p5DMXA@mail.gmail.com">
<div dir="ltr">
<div dir="auto">That’s why lately I found the need to both
primary and secondary hotkeys, that are usually implemented
with Command and Option on Mac and Control and Alt on PC. So I
need separate access to modifier keys.</div>
</div>
</blockquote>
<p>Makes sense! (*1) (See below)</p>
<blockquote type="cite"
cite="mid:CAL5GDyo-Yr7n=XGpjrWVBPDKx+aH=FRrrSA+SqQTEuA=p5DMXA@mail.gmail.com">
<div dir="ltr">
<div>I think we can actually do this in Cuis without disrupting
the existing mapping. What confused me was the idea that we
shouldn't use the Option key in Cuis because it's not
portable, and the fact that the VM translates Alt as Command
in Windows. Looking at the VM source code for each platform, I
see we have the following modifiers in Cuis/Squeak: Control,
Command, Option, Shift. This follows Mac naming conventions,
but it is internally consistent in Cuis even in Windows
platforms. What the VM does in Windows is to map Alt to
Command, Control without Alt to Control, and Control+Alt to
Option. </div>
</div>
</blockquote>
<blockquote type="cite"
cite="mid:CAL5GDyo-Yr7n=XGpjrWVBPDKx+aH=FRrrSA+SqQTEuA=p5DMXA@mail.gmail.com">
<div dir="ltr">
<div>This is why Alt seems to be the same as Command, they are
not originally the same, it's just a translation made by the
VM. </div>
</div>
</blockquote>
<p>I wasn't aware of this.</p>
<blockquote type="cite"
cite="mid:CAL5GDyo-Yr7n=XGpjrWVBPDKx+aH=FRrrSA+SqQTEuA=p5DMXA@mail.gmail.com">
<div dir="ltr">
<div>So I don't think the Option key should be forbidden as
"unportable", and we could use it more freely to have richer
hotkeys and gestures. For example, instead of
rawMacOptionKeyPressed I think it should just be called just
optionKeyPressed, and remove warnings or references to Mac
regarding the Option key because it is actually a Squeak/Cuis
modifier key. </div>
</div>
</blockquote>
<p>Makes sense. I'd still include a comment saying "to generate
this, use [control]+[alt] on Windows and Linux".</p>
<p>The reason I made it scary to use Option is that I assumed that
anyone happily developing on a Mac was at risk of writing software
with features that would only be accessible on a Mac. But if
there's a way to generate it on Windows and Linux, I'm all for it.
Please prepare a cs doing as you say.</p>
<blockquote type="cite"
cite="mid:CAL5GDyo-Yr7n=XGpjrWVBPDKx+aH=FRrrSA+SqQTEuA=p5DMXA@mail.gmail.com">
<div dir="ltr">
<div>Same for the Command key, currently the selector
commandAltKeyPressed seems too platform-specific, I think
calling it just commandKeyPressed would be more appropriate
for Cuis (it is the internal Cuis modifier key, not the
platform key). What do you think?</div>
</div>
</blockquote>
<p>I'm not so sure about this one. On Linux and Windows, the way to
generate that is the Alt key. Removing that could be a bit
alienating to Linux and Windows users.</p>
<p>I'd like to go back to something you said above (*1). I think we
need the concept of primary and secondary modifier key. We need
something like #isPrimaryModifier and #isSecondaryModifier, or
whatever names suit you and additional functionality you may need.
These would be platform specific and behave as you described. Are
you willing to write this code? I'd be delighted to integrate it.</p>
<p>Thanks!</p>
<blockquote type="cite"
cite="mid:CAL5GDyo-Yr7n=XGpjrWVBPDKx+aH=FRrrSA+SqQTEuA=p5DMXA@mail.gmail.com">
<div>
<div>
<div><br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Wed, Jan 14, 2026 at
22:05 Juan Vuletich <<a href="mailto:juan@cuis.st"
target="_blank" moz-do-not-send="true"
class="moz-txt-link-freetext">juan@cuis.st</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)">Hi
Luciano,<br>
<br>
The thing is that "Alt" and "Command" are actually the
same key! <br>
Keyboard hardware for regular PCs and Macs is
electronically equivalent. <br>
For instance, click on the first picture at <br>
<a
href="https://www.logitech.com/en-us/shop/p/mx-mechanical"
rel="noreferrer" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">https://www.logitech.com/en-us/shop/p/mx-mechanical</a>
. The 3 keys at the <br>
bottom left are [ctrl] [option|start] [command|alt] ,
with dual PC/Mac <br>
names engraved on them.<br>
<br>
The decision here is between being more consistent with
the platform, or <br>
making Cuis more consistent with itself, regardless of
the platform. The <br>
use of Morphic, and not a platform specific UI toolkit
suggests the <br>
second option, and it has been what we have done so far.<br>
<br>
In any case, on Text Editors things like cmd-a and
ctrl-a behave the <br>
same, both doing "select all". That's the easiest way to
make it <br>
consistent for everybody, but that wastes key
combinations!<br>
<br>
But we can change that.<br>
<br>
I guess it could be useful to start with some concrete
examples that you <br>
think should behave differently than they do today. Can
you suggest a few?<br>
<br>
Thanks!<br>
<br>
On 2026-01-14 4:35 AM, Luciano Notarfrancesco via
Cuis-dev wrote:<br>
> In Cuis we are equating the Command key in Mac with
the Alt key in PC. <br>
> I think this is wrong, the convention for
multiplatform applications <br>
> is to identify Command in Mac with Control in PC
(although Mac also <br>
> has Control), and Alt is identified with Option
(they are used to <br>
> modify the behavior of the hotkey or gesture, i.e.
to provide an <br>
> alternate action or a second option in addition to
the primary action).<br>
><br>
> Is there a good reason for this in Cuis? Does
Squeak do something <br>
> different? Should we change it to make it more
consistent with <br>
> conventions?<br>
><br>
-- <br>
Juan Vuletich<br>
<a href="http://www.cuis.st" rel="noreferrer"
target="_blank" moz-do-not-send="true">www.cuis.st</a><br>
<a href="http://github.com/jvuletich" rel="noreferrer"
target="_blank" moz-do-not-send="true">github.com/jvuletich</a><br>
<a href="http://researchgate.net/profile/Juan-Vuletich"
rel="noreferrer" target="_blank"
moz-do-not-send="true">researchgate.net/profile/Juan-Vuletich</a><br>
<a href="http://independent.academia.edu/JuanVuletich"
rel="noreferrer" target="_blank"
moz-do-not-send="true">independent.academia.edu/JuanVuletich</a><br>
<a
href="http://patents.justia.com/inventor/juan-manuel-vuletich"
rel="noreferrer" target="_blank"
moz-do-not-send="true">patents.justia.com/inventor/juan-manuel-vuletich</a><br>
<br>
</blockquote>
</div>
</div>
</div>
</div>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
</blockquote>
<pre class="moz-signature" cols="72">--
Juan Vuletich
<a class="moz-txt-link-abbreviated" href="http://www.cuis.st">www.cuis.st</a>
github.com/jvuletich
researchgate.net/profile/Juan-Vuletich
independent.academia.edu/JuanVuletich
patents.justia.com/inventor/juan-manuel-vuletich</pre>
</body>
</html>