Mac上的大部分软件对外置USB键盘支持都是不错的,可是也有一些软件比较偷懒,好比我最近碰到的一个软件就是根本不支持小键盘输入数字,而用大键盘上的数字键却是没有问题,实在是奇葩。html
奇葩归奇葩,问题终究仍是要解决的。稍微研究了一下这个问题,发现能够用Karabiner这个软件来对键盘进行映射。对于个人需求,就是把小键盘上的数字键映射成大键盘上的数字键。实现起来不怎么难,先上我修改的private.xml文件内容吧:git
<?xml version="1.0"?> <root> <item> <name>Change KeyPad 0 to Num 0</name> <identifier>private.change_keypad0_to_num0</identifier> <autogen>__KeyToKey__ KeyCode::KEYPAD_0, KeyCode::KEY_0</autogen> </item> <item> <name>Change KeyPad 1 to Num 1</name> <identifier>private.change_keypad1_to_num1</identifier> <autogen>__KeyToKey__ KeyCode::KEYPAD_1, KeyCode::KEY_1</autogen> </item> <item> <name>Change KeyPad 2 to Num 2</name> <identifier>private.change_keypad2_to_num2</identifier> <autogen>__KeyToKey__ KeyCode::KEYPAD_2, KeyCode::KEY_2</autogen> </item> <item> <name>Change KeyPad 3 to Num 3</name> <identifier>private.change_keypad3_to_num3</identifier> <autogen>__KeyToKey__ KeyCode::KEYPAD_3, KeyCode::KEY_3</autogen> </item> <item> <name>Change KeyPad 4 to Num 4</name> <identifier>private.change_keypad4_to_num4</identifier> <autogen>__KeyToKey__ KeyCode::KEYPAD_4, KeyCode::KEY_4</autogen> </item> <item> <name>Change KeyPad 5 to Num 5</name> <identifier>private.change_keypad5_to_num5</identifier> <autogen>__KeyToKey__ KeyCode::KEYPAD_5, KeyCode::KEY_5</autogen> </item> <item> <name>Change KeyPad 6 to Num 6</name> <identifier>private.change_keypad6_to_num6</identifier> <autogen>__KeyToKey__ KeyCode::KEYPAD_6, KeyCode::KEY_6</autogen> </item> <item> <name>Change KeyPad 7 to Num 7</name> <identifier>private.change_keypad7_to_num7</identifier> <autogen>__KeyToKey__ KeyCode::KEYPAD_7, KeyCode::KEY_7</autogen> </item> <item> <name>Change KeyPad 8 to Num 8</name> <identifier>private.change_keypad8_to_num8</identifier> <autogen>__KeyToKey__ KeyCode::KEYPAD_8, KeyCode::KEY_8</autogen> </item> <item> <name>Change KeyPad 9 to Num 9</name> <identifier>private.change_keypad9_to_num9</identifier> <autogen>__KeyToKey__ KeyCode::KEYPAD_9, KeyCode::KEY_9</autogen> </item> <item> <name>Change KeyPad Enter to Return</name> <identifier>private.change_keypadEnter_to_return</identifier> <autogen>__KeyToKey__ KeyCode::ENTER, KeyCode::RETURN</autogen> </item> </root>
修改xml文件参考了如下两个网页:github
How to add your own settings: https://pqrs.org/osx/karabiner/document.html.en#privatexml
private.xml参考手册: https://pqrs.org/osx/karabiner/xml.html.enide
我是怎么找各个键的键值的?工具
这能够经过Karabiner菜单上的"Launch EventViewer"工具来解决,在这个工具里,你每按一个键都会显示键值的。code
Karabiner是日本人开发的开源软件,仍是蛮强大的,自己就自带了许多映射功能。若是你须要的话,能够对键盘上的任意一个键进行映射。
xml
软件主页:https://pqrs.org/osx/karabiner/index.html.en
htm
Github主页:https://github.com/tekezo/Karabiner
开发