Karabinerが使えないOSX Sierraで頑張る

メイン機もMacBook Pro 2016に買い換えてしまった為、なし崩し的にOSX 10.12 Sierraになってしまいました。個人的にSierraで困っていたのは、ScanSnapの対応とキーボードカスタマイズツールのKarabinerが使えない点。前者はアップデートが出て一応解決したはず(まだ試してない)。KrabinerはOS側の仕様変更に対応する為、かなり大がかりな改修が必要になるらしく、現状はKrabiner Elements(以下KE)という機能縮小版が開発されており、これが完成してからKarabinerに着手というかなり長期の取り組みとなっています。

Karabiner (旧称KeyRemap4MacBook)とそのファミリーでカスタマイズしていた内容はこちら。 主には、

  1. 英数キーでIMEのON/OFFトグル
  2. Ctrlを使ったWindowsのショートカット(コピペとか)を使う
  3. 外付けDOSキーボードで、無変換キーを英数として使う
  4. (同上)AltキーをCommandとして使う
  5. (同上)WinキーをOntionとして使う
  6. (同上)CapsキーをCtrlとして使う
  7. ターミナルでCommandキーをMetaキーとして使う

といった辺り。残念ながらKarabiner Elementsは現状2ストロークのショートカットを書き換えるのには対応していません。またアプリケーション毎でアサインをスイッチすることもできません。ので現状は2と7は諦めています。

1. 英数キーでIMEのON/OFFトグル

IME(ATOK)のキー設定で英数にIME ON/OFFトグルを設定しても何故か無視されます。OSが英数キーでIME OFFという動作をガッチリ固めてて上書きできない感じです。なぜかかなキーだと平気なので、KEで英数を(実在しない)F13キーにリマップし、ATOKでF13を「漢字/半角モード切替」にしています。ちなみにATOK以外では、こちらの記事を参考にして、OSのキーボード設定で「前の入力ソースを選択」キーにF13をアサインするという手が有効そうです。ATOKでこれをやると高速に英数キー->文字入力をするとIMEの切り替えが間に合わないで意図しない動作をすることがあり、IME自体のON/OFFよりは、ATOK内でもモード切替の方がレスポンスが良かろうということで最初に書いた方法を採っています。この設定自体は「⌘英かな」でも実現できます。

2.Ctrlを使ったWindowsのショートカット(コピペとか)を使う

現状のKEは複数キーコンビネーションをカスタマイズできないので、いまんとこ「⌘英かな」を使っています。他にもBetterTouchTool(BTT)やKeyboard MaestroKeyHacなどが高機能で複数キーコンビネーションのカスタマイズもできるのですが、アプリケーション単位で無効化できるので「⌘英かな」をチョイス。例えばTerminalやEmacsの時はCtrl-Xは解除したいので。KeyHacもできそうでしたが設定ファイルがPythonで記述する方式の為、ちょっとついていけませんでしたw。本当は設定毎にアプリ単位切り替えできるといいんですが。

「⌘英かな」の設定はこんな感じ。Exclusion AppsでターミナルやEmacsを除外しています。

commandeikana

3.外付けDOSキーボードで、無変換キーを英数として使う

以前は、SeilというKarabinerの姉妹アプリで実現してましたが、この機能はKEに統合されました。いまんとこ問題なく使えています。

4-6. 外付けDOSキーボードの修飾キーをMacに似せる

KE(図左下)でこんな感じの設定になりました。

mbp_karabiner

ただ外付けキーボードとKEはちょっと相性問題があって、OS機能であるキーボード別の修飾キーのカスタマイズ機能(図右上)が無視されます。外付けキーボードだけCommandとOptionをスワップする、といったことができません。スワップすると本体キーボードでのCommandとOptionも入れ替わってしまいます。

KEには現状キーボード毎に設定を変えるような機能はありません。ただ、ユーザのホームフォルダの直下にある隠しフォルダにある設定ファイル

.karabiner.d/configuration/karabiner.json

というjson形式のテキストファイルを書き換えると、KEやOSの再起動不要で反映されるということがわかったので、とりあえず今は設定ファイルを複数作って置き、karabiner.jsonに上書きするということを、自宅に帰ってキーボードにつないだ時と、持ち出して外で使う時にいちいちしています。もうちょっと頑張れば、AppleScriptやAutomatorで自動化できるかも知れません。

 

とまぁ、現状Sierraのキーボード環境は理想の70%というところです。というか全てはKarabinerの復活にかかっている感じです。是非頑張っていただきたいと思います。だいぶ昔に寄付した気がしますが、あらためて応援の気持ちをこめてしておこうと思います。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)