-
Hi, I found your repo while looking for an easier way to edit my Karabiner config :). Over time, I've built it up, and it works great. However, updating or tweaking it is extremely tedious, which discourages me from using it. Discovering your repo has reinvigorated me 😂 I have a question: Is it possible to have layers stack upon each other? For example, my current config works like this:
Wondering if something like this is supported? Happy to share my config if that's helpful but it's way over 3k lines 😄. |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 12 replies
-
Hi @sinewave, thanks for trying the project, glad it is helpful. Please try if this works for you: layer('␣').manipulators([
withModifier('??')({
j: toKey('←'),
l: toKey('→'),
f: toKey('‹⌘'),
a: toKey('‹⇧'),
}),
]) |
Beta Was this translation helpful? Give feedback.
-
Hi @evan-liu, tku for the quick response! Could you explain what I might be misunderstanding but believe my setup functions differently in that it has four modes (or layers) activated by holding specific keys:
Each mode changes the key mappings on the right half of the keyboard. For example, in home_row_mode "j" or "l" moves character left or right whereas in "command_mode" pressing "j" or "l" moves word left or right and in shift_mode pressing "j" or "l" selects word left or right. I've pasted in my config below to illustrate, which runs 2,800 lines 😩
|
Beta Was this translation helpful? Give feedback.
-
Wow, that seems like magic!!! Would you mind elaborating on how this works as I'm still a little confused :) Would love to understand it better so I can customize e.g.
|
Beta Was this translation helpful? Give feedback.
-
Hey, apologies to revive this topic here but I have the opposite problem. When I am in one layer, I don't want another layer to get activated. All my layers are hyperLayer() and I define them in functions and call them in alphabetical order. I find that the layers first called are the ones that are able to use all alphabetical keys while the layers called after the first layer are unable to use the specific key used to activate the first layer. For example, I have a yabaiLayer() that is Hyper + Y to activate the layer, then any key press is associated with an action. Before that, I have a raycastLayer() that's activated by Hyper + R. If I press, Hyper + Y + R, the action associated with R inside yabaiLayer() is never executed, rather raycastLayer() is stacked on top of yabaiLayer(). |
Beta Was this translation helpful? Give feedback.
Try