Thanks, Michael.

I'll take some time for a deeper look into KVM.

Regards, Marcus Rocha

Michael Jumper escreveu:
For that, if KVM will not already split composed key events into their corresponding dead keys, guac's VNC support would need to switch over to using the same sort of automatic layout translation as we do for RDP.

Within a browser, dead keys do not produce key events like you'd expect; they produce composition events as the character is slowly built. Guacamole automatically handles this - once we have the full character, including the portion that requires the dead key, then we dispatch a key event for the fully-assembled character. For RDP, Guacamole will also automatically break apart the received character into dead keys as necessary (or not if the remote layout doesn't need dead keys for that character). For VNC, the RFB standard implies that the VNC server should simulate the key events necessary to type the character intended, but only explicitly specifies this for the numeric/shifted state of a character. I suspect KVM does not do this for dead keys, and guac would need to do this on KVM's behalf.

- Mike


On Mon, Jul 18, 2022 at 11:39 AM Marcus Rocha <[email protected] <mailto:[email protected]>> wrote:

    Hi, Mike!

    Actually, I can live with a single keyboard layout for now. Thus I
    managed to get most of the keys of my keyboard to function
    correctly by
    using the same map for QEMU/KVM and for the guest os (Oracle Linux8).
    Exceptions are the "dead keys" such as ` ´ ^ ~
    Any tips on solving this problem?

    Regards,
    Marcus Rocha

    Michael Jumper escreveu:
    > On Fri, Jul 1, 2022 at 5:50 AM Nick Couchman <[email protected]
    <mailto:[email protected]>
    > <mailto:[email protected] <mailto:[email protected]>>> wrote:
    >
    >     On Thu, Jun 30, 2022 at 11:20 AM Marcus Rocha
    <[email protected] <mailto:[email protected]>
    >     <mailto:[email protected] <mailto:[email protected]>>> wrote:
    >
    >         Hi there!
    >
    >         Any news here, or it is still not possible to configure, for
    >         example, pt-br or br-abnt2 keyboards when accessing KVM VMs
    >         using VNC connections?
    >
    >
    >     If I recall correctly, VNC just uses standard keysyms,
    rather than
    >     scancodes, to send keystrokes, which means that you
    shouldn't have
    >     to do anything to change the keyboard layout through Guacamole.
    >
    >
    > Yes, this is true ... except for KVM, which emulates a hardware
    > keyboard. Unlike other VNC servers, the KVM VNC server has to be
    > configured to use a particular keyboard layout for proper
    translation
    > from keysym to scancode, and it will only be able to represent key
    > events for keys on that hardware keyboard regardless of what the
    VNC
    > client sends.
    >
    > It's not really a Guacamole issue, though there are things that
    could
    > be done to Guacamole to make KVM happier (such as adding the same
    > keysym translation layer that we use in RDP). Regardless, it is
    > absolutely not possible for a VNC client to universally "just work"
    > with the KVM VNC server, as the KVM VNC server simply cannot
    represent
    > key events for keys that are not on the emulated hardware keyboard.
    >
    > A better way to have proper keyboard support on a
    KVM-virtualized VM
    > would be to have that VM host a VNC server (or RDP or SSH) and
    connect
    > to that instead.
    >
    > - Mike
    >


Reply via email to