

Linux Compose Key - sivers
http://sivers.org/compose-key

======
windsurfer
What's even better about the compose key is you don't need to remember the
order, either. The two keys in combination can be entered in either order. Oh,
and most systems also set up the compose key so you don't need to hold it down
while you press the other keys.

------
ntoshev
So, in Ubunu 9.04 you can pick a compose key by going to:

System | Preferences | Keyboard | Layout | Layout options | Compose key
position

~~~
Hexstream
Also works in Ubuntu 8.04, it's apparently not a new feature.

------
djcapelis
The "Setting up more compose sequences" of
<http://canonical.org/~kragen/setting-up-keyboard.html> is also helpful. (I
don't use those exact sequences, some of them make little sense to me... but
it's nice to see a bunch of examples on how to create your own.) The compose
key is one of my favorite underutilized features in Linux.

~~~
kragen
I'm maintaining a larger supplementary compose file at
<http://github.com/kragen/xcompose> now.

~~~
djcapelis
Thanks for the pointer!

------
cnvogel
> On Linux, though, they have the most > brilliant intuitive way of doing this

Those who don't know history are doomed to repeat it ;-). I have had Compose
keys, even labeled as such, on my keyboards since the dark ages. Get a Sun
Type 7 Keyboard w/ USB if you want it on your day-to-day PC.

------
ramidarigaz
Woah! Never knew about this! I find myself having to type foreign currencies
all the time, so this will be way handy.

Great post!

------
blahedo
Oddly enough, vim has had this functionality for ages (at least since the
mid-90s; ^K triggers it as the "compose" key), but they broke it in a
fundamental way during an "upgrade" a few years back. Originally, the
compositions were as described by Mr. Sivers: just the pair of keys you'd
expect, for instance a + ^ to get â. But then, for no apparent reason, they
changed all the defaults to totally unobvious things: it's now a + > to get â,
and a + ! to get à, and a + ? to get ã. You can reprogram your own, but the
whole _point_ of the system was that you'd just _know_ , which is no longer
true, alas.

------
alan_p
I've actually never used the Compose feature in Linux.

I prefer dead keys for accents for ease of typing (though it does tend to get
hard to remember where you put dead_ogonek when you're not using it on a daily
basis) so I naturally just set up my own xkb map. This ceases to be helpful
when you're not only adding punctuation or alternate scripts but special
symbols or letterforms as well (okay, so the Russian "i" could be on the "I"
key for phonetic typing or on the "N" key for what it looks like, but where
would you put "left arrow" or "double dagger" or even "logical not"?).

I think the same holds true for the compose key, tho: it's easy to remember "o
+ / = ø" (or was it "o + -" or even "o + |"? With the kind of redundancy in
the compose table, all three probably work), but how do you deal with
conceptually similar glyphs like "a with dot below" and "a with dot above"?
What about glyphs that looks similar? Once you have to enter a glyph that's
rarely used, you'll have to look it up -- and then it'd probably be easier to
use a char map unless you're going to use it a lot.

------
chanux
In ubuntu I tried to add my own bindings to some unicode symbols with the help
of <https://help.ubuntu.com/community/ComposeKey>.

But compositions I add doesn't seem to work for me.

Tried adding

<Multi_key> <less> <B> : "♥" love # LOVE

Any help please?

------
bgovern
I've been using the auto correct functionality since Word 2.0 to do the same
thing. Granted, it doesn't work well when you need to type the character in a
post on a message board, but 95% of my need is in Word Processing Programs and
Spread Sheets. So, 5 minutes of effort turns (c) to © and (s) to § forever.

~~~
pbhjpbhj
The Ubuntu page shows that fourth level characters are available as standard
for © (AltGr+Shift+C) and § (AltGr+Shift+s.

When I was on windows I used the Alt+NumPad unicode method.

Anyone know how to set the compose key from standard Kubuntu 9.10?

~~~
alan_p
Having an AltGr (third-level chooser) key on my native language keyboard, I
was quite surprised to see Ubuntu (Linux in general? It's all in xkb's symbols
layout anyway) have not only third level glyphs on way more keys than I was
used to from Windows (AltGr+Q = @, AltGr+E = €, etc) but also fourth level
glyphs (AltGr+Shift+...). Sadly a lot of them are pretty useless (e.g. the
many "logical negation" keys -- I guess they used them in place of None).

------
apotheon
Yeah, I wrote one of these compose key intros a while back, too:

<http://sob.apotheon.org/?p=814>

. . . and it's not just for Linux.

------
GeoffWozniak
> On Mac... I never did memorize all of these combinations...

Isn't that what Keyboard Viewer is for?

[http://docs.info.apple.com/article.html?path=mac/10.4/en/mh2...](http://docs.info.apple.com/article.html?path=mac/10.4/en/mh2325.html)

------
bumblebird
On Mac you can also just enable the character palette, then you can click on
it in the topbar and have instant access to all unicode chars which you can
then insert.

I don't think the compose key would be intuitive for me. I'd rather select
from a palette.

~~~
dhimes
It gets slow that way if you do it a lot. I've been entering unicode in vim
(ctrl V u xxxx) and keep a list of the frequently used nearby. But this looks
even better.

------
trebor
AllChars on a Windows laptop is a total lifesaver! I lost all my escape codes
due to disuse and had to resort to the character viewer.

------
leif
Always thought 3rd-level and Compose were the same thing. This is much, much
better; thanks!

------
arthurk
It would be even better with an Optimus Maximus keyboard[1] that has OLED
keys. But it's still at $1700 :-(

[1]: <http://www.artlebedev.com/everything/optimus/>

------
rbanffy
I still prefer the dead-keys way of doing this.

------
niczar
I use the otherwise useless CapsLock key as my compose key. Works like a
charm: << « >> » ^0 ° ,c ç `e è "i ï /o ø

~~~
pbhjpbhj
WHAT MAKES YOU SAY CapsLock IS USELESS?

