对于上了 HHKB 这条贼船的人来说,刚开始使用起来最大的别扭可能就是没有方向键的问题了。

最早的我使用 Karabiner 来解决,里边有一些内置的组合可以替代方向键,我用 control + hjkl(同vi) 替代四个方向键,因为 HHKB 的 control 在 caps lock 的位置,所以使用起来还是很舒服的,But 当系统升级到 macOS Sierra 后,Karabiner 就不能工作了,作者也在官网中写了:

Karabiner does not work on macOS Sierra at the moment.

同时也给出了替代方案,使用 Karabiner-Elements,但是新版的 Karabiner 并不支持这样的组合,所以我就又走上了寻找解决方向键之路。

后来找到了 Keyboard Maestro(简称 KM) 这个神器,这个软功能非常多,不过我只用了里边的设置组合键的功能,我自定义了 5 个组合,用来解决 HHKB 中的不方便的方向键问题。

分别是 大专栏  使用 KM 处理 HHKB 方向键code>control + hjkl 来操作方向和 control + delete 来反向删除(也就是删除光标后边的内容),但是用起来有些问题:不能连击(比如按住 control + h 光标不可以一直前移,需要手动敲击多次),然鹅就在我将就用了小一年后,今天尝试将触发方式 is pressed 改成了 is down,成功解决了不能连击的问题,所以 HHKB 方向键 的问题现在可以说是完美解决了。

不过我现在并没有将 Karabiner-Elements 删掉,因为里边有一个比较实用的功能:可以在插入外置键盘时禁用内置键盘的功能,防止意外点击。因为我之前是把 HHKB 垫到 Mac 上用的,经常不小心按住了某个键,现在我把 Mac 放在了支架上,已经不会再出现这个问题了,不过我还是留下了它。

最后上一张设置截图(我将 KM 中自带的其他组合全都关闭了,只留下 5 个我自己写的组合):

使用 KM 处理 HHKB 方向键的更多相关文章

  1. MacBook使用HHKB键盘设置

    问题: macbook上使用hhkb的时候,很纠结档位4要不要开,开启4号DIP开关后,虽然会使HHKB键盘上减少一个“◇(Win键)”键,但是会在键盘左侧多出一个“FN”键.多出来的左“FN”键,不 ...

  2. Android快乐贪吃蛇游戏实战项目开发教程-06虚拟方向键(五)绘制方向键箭头

    本系列教程概述与目录:http://www.cnblogs.com/chengyujia/p/5787111.html本系列教程项目源码GitHub地址:https://github.com/jack ...

  3. Android快乐贪吃蛇游戏实战项目开发教程-05虚拟方向键(四)四个三角形按钮

    该系列教程概述与目录:http://www.cnblogs.com/chengyujia/p/5787111.html 一.如何判断点击的是哪个方向键按钮 在上篇教程中我们实现了左边的三角形按钮效果, ...

  4. Android快乐贪吃蛇游戏实战项目开发教程-04虚拟方向键(三)三角形按钮效果

    该系列教程概述与目录:http://www.cnblogs.com/chengyujia/p/5787111.html 一.知识点讲解 当我们点击系统自带的按钮时,按钮的外观会发生变化.上篇博文中我们 ...

  5. Android快乐贪吃蛇游戏实战项目开发教程-03虚拟方向键(二)绘制一个三角形

    该系列教程概述与目录:http://www.cnblogs.com/chengyujia/p/5787111.html 一.绘制三角形 在上一篇文章中,我们已经新建了虚拟方向键的自定义控件Direct ...

  6. Android快乐贪吃蛇游戏实战项目开发教程-02虚拟方向键(一)自定义控件概述

    该系列教程概述与目录:http://www.cnblogs.com/chengyujia/p/5787111.html 一.自定义控件简介 在本项目中,无论是游戏主区域还是虚拟方向键都是通过自定义控件 ...

  7. SqlPlus中退格键和方向键的设置

    参见:http://www.cnblogs.com/wjx515/p/3717986.html   http://blog.csdn.net/jacky0922/article/details/765 ...

  8. 匈牙利算法与KM算法

    匈牙利算法 var i,j,k,l,n,m,v,mm,ans:longint; a:..,..]of longint; p,f:..]of longint; function xyl(x,y:long ...

  9. 【HDU2255】奔小康赚大钱-KM算法

    Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Description ...

随机推荐

  1. Django框架(五):模型(一) 定义属性

    1. 定义属性 Django根据属性的类型确定以下信息: 当前选择的数据库支持字段的类型 渲染管理表单时使用的默认html控件 在管理站点最低限度的验证 django会为表创建自动增长的主键列,每个模 ...

  2. Java和Mysql中的数据类型

    1.mysql中的基本类型 1.整数: tinyint:1个字节   -128~127 smallint: 2个字节  -32768~32767 int :  4个字节 bigint:  8个字节 2 ...

  3. mysql连接报10038

    1. netstat -ntpl  # 查看端口状态,发现3306状态丢失(不理解操作,但确实解决了问题) 2. iptables -vnL   # 这里要清除防火墙中链中的规则 3. iptable ...

  4. maven隐含依赖

    1.有时候,我们在pom.xml依赖了2个jar包,不过在工程lib里看到依赖包多于2个,这是为什么呢?原因是maven引入一个jar时,会连带引入这个jar包依赖的jar包,除非在配置引入这个jar ...

  5. python学习——list

    list 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推.Python有6个序列的内置类型,但最常见的是列表和元组 ...

  6. js获取当前页面名称

    // 取当前页面名称(不带后缀名) function pageName() { var a = location.href; var b = a.split("/"); var c ...

  7. iOS 清理文件缓存

    本文摘自:<msp的昌伟哥哥-iOS开发-清理缓存功能的实现>摘下来的目的就是为了能够学习.还望看到文章的同学,前往原创的博客园.感谢msp的昌伟哥哥的分享精神. 移动应用在处理网络资源时 ...

  8. [USACO09DEC]视频游戏的麻烦Video Game Troubles(DP)

    https://www.luogu.org/problem/P2967 https://ac.nowcoder.com/acm/contest/1077/B 题目描述 Farmer John's co ...

  9. Octave 常用命令

    GNU Octave 官方文档 GNU Octave Documentation(Online) GNU Octave Documentation(PDF) 安装额外的包 Installing and ...

  10. [LC] 207. Course Schedule

    There are a total of n courses you have to take, labeled from 0 to n-1. Some courses may have prereq ...