回答:
以下を実行するAppleScriptを実行することができます(たとえば、それをAutomatorのサービスで実行するには、「AppleScriptを実行」アクションを使用し、「ターミナル」に入力はありません)。
tell application "System Events"
tell expose preferences to set the properties of the all windows shortcut to {function key:F1}
key code 101 # press F9
tell expose preferences to set the properties of the all windows shortcut to {function key:F9}
end tell
これにより、F9にバインドされているものに別のショートカットが一時的に割り当てられ、F9を押して設定を元に戻します。他のExpose設定の設定名は次のとおりです。
all windows shortcut
application windows shortcut
show desktop shortcut
dashboard shortcut
F9〜F12のキーコードは次のとおりです。
F9 101
F10 109
F11 103
F12 111
システム環境設定»キーボード»キーボードショートカット»サービスでサービスにキーボードショートカットを割り当てることができます別のショートカット(などCommand-F9
)を学習する必要がありますが、少なくともキーを押してアクションを開始できます。Fキーを使用したショートカットについては、この回答の最後の段落を参照してください。
または、Butlerのようなホットキー/マクロアプリケーションを設定してcat -v
、ショートカットを無効にした状態でFキーの1つを押すと、エスケープシーケンスを押すこともできます。
$ cat -v
^[[20~^[[21~^[[23~^[[24~
これらは、順にF9からF12です。
バトラーでは、F9の場合は次のようになります。
私が押されたCtrl-[
、[
、2
、0
、~
そのシーケンスのために。私のキーボードレイアウトで~
は、ですShift-backtick
。そのため、Shift修飾子が表示されます。とにかく動作します。
ショートカットを設定すると、それを押してエスケープシーケンスを取得できます。
で動作しmc
ますが、現時点では、Fキーを使用する別のCLIプログラムを思い出しません。しかし、それはmc
特定のエスケープシーケンスではないので、おそらく他の人でも機能します。
また、多くのコマンドラインアプリケーションは、理解Esc, 1
を意味する(シーケンス)F1
に至るまで、Esc, 0
の意味F10
。
ラップトップを使用している場合、実際にはF9〜F12を使用しておらず、「次の曲」、「オーディオのミュート」、「音量を下げる」を押していることを付け加えます(最近のmacbookproの例)。F9〜F12を実際に押すには、同じキーを使用しながら[Fn]を押し続けます。
デスクトップで、ExposéやSpacesなどを実際のF9-F12キーボードのキーにマッピングしている場合、これらの機能を追加のマウスボタンに関連付けると便利です(たとえば、 ExposéをアクティブにするMighty Mouse)または画面の端(例:左上に「画面のスタンバイ」がある)-しかし、これは実際には主観的な問題です。