配列エミュレータ紅皿の打鍵判定は、
重なりのパーセンテージで判定する。
設定するべきパラメータは、
重なりの割合と、重なりの判定時間の二つ。
今僕は、
重なりを35%、判定時間を100msで使っている。
重なりを多くすればするほど、
同時打鍵とみなされる判定はシビアになる。
ゆるくすればするほど、
ロールオーバーも同時打鍵と判定されてしまう。
判定時間を長く取ればとるほど、
同時打鍵とみなされやすいが、
ロールオーバーも同時と判定されてしまう。
判定時間は昔やっていたように、
60msとかでやってみた。
しかしこれが大変難しい。
とくに3キー同時はシビアすぎる。
僕はそんなに正確に打たずに薙刀式を運用しているんだなあ。
で、「まあまあの間にゆるっとロールオーバーしたら同時」
という判定にチューニングしてみた感じ。
零遅延モードはオフ。
3キー同時のときに2カナ出て消えるのも鬱陶しいし、
そもそも薙刀式では実装していない(意味がないから)と思われる。
本家DvorakJに対して、
非常に快速な打鍵環境になる。
いままで打っていたのはとろとろしていたんだなあ、
と思えるくらいきびきびしている感じ。
しばらくこれを使ってみて、
様子を見ていこうかな。
ただこの設定だと、
文字部分は非常に分解能が高くて便利なんだけど、
編集モードがシビアになる傾向がある。
文字を打つリズムと、
編集モードでの時間感覚はだいぶ異なるようだ。
3キー同時にするのではなく、「DFを押しながら」
などに改良したほうが、
使いやすいかもしれない。
編集モードは、文字を打つときに比べ、
考えながらやっていることが多いようだ。
このへんはもっといい設定があるかもしれないので、
しばらく考えてみることにする。
・編集モードの3キーの押下の組み合わせを文字キーと同一にしました。
以下の全てで「(」が出力されます
・jkgの同時打鍵
・jキーの押下状態+kgの同時打鍵
・kキーの押下状態+jgの同時打鍵
・gキーの押下状態+jkの同時打鍵
・jkキーの押下状態+gの打鍵
・kgキーの押下状態+jの打鍵
・jgキーの押下状態+kの打鍵
なお、ver.0.1.4.76では、以下の場合に限定されていました。
・jkgの同時打鍵
・jkキーの押下状態+gの打鍵
・スペース&シフトの解除のため10mSEC でポーリングするようにしました。autohotkey のバグ対策コードです。
最新版79でテスト打鍵中です。
編集モードは問題ないようです。
新たな問題報告は、サポートブログへ書きます。
なお、零遅延モードは、薙刀式では動作しません。
零遅延モードで文字を出力したのち、その文字をBackspaceで消したのち、制御コードを出力すると、妙なちらつきとして見えます。そのため、紅皿 ver.0.1.4.7x では、最初の1文字をオンしたとき、この文字と他のキー(文字キーや親指シフトキー)とを同時打鍵したときに、制御コードが出力される可能性があるとき、零遅延モードの出力を抑止しています。
そして、薙刀式では、全ての文字キーは、その後の他のキーとの同時打鍵により、制御コードが出力される可能性があります。よって、零遅延モード設定のオンオフに関わらず、零遅延モードは実行されません。
詳細な解説ありがとうございます。
おそらくそうなんだろうなと思いつつ、
設定部にチェックがあるので、
一応オンオフして試してみただけです。
今使ってる配列が零遅延モード対応かどうか分かる表示があるといいかもですね。設定部にチェックすら出てこなくなるのがいいかな。
(月配列は零遅延関係ないのは想像つくけど、
蜂蜜小梅の親指部は対応してるだろうけど、
マトリックス部はどうなんだろとか、
よだかやphoenixに対応する時どうなるだろうとか、
使ったことない配列ほど予想がつかない…)