Default Symbol Transformations Interpreting the Control Modifier If the Control modifier is not consumed by the symbol lookup process, routines that determine the symbol and string that correspond to an event should convert the symbol to a string as defined in the table below. Only the string to be returned is affected by the Control modifier; the symbol is not changed. This table lists the decimal value of the standard control characters that correspond to some keysyms for ASCII characters. Control characters for symbols not listed in this table are application-specific. Keysyms Value Keysyms Value Keysyms Value Keysyms Value atsign 0 h, H 8 p, P 16 x, X 24 a, A 1 i, I 9 q, Q 17 y, Y 25 b, B 2 j, J 10 r, R 18 z, Z 26 c, C 3 k, K 11 s, S 19 left_bracket 27 d, D 4 l, L 12 t, T 20 backslash 28 e, E 5 m, M 13 u, U 21 right_bracket 29 f, F 6 n, N 14 v, V 22 asciicircum 30 g, G 8 o, O 15 w, W 23 underbar 31 Interpreting the Lock Modifier If the Lock modifier is not consumed by the symbol lookup process, routines that determine the symbol and string that correspond to an event should capitalize the result. Unlike the transformation for Control , the capitalization transformation changes both the symbol and the string returned by the event. Locale-Sensitive Capitalization If Lock is set in an event and not consumed, applications should capitalize the string and symbols that result from an event according to the capitalization rules in effect for the system on which the application is running, taking the current state of the user environment (e.g. locale) into account. Locale-Insensitive Capitalization XKB recommends but does not require locale-sensitive capitalization. In cases where the locale is unknown or where locale-sensitive capitalization is prohibitively expensive, applications can capitalize according to the rules defined in this extension. The following tables list all of the keysyms for which XKB defines capitalization behavior. Any keysyms not explicitly listed in these tables are not capitalized by XKB when locale-insensitive capitalization is in effect and are not automatically assigned the ALPHABETIC type as described in the Alphabetic Key Type. Capitalization Rules for Latin-1 Keysyms This table lists the Latin-11 keysyms for which XKB defines upper and lower case: Lower Case Upper Case Lower Case Upper Case Lower Case Upper Case Lower Case Upper Case a A o O acircumflex Acircumflex eth ETH b B p P adiaeresis Adiaeresis ntilde Ntilde c C q Q atilde Atilde ograve Ograve d D r R aring Aring oacute Oacute e E s S ae AE ocircumflex Ocircumflex f F t T ccedilla Ccedilla otilde Otilde g G u U egrave Egrave odiaeresis Odiaeresis h H v V eacute Eacute oslash Ooblique i I w W ecircumflex Ecircumflex ugrave Ugrave j J x X ediaeresis Ediaeresis uacute Uacute k K y Y igrave Igrave ucircumflex Ucircumflex l L z Z iacute Iacute udiaeresis Udiaeresis m M agrave Agrave icircumflex Icircumflex yacute Yacute n N aacute Aacute idiaeresis Idiaeresis thorn THORN Capitalization Rules for Latin-2 Keysyms This table lists the Latin-2 keysyms for which XKB defines upper and lower case: Lower Case Upper Case Lower Case Upper Case Lower Case Upper Case aogonek Aogonek zabovedot Zabovedot dstroke Dstroke lstroke Lstroke racute Racute nacute Nacute lcaron Lcaron abreve Abreve ncaron Ncaron sacute Sacute lacute Lacute odoubleacute Odoubleacute scaron Scaron cacute Cacute rcaron Rcaron scedilla Scedilla ccaron Ccaron uabovering Uabovering tcaron Tcaron eogonek Eogonek udoubleacute Udoubleacute zacute Zacute ecaron Ecaron tcedilla Tcedilla zcaron Zcaron dcaron Dcaron Capitalization Rules for Latin-3 Keysyms This table lists the Latin-3 keysyms for which XKB defines upper and lower case: Lower Case Upper Case Lower Case Upper Case Lower Case Upper Case hstroke Hstroke jcircumflex Jcircumflex gcircumflex Gcircumflex hcircumflex Hcircumflex cabovedot Cabovedot ubreve Ubreve idotless Iabovedot ccircumflex Ccircumflex scircumflex Scircumflex gbreve Gbreve gabovedot Gabovedot Capitalization Rules for Latin-4 Keysyms This table lists the Latin-4 keysyms for which XKB defines upper and lower case: Lower Case Upper Case Lower Case Upper Case Lower Case Upper Case rcedilla Rcedilla eng ENG omacron Omacron itilde Itilde amacron Amacron kcedilla Kcedilla lcedilla Lcedilla iogonek Iogonek uogonek Uogonek emacron Emacron eabovedot eabovedot utilde Utilde gcedilla Gcedilla imacron Imacron umacron Umacron tslash Tslash ncedilla Ncedilla Capitalization Rules for Cyrillic Keysyms This table lists the Cyrillic keysyms for which XKB defines upper and lower case: Lower Case Upper Case Lower Case Upper Case Serbian_dje Serbian_DJE Cyrillic_i Cyrillic_I Macedonia_gje Macedonia_GJE Cyrillic_shorti Cyrillic_SHORTI Cyrillic_io Cyrillic_IO Cyrillic_ka Cyrillic_KA Ukrainian_ie Ukrainian_IE Cyrillic_el Cyrillic_EL Macedonia_dse Macedonia_DSE Cyrillic_em Cyrillic_EM Ukrainian_i Ukrainian_I Cyrillic_en Cyrillic_EN Ukrainian_yi Ukrainian_YI Cyrillic_o Cyrillic_O Cyrillic_je Cyrillic_JE Cyrillic_pe Cyrillic_PE Cyrillic_lje Cyrillic_LJE Cyrillic_ya Cyrillic_YA Cyrillic_nje Cyrillic_NJE Cyrillic_er Cyrillic_ER Serbian_tshe Serbian_TSHE Cyrillic_es Cyrillic_ES Macedonia_kje Macedonia_KJE Cyrillic_te Cyrillic_TE Byelorussian_shortu Byelorussian_SHORTU Cyrillic_u Cyrillic_U Cyrillic_dzhe Cyrillic_DZHE Cyrillic_zhe Cyrillic_ZHE Cyrillic_yu Cyrillic_YU Cyrillic_ve Cyrillic_VE Cyrillic_a Cyrillic_A Cyrillic_softsign Cyrillic_SOFTSIGN Cyrillic_be Cyrillic_BE Cyrillic_yeru Cyrillic_YERU Cyrillic_tse Cyrillic_TSE Cyrillic_ze Cyrillic_ZE Cyrillic_de Cyrillic_DE Cyrillic_sha Cyrillic_SHA Cyrillic_ie Cyrillic_IE Cyrillic_e Cyrillic_E Cyrillic_ef Cyrillic_EF Cyrillic_shcha Cyrillic_SHCHA Cyrillic_ghe Cyrillic_GHE Cyrillic_che Cyrillic_CHE Cyrillic_ha Cyrillic_HA Cyrillic_hardsign Cyrillic_HARDSIGN Capitalization Rules for Greek Keysyms This table lists the Greek keysyms for which XKB defines upper and lower case: Lower Case Upper Case Lower Case Upper Case Greek_omegaaccent Greek_OMEGAACCENT Greek_iota Greek_IOTA Greek_alphaaccent Greek_ALPHAACCENT Greek_kappa Greek_KAPPA Greek_epsilonaccent Greek_EPSILONACCENT Greek_lamda Greek_LAMDA Greek_etaaccent Greek_ETAACCENT Greek_lambda Greek_LAMBDA Greek_iotaaccent Greek_IOTAACCENT Greek_mu Greek_MU Greek_iotadieresis Greek_IOTADIERESIS Greek_nu Greek_NU Greek_omicronaccent Greek_OMICRONACCENT Greek_xi Greek_XI Greek_upsilonaccent Greek_UPSILONACCENT Greek_omicron Greek_OMICRON Greek_upsilondieresis Greek_UPSILONDIERESIS Greek_pi Greek_PI Greek_alpha Greek_ALPHA Greek_rho Greek_RHO Greek_beta Greek_BETA Greek_sigma Greek_SIGMA Greek_gamma Greek_GAMMA Greek_tau Greek_TAU Greek_delta Greek_DELTA Greek_upsilon Greek_UPSILON Greek_epsilon Greek_EPSILON Greek_phi Greek_PHI Greek_zeta Greek_ZETA Greek_chi Greek_CHI Greek_eta Greek_ETA Greek_psi Greek_PSI Greek_theta Greek_THETA Greek_omega Greek_OMEGA Capitalization Rules for Other Keysyms XKB defines no capitalization rules for symbols in any other set of keysyms provided by the consortium. Applications are free to apply additional rules for private keysyms or for other keysyms not covered by XKB.