FrameworkComputer / EmbeddedController

Embedded Controller firmware for the Framework Laptop
BSD 3-Clause "New" or "Revised" License
957 stars 64 forks source link

Add fn key combinations to emit international keyboard keys #51

Open Jules-Bertholet opened 2 weeks ago

Jules-Bertholet commented 2 weeks ago

Maps fn+Z to the ISO 102nd key, fn+/ to the extra key left of right shift on Brazilian and Japanese layouts, and fn+= to the JIS Yen key. This allows full use of ISO and Brazilian layouts on ANSI, ISO, or JIS keyboard hardware. (Alternately, users can remap these keys in the OS to whatever function they prefer.)

JohnAZoidberg commented 1 week ago

Is there precedent for other keyboards to do this? Do you use this and find it useful?

Jules-Bertholet commented 1 week ago

I don’t know of any existing keyboard that does this, no. But yes, I would use it if it was available (likely by remapping the keys to custom actions/layers).

JohnAZoidberg commented 1 week ago

Hmm, if this mapping is not standard, I don't think it would be very popular to use. It's more like a personal keyboard layout that you made for yourself.

Best would be if we can get opinions from Brazilians or Japanese people. We're not shipping to these countries yet, we'll keep it in mind for when we launch there.

Jules-Bertholet commented 1 week ago

The fn+Z to the ISO 102nd key mapping is relevant to anyone with ANSI (US QWERTY) keyboard hardware that occasionally uses an ISO layout (all European layouts, Chinese, Korean, etc).

Also, these mappings are not chosen randomly or by my personal preference, but based on what is the closest key to the one being emulated. For example, Z is directly to the right of Left Shift on non-ISO layouts, so fn+Z maps to the 102nd key that is directly to the right of Left Shift on ISO layouts. The slash key is to the left of Right Shift on non-JIS or Brazilian layouts, so fn+/ maps to the extra key to the left of Right Shift on JIS and Brazilian layouts. The = key is to the left of Backspace on non-JIS, so fn+= maps to the JIS Yen key that is to the left of Backspace. See the blue arrows on the image below:

iso keyboard

Jules-Bertholet commented 1 week ago

I’ve added mappings to the three JIS IME keys. Here is the full JIS set (only Z → ISO 102nd is omitted):

fwk jis