diff -up /usr/share/X11/xkb/symbols/nokia_vndr/su-8w.OLD /usr/share/X11/xkb/symbols/nokia_vndr/su-8w --- /usr/share/X11/xkb/symbols/nokia_vndr/su-8w.OLD 2008-07-02 16:53:51.000000000 -0300 +++ /usr/share/X11/xkb/symbols/nokia_vndr/su-8w 2008-07-02 17:03:23.000000000 -0300 @@ -302,7 +302,79 @@ xkb_symbols "ru_nodeadkeys" { key { [ 6, asciicircum, ampersand, asciicircum ] }; }; +partial alphanumeric_keys default +xkb_symbols "br" { + name[Group1]= "Brazilian Portuguese"; + + include "nokia_vndr/su-8w(base)" + + key { [ dead_grave, dead_tilde, 1 ] }; + key { [ 1, exclam, exclamdown ] }; + key { [ 2, at, twosuperior ] }; + key { [ 3, numbersign ] }; + key { [ 4, dollar, currency ] }; + key { [ 5, percent, EuroSign ] }; + + // Why it doesn't work without a lot of spaces??? + key { [ 6, dead_circumflex, onequarter ] }; + key { [ 7, ampersand, onehalf ] }; + key { [ 8, asterisk, threequarters ] }; + key { [ 9, parenleft, leftsinglequotemark ] }; + key { [ 0, parenright, rightsinglequotemark ] }; + key { [ minus, underscore, yen ] }; + key { [ equal, plus, multiply ] }; + key { [ q, Q, adiaeresis, Adiaeresis ] }; + key { [ w, W, aring, Aring ] }; + key { [ e, E, eacute, Eacute ] }; + key { [ r, R, registered ] }; + key { [ t, T, thorn, THORN ] }; + key { [ y, Y, udiaeresis, Udiaeresis ] }; + key { [ u, U, uacute, Uacute ] }; + key { [ i, I, iacute, Iacute ] }; + key { [ o, O, oacute, Oacute ] }; + key { [ p, P, odiaeresis, Odiaeresis ] }; + key { [ bracketleft, braceleft, guillemotleft ] }; + key { [ bracketright, braceright, guillemotright ] }; + + key { [ a, A, aacute, Aacute ] }; + key { [ s, S, ssharp, section ] }; + key { [ d, D, eth, ETH ] }; + key { [ f, F ] }; + key { [ g, G ] }; + key { [ h, H ] }; + key { [ j, J ] }; + key { [ k, K ] }; + key { [ l, L, oslash, Ooblique ] }; + key { [ semicolon, colon, paragraph, degree ] }; + // XXX Not entirely sure if fourth level is quotedbl or diaeresis. + // The former makes a lot more sense. + key { [ dead_acute, dead_diaeresis, apostrophe, quotedbl ] }; + + key { [ z, Z, ae, AE ] }; + key { [ x, X ] }; + key { [ c, C, ccedilla, Ccedilla ] }; + key { [ v, V ] }; + key { [ b, B ] }; + key { [ n, N, ntilde, Ntilde ] }; + key { [ m, M, mu ] }; + key { [ comma, less, ccedilla, Ccedilla ] }; + key { [ period, greater ] }; + key { [ slash, question, questiondown ] }; + + include "level3(ralt_switch)" +}; + +partial alphanumeric_keys +xkb_symbols "br_nodeadkeys" { + name[Group1] = "Brazilian Portuguese - no dead keys"; + + include "nokia_vndr/su-8w(br)" + + // XXX Not entirely sure if second level is quotedbl or diaeresis. + // The former makes a lot more sense. + key { [ apostrophe, quotedbl, dead_acute, dead_diaeresis ] }; +}; partial alphanumeric_keys default xkb_symbols "us" {