chan.dev / posts

a chantastic guide to karabiner-elements

🌱 This post is in the growth phase. It may still be useful as it grows up.

Your keyboard is under-utilized

Modding philosophy

My rules for remapping.

  1. Never break rollover. Only create layers from keys typically followed by a space. e.g., ., ,, , tab, ;, -.
  2. Prize symmetry.

Why software-level mapping?

Embrace clojurescript

Ideas

  • double-tapping a modifier locks it (cmd, shift, ctrl, option (meh?))
  • hitting both right and left version of key perform some type of common action

Unstructured notes

  • for modifier keys: remap keys, not positions (this is important for being able to maintain availability to hardware opinions
  • for home cluster keys: map positions, not characters. makes it easier to change layouts and optimizes for hand position
  • two finger commands should always be done with two hands or with one hand, never leaving a neutral position
  • daily commands with more than two keys get mapped to homerow
  • commands that remove either hand from home row get mapped
  • one directional cluster for each hand

home cluster vs home row

  • capture
  • display
  • window
  • file
  • open
  • location (2:2426, 3:3000, 4:4321, 6:6006, 7:7689)
  • character (no character layer. that’s what a keyboard is for)
  • direction (left mod, right action)
  • move (left mod,
  • select (left mod,
  • one control on each side
  • god mode (switch profile?) qwerty left hand no command (cmd + cmd mode?)
    • select all
    • save
    • cut, copy, paste
    • undo / redo (shift)
    • move forward/back
    • move to front/back
  • mapping for davinci, to whatever is default