Wie sende ich F9-F12 an ein Fluchprogramm, das in Terminal.app ausgeführt wird?

10

F9-F12 werden von Mac OS X verwendet, und ich möchte sie nicht loswerden, sondern nur F9-F12 gelegentlich an Programme im Terminal senden können (meistens F9 / F10).

Einige Programme wie die mcUnterstützungssequenz Escape 9 als Synonym für F9 usw. sind jedoch nicht universell.

Gibt es eine Möglichkeit, es zu tun?

taw
quelle

Antworten:

9

fn-Cmd-F9 funktioniert als F9 in der Terminal.app auf meinem MacBook Pro, auf dem Mountain Lion 10.8 ausgeführt wird.

LarsR
quelle
Auf meinem MacBook Air mit Mavericks ist es fn-Option-Fkey, nicht fn-Command-Fkey.
Mark Reed
Auf dem MacBook Pro mit Yosemite funktioniert fn-Cmd-F9. fn-Opt-F9 fügt nur Tilde ein. (Ich benutze es in Emacs.)
Kap
5

Sie können ein AppleScript ausführen (z. B. indem Sie es mit der Aktion " AppleScript ausführen" ohne Eingabe in Terminal in einen Dienst in Automator einschließen ), das Folgendes ausführt:

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

Dadurch wird vorübergehend eine andere Verknüpfung zu dem zugewiesen, was an F9 gebunden ist. Drücken Sie F9 und setzen Sie die Einstellung zurück. Die Einstellungsnamen lauten für die anderen Expose-Einstellungen wie folgt:

all windows shortcut
application windows shortcut
show desktop shortcut
dashboard shortcut 

Die Schlüsselcodes für F9 bis F12 lauten wie folgt:

F9 101
F10 109
F11 103
F12 111

Sie können den Diensten in den Systemeinstellungen »Tastatur» Tastaturkürzel »Dienste Tastaturkürzel zuweisen. Sie müssen eine andere Tastenkombination lernen (z. B. Command-F9), aber Sie können zumindest eine Taste drücken, um die Aktion zu starten. Abkürzungen mit F-Tasten finden Sie im letzten Absatz dieser Antwort .


Sie können alternativ eine Hotkey- / Makroanwendung wie Butler so konfigurieren , dass sie die Escape-Sequenz drückt, die Sie erhalten, cat -vwenn Sie eine der F-Tasten drücken, während Sie die Verknüpfungen deaktivieren.

$ cat -v
^[[20~^[[21~^[[23~^[[24~

Dies sind der Reihe nach F9 bis F12.

In Butler sieht es für F9 so aus:

Geben Sie hier die Bildbeschreibung ein

Ich drückte Ctrl-[, [, 2, 0, ~für diese Sequenz. In meinem Tastaturlayout ~ist Shift-backtickdeshalb der Shift- Modifikator sichtbar. Funktioniert trotzdem.

Wenn Sie eine Verknüpfung konfigurieren, können Sie diese drücken, um die Escape-Sequenz abzurufen:

Geben Sie hier die Bildbeschreibung ein

Funktioniert in mcund ich erinnere mich momentan nicht an ein anderes CLI-Programm mit F-Tasten. Aber es ist nicht die mcspezifische Escape-Sequenz, also wird es wahrscheinlich in anderen funktionieren.


Alternativ verstehen viele Befehlszeilenanwendungen Esc, 1(Sequenz) F1von Esc, 0Bedeutung bis Bedeutung F10.

Daniel Beck
quelle
Ah, guten Morgen Frau Vorschlaghammer!
Erlauben
2

Sie können die Tastenkombination für F12unter deaktivieren :

Tastatureinstellungen> Tastaturkürzel

user319498
quelle
Das allein hat mir nicht gereicht, ist aber in die richtige Richtung.
Robino
0

Ich füge hinzu, dass Sie, wenn Sie auf einem Laptop sitzen, F9-F12 nicht verwenden, sondern "Next Song", "Audio Mute" und "Volume Down" drücken (Beispiel aus dem aktuellen MacBookpro). Um F9-F12 tatsächlich zu drücken, halten Sie 'Fn' gedrückt, während Sie dieselbe Taste verwenden.

Wenn Sie auf dem Desktop Dinge wie Exposé, Leerzeichen usw. haben, die den tatsächlichen Tastaturtasten F9-F12 zugeordnet sind, finde ich es nützlich, diese Funktionen zusätzlichen Maustasten zuzuordnen (z. B. verwende ich das 'seitliche Tastenpaar' von die Mighty Mouse zum Aktivieren von Exposé) oder Bildschirmkanten (z. B. ich habe oben links "Bildschirm-Standby") - aber das ist eigentlich eine subjektive Angelegenheit.

Luke404
quelle
1
Das Ausschalten dieses Materials ist das erste, was ich auf jedem neuen Mac mache. Belichten usw. F9 ist immer F9, niemals das nächste Lied.
Taw
0

Dies ist der zweistufige Prozess, mit dem ich CoRD (Remote Desktop für Mac) erhalten habe:

  1. Systemeinstellungen> Tastatur> Tastatur> Aktivieren Sie "Alle Tasten F1, F2 usw. als Standardfunktionstasten verwenden".
  2. Systemeinstellungen> Tastatur> Verknüpfungen> Deaktivieren Sie "Desktop anzeigen", "Dashboard anzeigen".

Der erste Schritt ist das, worüber @taw in einem der Kommentare spricht. Die Funktionstasten f1-f10 funktionieren. Der zweite Schritt verhindert, dass die Tastendrücke f11 und f12 von OSX abgefangen werden.

Robino
quelle