Eu tenho um servidor Linux Synergy (Si-Linux) servindo apenas um cliente Mac (Macbook Pro UK) (SiBook-Pro.local).
No meu servidor Linux, estou usando um teclado USB da Apple com o layout exato do teclado de laptops (o compacto teclado de alumínio do Reino Unido).
Eu gostaria de enviar as chaves de mídia para o cliente Mac em todos os momentos e tentei o seguinte no meu synergy.conf
:
keystroke(AudioPlay) = keystroke(AudioPlay,SiBook-Pro.local)
Isso não funcionou, então executei o servidor e o cliente como processos em primeiro plano e com a depuração ativada e observei o seguinte:
Log do servidor:
DEBUG1: activate actions
DEBUG1: hotkey: keyDown(AudioPlay,SiBook-Pro.local)
DEBUG1: onKeyDown id=57523 mask=0x0000 button=0x0000
DEBUG1: send key down to "SiBook-Pro.local" id=57523, mask=0x0000, button=0x0000
DEBUG1: deactivate actions
DEBUG1: hotkey: keyUp(AudioPlay,SiBook-Pro.local)
DEBUG1: onKeyUp id=57523 mask=0x0000 button=0x0000
DEBUG1: send key up to "SiBook-Pro.local" id=57523, mask=0x0000, button=0x0000
Log do cliente:
DEBUG1: recv key down id=0x0000e0b3, mask=0x0000, button=0x0000
DEBUG1: mapKey e0b3 (57523) with mask 0000, start state: 0000
DEBUG1: key e0b3 is not on keyboard
DEBUG1: recv key up id=0x0000e0b3, mask=0x0000, button=0x0000
DEBUG1: recv enter, 1279,386 5 2000
Como você pode ver, o cliente afirma que a chave recebida não está no teclado . Eu não entendo, pois é a mesma chave que está no teclado do Macbook.
Eu tentei inverter a configuração cliente-servidor para ver se eu poderia capturar a chave que estava sendo enviada se eu pressionasse o botão Play no Macbook, mas a chave nem parece chegar ao Synergy. Quase todas as impressoras de teclado são registradas, mas as teclas de mídia parecem ignorar os logs e executar sua função localmente. Por exemplo. Eu pressiono o play no Macbook (com o Macbook como servidor) e a tecla toca música no Macbook e a chave não está conectada ao log de depuração.