2022/11/27追記:進化しました
Google日本語入力で新下駄配列などを実装する方法が進化しましたので、今後はまずは下記ページをご覧ください。
なんと、Google日本語入力で――Google日本語入力だけで――新下駄配列が実装できるようになりました!
なんと、最新版の Google IME (Google 日本語入力) で新下駄配列 (というか同時打鍵シフト配列) が使えるということを今確認しました。
— Akira K. (日本語) (@kirameister_ja) November 3, 2022
「DvorakJ」「やまぶきR」「のどか」などのキーカスタマイズソフトや「かえうち」などのツールを使うことなく、「Google日本語入力」というメジャーなアプリケーションで新下駄配列が実装できるというのは、非常に画期的なことです。実現に動いてくださったAkira K. さんに感謝します。ありがとうございます。
ただし、その実現方法は今のところ「メニューから新下駄配列を選択すればOK!」というようなものではなく、やや裏ワザ的な手法になります。また、いくつか注意事項や制限がある中での実装となります。やってみたい方は、以下の説明をよく読んで自己責任で行なって下さい。
- 2022/11/27追記:進化しました
- Google日本語入力で新下駄配列を実装する手順
- プロパティを初期設定に戻すには?
- Google日本語入力で新下駄配列が実装できる仕組み
- プロパティを変更すると新下駄配列が使えなくなる
Google日本語入力で新下駄配列を実装する手順
Google日本語入力をインストールするところまでは終わったとして……。*1
手順1 .dbファイルをダウンロード
次のページの下の方にある表のリンクから、.dbファイルをダウンロードします。
- 英語キーボード用(ANSI US)/日本語キーボード用(JIS)
- IMEの設定:ことえり/Microsoft IME
- 同時打鍵入力判定のタイムアウト:50ミリ秒/80ミリ秒/110ミリ秒/140ミリ秒
設定の組み合わせごとにそれぞれのファイルが用意されているので、自分のキーボードやお好みに合わせてダウンロードしてください。自分はmozc_JIS_msime_80.dbを使っています。
手順2 フォルダ Google Japanese Inputを開く
次のパスのフォルダを開きます。
C:\Users\(ユーザー名)\AppData\LocalLow\Google\Google Japanese Input
あるいは、次のパスでも同じです。
%HOMEPATH%\AppData\LocalLow\Google\Google Japanese Input
手順3 config1.dbを削除
手順2で開いたフォルダに存在するconfig1.dbを削除します。コピーを取っておいたほうが良いでしょう。特に、すでにGoogle日本語入力のプロパティの変更している場合は、コピーを取っておかないとプロパティの設定が失われます。
手順4 .dbファイルをリネームして移動
手順1でダウンロードした.dbファイルのファイル名をconfig1.dbに変更して、手順2で開いたフォルダにコピーします。
手順5 Google 日本語入力 コンバーターを終了
タスクマネージャーを開いて*2、「プロセス」タブのGoogle 日本語入力 コンバーターを終了させます。あるいは、「詳細」タブのGoogleIMEJaConverter.exeを終了させても同じです。Google日本語入力コンバーター(GoogleIMEJaConverter.exe)は自動的に再起動するので、手動で再起動させる必要はありません。
なお、PCの再起動やサインアウトでもOKです。
以上の手順で新下駄配列が入力できるようになります。
プロパティを初期設定に戻すには?
以上の設定をすると、ローマ字テーブルをはじめとするプロパティの設定がダウンロードした.dbファイルのものに変更されます。プロパティを初期設定に戻したい場合は、一見プロパティの「初期値に戻す」ボタンを押せば良いように思えます。しかし、それだけだとローマ字テーブルに、プロパティから見ると元に戻ったように見えますが、実際には新下駄配列の設定が残ってしまっています。
ローマ字テーブルを元に戻すには、プロパティの「初期値に戻す」ボタンを押した上で「手順5 Google 日本語入力 コンバーターを終了」を行なう必要があります。また、初期設定ではなく、今まで使っていた設定に戻したい場合は、コピーしておいたconfig1.dbを元のフォルダに戻した上で「手順5」を行ないます。
Google日本語入力で新下駄配列が実装できる仕組み
Google日本語入力で同時打鍵を入力する仕組みは、ローマ字入力と同じ仕組みを使っています。
例えば、ローマ字入力では[K]を押すと「k」と入力され、次に[A]を押すと「k」が消えて「か」と入力されますよね。
新下駄配列の同時打鍵も、これと同じ仕組みです。[D]を押すと「か」と入力され、次に[K]を押すと「か」が消えて「れ」と入力されます。[K]を先に押した場合も同様の設定をすれば、[D]と[K]の同時打鍵を実装できます。
これには、Google日本語入力のローマ字テーブルの「次の入力」という機能を利用しています。「次の入力」については、下記のページが詳しいです。ここまでは従来のGoogle日本語入力にもあった機能です。
入力 | 出力 | 次の入力 |
---|---|---|
d | か | |
か{!} | か | |
かk | れ | |
k | い | |
い{!} | い | |
いd | れ |
しかし、これだけだとシフトキーが絡む場合の単打が入力できません。そこで、一定時間経過すると「次の入力」が「出力」になるというローマ字テーブルが加えられています。これが新機能です。
ここまでの説明のローマ字テーブルを書くと、左の表のようになります。{!}は一定時間経過という意味です。
このような実装なので、同時打鍵に関してキーを離したかどうかは見ていません*3。設定が80msなら、[D]を押したあと80ms経過前に[K]を押せば、[D]を離したかどうかに関係なく、同時打鍵と判定されて「れ」が入力されるということになります。
プロパティを変更すると新下駄配列が使えなくなる
Google日本語入力で新下駄配列を実際に使おうとすると、今のところ問題が1つ。
Google日本語入力のプロパティを変更すると*4、同時打鍵の待ち時間が無限になってしまいます。具体的には、[D]を押した後どんなに時間が経過しても、[D]を離していても、[K]を押すと「れ」が入力されてしまいます。「かい」という入力はできません。要するに、新下駄配列のまともな入力はできなくなります。
よって、普通の方法ではプロパティの変更が一切できません。ローマ字テーブルの部分だけではなく、テンキーからの入力を直接入力にする、キー設定のカスタマイズ、句読点変換を有効、サジェストを無効にするなど、プロパティで行なうあらゆる設定変更ができないことになります。変更しようとして「OK」や「適用」を押した瞬間に、まともな日本語入力はできなくなってしまいます。
プロパティを変更するには、config1.dbを自力で作成する必要があります。どうやって作ったらいいか、自分にはさっぱりわかりません(´・ω・`) とりあえず、テキストエディタで開いて編集すれば良いというものではないことはわかった。
Akira K. さんが、同時打鍵配列を実装しつつプロパティの変更もできるような機構を開発中だそうです。これが実現すれば、新下駄配列の以外の配列もより簡単に実装できるようになるし、プロパティの細かな変更もできるようになるので、Google日本語入力での同時打鍵配列実装より実用的なものになるでしょう。期待しています。
【緩募】#新下駄配列 (というか同時打鍵配列) を Google IME で実現するための設定アップデートを実装してみたのですが、Google Colab 使うというものです。私以外のアカウントでも使えるかテストしてくださる方を募集します。興味のある方はリプライまたは DM で教えてください。
— Akira K. (日本語) (@kirameister_ja) November 15, 2022
*1:
なお、複数のIMEをインストールしている環境では、[Windows] + [スペース]でIMEを切り替えることができます(入力言語とキーボード レイアウトを切り替える)。
*2:タスクマネージャーの開き方:タスクバーを右クリック→「タスク マネージャー」でも良いですが(Windows 11ではなくなった)、[Ctrl] + [Shift] + [ESC]か、[Windows] + [X] → [T]の方が早くて楽なので、ぜひ使いましょう。
- 【Windows 11便利テク】Windows 11のタスクマネージャー最速起動方法を探る - PC Watch
https://pc.watch.impress.co.jp/docs/column/win11tec/1376875.html
*3:他の実装方法では、「DvorakJ」がキーを離したかどうかは見ていないタイプの実装です。
*4:変更しなくても、プロパティを開いて「OK」を押すだけでもそうなります。