On Wed, Nov 16, 2016 at 1:04 AM, Tran-Ngoc Minh <[email protected]> wrote:
> Hello everyone, > > I have set up a Guacamole 0.99 server on a Ubuntu 16.04 Linux in order to > access some Windows 7 and Windows 10 VMs with RDP. We use the Swiss-French > keyboard layout. Since there is no Swiss-French keyboard definition, the > keyboard setting in the connection is set to Unicode. Keyboard mapping > works for letters and numbers. > > I have issue with shortcuts keys : when I pressed a combination like > ctrl-c, the ctrl is sent to the VM, but when the "c" is pressed, the "c" > key is sent as if the ctrl key was not pressed. > > Do I have to build Guacamole with the Swiss-French Layout added? > > Yes. And if you can provide such a layout, we would be glad to accept it upstream as a contribution. If that isn't reasonable at the moment, the next best option would be to select a keyboard layout which has as many characters in common with the Swiss-French layout as possible. As long as the character that the user typed exists on the selected layout, Guacamole will handle the translation automatically. In fact, even the English layout would be an improvement over using Unicode, as at least then Ctrl+C, and other common shortcuts will work. Unicode would still be used for any characters which are missing. The important thing when configuring a RDP connection for Guacamole is that the keyboard layout matches between the connection configuration and the RDP server. This is because RDP depends on scancodes, which only have meaning in context of a keyboard layout, while Guacamole uses X11 keysyms, which are independent of keyboard layout. The server side of Guacamole must translate between layout-independent keysyms and the layout-dependent scancodes of the RDP server. If the key which was pressed is not part of the RDP server's keyboard layout, then Guacamole will fallback to using Unicode events. Ctrl, etc. are not working in your case because Unicode events differ from keyboard events. They cause Windows to type input a character directly, which works great for typing but will not work for other uses of the keyboard (such as keyboard shortcuts, or interacting with an application expecting true key events). Thanks, - Mike
