無変換、変換、英数、かなは、全て異なるキーコード。
Winの無変換変換は、Macでは無視される。
Macの英数かなは、Winでは無視される。
これを利用して、
あるキーX1に、無変換と英数の2キーコードをマクロで出力、
別のキーX2に、変換とかなの2キーコードをマクロで出力、
するように組み、
X1とX2を好きなところ(親指のスペースの両脇が定位置)に置けば良い。
これで、Winに繋いでもMacにつないでも、
IMEのオンオフが同じキーから操作できるよ。
その前に下準備:
Winサイドで、
無変換、変換をIMEオフ、オンに割り当てる。
(IMEを右クリック、プロパティ→詳細設定から辿ってね。
ちなみに無変換、変換以外にも当てられるので、
無変換変換を別に使いたい人は別キーに割り当て、
QMKからそのキーを発行すればよい。
僕は、無変換とひらがなカタカナキーを使っている。
混乱を避けるため、以下表記は無変換と変換で統一)
キーボードをJIS設定にする。
(US設定だと、QMKから吐き出した変換無変換を認識しない)
Macサイドで、
キーボードをJIS設定にする。(同上)
これで、
無変換または英数でIMEオフ、
変換またはかなでIMEオン、
がOSレベルで可能になる。
あとはQMKから二つのキーコードを吐けばよいだけ。
keymap.cの中でマクロを定義すればOK。
(やり方は各自調べてね)
問題がふたつある。
1. US配列が使えないこと。USベースのQMKでは、記号系などが混乱する。
2. 貴重な親指部を2キー消費してしまう。
2はとくにミニマリストにはお勧めしない。
僕は36キーを使っているため、
もったいなくて使わない。
ちなみにカナ配列薙刀式では、
FG同時でIMEオフ、
HJ同時でIMEオンに定義している。
人差し指バインドの2キーだから、
普段同時に押されることのないキーを使った同時押し。
(ホームポジションから手をずらして、
人差し指と中指で打っている)
分かりやすいし使いやすいし誤爆もないし左右分割にも相性いいしで、
X1とX2を作るくらいならこれがオススメ。
今のところもっとも賢い方法だと自負している。
Alt+~(WinUS、MacUS)も、
全角半角キー(WinJIS)も、
Ctrl+Space(Macのデフォ、Winで設定可能)も、
トグルなので、
いまIMEがオンなのかオフなのかわからないときに、
USBの表裏現象と同じことが起こる。
こんなもん、道具として欠陥品だろ。
明示的にIMEをオンオフできる機能を作るべきだ。
(追記)
Win10の何度目かのバージョンアップによって、
また仕様が変更されたようです。コメント欄をご覧ください。
おそらく、デフォルトで、
「無変換、変換をMacライクに英数、かなに当てられる」
バージョンからだと思われます。
しかしそれやったら、
CapsLockで英数、ひらがなカタカナでかな(実はデフォルト)派は、
どうなるんやろね…
もうそろそろキーボードのJIS仕様を更新するときじゃないのかね…
「Macの英数かなは、Winでは無視される。」「US配列が使えないこと。」というのは、以前はその通りでしたので、この記事はこれからも役に立つのではないかと思いますが、報告することにしました。
最近のWinのバージョンアップで、
そこまで仕様が変わっていたとは…
僕は前の版で設定したまま使ってたので気付きませんでした。
ということはUS設定にしても再変換が出来るのか。
これは記号部と相性がいいぞ…
情報ありがとうございます。
よく調べてみると、Win10 ver.1909 は今月9日のアップデートで、ver.2004 は今年7月15日のアップデートで、キーボードドライバが修正されたようです。
特殊なドライバを使っていたり、MS-IME以外のIMEでは駄目かもしれません。
US設定で再変換を使うには、これまで通りDvorakJなどを使うか、Ctrl+Shift+Jなどのキーに割り当てるしかないようです。
さらなる情報ありがとうございます。
自分のPC内でもこれだけ混乱があるということは、
「お使いの環境で確認してください」としか言いようがなくなるなあ。
ガンガンマイクロソフトに苦情ぶっこんだほうがいいですねこれは。
おそらく把握してないでしょうから。
苦情がなければ「なかった問題」となるのではないでしょうか。
紙とペンでこんなバージョンアップバグないもの。