使用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后,自動進行切換就好了。