Wenn Sie Spaces unter Mac OS X verwenden und versuchen, eine neue Terminalinstanz zu öffnen, wird der Fokus auf den Bereich gezogen, auf den zuletzt das Terminalfenster zugegriffen hat. Mit Finder kann ich auf den Desktop klicken und dann ⌘- verwenden N, um ein neues Finder-Fenster zu erstellen. Was ich suche, ist eine Methode zum Ausführen der gleichen Funktion für Terminal-Fenster.
Wie kann ich eine neue Terminal-Instanz im aktuellen Bereich erstellen, unabhängig davon, ob sich in einem oder mehreren anderen Bereichen eine andere Terminal-Instanz befindet oder nicht?
Vielen Dank.
Antworten:
Sie können einen neuen Dienst mit Automator erstellen (aus dem Anwendungsordner). Geben Sie am oberen Rand des Automator-Fensters Folgendes ein: Der Dienst erhält in "Beliebige Anwendung" keine Eingabe. Fügen Sie dann im Workflow "Run applescript" hinzu. Stellen Sie sicher, dass das Apfelskript Folgendes enthält:
(Sie können einen beliebigen Befehl in die Zeile do script zwischen "" einfügen (z. B. etwas Nützliches, das beim ersten Öffnen des Terminals ausgeführt
uptime
werden kann, oder es einfach leer lassen).Speichern Sie den Dienst als 'Open Terminal' oder unter einem beliebigen Namen. Es sollte jetzt in Ihrem Dienstemenü angezeigt werden.
Wenn Sie dann eine Tastenkombination hinzufügen möchten, müssen Sie nur die Registerkarte Systemeinstellungen -> Tastatur -> Tastenkombinationen aufrufen, Dienste im Menü auf der linken Seite auswählen und Ihren neuen Dienst finden (wahrscheinlich ganz unten). Klicken Sie einfach in das Feld rechts neben Ihrem Dienstnamen und weisen Sie ihm eine beliebige Tastenkombination zu. es sollte alles funktionieren
quelle
do shell script " "
Zeile, um ein neues Fenster im aktuellen Bereich zu öffnen. Es ist jedoch nicht erforderlich, dass das Shell-Skript ein Leerzeichen ist. Wenn es sich um ein Leerzeichen handelt, führt das Terminal das Leerzeichen als Befehl aus, was zu Ausführungsverzögerungen und einer zusätzlichen Zeile im neuen Terminalfenster führt. Machen Sie es einfach zu einer vollständig leeren Zeichenfolge:do shell script ""
und dann wird ein neues Terminalfenster geöffnet, in dem jedoch keinerlei Befehle ausgegeben werden.do script ""
und nichtdo shell script ""
, wie @dakota vorschlugStellen Sie in den Anwendungszuweisungen in den Systemeinstellungen -> Bereiche entweder Terminal auf "Jeder Bereich" ein oder löschen Sie den Eintrag. Dann sollte es kein Problem sein, ein neues Terminal-Fenster zu öffnen, wo immer Sie möchten, z. B. durch Klicken auf das Dock-Kontextmenü "Neues Fenster" (funktioniert auch, wenn Sie die Option "Beim Wechsel zu einer App in den Space mit geöffneten Fenstern wechseln" ausgewählt haben "App" aktiviert).
quelle
Um dies unter Lion zu erledigen, geben Sie das obige in ein neues AppleScript-Fenster ein und speichern es. Rufen Sie das Skript über einen Befehlsstarter wie QuickSilver auf oder weisen Sie es einer Tastenkombination zu. Dies sollte funktionieren, auch wenn Sie die Einstellung "Beim Wechsel zu einer Anwendung wechseln Sie zu einem Bereich mit geöffneten Fenstern für die Anwendung" in Mission Control aktiviert haben. Der Trick besteht darin, den Befehl activate zuletzt und nicht am Anfang auszuführen.
quelle
Wenn Sie das Dock-Menü verwenden, um ein neues Fenster zu öffnen, wird es im aktuellen Bereich geöffnet.
quelle
Sie können OSX-Switching-Spaces automatisch deaktivieren, wenn Sie Anwendungen mit den folgenden Befehlen wechseln:
defaults write com.apple.dock workspaces-auto-swoosh -bool NO
killall Dock
Funktioniert auf 10.6.8
quelle