pqrs-org / Karabiner-Elements

Karabiner-Elements is a powerful utility for keyboard customization on macOS Sierra (10.12) or later.
https://pqrs.org/osx/karabiner/
The Unlicense
18.85k stars 838 forks source link

Implement Karabiner's features (complex configurations) #369

Closed tekezo closed 6 years ago

iryan2 commented 8 years ago

Hi @tekezo,

Firstly, thanks so much for Karabiner, I've been using it for years and it's amazing.

I was wondering if you're planning to reimplement the multi-touch addon stuff? I love being able to left and right click with one finger on my trackpad + F/D respectively. I've gone back to using a mouse since this functionality wasn't available in Sierra.

I'm really just curious if it's worth waiting for, or should I just find an alternative?

Thanks!

ghost commented 8 years ago

HI @tekezo Could you help me in mapping space-key to Ctrl-Left only on long press so that normal space works as is on a normal press? This was available in the old version. Thanks

nikitavoloboev commented 8 years ago

It's amazing to hear that more complex mappings are being added to Karabiner Elements. For me personally the most needed feature needed before I can switch to Sierra, would be to be able to make a key 'launcher key' and add custom mappings to the key easily. The way I can do it in Karabiner here.

I also really wish I could move my mouse with launcher key d.

I hope these would be added soon to Karabiner Elements. Thank you a lot for this utility.

prohtex commented 8 years ago

Also adding my gratitude for all the work so far and anticipation for complex key remapping. I have downgraded 2 machines to 10.11 to be able to use the old Karabiner.

natemcintyre commented 8 years ago

So stoked to see that this is on the radar as it is the single reason that I loved Karabiner+Seil in the past. 👍

samw3 commented 8 years ago

Woot! I'm waiting as well for my caps lock to cmd-space mapping. Haven't gone to Sierra yet because of it.

ipetepete commented 8 years ago

I'll add one more request. This "complex" feature set might solve it, but I'll detail it here incase it's different.

I use to have my spacebar act as a function key when held down, mapping FN+[I,J,K,L] to arrow keys (up, left down, right) respectively. I had this because I have two arrow keys on my laptop that don't work. And it is so efficient that I had this same mapping across all my macs, I miss this feature so much.

So my request is to allow mapping key combos or "layer" style mapping.

raulchen commented 7 years ago

Hi, could you share a roadmap of implementing these features?

franciscolourenco commented 7 years ago

Will Elements ever be able to support Homerow Arrows and Modifiers Mode? Do you know any other toold who might be able to emulate this setup? Thanks!

kryten68 commented 7 years ago

Hello! Thank you so much for Karabiner elements.

Please help me. How can I map something like this:-

"non_us_backslash": "left_option_3"

I really need to map the section key to the '#' key on my UK keyboard. It is option+3. I really miss this functionality. I have tried for ages to achieve this and I know I am not alone.

Would be very grateful for any suggestions. Please!

horen20 commented 7 years ago

Hello, Karabiner elements disables all function keys of the mechanical keyboard Cherry MX 6.0

prohtex commented 7 years ago

Here it is for those who have been waiting, complex key remapping: https://github.com/tekezo/Karabiner-Elements/issues/16#issuecomment-271907994

kryten68 commented 7 years ago

Wow! Yes!! That works. Using:

"one_to_many_mappings": {
                "non_us_backslash": [
                    "left_option",
                    "3"
                ]
            },

In 00.90.75

it ... works! Oh joy unbounded!! Thank you!

Does NOT work in 00.90.76 strangely enough...

dndrsn commented 7 years ago

Does this add support "many to one mappings" as well? E.g. shift + delete to forward delete. I assume no.

martinweiss commented 7 years ago

I would also like to know the answer to dndrsn's question.

prohtex commented 7 years ago

no, this is only "one to many"

maplebed commented 7 years ago

I too am hoping for a many-to-many mapping. I bound j+l to CTRL-B so that chording those two keys on the home row triggered my tmux control character.

sinewave commented 7 years ago

Just adding my +10 for homerow_mode support.

Any ideas on when this might be implemented? It's the only thing currently holding me back from upgrading to macOS 10.12.

franciscolourenco commented 7 years ago

@sinewave I'm working on an app which implements homerow mode and tab mode. its already working, will let you know when it is finished.

nathanielescribano commented 7 years ago

Adding votes for multi-touch extension functionality. Not sure why @iryan2 's post is getting downvoted. this is the only thing holding me back from updating to the latest macos.

braham-snyder commented 7 years ago

@nathanielescribano

I suspect it's because

I'm really just curious if it's worth waiting for, or should I just find an alternative?

comes off as a little entitled

Tangentially, I'd guess that at least a hundred people are subscribed to this issue in hopes of receiving updates on the much-awaited implementations of "complex configurations" (including multi-touch)--myself included--and I suspect many of us are only on El Capitan because Karabiner is that amazing. Given that, I think most of those subscribers would greatly appreciate it if you (and everyone else) expressed your "adding votes" by just adding a thumbs up to the relevant post (iryan2's in this case) instead of posting a comment saying the same thing (which notifies everyone subscribed).

yjqg6666 commented 7 years ago

upvote for new release.

spinlock commented 7 years ago

Hello everyone ~

I'm using HHKB on macOS Sierra but we know that Karabiner-Elements doesn't support complex configuration yet. So I have to modify the source code to implement some hard code mappings for my keyboard.

Here's my fork https://github.com/spinlock/Karabiner-Elements and here's my patch https://github.com/spinlock/Karabiner-Elements/commit/d7f56ecd9d1b665f316a7230f98ceadb3f4c4f2c .

// Shift_L+Esc => ~
// Shift_R+Esc => ~
// Option_L+Esc => `
// Option_L+Tab => CapsLock
// Command_L+Esc => Command_L+`
// Command_L+F => PageDown
// Command_L+B => PageUp
// Shift_L+Backspace => Shift_L+Backslash
// Shift_R+Backspace => Shift_L+Backslash
// Option_L+HJKL => Left/Down/Up/Right
// Option_L+1~12 => F1~F12

It really works !!

quangbuule commented 7 years ago

Hi @spinlock, I found that using JSON can be enough for your need. For example:

{
  "description": "Change Cmd+Esc to Cmd+`",
  "manipulators": [
    {
      "type": "basic",
      "from": {
        "key_code": "escape",
        "modifiers": {
          "mandatory": [
            "command"
          ],
          "optional": [
            "any"
          ]
        }
      },
      "to": [
        {
          "key_code": "grave_accent_and_tilde",
          "modifiers": [
            "command"
          ]
        }
      ]
    }
  ]
}
tch399 commented 6 years ago

Was the multi-touch functionality specifically, trackpad + F/D, ever solved by karabiner or any other method?

stale[bot] commented 6 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.