Poker键盘以其小巧、精致、可编程深受广大用户的喜爱,更关键的是,它颜值还很高。时常作为Mac的外接键盘日常使用。
然而往往小巧与极客的事物便意味着会有一些操作方式让使用者不够习惯,因而会产生一些痛点,比如没有直接的方向键等等。
网上有一些文章介绍了Poker底部开关的设置,以及Mac基本的几个功能键修改功能,笔者进行过尝试,然而其修改过于基础,依然不够好用。
本篇介绍了笔者使用Mac上的改键软件Karabiner对Poker键盘进行自定义化设置,从而优化其作为Mac外接键盘体验的具体实施方案。
通过本文所举的case,掌握了Karabiner的使用方法之后,便可以对任意键盘进行任意程度的自定义设置了,可谓一通百通,解放你的手指,在Mac上驰骋,效率提升一个数量级。
功能键的调整
功能键一般要左手去按,Poker左下角的功能键布局如图所示:
调整左ctrl与左command
位于键盘最左下角的键按键方式是使用 左手掌外侧 按下,这样不需要移动扭曲小指或是移动手在键盘上的位置,可减少对手指的伤害,非常自然。
然而,Poker最左下角的键是Ctrl,而在Mac系统上,最常用的 保存、复制、粘贴 三个操作的按键却是command+s(c, v)来实现的。
左command键位于左Ctrl右边,依然使用左手掌外侧来按,但这就不那么自然了,需要左手下部往右侧稍稍移动一个键位来够到。
根据频次来讲,在Mac上,使用Ctrl+key组合键的常用操作不能说没有,但远比不上上述保存、复制、粘贴三兄弟,因此,果断将二者调换位置。
将Capslock改为左option
笔者没有使用Capslock的需求,大写字母通过shift+'a'这样的方式来实现,完全可以将它替换为更常用的按键。
在Mac上,使用option的频次较多的操作主要有两个,唤起Alfred option+space与emacs中运行函数 option+x。
而在Poker上左option位于左command的右侧,左手掌移一个键已经够难受了,移两个键更不是不可取,若使用大拇指去往里勾,笔者认为和使用小指去勾Ctrl一样,长久而言对手指有损伤,故果断将Capslock改为左option,这样对于上述所提到的两个操作都方便与自然了许多,使用小指从a移到Capslock是很轻松的事。
进阶设置
方向键的改进
Poker并无自带的方向键,然而就算自带方向键,将右手抬起来去按这个操作还是蛮糟心的,况且还容易按错。
Poker的原生方案是fn+asdw,这当然很极客了,然而这却也是笔者使用Karabiner的直接原因。
问题在于这个操作需要两个手,而通过自定义Karabiner的Complex Modifications,可以将fn+asdw这种方案改为option+asdw,加上之前将Capslock改为了option,则仅使用左手便可以使用方向键。
Complex Modifications是Karabiner的一个进阶功能,通过json配置的方式,可以实现任意的键盘行为方式的自定义,绝对超出你的想象。
官方提供了一些例子,比如将Capslock进行修改,当它与其他键一起使用时发挥Ctrl的功能,当它单独被按下时,发挥escape的功能。
这些例子中并没有更改Poker方向键的case,然而通过参考其例子的json配置方式,完全可以实现自己想要的任何行为。
其配置文件在 ~/.config/karabiner/assets/complex_modifications
目录,建立guerbai-keymap.json文件,内容如下:
{
"title": "poker arrow keys",
"rules": [
{
"description": "holing left alt and asdw use arrow keys.",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "a",
"modifiers": {
"mandatory": ["left_option"]
},
"optional": ["any"]
},
"to": [
{
"key_code": "left_arrow"
}
]
}
]
}
以上只举了将option+a改为左方向键的配置,配置的key是自解释的,即当a被按下时,若此时option也是被按下的,则to left_arrow
的行为,很易懂就不再多解释,同样的格式在rules里来四份分别到asdw到四个方向键即可。
backspace与enter
在使用evernote等软件编辑文字或浏览网页时,通常是右手握鼠标,左手在键盘,这个过程中通常会遇到要按backspace或enter的情况,这时便不得不将右手从鼠标拿开,去按退格或回车,再放回到鼠标上,极其不爽。
在上述姿势下,自然可以想到若是左手可以直接按到backspace与enter的话便会方便许多。
这里的配置与方向键的改进很像,笔者采取的策略是,当option(已被改到Capslock)被单独按下时,呈现出backspace的作用,而command(已被改为左Ctrl)+space则呈现为enter。配置如下:
{
"title": "poker arrow keys",
"rules": [
{
"type": "basic",
"from": {
"key_code": "spacebar",
"modifiers": {
"mandatory": ["left_command"]
},
"optional": ["any"]
},
"to": [
{
"key_code": "return_or_enter"
}
]
},
{
"type": "basic",
"from": {
"key_code": "left_option",
"modifiers": {
"optional": [
"any"
]
}
},
"to": [
{
"key_code": "left_option"
}
],
"to_if_alone": [
{
"key_code": "delete_or_backspace"
}
]
}
]
}
左右切换全屏程序
Mac触控板的四指横扫是切换全屏程序的利器,而外接键盘却并不那么方便。command+tab自然是一种方案,然而却不够精确,同时要反向切command+shift+tab是极难按的,笔者通常更喜欢使用command+方向键来进行切换。
在未改造方向键时,这个操作在Poker上简直麻烦,需要左手掌外侧压住command,右手掌外侧压住fn,左手指按a或d,然而上述改方向键的方案并不能直接与command配合来进行切换,因为它仅指定了mandatory为command,还需要进一步改造。
笔者的设计是将这个操作改为左手一只手可以进行,使用command+option+a(d)来进行切换,这样比如在网页上看到一段话,可以右手用鼠标进行复制,左手切到旁边的evernote,右手鼠标点击选择笔记,左手粘贴,不需要做任何大幅度的移动。
在上述Karabiner配置文件夹下再建一个文件命名为guerbai-change-application.json,内容输入:
{
"title": "change application",
"rules": [
{
"description": "change application use poker",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "a",
"modifiers": {
"mandatory": [
"left_option",
"left_command"
]
},
"optional": [
"any"
]
},
"to": [
{
"key_code": "left_arrow",
"modifiers": [
"left_command"
]
}
]
}
]
}
]
}
可以注意到将mandatory改为option和command,这样就可以仅使用左手方便地切换程序了。
设置界面如下图:
最后
相信经过上述示例,已经可以体会到Karabiner的强大了,通过简单而又强大的json配置,来实现任意键盘上任意自己想要的行为,简直不要太爽。
这里是上述配置完整版,放到配置文件夹下后,使用Complex Modifications的Add rule添加使其生效即可。