86

On Linux, the Compose key is a great way to enter many symbols. E.g.

  • em-dash — by pressing Compose then - - -
  • ö by pressing Compose then : o
  • Euro € by pressing Compose then C =

(The Compose key function can be assigned to various keyboard keys, such as right/left Alt, right/left Windows key.)

I really miss the Compose key when using Windows. I've looked but so far haven't found any way to get equivalent Compose key functionality on Windows. Does anyone know of how to do it?

sam hocevar
  • 1,349
  • 11
  • 15
Craig McQueen
  • 1,209
  • 1
  • 9
  • 19

8 Answers8

88

Though this is an old question, many others probably stumble upon it via a Google search. So about 4 years after it's been asked, I figured a few more options do exist. I couldn't test them all (at home I have no Windows but those for light and fresh air -- and at work I cannot access e.g. Dropbox to download the archives of some), but here's a short list:

  • AllChars: Last updated in 2009, but still seems to work up to Vista. Additionally offers "macros", which one cannot disable or edit on Vista, so the pre-defined ones might get in your way (not that likely, but they might). Update: After having used it for a while, I encountered some strange effects I attribute to this app (as they didn't happen before I installed it). No pattern in regularity, but sometimes my keyboard seemed to be messed up, CAPS inverted, some keys not working. Might be something else, though – but I didn't have that before. Update 2: None of the side-effects encountered since I switched to...
  • WinCompose: No extra gimmicks like macros or the like, but that's not what we're looking for here :) Seems to use the very same layout I'm used to on Linux. Need some longer testing, but after one day it's already my favorite candidate here. Edit: Half a year later, it's still my favorite. Easy to install, runs stable, no side-effects, simply great! Update: Reportedly works from Vista to Win10. Still happy with it 3.5 years later :)
  • CKFW: Compose Key For Windows. Couldn't test it as I couldn't access Dropbox for download.
  • Unichars: I didn't test it due to the restrictions listed in this blog (doesn't work with all programs).
  • FreeCompose: Last release in 2011, though the dev claims it's still alive in the repos. It's supposed to work with most programs (PuTTY had trouble, but a patch is provided). Disadvantages: annoying beep when "composing", which cannot be switched off. Also compose sequences are not the standard ones. Advantages: You can define your own sequences, and the service can be de-activated while running (without exiting it).
  • USCompose is an alternative US keyboard layout, including some compose stuff. Not always matching the Linux compose key sequences.
  • Accent Composer: commercial; demo available. Not tried.
  • Compose-Keys: Claims to mimic the Linux compose key sequences (I missed a few, and not all of them seemed to work; sometimes one simply needs to "try until they do". Well, I have the same issue on Linux sometimes ;) Freely available at GitHub.
  • WebComposeKey: browser-based, cross-platform. Nice to learn what sequences are available :)
  • DIY: Microsoft Keyboard Layout Creator

This should give anyone in need a few additional options. I wonder if MS will finally built this functionality into their releases, where it belongs (note the "if", not "when")...

apaderno
  • 1,464
  • 3
  • 23
  • 38
Izzy
  • 3,665
  • 3
  • 26
  • 34
  • 4
    Hi. I think the problem with WinCompose was that it only shipped a 64-bit executable. This was since fixed in version 0.4.4. – sam hocevar Sep 03 '13 at 22:59
  • 1
    So you say I should give it another try? I'm currently using *AllChars*, which does its job (though I miss some customization possibilities). – Izzy Sep 04 '13 at 07:01
  • 17
    I humbly suggest you do, yes. I wrote WinCompose because no other alternative in your list satisfied me. I kept it as simple as possible but am totally open to suggestions for improvements. – sam hocevar Sep 04 '13 at 08:46
  • Ah, there comes the disclosure :) Thanks, Sam, will do. As I indicated, while *AllChars* does work for me currently, I'm not fully satisfied with it either. *WinCompose* especially sounds promising as (according to its project page) it uses standard compose sequences, which means no more messing up when switching between Linux and Windows ;) – Izzy Sep 04 '13 at 09:06
  • I tried Allchars yesterday on Windows 7 and it completely messed with my pre-existing compose-like keys `~^¨`. Also, its default settings didn't include any of the characters I was looking for (`ğşı`), although I guess it was editable. – Khaur Sep 04 '13 at 19:20
  • 2
    @Khaur I also used AllChars until today. Since I started using it, I sometimes noticed some strange behaviour (e.g. my keyboard was reacting strangely, as if inverting/messing up CAPS, and other things). After Sam's comment, I now gave WinCompose another try. Seems to work like a charm! No extra gimmicks (like macros etc), but I wasn't after gimmicks anyway :) Give me a few more days of testing before I update my answer, but currently WinCompose seems to be the first choice! – Izzy Sep 04 '13 at 19:26
  • 1
    @Izzy There is one feature of AllChars that I might miss: the option to try a case insensitive match if no matching combination was found. It's not standard Unix behaviour anyway, but it sounded neat. – Khaur Sep 04 '13 at 19:32
  • 1
    Yeah. But I rather like my keyboard behaving the same as on my own Linux machine :) Besides, WinCompose has some other neat features, like "early exits" when there will be no matching composition. – Izzy Sep 04 '13 at 19:34
  • 3
    I used AllChars for years under Windows XP, but now that WinCompose has come, it's the way to go. It does things exactly right. Thank you @SamHocevar! – Gilles 'SO- stop being evil' Mar 12 '14 at 22:04
  • 1
    I found this advice because I had a problem with Synergy, the Windows US international keyboard is not working. WinCompose looks like it's working great to replace this keyboard, even though the project page says Synergy is not supported! Thanks @SamHocevar – bonob Apr 20 '14 at 17:03
  • @bonob That's a good pointer, thanks! May I suggest you inform the dev about your finding, so he can correct the description? – Izzy Apr 21 '14 at 12:02
  • @Khaur an option to do case-insensitive matching was added in WinCompose 0.6.4. – sam hocevar Apr 24 '14 at 10:28
  • WinCompose FTW, for mine. The only thing I would put on a wishlist, is being able to use one of the 'M' keys (M1-M5) down the LHS of my keyboard as the Compose key (but I haven't found a way to do that in Linux, either). Keyboard is a Razer BlackWidow Ultimate. – GT. Jul 30 '14 at 00:58
  • 1
    +1 for WinCompose. Working nicely on Windows 10. – srs Dec 04 '16 at 18:35
  • The link for Microsoft Keyboard Layout Creator returns a _We are sorry, the page you requested cannot be found_ error. – apaderno Mar 11 '18 at 10:06
  • As of 08/20/2018, WinCompose doesn't work whenever the keyboard layout is switched to Russian, unlike the Linux version. – Evgeniy Aug 20 '18 at 15:08
  • Oh I remember the developer of WinCompose asking questions on SO how to render keyboard keys in the gui – Mark Jeronimus Apr 22 '19 at 10:55
  • 1
    Just want to add that WinCompose still seems to be under active dev, as it was recently updated (17th nov, 2019). It's my favourite, I just wish there was a way to change the sequence order to Key1-Compose-Key2, as that's what I'm used to from linux. – Jarmund Nov 18 '19 at 15:04
  • WinCompose - good idea, now I can type on this windrow like on my leetnux :) – frank42 Jun 24 '20 at 13:52
12

There are a couple of utilities to emulate the Unix-a-like key composition chords under windows. Allchars is one, which is also F+OSS, though I've not actually tried it myself yet (it is one of the many utilities in my "to try later" bookmark folder).

David Spillett
  • 23,420
  • 1
  • 49
  • 69
  • 1
    If I understand what it's saying on the web page, it can only be used to enter characters with value 0..255 that are in the computer's "default code page"—so really quite limited. – Craig McQueen Dec 08 '09 at 06:23
  • 2
    I've just tried the latest version, and it seems much more capable than the web page suggests. Perhaps the web page is quite out of date. Actually I think AllChars seems to hit the spot after all. – Craig McQueen Feb 04 '10 at 12:31
  • 3
    The current version looks like it's written in C#, with updates in 2009 - check out the SourceForge site: http://sourceforge.net/projects/allchars/ – David Pope Nov 17 '10 at 01:35
  • With a title like AllChars one would expect it to cover at least the basic latin script variants, but it fails at a simple ė (http://www.fileformat.info/info/unicode/char/117/index.htm). – relet Mar 28 '11 at 11:52
5

You can use United states-International keyboard layout, You can type accented characters easily without any special software.

` + a = à

' + c = ç

" + o = ö

I don't think you can use it for € and m-dash though

Haunted
  • 59
  • 1
  • 1
  • As a programmer, dead keys are not practical since with such I have to type ` + space to get the ` character, etc. I think a compose key is better. To write something like a book, though, this is good. – Alexis Wilke Jun 27 '23 at 22:46
5

On Windows, AllChars should do what you want. I have been using it for the exact purpose you describe for almost a year now.

Caveat: If you install AllChars and your keyboard starts to behave weirdly, try one of the other versions they offer, possibly the alpha/beta. They all seem to have different issues with the different versions of Windows out there. But one of them should work with whatever you use.

fmarc
  • 151
  • 1
  • 2
4

There's also Freecompose, found on code.google.com, but it has that annoying beep everytime you start compose mode.

syockit
  • 762
  • 1
  • 6
  • 17
3

Accent Composer looks promising, and I hope to try it some time.

Update:
Actually AllChars seems to do what I need (despite the web site saying it doesn't; I guess the web site's info is out-of-date compared to the latest version), and it's free. So I won't bother with Accent Composer.

Craig McQueen
  • 1,209
  • 1
  • 9
  • 19
2

Within MS programs (word, outlook, etc.) you can type ctrl + : o to get ö and ctrl + ` e to get è

.

  • 4
    Something that only works in one application is just frustrating. – Craig McQueen Mar 16 '17 at 22:02
  • 1
    As I stated, it works in the entire office suite, and I think it is valuable information. But you point is well taken. It would be nice if windows provided a universal solution that didn't require changing your keyboard layout. – Jeffery Williams Mar 24 '17 at 23:17
  • See https://support.microsoft.com/en-us/topic/keyboard-shortcuts-for-international-characters-108fa0c1-fb8e-4aae-9db1-d60407d13c35 – Anthony Ebert Nov 03 '21 at 09:35
-2

If I understand what the Compose key does in Linux, the Windows equivilant is to press Alt Gr along with a key such as A to produce á or Á, E to produce é or É etc.

You can also hold down the left Alt key along with a number code on the numerical keyboard which will produce many symbols such as

Alt+1 = ☺

Alt+2 = ☻

Alt+3 = ♥

Alt+4 = ♦

Alt+5 = ♣

Alt+6 = ♠

Alt+7 = •

Alt+8 = ◘

Alt+9 = ○

Alt+1,0 = ◙

There are thousands and after a quick look, I cannot find a complete list - I have found this guide that looks good - (and found it from this link) however there are many and you may find better.

Also, You can go in to Character map (either through Accessories or Run > "Charmap"), and click on a symbol and see what it's shortcut keystroke is - (it is not available for everything).

alt text

Gaff
  • 18,569
  • 15
  • 57
  • 68
William Hilsum
  • 116,650
  • 19
  • 182
  • 266
  • Mmm yes, m-dash can be got by holding down Alt and typing +2014 on the numeric keypad (possibly after setting a Windows registry setting to enable that function). But not intuitive like the Linux Compose key. And a bit difficult on a laptop. And doesn't work in Word. – Craig McQueen Nov 02 '09 at 02:49
  • All of these key combinations work in Word, I use them every day. For a laptop, if you do not have a full numeric keyboard, simply press numlock and you should have no problems using these combinations - they will not work using the standard number keys. – William Hilsum Nov 02 '09 at 02:52
  • 1
    Lucky you! I wish I had a '10' key. – dreamlax Feb 04 '10 at 03:17
  • `AltGr` is just a modifier key. Just like `SHIFT`, `ALT` and `CTRL`. Using `AltGt+` will actually send a specific keycode to the OS. The compose key feature works differently. It is software that "intercepts" *multiple* keycodes and forms a new code from that combination. This makes it possible to input a very large number of possible characters. – exhuma Oct 18 '11 at 12:12
  • @exhuma - Thanks for the down vote... The question stated Any equivalent on Windows - the ability to send symbols and what not by typing a keycode is the equivalent? – William Hilsum Oct 18 '11 at 16:33
  • 7
    You do misunderstand what `Compose` does. It lets you type characters not on the keyboard by entering an easy-to-remember sequence of two (sometimes more) characters, e.g. `Compose : o` to type `ö` or `Compose C =` to type `€`. Entering characters by numbers or other obscure specifications is nowhere near an equivalent. – Gilles 'SO- stop being evil' Nov 28 '11 at 21:06
  • 4
    The MS Windows character map is a joke. There is even not a search feature? – rds Dec 29 '11 at 12:40
  • 3
    @rds There is a search feature in the "Advanced view". – Craig McQueen Apr 11 '12 at 02:17
  • @CraigMcQueen Right! Thanks for showing me a checkbox I didn't see for the past 10 years (proof of a good ergonomy, I suppose). – rds Apr 11 '12 at 09:59