yqrashawn / GokuRakuJoudo

config karabiner with ease
GNU General Public License v3.0
1.14k stars 121 forks source link

simlayers key output order #60

Closed aleator closed 4 years ago

aleator commented 4 years ago

I've been toying with the following:

     :simlayers 
      {  :numpad-mode {:key :s}}
....
       {:des "numpad mode"
                 :rules [[:u :7      :numpad-mode {:key_up_order :strict}]
                         [:i :8      :numpad-mode {:key_up_order :strict}]
                         [:o :9      :numpad-mode {:key_up_order :strict}]

                         [:j :4      :numpad-mode {:key_up_order :strict}]
                         [:k :5      :numpad-mode {:key_up_order :strict}]
                         [:l :6      :numpad-mode {:key_up_order :strict}]

                         [:m :1      :numpad-mode {:key_up_order :strict}]
                         [:comma :2  :numpad-mode {:key_up_order :strict}]
                         [:period :3 :numpad-mode {:key_up_order :strict}]

                         [:n :0 :numpad-mode]
                         ]}

This lets me type numbers using s + uiojkl. However, it doesn't quite work. If I type m,k while holding s, I get 51 as output instead of the expected 15.

This might be a just me not finding the necessary documentation, but I'm stumped? What should I change?

yqrashawn commented 4 years ago

Just released v0.3.1 to solve this. Use brew upgrade goku to upgrade to the new version.

aleator commented 4 years ago

Thanks. I think this fixes the issue for me! However, it seems that if I set :simlayer-threshold to long period of time, then everything typed within that time will be output, not exactly in reverse but in order the keys occur in the keyboard (wut?)

yqrashawn commented 4 years ago

in order the keys occur in the keyboard

Don't quite understand what does that means.

Here is the supposed behavior of :simlayer-threshold (simultaneous_threshold_milliseconds) in karabiner's doc. Is this the same as you encountered?