karabiner改键教程

最近更换了电脑,从windows向macos迁移,第一件麻烦事就是把windows上的键盘映射迁移过来,windows上用的软件是Autohotkey,mac不支持,于是查询后选择使用karabiner完成映射,折腾了一天终于搞出来了,在此记录一下。

karabiner是mac上的一款键盘映射软件,支持单对单,多对单,多对多各种映射,我的方案是将capslock+jkli分别对应左下右上小键盘,capslock+uoh分别对应home和end和backspace,同时输入法切换设置为shift切换。

karabiner的复杂指令complex modification能够满足我的要求,在一番折腾后终于完成了配置(需要特别说明的是由于home和end键在跳至行头行尾的同时会导致页面发生滚动,所以我讲capslock+U映射到了ctrl+A,capslock+O映射到了ctrl+E,这样就能无副作用的挪到行首部和行尾了)

下面开始介绍流程

1. 先安装karabiner(这个不会还是自己百度吧)

2. 安装完成后打开karabiner-elemenets,进入复杂修改页面

 

3. 创建一个1.json文件,把下面的代码复制进去

{
  "title": "`Use CAPS LOCK for vi navigation",
  "rules": [{
      "description": "CAPS LOCK + jkliuoh to arrow keys",
      "manipulators": [{
          "type": "basic",
          "from": {
            "key_code": "k",
            "modifiers": {
              "optional": [
                "any"
              ]
            }
          },
          "to": [{
            "key_code": "down_arrow"
          }],
          "conditions": [{
            "type": "variable_if",
            "name": "caps_lock pressed",
            "value": 1
          }]
        }, {
          "type": "basic",
          "from": {
            "key_code": "i",
            "modifiers": {
              "optional": [
                "any"
              ]
            }
          },
          "to": [{
            "key_code": "up_arrow"
          }],
          "conditions": [{
            "type": "variable_if",
            "name": "caps_lock pressed",
            "value": 1
          }]
        }, {
          "type": "basic",
          "from": {
            "key_code": "j",
            "modifiers": {
              "optional": [
                "any"
              ]
            }
          },
          "to": [{
            "key_code": "left_arrow"
          }],
          "conditions": [{
            "type": "variable_if",
            "name": "caps_lock pressed",
            "value": 1
          }]
        }, {
          "type": "basic",
          "from": {
            "key_code": "l",
            "modifiers": {
              "optional": [
                "any"
              ]
            }
          },
          "to": [{
            "key_code": "right_arrow"
          }],
          "conditions": [{
            "type": "variable_if",
            "name": "caps_lock pressed",
            "value": 1
          }]
        },{
          "type": "basic",
          "from": {
            "key_code": "u",
            "modifiers": {
              "optional": [
                "any"
              ]
            }
          },
          "to": [{
            "key_code": "a",
            "modifiers": ["left_control"]
          }],
          "conditions": [{
            "type": "variable_if",
            "name": "caps_lock pressed",
            "value": 1
          }]
        },{
          "type": "basic",
          "from": {
            "key_code": "o",
            "modifiers": {
              "optional": [
                "any"
              ]
            }
          },
          "to": [{
            "key_code": "e",
	    "modifiers": ["left_control"]
          }],
          "conditions": [{
            "type": "variable_if",
            "name": "caps_lock pressed",
            "value": 1
          }]
        },{
          "type": "basic",
          "from": {
            "key_code": "h",
            "modifiers": {
              "optional": [
                "any"
              ]
            }
          },
          "to": [{
            "key_code": "delete_or_backspace"
          }],
          "conditions": [{
            "type": "variable_if",
            "name": "caps_lock pressed",
            "value": 1
          }]
        },
        {
          "type": "basic",
          "from": {
            "key_code": "caps_lock",
            "modifiers": {
              "optional": [
                "any"
              ]
            }
          },
          "to": [{
            "set_variable": {
              "name": "caps_lock pressed",
              "value": 1
            }
          }],
          "to_after_key_up": [{
            "set_variable": {
              "name": "caps_lock pressed",
              "value": 0
            }
          }]

      }]
}]
}

4. 然后将json文件复制到该地址

 ~/.config/karabiner/assets/complex_modifications/

5. 这时候点击Karabinerl里的Add rule,选中capslock下的那条点击enable即可,名称应该是CAPS LOCK + jkliuoh to arrow keys

到这就完成配置了,改完后coding效率上去了一个量级,然后shift切换中英文其实只要下一个搜狗输入法改一下就行,就不写映射了。

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值