macOS SierraでKarabinerが動かなくて困っている人に贈る代替ソフトウェア
2017/01/26
価値ある情報をユーザー視点で発信するブログ
2017/01/26
macOSの最新バージョン、「macOS Sierra」(10.12)がリリースされました。
早速インストールしてみましたが、意外と軽くてMacBook Pro(Retina, Mid 2012)でも全然OKです。
あまり代わり映えはしませんが、Safariのページ内検索がついに直ったのが体感上一番の改善点です。
「macOS Sierra」をインストールした人の中でよく問題点として挙がるのが、キーボードカスタマイズソフトウェアの「Karabiner(元KeyRemap4MacBook)」が動かないこと。
公式ページには以下のように説明があります。
macOS Sierraサポート状況
Karabinerは今のところmacOS Sierraでは動作しません。
Sierra対応は、まずは単純なキーの変更を行える機能をKarabiner-Elementsとして開発中です。
(設定画面を除くとSierra上で動作しています)Karabinerのフル機能のSierra対応はKarabiner-Elementsが完成してから対応します。
完成までの間、別のソフトウェアで穴を埋めることはできるでしょうか。
もくじ
最近のmacOSでは、署名のないソフトウェアがみだりに起動できないようになっています。
初回起動時は、アプリのアイコンを右クリック(Ctrl+クリック)してコンテキストメニューを表示。そこから「開く」で起動します。
USキーボードで「英数」、「かな」キーをエミュレートするために「Karabiner」を使っている人は少なくないのではないでしょうか。
英数モード、日本語入力モードにCommand+Spaceで交互に移行するのでなく、英数モードへの移行、日本語入力モードへの移行にそれぞれ別のキーを割り当て、明示的にモード変更できるように設定すると作業効率は飛躍的にアップするからです。
それだけのために「Karabiner」を使っているなら「⌘英かな」というソフトウェアがぴったりです。
設定はなく、起動して「セキュリティとプライバシー>アクセシビリティ」の権限を付与するだけでOKと、使い方は簡単です。
「Karabiner」を、もっと複雑な用途のために使っているプログラマーの方なら、「Keyhac」というソフトウェアがぴったりかもしれません。
よく似たソフトウェアに「窓使いの憂鬱」、「のどか」がありました。
ドキュメント
「Keyhac」は、Windows用のソフトウェア開発で有名なcraftwareが開発したキーボードカスタマイズソフトウェアで、Windowsでは通好みの選択肢として有名です。
Pythonインタプリタを内蔵しており、config.pyというPythonスクリプトの形で初期設定ファイルを作成し「Keyhac」に読み込ませるという、MS-DOSやHuman68k時代を知っているなら懐かしく思うであろう方法で設定を施します。
import sys import os import datetime import time from keyhac import * #http://crftwr.github.io/keyhac/mac/doc/ja/index.html def configure(keymap): # どのウインドウにフォーカスがあっても効くキーマップ keymap_global = keymap.defineWindowKeymap() if 1: keymap_global[ "Ctrl-Shift-Z" ] = keymap.command_ClipboardList # クリップボード履歴表示 keymap_global[ "Ctrl-Shift-X" ] = keymap.command_ClipboardRotate # 直近の履歴を末尾に回す keymap_global[ "Ctrl-Shift-Alt-X" ] = keymap.command_ClipboardRemove # 直近の履歴を削除 # フォントの設定 keymap.setFont( "Osaka-Mono", 16 ) # テーマの設定 keymap.setTheme("white") def find_force(): keymap.InputKeyCommand("Esc","Cmd-Shift-F","Cmd-F")() keymap_safari = keymap.defineWindowKeymap( app_name="com.apple.Safari" ) keymap_safari[ "Cmd-F" ] = find_force
ただ、標準のconfig.pyをそのまま使うと余計な設定が機能して動作がおかしくなるため、一度config.pyはまっさらにしてから少しずつデフォルトのconfig.pyを参考にしながら設定を追加していくとよろしいかと思います。
Emacsユーザーにはおなじみ、マルチストロークの再現も可能です。
Windowsのみで機能する関数が多数あり、macOSへの移植の際にどれが残っていて、どれがなくなっているのかについてのドキュメントが(多分)ないため、使いこなしには試行錯誤が必要です。
いつかちゃんと紹介しようとして数年が経過しているので、この機会に流行ってくれるといいなと思っております。
ちなみに、Pythonインタプリタ内蔵の2画面ファイラー、「CraftCommander」のMac版も存在し、macOS Sierraでも動作します。Windows用のファイラー「あふw」が好きな人におすすめ。
Keyhac的な志向を持つユーティリティに「Hammerspoon」というものもあります。
Keyhacが制御用言語にPythonを採用したのに対し、こちらはLuaを使っています。
これで「⌘英かな」同様に機能させられるかは確認していませんが、面白い選択肢かもしれません。