iPadからのリモートデスクトップで日本語を入力するのが辛い話
iOS/iPadOS版のRD Client、現「Windows」アプリからのキーボード入力の扱いが辛い。辛いというか、日本語入力に難儀する。入力インジケータをクリックしてATOKの日本語入力をオンにしても、iPad/iPhoneで打ち込んだキーがそのまま入力されてしまい、変換もままならない。
JISキーボードユーザーの間では、Macからのリモートデスクトップでキーボードレイアウトがうまく反映できずにホスト側のレジストリでkbd106.dllを読み込むように指定する話は鉄板ネタだが、iPad/iPhoneからの接続でうまく日本語が入力できない問題は、レイアウトの問題とは関係ないのでこの手では解決できない。
実は、RDPにはキーボードの扱い方が2種類用意されており、キーをそのまま送るScancodeモードと、入力文字を送るUnicodeモードとがあるのだそうだ。どうも後者は、例えばVDI環境などで各自の入力の好みを生かすために、ローカルのIMEで作った文字をリモートに送り込むというのが主要なユースケースのように思われる。
で、なぜかiOS/iPadOS版のRD ClientはこのモードがUnicodeモードになっているらしい。それで、PC側のATOKでキーとして拾われずに直接文字として入ってしまうようだ。つまり「iPad/iPhoneのキーボードから日本語が入力したかったら、PC側のIMEを使うのをあきらめて、iOS/iPadOS上の日本語キーボードであらかじめ日本語に変換してから送れ」ということ。
Mac版だとメニューバーから切り替えられるらしいのだが、iOS/iPadOS版にはこれを切り替えるUIがない。まぁ、SIPにはスキャンコードがないのかもしれないからそこは許そう。
だがしかしだ。Microsoftときたら、iOS/iPadOS版のRD Clientで、サードパーティーキーボードの利用を許可していないのである。iOSはバージョン8だかくらいからサードパーティーキーボードを許容しているが、センシティブな内容を扱うアプリのセキュリティのため(つまり、パスワードとかを打ち込むのをサードパーティーキーボードに盗聴されたくないアプリのため)に、アプリ側でサードパーティーキーボードの利用を拒否できる。Microsoftはそれを指定しているわけだ。
となると、日本語入力に使えるのはiOS/iPadOS標準の日本語キーボードのみということになる。僕が普段利用しているiOS/iPadOS上のATOKは使えない。正直なところ標準日本語キーボードの頭の悪さにはうんざりしているので、普段はそもそもオフにしてある。
しかるに、RD Clientを使うときだけ、わざわざキーボード設定からiOS/iPadOS標準の日本語キーボードを一時的に有効化する、というのをいちいちやるか、常時、キーボード切り替え候補の中に普段使わないiOS/iPadOS標準の日本語キーボードを入れておくか……。あるいは、Windows PC側のオンスクリーンキーボードを使い、PC上のATOKを使うか……。