百相鍵盤『き』をUSキーボードで ―― その4
右シフトキーに文字キーとシフトの両方の機能を持たせてみる。
前回までのおはなし http://d.hatena.ne.jp/kettt/20080724/p2
前回までのバージョンでは、「右シフトキーと文字キー重ね押し」→「シフトキー短押し」とすると、短押しで入力されるはずの[`]が入力されないバグがありました(他にも無駄な処理がちらほらとありました)。
今回はその修正です。
ls_state=0 ~RShift:: if ls_state=0 { ls_state=1 Input, OutputVar, I L1 T0.2 V } else ls_state=2 return ~RShift Up:: Input if((ls_state!=2)and(A_TimeSincePriorHotkey < 200)and(OutputVar="")) send, `` ls_state=0 OutputVar= return ~+RShift:: if ls_state=0 { ls_state=1 Input, OutputVar, I L1 T0.2 V } else ls_state=2 return ~+RShift Up:: Input if((ls_state!=2)&&(A_TimeSincePriorHotkey < 200)and(OutputVar="")) send, ~ ls_state=0 OutputVar= return