mac の JIS キーボードで microsoft remote desktop を使うには
2019/07/29 - moriya - ~3 Minutes
追記(2023/7/30): FreeRDP を修正して使えるようにした。4 年経っても直らなかったのだな、と感慨深い。 日本語キーボードの MAC からリモートデスクトップを使う方法 に記載。
追記(2019/7/31): ボツにするのも悲しいので、UserVoice にて提案。( Japanese JIS keyboard yen key option ) 投票数が多ければ反映されるのだろうか。
追記(2019/7/30):microsoft remote desktop は JIS キーボードでは使えないのではないだろうか。
remote desktop を使いたければ、vmware fusion 内の windows から remote desktop を使うしかないと思った。
勢いよく投稿したものの、以下は「ボツ」とする。この設定をすると、¥を入力すると、1b 5c が送られるので、msys や ide で使う時に機能しない。
macbook air の JIS 配列キーボードを使っているのだが、windows server に接続しても、キーボードが US キーボードと認識される。さらに、円キーを押しても、パス区切りの円マークではなく、変な円マークで、パス区切りの円を入力するには、option + 円マークを押さないといけなくて、非常に面倒だ。プログラムを書く者にとって、円の位置はバックスラッシュだろ!と思う。
小一時間、いや、丸一日か、まあまあ時間が無いのに泣きそうになりつつ調べまくったところ、以下のような対応が必要そうだ。
windows server のレジストリを修正する
Microsoft Remote DesktopでJISキーボードを有効にする方法(Qiita) の2つ目を参考。
レジストリエディタで HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\KeyboardType Mapping\JPN の名前00000000のデータをkdb106.dllに変更する。
USキーボードを使っている人がいると、その人のキー配列はJIS配列になってしまうかもしれないので、要注意。
mac の円マークとバックスラッシュを入れかえる
karabiner-element で入れかえるしかなさそうだ。
Swap ¥ and \ always on JIS Keyboards の Change ¥ to Alt+¥ を設定する。
Change Alt+¥ to ¥ も設定して入れかえてもよいかと思ったが、どうせ、ターミナルでも ¥ は入力できないし、必要なら漢字変換で入力すればよいか、と思い、私は設定しないことにした。
vmware fusion のキー設定
完璧か、と思ったが、今度は vmware fusion 内の windows で ¥ が入力できなくなってしまった。。。というか、1b 5c のようなシーケンスで入力される。本当に、alt ¥ を送っているようだ。本来どうあるべきなのか知らないが・・・
そんなわけで、vmware fusion のキーマッピングを設定する。
仮想マシンの設定 > キーボードとマウス > 使っているプロファイルを選んで設定アイコン(ギアみたいなアイコン)を押して表示されるダイアログボックスのキーマッピングタブを選択。option + ¥ を押すと ¥ になるように設定。
mac で入れかえたのに、vmware で再度入れかえるのもどうなのだろうと思いつつも。
そもそも、JIS配列を使うのが悪いのか
US キーボードがいいという人もいるが、私は、JIS配列の ctrl/caps を入れかえ、全角半角と esc を入れ替えて使っている。( DIPスイッチで入れかえられるキーボード が便利)
会社の PC はほとんど JIS 配列だろうし、そうすると、自分専用でない PC で作業する時、US キーボードに慣れていると思うように作業できないだろう。
それに、US 配列は enter key が小さすぎるというか、enter の上にあるキーが押しづらいというか。
そうは言っても、ここまで色々設定する必要があるとなると、JIS 配列を使い続けるかどうか悩むところだ。