Short answer: IBus with
Ctrl+Shift+U ⇒ Emacs
C-x 8 RET
Emacs's support for more-than-8-bit character sets comes from MULE, which is about as old as Unicode (it derives from support for Japanese), and much older than widespread support for Unicode (in terms of programs supporting Unicode text, fonts, etc.). Good Unicode support came with GNU Emacs 23, which is the default version as of Ubuntu 10.04. Acceptable Unicode support came with GNU Emacs 22, which was the default version as of Ubuntu 8.04. Prior versions did have some support for Unicode, but it was more common to run into bugs or limitations.
Emacs doesn't use Gnome, so you can't use Gnome input methods in it. For example, Ctrl+Shift+U to insert a code point by its hexadecimal code is a Gnome feature, so it doesn't work in Emacs. The native Emacs equivalent is Ctrl+Q, which for historical reasons must be followed by the octal code; if you prefer hexadecimal, customize
read-quoted-char-radix to the value 16. A similar Emacs command is
C-x 8 RET (
ucs-insert; if you use it often, you may want to bind it to a shorter key sequence), which can be followed by a hexadecimal code point or the name of a unicode character, with completion.
Emacs has its own set of input methods, and can also use system input methods such as UIM (install
uim-el ). IBus support is relatively new; you need
ibus.el, which isn't in Lucid and I think not in Maverick either; see also IBus on the Emacs wiki.