おっ、そんなものが。小川さんによるもの。
https://jigendaddy.hatenablog.com/entry/2020/10/14/222416
僕もいっときAutoHotKeyで組んでみようとしたけど、
3キー同時の場合分けが面倒になってやめた記憶がある。
薙刀式は実装屋さん泣かせの配列ではあるが、
一旦組めたら他にも応用が効く要素が含まれるような気がする。
そもそもDvorakJはAutoHotKeyで組まれているらしいから、
使わないところを全部削ぎ落としていくと、
DvorakJ版より軽くなる予想。
実はDvorakJ版には優秀な機能がひとつあって、
2キーロールオーバーしたとき、
「その2つを含む2キー以上の同時押しが設定されてなければ、
ただちにそれを発行する」というデフォがある。
同時押しを相互シフトで実装している以上、
「離した時の判定」にならざるを得ない判定群で、
押した時に即発行するわけなので、
ロールオーバーバリバリになってくると逆に心地よくなってくる仕様なんだよなあ。
ただ3キー以上のロールオーバーが挙動が不安定な気がする。
おそらくDvorakJの処理速度を超えて打ったときだと考えられる。
AutoHotKey版で軽くなるなら、
そのへんがDvorakJ版を超えられるかもしれない。
(…と考えて組もうとしたけど、
3キー相互シフトのアルゴリズムが超面倒になって、
力技以外のエレガントな方法を思いつかなかったんだよなあ…)
あと、離した時に判定するのはキープしておいて、
押した時にはとりあえず何かを発行して、
離さずにロールオーバーしたときのみ同時定義か単打ロールオーバーか判定しつつ、
同時ならBS発行、
というのをAutoHotKeyで組もうと思ったが、
タイプウェルとかだとミス扱いしまくられるだろうなあ、
と思ってこれも手をつけていない…。
AutoHotKeyがMacでも動けば福音になるのだが、
と思って調べたら、
AutoHotKey for Macというのが出てきた。
これが走るならWin/Mac共用で薙刀式も現実的かもしれない…?
まあ僕はQMK使うんですけど…
もし興味のある方は、こちらの記事の中ほどにリンクがあるnaginata_v13.ahkをダウンロードしていただければ幸いです。
https://jigendaddy.hatenablog.com/entry/2020/10/21/180935
無論至らない点もありますが、軽く試しに使っていただく分には十分な実装ができたと自負しています。
>一旦組めたら他にも応用が効く要素が含まれるような気がする。
その通りですね。勉強させていただいたノウハウを葵に活かせています。
>タイプウェルとかだとミス扱い
薙刀式ahk版に限らず、自作ahkスクリプトではタイプウェルを始めとするタイピングツールを全く無視しています。
DvorakJを使ってください、というスタンスです。
DvorakJの「日本語入力用配列を常に使用する」についてはコジオンさんの書かれたエントリが勉強になりました。大岡さんはご存知かもしれませんがリンクを貼っておきます。
https://kojion.com/posts/380
カタナ式はmwがつねにBS込みなので、タイプウェルではミスが多い扱いでした。まあ、だからといって配列の価値が下がるとは思っていないですが。
今Windowsからではないので、あとで試してみます。