• 使用Karabiner为Mac内置键盘、HHKB进行映射



    使用Karabiner为Mac内置键盘、HHKB进行映射

    1 引言

    自从使用了Mac后,经过一系列折腾:

    • 买了个HHKB Pro 2 TypeS,感觉手感确实不错,比内置键盘好多了,就是稍微有些硬。
    • 编辑软件从Vim转为了Emacs
    • 使用iTerm2作为常用Terminal
    • 一些常用软件等等

    现在使用Mac办公已经毫无压力。

    但是,内置键盘的键位和HHKB不同,Mac系统快捷键、Emacs快捷键、iTerm2快捷键都不太一样,每次切换时可能使用几套键盘快捷键,非常不方便,影响心情和效率,所以有必要进行键盘映射和统一。

    经过查找、实验,发现Karabiner非常好的实现了上述功能,键盘操作行云流水般。再让我使用缺省的键盘设置,都非常不习惯了。

    下面我先把Mac内置键盘和HHKB的映射方法方法简要说明下。
    我的配置是:

    • 把Mac内置键盘改成HHKB键位
    • 把HHKB的删除键改成内置键盘的位置(因为删除键刚好无名指一伸就按到了)
    • 两个键盘都增加‘–>Control,以便和左Control对称,左右开弓

    2 什么是Karabiner和配置方法的基本说明

    Karabinar是一款键盘映射工具,for mac,开源,原名称为KeyRemap4MacBook。
    https://github.com/tekezo/Karabiner/
    https://pqrs.org/osx/karabiner/document.html

    设置主要通过“preference”进行。
    可以创建不同的profile,比如:可以为两块键盘设置不同的profile。每个profile可以单独进行设置。

    Karabinar为我们提供了很多预设选项,可以直接在“change key”中勾选;如果不够用,可以通过“Misc & Uninstall”中的“Custom Setting”对private.xml进行编辑。编辑后,需要在“Change Key”中“Reload XML”刷新选择项。

    3 内置键盘设置

    使用”default”设置。主要是设置CapsLock键为Control键:

    禁用系统的CapsLock键
    系统偏好设置–>键盘–>修饰键,设置CapsLock为无操作
    通过Seil设置CapsLock为F19
    下载安装Seil,选择Change the caps lock key为80(F19)
    设置F19为Escape和Control
    Custom shortcuts->F19 to Escape and Control。这样点击此键,就是ESC,组合其他键就是Control

    4 HHKB设置

    新增“HHKB” profile,主要是设置键为Delete:

    • 勾选“Change Backslash() key -> Backslash() to Delete”。
    • 在“Change Delete Key”中,勾选“Delete to Backslash()”和“Shift+Delete to Pipe(|)”

    5 通用设置

    两个键盘都增加‘–>Control,以便和左Control能够对称:
    修改private.xml,增加如下配置:

    <item>
            <name>Quote to Quote</name>
            <appendix>(+ When you type Quote + key, send Control_L + key)</appendix>
            <identifier>remap.quote2quote_controll</identifier>
            <autogen>__KeyOverlaidModifier__ KeyCode::QUOTE, KeyCode::CONTROL_L, KeyCode::QUOTE</autogen>
    </item>

    在default和hhkb两个profile,都勾选。

    6 待完善内容

    两个profile现在需要手工切换,有些麻烦,如果能够在插入hhkb后,自动进行切换就好了。

    Author: galaxy

    Created: 2015-04-24 Fri 22:46

    Emacs 24.4.1 (Org mode 8.2.10)

    Validate

  • 相关阅读:
    使用 elementUI 的表单进行查询,表单中只有一个文本框时,回车会自动触发表单的提交事件,导致页面的刷新。
    Vue+elementUI 创建“回到顶部”组件
    elementUI 表格 table 的表头错乱问题
    阿拉伯数字转中文大写(整数)方法
    vue开发 回到顶部操作
    vue-cli 项目中使用 v-chart 及导出 chart 图片
    vue-router路由钩子
    vue随记
    vue中的watch
    Ajax 同步异步互相转换以及区别
  • 原文地址:https://www.cnblogs.com/galaxy-gao/p/4454853.html
Copyright © 2020-2023  润新知