jtroo / kanata

Improve keyboard comfort and usability with advanced customization
GNU Lesser General Public License v3.0
3.08k stars 129 forks source link

Feature request: Allow forks to have multiple forked actions #1332

Closed ohmyohmyohmy closed 2 weeks ago

ohmyohmyohmy commented 2 weeks ago

Is your feature request related to a problem? Please describe.

I love the idea of the fork. Unfortunately, the fork right now only supports one additional action besides the default action.

Describe the solution you'd like.

I envision the perfect fork as something like this:

(fork x
      @special1 (lsft rsft)
      @special2 (lctl rctl)
      @special3 (lalt ralt))

Describe alternatives you've considered.

I've tried using multi, creating a dedicated layer when a active key is pressed, but I think a multiple fork would be more elegant.

Additional context

No response

gerhard-h commented 2 weeks ago

for complexer forks there is already the newer and more powerfull switch statement

(switch
    ;; case 1
    ((and a b (or c d) (or e f))) @ac1 break
    ;; case 2
    (a b c) @ac2 fallthrough
    ;; case 3
    () @ac3 break
  )
ohmyohmyohmy commented 2 weeks ago

Huh... I must have missed that in the manual. Thanks!