前言

  • 一直使用 mac ,对于机械键盘还处于刚入坑阶段,作为小白还是选择能够兼容 mac 的机械键盘,于是选择了 ikbcG87 “双子座”

1.使用 ikbc G87 mac 模式下

  • 切换

    • G87 默认是 windows 模式,需要同时按下 Fn+Pause 键,切换到 mac 模式,此时 Pause 键的灯会常亮。如果要在 mac 模式下关闭 Pause 键的常亮灯,需要同时按下 Fn+Esc 键。(在 mac 模式下,再单击一下 Pause 键,就可以切换回 windows 模式)

  • 在 mac 模式下 f1、f2、f3 默认正常使用
  • f4 需要设置
    • Launchpad 键默认是不起作用的,需要在“系统偏好设置—键盘—快捷键—显示Launchpad”中设置一下,然后就可以使用 f4 这个按键了 (绑定的是 ^L 组合键)
  • 设置好 mac 模式,可以使用 Fn+End 记忆当前使用模式,下次插上键盘时就默认是 mac 模式,不过 Pause 键会一直亮着,需要手动,按下 Fn+Esc 键

2.大小写键改为 ctrl 键

  • 问题:使用 mac 自带的改键映射后,f3、f4 就没有效果了
  • 方法:使用 karabiner 软件,使用 complex_modifications rules
    • https://pqrs.org/osx/karabiner/complex_modifications/#modifier_keys
    • 经过筛选测试 Change caps_lock to control if pressed with other keys, to escape if pressed alone. 这个规则可以利用,它默认是按了 caps_lock 和其他组合键的时候就把 caps_lock 改为 control,仅仅单击 caps_lock 的时候就改为 esc 键,而我们的目标就是单击时是 caps_lock,组合的时候是 control
    • 修改目录及内容
      • 可参考 https://github.com/pqrs-org/KE-complex_modifications 上的介绍来修改

      • 第一个修改

        1.路径
        |--- ~/.config
        |--- karabiner
        |--- assets
        |--- complex_modifications
        |--- 1510932793.json
        2.内容:找到这条规则,将最后的 escape 改为 caps_lock
        {
        "description": "Change caps_lock to control if pressed with other keys, to escape if pressed alone.",
        "manipulators": [
        {
        "type": "basic",
        "from": {
        "key_code": "caps_lock",
        "modifiers": {
        "optional": [
        "any"
        ]
        }
        },
        "to": [
        {
        "key_code": "left_control"
        }
        ],
        "to_if_alone": [
        {
        "key_code": "caps_lock"
        }
        ]
        }
        ]
        }
      • 第二个修改(主要生效的文件)

        1.路径
        |--- ~/.config
        |--- karabiner
        |--- karabiner.json
        2.内容:找到这条规则,将最后的 escape 改为 caps_lock
        "rules": [
        {
        "description": "Change caps_lock to control if pressed with other keys, to escape if pressed alone.",
        "manipulators": [
        {
        "from": {
        "key_code": "caps_lock",
        "modifiers": {
        "optional": [
        "any"
        ]
        }
        },
        "to": [
        {
        "key_code": "left_control"
        }
        ],
        "to_if_alone": [
        {
        "key_code": "caps_lock"
        }
        ],
        "type": "basic"
        }
        ]
        }
        ]

mac 下使用 ikbcG87 及使用 karabiner 改大小写键的更多相关文章

  1. mac下 将python2.7改为python3

    1.查看当前电脑python版本 python -V // 显示2.7.x 2.用brew升级python brew update python 3.如果安装成功,去系统目录下回看到两个版本的pyth ...

  2. mac下将python2.7改为python3

    mac下将python2.7改为python3 查看当前电脑python版本 python -V 修改.bash_profile文件 vi ~/.bash_profile //编辑bash_profi ...

  3. MAC下 mysql不能插入中文和中文乱码的问题总结

    MAC下 mysql不能插入中文和中文乱码的问题总结 前言 本文中所提到的问题解决方案,都是基于mac环境下的,但其他环境,比如windows应该也适用. 问题描述 本文解决下边两个问题: 往mysq ...

  4. 【开发软件】 在Mac下配置php开发环境:Apache+php+MySql

    本文地址 原文地址   本文提纲: 1. 启动Apache 2. 运行PHP 3. 配置Mysql 4. 使用PHPMyAdmin 5. 附录   有问题请先 看最后的附录   摘要: 系统OS X ...

  5. 2016年最新mac下vscode配置golang开发环境支持debug

    网上目前还找不到完整的mac下golang环境配置支持,本人配置成功,现在整理分享出来. mac最好装下xcode,好像有依赖关系安装Homebrew打开终端窗口, 粘贴脚本执行/usr/bin/ru ...

  6. 【工匠大道】Mac下Java开发环境配置简述

    本文地址 原文地址 分享提纲: 1. 下载JDK1.7 2. 配置java_home 3 .安装tomcat 4 .安装eclipse或者myeclipse 5.  mysql安装 破解版下载请参考M ...

  7. Mac下golang开发环境配置

    go语言在开发效率和运行效率中的优势让很多人青睐,所以有倾向打算转向go语言的开发. 下面介绍在Mac OS X中golang的开发环境配置. 1.安装brew brew是一个mac下的由ruby开发 ...

  8. Mac 下 PostgreSQL 的安装与使用

    在 mac 下,可以利用 homebrew 直接安装 PostgreSQL: 1 brew install postgresql -v 稍等片刻,PostgreSQL 就安装完成.接下来就是初始数据库 ...

  9. mac下webpagetest搭建

    我的server和agent都是在mac上搭建的,所以会和linux下有些不同   一.安装配置Apache和PHP webpagetest需要使用PHP和Apache启动服务.mac默认安装了Apa ...

随机推荐

  1. TP框架中D方法和M方法

    D()和M()方法的区别: D和M的区别主要在于 M方法不需要创建模型类文件,M方法不会读取模型类,所以默认情况下自动验证是无效的,但是可以通过动态赋值的方式实现 而D方法必须有创建模型类. 我们可以 ...

  2. esper(4-2)-Category Context

    语法: create context context_name group [by] group_expression as category_label [, group [by] group_ex ...

  3. Cookie和Session入门(一)

    目录一)背景介绍二)Cookie机制三)Session机制四)两者比较五)参考资料链接一)背景介绍Cookie与Session是常用的会话跟踪技术.1.Cookie通过在客户端记录信息确定用户身份,S ...

  4. RTT设备与驱动之PIN设备

    单片机的PIN有2个基本功能:GPIO和AFIO,其中gpio的常用功能: 1 输入:上拉.下拉.模拟.浮动 2 输出:上拉.下拉.推挽.开漏 3 中断:上升沿.下降沿.双沿.高电平.低电平触发 RT ...

  5. (转) tcpdump参数解析及使用详解

    tcpdump介绍 原文:http://blog.csdn.net/hzhsan/article/details/43445787 tcpdump 是一个运行在命令行下的抓包工具.它允许用户拦截和显示 ...

  6. Fedora14 mount出现错误时解决办法【亲测有效】

    挂载时出现了如上图所示问题,看第一条英语提示,我刚开始以为是文件权限不够,改了权限之后,依旧存在这样的问题, 于是,我上网查阅了一些资料: 在解决之前,先让我们一起来了解一下nfs: NFS最大功能就 ...

  7. 封装RateLimiter 令牌桶算法

    自定义注解封装RateLimiter.实例: @RequestMapping("/myOrder") @ExtRateLimiter(value = 10.0, timeOut = ...

  8. 【转】jsoup的使用

     Jsoup的使用   jsoup 是一款 Java 的HTML 解析器,可直接解析某个URL地址.HTML文本内容.它提供了一套非常省力的API,可通过DOM,CSS以及类似于JQuery的操作方法 ...

  9. Unity C# 关于Attribute的使用

    最近在研究Attribute,感觉挺好玩,搜到一篇不错的文章,分享给大家 原文:未知?找到后补上! 举两个例子,在变量上使用[SerializeFiled]属性,可以强制让变量进行序列化,可以在Uni ...

  10. Java中的阻塞队列-ConcurrentLinkedQueue

    http://ifeve.com/concurrentlinkedqueue/ 1.    引言 在并发编程中我们有时候需要使用线程安全的队列.如果我们要实现一个线程安全的队列有两种实现方式一种是使用 ...