Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I was creating my custom keyboard layout(custom tamil keyboard layout) in Ubuntu 12.04 platform based on this post. I edited the file /usr/share/X11/xkb/symbols/in as specified in the post with my custom layout. The sample layout mapping is attached below:

partial alphanumeric_keys
xkb_symbols "tam_font_test" {
// Description: Tamil Custom Font KeyMap
// Encoding: Unicode (
// Author: Test

name[Group1]= "Tamil (Font Map - Test)";

// Qrow
key <AD02> {  [ U0BB1 ] };
key <AD03> {  [ U0BA8 ] };
key <AD04> {  [ U0B9A ] };
key <AD05> {  [ U0BB5 ] };
key <AD06> {  [ U0BB2 ] };
key <AD07> {  [ U0BB0 ] };
key <AD08> {  [ U0BC8 ] };
key <AD10> {  [ U0BBF ] };

I was successful with the above layout mapping.

However I have a typical requirement which i wasnt able to do it. I would like to map the key AD03 with the following map

key <AD03> {  [ U0BA8, U0BA8+U0B8A ] };

where the second argument is the combining character such as this.
The syntax for the definition can be found in this link.
The unicode character for tamil character can be found here.

How can we pass the combining characters unicode as an argument to the mapping?

share|improve this question

migrated from Dec 6 '12 at 11:29

This question came from our site for professional and enthusiast programmers.

No time to write an answer right now, but this link should help you. – terdon Dec 14 '12 at 19:39

Not really an answer but a quote:

The line key { [ quoteleft, asciitilde ] }; describes a single mapping from a key code ( in this case) to a group of symbols (` and in this case). Symbols are named, using the symbolic names from the /usr/X11R6/include/X11/keysymdef.h file, as described in section 2.4. A pair of symbols enclosed in brackets indicates a pair of symbols separated by a shift level; pressing the Shift key usually shifts between two levels, but the types component can override this. If a single symbol is enclosed in brackets, then this symbol is used always, independent of the level.

maybe a link is of some use:

share|improve this answer
I think what the OP wanted is a way to type two characters (together, one after the other) with a single key stroke (or key combination, e.g. with a shift key). – Tom Mar 31 '15 at 0:33

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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