89

Currently I use the character palette applet in gnome panel to put special characters into text.

This is okay, but I have to stop typing, select the character I want from the applet and then copy and paste.

Is there a way to simply type special characters with different key combinations? If so, how do I do it?

2
100

Often this is easier with the compose key. With that configured you use key combos to get the special characters. For instance:

  • For ë you press Compose+", e.
  • For you press Compose+~, e.
  • For ô you press Compose+^, o.
  • For á you press Compose+', a.
  • For à you press Compose+`, a.
  • For you press Compose+=, e.
  • For £ you press Compose+-, l.

Note that you do not have to hold down the compose key; just press each key in order.

To set the compose key go to System -> Preferences -> Keyboard, then Layouts -> Options. Open up Compose Key Position and choose a key. I use Right-Alt.

13
  • 15
    Spot on, except for one thing - you don't need to hold down the compose key at all. Just hit the compose key, `, then a, and voilà! Jul 29 '10 at 13:16
  • 4
    I recommend assigning the Compose key to Caps Lock, which I am pretty sure only comes standard on keyboards to annoy people.
    – tyjkenn
    Aug 16 '12 at 1:15
  • 2
    á <-- it worked!
    – Dave
    Jun 26 '15 at 4:09
  • 3
    At least for Ubuntu 16.04 the described path doesn't work. Neither is there a preferences section in System (it's called System Settings), nor is there a Layout section in Keyboards (it's called Keyboard, without s).
    – MERose
    Jan 10 '18 at 19:59
  • 3
    This is the answer for distros from 10 years ago (which reflects the documentation, ironically). Neither one works for 20.04. The question needs to be tagged as ubuntu-10 or something. Sep 21 '20 at 17:57
29

If you know the unicode value of the character you'd like to type, hit CTRL+SHIFT+u and then type the unicode.

Example:

CTRL+SHIFT+u 0 3 b b ENTER

results in λ.

4
  • 1
    I seriously didn't know this was possible. Many thanks. For anyone wondering where to find the unicode umm... codes, unicode.org/charts/index.html is the place to go.
    – taneli
    Jul 25 '12 at 20:02
  • 7
    Seriously, only people on Windows do that.
    – rds
    Sep 19 '13 at 20:01
  • do you know how to do this in wps office?
    – Marcel
    Oct 19 '15 at 21:29
  • @taneli also you can use other way. click the Keyboard Layout Icon on the top bar, then click the Character Map link in the dropdown menu.
    – user513724
    Mar 20 '16 at 13:58
11

The easiest way I've found to do this is to set your keyboard layout to USA International (AltGr dead keys), then use Right-Alt+whatever to get the character you want. Obviously this does not work for all international/special characters, so if you need one that's not available through this method, use one of the other methods listed here.

Wikipedia gives us a handy diagram of the available characters and the keys they are mapped to.

4
  • It's also relatively easy to edit a keyboard layout file and tailor it to one's needs: — – «» “” … Sep 4 '10 at 0:32
  • Most local keyboard layouts (e.g. Belgian, French, etc.) also support AltGr, but the selection and location of special characters will be different. The exact layout can be seen on a similar diagram from inside the keyboard configuration.
    – JanC
    Jun 9 '11 at 13:23
  • 2
    Using English (international AltGr dead keys) as keyboard layout, use Right-Alt + R to get ë/Ë. Right-Alt + Q = ä/Ä; Right-Alt + P = ö/Ö; Right-Alt + Y = ü/Ü; Right-Alt + S = ß
    – c0xc
    Apr 26 '17 at 15:13
  • Alt-Gr + dead key is available from scratch. It saved my life when selecting a Wi-Fi hotspot with a special character in the name, as I was performing a fresh Ubuntu install. Jul 8 '18 at 17:02
11

Here is an answer close to 1st answer, with a little alternative: I do not need to use compose because I set my keyboard to English US international instead of English US or English UK.

So I use the following combo:
" then e for ë
' then e for é
` then e for è
` then a for à
~ then n for ñ

and
" then spaceBar for "
' then spaceBar for '
` then spaceBar for `
~ then spaceBar for ~
Alt Gr plus 5 for

3
  • Is this still the case in Ubuntu 15.10? I don't get this working anymore. Setting either 'English (US, international, with dead keys)' or 'English (international, dead keys via AltGr)' doesn't work.
    – Lode
    Jan 28 '16 at 21:10
  • 1
    I've found that setting the 'English (US, international, with dead keys)' actually works if set via lxkeymap (sudo apt-get install lxkeymap). Even more interesting, it only needs to be set once, as if some extra config is changed to make it work. (Dutch source: sites.google.com/site/computertip/toetsenbord)
    – Lode
    Jan 28 '16 at 21:28
  • @Lode sorry I ve not install 15.10 yet.
    – Boris
    Mar 24 '16 at 19:23
4

Note for dummies like myself. It took me a while...

  1. Press Cont & Shift & u together
  2. Let go of all three keys
  3. input code (for example: 00e1 for á)
  4. Enter
2
  • 1
    Can you imagine someone writing a long text with accented characters using your approach?! It's not feasible. Jul 29 '18 at 21:24
  • You don't need the leading zeroes. Just e1 will work for á.
    – wjandrea
    Apr 27 '19 at 23:30
2

You can use Ctrl + U and type Unicode number of the sign you want to type. So for ē you have to type Ctrl + U + 113.

1
  • 1
    Ctrl + U is unlderline.
    – virtualxtc
    Jan 21 '19 at 19:05
1

Change your keyboard layout to us. intl with dead keys

Go to

Control center > keyboard > layout > add > set country to us > Select us intl. with dead keys.

0

The compose key it's defined to do key combinations. It's Used to produce special characters like tildes and accents. To see the list of key names open /usr/share/X11/xkb/rules/xorg.lst and search for "compose".

This technique was tested in Lubuntu. Two ways to enter special characters:

  1. Call setxkbmap to define compose key in the current session
  2. Define compose key permanently

1). Command line $ setxkbmap -option "compose:rwin". Example to define compose key right 'Win'.

2). Open file /etc/default/keyboard and add line XKBOPTIONS="compose:rwin" (requires restart).

Example to write character ã after defining compose key. Press the compose key, then key 'a' and finally the tilde (AltGr + 4).

https://www.eovao.com/en/a/special%20characters%20ubuntu%20linux/5/how-to-enter-special-characters,-accents-and-tildes-in-ubuntu

0

If you are on Ubuntu 20.04 :

Go to Setting > Region and language > on the Input Sources Click on "+" button and choose English (United States) then English(US,intl.,with dead keys).

' + e -> é
" + e -> ë
` + e -> è
etc.

1
  • The exact same answer was already posted here by user Boris, and with a better explanation, yet it seems like this is a good extra step since later versions do not fully support their method (as commented).
    – Pizza
    Apr 9 at 7:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.