F9〜F12をTerminal.app内で実行されているcursesプログラムに送信する方法は?


10

F9-F12はMac OS Xで使用されており、それらを取り除きたくありません。F9-F12を時々端末内のプログラム(ほとんどはF9 / F10)に送信できるようにしたいだけです。

mcF9などの同義語としてシーケンスエスケープ9をサポートするようなプログラムもありますが、それは普遍的ではありません。

それを行う方法はありますか?

回答:


9

fn-Cmd-F9は、Mountain Lion 10.8を実行しているMacBook ProのTerminal.appでF9として機能します。


Mavericksを実行しているMacBook Airでは、fn-Command-Fkeyではなく、fn-Option-Fkeyです。
マークリード

Yosemiteを実行しているMacBook Proでは、fn-Cmd-F9が機能します。fn-Opt-F9はチルダを挿入するだけです。(私はemacsで使用しています。)
Chap

5

以下を実行する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-[[20~そのシーケンスのために。私のキーボードレイアウトで~は、ですShift-backtick。そのため、Shift修飾子が表示されます。とにかく動作します。

ショートカットを設定すると、それを押してエスケープシーケンスを取得できます。

ここに画像の説明を入力してください

で動作しmcますが、現時点では、Fキーを使用する別のCLIプログラムを思い出しません。しかし、それはmc特定のエスケープシーケンスではないので、おそらく他の人でも機能します。


また、多くのコマンドラインアプリケーションは、理解Esc, 1を意味する(シーケンス)F1に至るまで、Esc, 0の意味F10


ああ、おはようスレッジハンマー夫人!Nut氏を紹介する喜びを私に与えてください...
Robino

2

F12以下のキーボードショートカットを無効にできます。

キーボード設定>キーボードショートカット


これだけでは十分ではありませんでしたが、正しい方向に沿っています。
ロビノ

0

ラップトップを使用している場合、実際にはF9〜F12を使用しておらず、「次の曲」、「オーディオのミュート」、「音量を下げる」を押していることを付け加えます(最近のmacbookproの例)。F9〜F12を実際に押すには、同じキーを使用しながら[Fn]を押し続けます。

デスクトップで、ExposéやSpacesなどを実際のF9-F12キーボードのキーにマッピングしている場合、これらの機能を追加のマウスボタンに関連付けると便利です(たとえば、 ExposéをアクティブにするMighty Mouse)または画面の端(例:左上に「画面のスタンバイ」がある)-しかし、これは実際には主観的な問題です。


1
これをオフにすることは、すべての新しいMacで最初に行うことです。エクスポーズなど。F9は常にF9であり、次の曲は決してありません。
TAW

0

これは、私がCoRD(Mac用リモートデスクトップ)を取得するために使用した2つの手順のプロセスです。

  1. システム環境設定>キーボード>キーボード>「すべてのF1、F2などのキーを標準のファンクションキーとして使用する」にチェックを入れます
  2. システム環境設定>キーボード>ショートカット>「デスクトップを表示」、「ダッシュボードを表示」のチェックを外します

最初のステップは、@ tawがコメントの1つで話していることです。ファンクションキーf1〜f10が機能します。2番目のステップでは、f11キーとf12キーの押し下げがOSXによって傍受されるのを防ぎます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.