紅皿のコードのブラッシュアップ
紅皿の新バージョンver.1.5.x に向けてのプラッシュアップを行っています。もうすぐリリースできる予定です。
キーキューの内容に応じてモード遷移するように設定しました。以下か各モードにおけるキューの内容です。コードをブラッシュアップしながら見直すと、連続モードの2文字目以降のときと、S6)の親指キー文字キーオン親指キーオフ状態のときのタイムアウト値が不適切だったようです。
S1)初期状態:キューは空です。
S2)文字オン状態:
キューには文字コードとその属性が格納されます。
S3)親指オン状態:
g_Oya変数のオンしている親指が格納されます。
キューは、親指キーが出力されていないときには、親指キーコードと属性が格納されます。
S4)文字キー親指キーオン状態
キューの第1番目には文字コードとその属性が格納されます。
キューの第2番目には親指キーコードとその属性が格納されます。
S5)親指キー文字キーオン状態
連続モードの1文字目、および非連続モードは以下です。
キューの第1番目には親指キーコードとその属性が格納されます。
キューの第2番目には文字コードとその属性が格納されます。
連続モードの2文字目以降は以下です。
キューの第1番目には文字コードとその属性が格納されます。なお、親指キーのシフト状態が属性として格納されます。
S6)親指キー文字キーオン親指キーオフ状態
連続モードの1文字目、および非連続モードは以下です。
キューの第1番目には親指キーコードとその属性が格納されます。
キューの第2番目には文字コードとその属性が格納されます。
キューの第3番目には親指キーコードのオフとその属性が格納されます。
連続モードの2文字目以降は以下です。
キューの第1番目には文字コードとその属性が格納されます。なお、親指キーのシフト状態が属性として格納されます。
キューの第2番目には親指キーコードのオフとその属性が格納されます。
S7)文字キー文字キーオン状態
キューの第1番目には1番目の文字コードとその属性が格納されます。
キューの第2番目には2番目の文字コードとその属性が格納されます。
S8)文字キー文字キーオン文字キーオフ状態
キューの第1番目には1番目の文字コードとその属性が格納されます。
キューの第2番目には2番目の文字コードとその属性が格納されます。
キューの第3番目には1番目の文字コードのオフとその属性が格納されます。