Hello, I've read the Wiki in https://wiki.ubuntu.com/KeyboardLayouts and glanced through the sources a bit; if one compares the image of the on screen keyboard (or in the above Wik) with the definition of the rows of CharKey, it's pretty clear, that most of the keys have 4 different modes: - normal char - shited char (if ShiftKey() was pressed before) - extended mode (which will show up when you press long the char) - extended Shifted mode (the same as before, but with ShifKey() in action) see below the snipset for one Row;
What I would like to have is one additional key on the keyboard, place above of ShiftKey and left to the 'a' key; I think this would fit in the space which is left over unused at the moment left to 'a' and right to 'l' keys. This new key should circle between the meanings on each press: nothing --> ESC --> Ctrl-left --> Ctrl-right --> nothing and the writing on the key should be/change in this circle off --> ESC+ --> CtrlL+ --> CtrlR+ --> off The question is how to get this into the definitions for the row in the sense that, when for example ESC is active, the press on "2" gives the two bytes ESC and 2, i.e. 0x1b 0x32. http://bazaar.launchpad.net/~phablet-team/ubuntu-keyboard/trunk/view/head:/plugins/es/qml/Keyboard_es.qml .... Row { anchors.horizontalCenter: parent.horizontalCenter; spacing: 0 CharKey { label: "q"; shifted: "Q"; extended: ["1"]; extendedShifted: ["1"]; leftSide: true; } CharKey { label: "w"; shifted: "W"; extended: ["2"]; extendedShifted: ["2"] } CharKey { label: "e"; shifted: "E"; extended: ["3", "è", "é", "ê", "ë", "€"]; extendedShifted: ["3", "È","É", "Ê", "Ë", "€"] } CharKey { label: "r"; shifted: "R"; extended: ["4"]; extendedShifted: ["4"] } CharKey { label: "t"; shifted: "T"; extended: ["5", "þ"]; extendedShifted: ["5", "Þ"] } CharKey { label: "y"; shifted: "Y"; extended: ["6", "ý", "¥", "ÿ"]; extendedShifted: ["6", "Ý", "¥", "Ÿ"] } CharKey { label: "u"; shifted: "U"; extended: ["7", "û","ù","ú","ü"]; extendedShifted: ["7", "Û","Ù","Ú","Ü"] } CharKey { label: "i"; shifted: "I"; extended: ["8", "î","ï","ì","í"]; extendedShifted: ["8", "Î","Ï","Ì","Í"] } CharKey { label: "o"; shifted: "O"; extended: ["9", "ö","ô","ò","ó", "º","õ"]; extendedShifted: ["9", "Ö","Ô","Ò","Ó", "º","Õ"] } CharKey { label: "p"; shifted: "P"; extended: ["0"]; extendedShifted: ["0"]; rightSide: true; } } Vy 73 matthias -- -- Matthias Apitz, ✉ [email protected], 🌐 http://www.unixarea.de/ ☎ +49-176-38902045 -- Mailing list: https://launchpad.net/~ubuntu-phone Post to : [email protected] Unsubscribe : https://launchpad.net/~ubuntu-phone More help : https://help.launchpad.net/ListHelp

