特定アプリ使用時にTouchBarをファンクションキー表示にする
(2016.12.31追記)
て言うか下みたいに面倒なことしなくても,「設定」の「キーボード」→「ショートカット」→「ファンクションキー」から設定できました…(汗)
TouchBarをファンクションキー表示にする
MacBook Pro (Late 2016) でEmacsを利用していると,標準状態では,TouchBarにESCと顔文字,コントロールストリップが表示されますが,ファンクションキーが表示されている方が便利です。このような場合,ターミナルから以下のように入力して,TouchBarをファンクションキー表示にすることができます。(文頭の $ はコマンドプロンプトなので入力しません)
$ defaults write com.apple.touchbar.agent PresentationModePerApp '{ "org.gnu.Emacs" = functionKeys; }'
$ killall -KILL TouchBarAgent
org.gnu.Emacs
の部分をアプリケーションに合わせて変更すれば,他のアプリケーションでも,利用時に TouchBar をファンクションキー表示に固定できます。
複数アプリケーションで設定する
複数のアプリケーションを設定する場合は以下のようにセミコロンで区切って複数の設定を並べます。下の例では,Emacsとターミナルの利用時にはTouchBarをファンクションキー表示にする設定をしています。
$ defaults write com.apple.touchbar.agent PresentationModePerApp '{ "org.gnu.Emacs" = functionKeys; "com.apple.Terminal" = functionKeys; }'
$ killall -KILL TouchBarAgent
ファンクションキー以外の表示設定
functionKeys
の部分には他にapp
と`fullControlStrip'を指定することができます。それぞれ以下のような意味になります。
値 | 意味 |
---|---|
functionKeys | ファンクションキーを表示します |
app | アプリケーション設定のキーを表示します |
fullControlStrip | コントロールストリップを展開した状態で表示します |
設定の取り消し
あるアプリケーションについて,設定を取り消したい場合は,そのアプリケーションの設定が書かれていない値を書き込むみます。例えば,以下のように実行するとEmacsについての設定は消えて,ターミナルの設定のみが有効になります。
$ defaults write com.apple.touchbar.agent PresentationModePerApp '{ "com.apple.Terminal" = functionKeys; }'
$ killall -KILL TouchBarAgent
以下のようにしてPresentationModePerApp
キーそのものを削除すれば全ての設定が元に戻ります。
$ defaults delete com.apple.touchbar.agent PresentationModePerApp
$ killall -KILL TouchBarAgent
以上,備忘録も兼ねてメモでした。