The magical Compose key: Type any accented letters using WinCompose without installing a new keyboard

Lenovo Yoga keyboard with AltGr key

I type in quite a few languages.

I used to install a new software keyboard on my computer for each new language I learn, because I wanted to type like a native. I even insisted to get a UK laptop, so that I would get the same number of keys as German or Swedish keyboards. But eventually, they added up, and it got tiring to switch between them—especially since I mostly switched between Chinese and English keyboards.

I noticed that a lot of people know how to type accented characters easily on their phones—by simply switching the software keyboard—but have problems once it comes to computers.

On Windows, some people copy and paste characters from sites or ‘online keyboards’, while others resort to the ancient Alt+numbers trick (which doesn’t even work on notebook computers without keypads).

And then I discovered the Compose key, and since then, computer keyboards have never been a hurdle in my language ambitions ever again.

What is the Compose key?

But first: the AltGr key

If you are from Europe, you may be familiar with the AltGr key. On many keyboards—US keyboards being the notable exception—it replaces the Alt key to the right of your space bar.

Basically, it works like another Shift key. While the Shift key activates the symbol on top of a key (or a capital letter), the AltGr key activates a 3rd symbol on a key, to the right of the main symbol.

For example, hold AltGr+E and you get é. In the UK, this is mostly used to type fancy French words like cliché and soirée. It also helps type the € symbol (AltGr+4).

Obviously, this is still a limited set of new symbols. After all, the most you can get out of this key is twice the number of symbols you originally have.

Let me introduce the Compose key.

AltGr on steroids

When you look at the letter é, it’s just an e with a tiny apostrophe on top of it. ê is just has a caret (^). œ is an o stuck with an e. Why can’t you just combine symbols like that to get the letter you want?

Well, you can. With the Compose key, you put two (or more) symbols together, and voilà (a + `), you get the letter you want.

The best part: the possibilities are infinite.


I’ll be demonstrating with WinCompose for Windows, but you can easily find equivalents on other systems.

WinCompose settings

Once you install WinCompose, it runs in the background, with a little icon in your taskbar’s tray. Right-click it and go to Options to customise the software.

Most importantly, pick which key to be your Compose key. This key will trigger the software and tell it to start watching what you type. By default, it’s the Right Alt key, aka AltGr on my keyboard, which will be performing double duty.

(This means I can type é either using AltGr+e at the same time, or AltGr and then e+’.)

I also recommend setting Keyboard LED to whichever key on your keyboard has a little light on it. It tells you when WinCompose is triggered and watching. (Otherwise you might accidentally trigger it and get very confused.)

Type in any language (in the Latin alphabet)

Aaaaand you can start typing! It’s as simple as Á-B-Ç:

  1. Whichever letter you want to type, try imagining what symbol (or letter) looks most like the accent/diacritic. For á, use an apostrophe. For ç, use a comma. Sometimes there are options: for č, you can go with either < or v.
  2. Press the Compose key (AltGr in my case) to trigger WinCompose. A light lights up, if you’ve set it to.
  3. Release the Compose key and start typing. Start with either the main letter (e.g. a) or the accent (e.g. ^). It doesn’t matter, as long as you put them both in.
  4. Profit!

You can now type in French, German, Spanish, Czech, Turkish, or any (Latin alphabet) language you want!

A warning if you have an AltGr key like me: remember to release the Compose key before inputting the sequence, or the system might register them as simultaneous and give you common letters like é and á.

What if I don’t know which keys to press?

Right-click the tray icon again, and select Show Sequences…

Scroll down to Unicode characters > Latin Extended. Most of the letters that you need to type in a foreign language will be there.

Sequences dialogue

Just look up whatever is in your language and learn it. Most of them are quite intuitive, and there are usually multiple ways to type the same letter.

You might also be interested in Currency Symbols or IPA Extensions. Before I had a UK keyboard, that’s how I typed £ (L + ) and € (C + =).

There are also some common patterns to learn, such as using ^ for superscripts (¹²³) and _ for subscripts (₁₂₃), or typing the same letter twice for things like ° (o twice) and inverted letters ə (e twice) and ɐ (a twice).

Knock yourself out and explore the sequences!

As I said the possibillities are endless—that includes sequences alone encompass things that hardly anyone would ever type regularly, such as obscure mathematical symbols or Tibetan vowel signs.

There are some fun ones though! You have a complete set of playing cards ?? and tons of emojis, if your system doesn’t already support typing emojis. (Hint: on Windows 10, it’s Windows key+.) Just scroll through the Sequences page.

For longer sequences, you usually have to press the Compose key twice to initiate the sequence. For example, ? is Compose key twice + smirking (the entire word).

I personally love using the kaomoji sequences such as ( ͡° ͜ʖ ͡°), (ノಥ益ಥ)ノ彡┻━┻, and most importantly, ¯\_(ツ)_/¯. They are Compose+lf (for ‘lenny face’), Compose+tf (for ‘table flip’), and Compose+sf (for ‘shrug face’) respectively. Easy to remember.

You can also type letters from other scripts with this, such as Greek, but if you’re actually typing Greek, you’re better off with a Greek keyboard.

The best part? You can create your own sequences! On the sequences page, click Edit under User-defined sequences to open this document:

User-defined sequences. Yes, that’s the entire Konami code for a silly kaomoji. ᕙ༼ຈل͜ຈ༽ᕗ

Just follow the pattern: hash (#), <Multi_key> (i.e. Compose key), and then whatever you like.

Happy typing!