looking at the keyboard source code - it indeed looks impossible not only to add custom symbols without recompiling - but no modifier keys are ever possible to be sent as the keyboard acts as text editor (for autocorrect, etc) and does not directly send keycode events to Mir. So there does not seem to be any straightforward way to enable modifier or any special keys.
It may be easier to implement sending direct keyboard events as a separate service and then crafting a client into ubuntu-keyboard to talk to it and use the keyboard as an UI only to send real events, like have a "^C" button, etc.. otherwise it will require a huge rewrite of the logic -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to ubuntu-keyboard in Ubuntu. https://bugs.launchpad.net/bugs/1377096 Title: [OSK] Ubuntu Touch should allow alternative keyboard layouts Status in Ubuntu UX: Triaged Status in ubuntu-keyboard package in Ubuntu: Triaged Bug description: It would be nice if alternative keyboard layouts were available for Ubuntu Touch. On Android devices I use the Hacker's Keyboard https://code.google.com/p/hackerskeyboard/ from F-Droid https://f-droid.org/repository/browse/?fdfilter=org.pocketworkstation.pckeyboard&fdid=org.pocketworkstation.pckeyboard as this allows customisation and easy access to keys such as Ctrl, Esc, !, : and - and these are keys that take a lot of key presses with the current Ubuntu touch keyboard (I use vim). In addition key combinations such as Ctrl-n and Ctrl-p (next and previous channel in IRSSI) are not possible with the current Ubuntu Touch keyboard. Having said the above the gestures, double tap for tab, swipe up, down , left and right for the arrow keys is great and I now find myself trying to use these gestures on Android devices... To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-ux/+bug/1377096/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : [email protected] Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp

