Mac上でのSynergyでのキーマップ取得関連は以下のAPI?を使ってる。
Deprecated(非推奨)なAPIをがんがん使っていることがわかった。
この部分は推測のメモです
読んでいて思ったんだけど、LeopardでSynergy2を動かす場合、Synegy2からMacOSに渡すときのキーマップの変換って実は行われていないのではなかろうか。
前回のリンク先にある「PSJ.keylayout」というファイルは「JISキー配列がANSIキー配列に化ける」のを解決するためのものだ。これで解決するということは、SynergyはWindowsから飛んできたキーコードをOS自体はANSIのキーコードだと思って無変換で「ことえり」に渡していることになる。
さらに調べてみて、OSから現在利用中のキーマップを取得してUCKeyTranslateに投げる、という作りになっているらしい。
そうなってくると、Mac側をサーバにしたときに動くのはなぜか。考えられるのはMacのsynergysに行く時点でOSもしくはドライバがANSIのキーコードに飛ばしている、ということである。もしかしたらSynergyがうまく働いているのかもしれない。
なんつーか、もうわからん、お手上げな感じ。ということがわかっただけでもいい…と思うべきなのだろうか。