While our keyboards come configured with a standard QWERTY layout out of the box, it's still completely possible to use them for other languages or even multiple languages. It just requires a bit of setup. For some additional background on why this setup is necessary, see our article about how keyboards and computers interact.
Enabling keycodes and inserting them into your layout
First, double-check which language your OS is using for your keyboard. If you want to type in Belgian for example, you'll need to be using a Belgian keyboard layout. This setting is usually in your system settings under “Keyboard”.
Then, in Oryx, you'll need to enable your respective language's keycodes by going to Advanced Settings → International (If you don't see your language, we cover what to do in our article about unsupported languages). Here is what it would look like with Belgian keycodes toggled on.
Finally, you'll need to look for any language-specific characters and replace them in your current layout. For some layouts, like British English, this only involves a few changes. For other languages, like French AZERTY, there will be lots of characters that are different, even some standard letters.
Searching for existing layouts in your language
To help get started or to double-check your key reassignments, you can search for other users' layouts in Oryx. Simply click "More Layouts" at the top and you'll be taken to a search. The "With tour" checkbox will be enabled by default. You can try searching for layouts tagged with your language that have tours, but there may be very few or no results. Tours are great for more general layout inspiration, but for this simple key setup, a tour isn't usually needed, so you can uncheck that.
Wow, that's a lot of layouts! Which one should you choose?
It doesn't matter very much. If you're going to use another layout as the basis for yours, you'll probably want to make plenty of changes anyway, so just look for one that has the key assignments you need, and then you can delete any extra layers and keys that you won't use. You could also simply pull up one of these layouts side-by-side with your own layout and compare them to make sure you've already remapped all the keys you need remapped.
Non-American-English layouts on macOS
Apple likes to do things its own way. In the case of keyboard layouts, many default layouts for various languages are slightly different from their Windows and Linux counterparts. This might mean you get everything set up and when you go to type certain symbols, they output the wrong thing. Gah! This is why you might see "Compatible with Windows/Linux only" on certain international keycode toggles in Oryx. This is not a strict incompatibility, though. It's all just keycodes. We can still make this work with some more configuration.
Using the PC or Standard layout
Some languages in macOS have a layout that is labeled “– PC" or “– Standard". Usually, this is the layout you will want to use. It changes the key mappings back to their standardized places and should work better with the keycodes available in Oryx.
German is a good example. When choosing a German layout, there are a few options, but the most important two for our purposes are "German" and "German – Standard". "German" is the default layout for any macOS computers in Germany, but "German – Standard" has the more accepted arrangement of keys, and it should be used with our boards.
To change your layout, first you'll need to add it in the macOS Keyboard System Settings.
Then, make sure to switch to the correct layout in the toolbar as well. This step is easy to forget!
A special note on German and Spanish: Even though our macOS setup guide recommends choosing ANSI for your keyboard type, German and Spanish are unique cases and you will usually want to choose ISO instead. If you accidentally chose the wrong one, you can always trigger this setup process again by going to System Preferences → Keyboard and hitting “Change Keyboard Type...". After you change your keyboard type, you may need to restart your computer for this to take effect.
This works great for some languages, but what about those without a "Standard" layout option?
Manually configuring keys
The majority of your language's keycodes should still work, even on macOS without a standardized layout option. There may just be a handful of symbols that either don't work or output the wrong thing, though. To solve this, we just need to configure them manually.
To configure a symbol manually, look up what key combination produces it (you may already know this from experience). For example, let's say you want to create a key that will send "Æ" in Danish. This character is normally done with Shift + æ
, but you can also make a dedicated key for it. To create this key, you would first assign æ (dk)
to a key, then add the Shift
modifier to it. This key would then always send "Æ" when hit.
There may be one additional layer of setup required depending on your layout. You may need to use the American English character in place of your own language's version of that character. For example, the German "ö" character is in the same physical place as the “;" character on the standard QWERTY keyboard. This is a good sign that they share the same keycode.
If you wanted to create a key that sends "Ö" specifically, you could either set it up as Shift + ö (de)
or Shift + ;
(not ; (de)
). Then, as long as your OS is set to German, even the QWERTY key will still produce the corresponding German character.
You can also use custom labels here to name the key what it will actually output rather than the shortcut.
Note: This is required when configuring macros with international characters. Some characters in ISO layouts don't have a clear equivalent in an ANSI QWERTY layout. If you're having trouble with this, you may need to assign either the Non-US \ and |
key or the Non-US # and -
key. These keys are usually equivalent to the extra keys near Return
and Left Shift
respectively in ISO layouts.
Switching between multiple languages
If you need to switch which languages you type in regularly, it's certainly possible, but it can get fairly complicated. There are three main ways to set this up:
Using Unicode input
Unicode can work well in some circumstances, but it requires a lot of setup and it will not be consistent across operating systems, so it's not a method we recommend most of the time. However, if you only use one OS and you just need occasional access to a few characters not in your layout by default, Unicode can be a good solution. We cover how to set this up in our post about Oryx macros.
Switching languages using only software
This is the preferred method. It is more challenging to get used to initially, but it will ultimately be easier and more flexible. Basically, it is using the same method covered in the "Languages that are seemingly unsupported" section. You would set up your primary layout exactly how you want it, and then when you need to switch, you only change your OS layout.
This involves being familiar with certain equivalent keys across your languages' layouts. For example, if you are switching from German to English, and you had a primarily German layout set up, then you would need to remember that typing ö
is how you get “;" in English. This really isn't as tricky as it might seem, though. Many keyboard layouts have a lot of keycodes that send the same character no matter which language you're using, so it's mostly going to be remembering the differences for a small number of symbols. And again, you can always use custom labels in Oryx to help.
Switching languages in both firmware and software
If you would like to use multiple different languages' keycodes in a single layout, then you will need language-specific layers. Because of how similar a lot of languages are when it comes to letters, you can make use of transparent keys, and then you'll only need to change a few things rather than entire layers.
This option gets a little cumbersome because you'll need to both switch layers and switch layouts on your computer so that everything matches. This isn't that big of a deal once you get used to it, but it can be a little tricky to remember that switching languages requires two different keys instead of just one. If you switch back and forth between languages rapidly or regularly, the previous option will work better for you.
That's international setup! It can seem like a lot, but it's mostly straightforward in practice. That said, if you have any questions or aren't able to figure out why something isn't working, you can always email us at [[email protected])(mailto
@zsa.io). We're happy to help!