Entfernen Sie iterm aus cmd + tab Apps

10

Ich habe TotalTerminal verwendet, um ein visierähnliches Terminal für eine Verknüpfung zu erhalten. Da TotalTerminal jedoch aufgegeben wird, habe ich auf iTerm2 umgestellt. Mein Problem ist, dass wenn ich eine Verknüpfung verwende, um das Verhalten und Profil von iTerms Visier auszulösen, diese auch wie eine normale App aktiviert wird und in die Cmd+ TabListe der Apps gelangt, und das möchte ich nicht. Gibt es eine Möglichkeit, ein solches Verhalten für das Visierprofil von iTerm2 zu verhindern?

Saša Šijak
quelle
1
Im Allgemeinen muss sich das Programm dem Betriebssystem als menü- / gesichtslose App ohne Symbol im Dock präsentieren. Haben Sie die iTerm-Einstellungen überprüft oder den Entwickler kontaktiert?
bmike
Ich habe die iTerm-Einstellungen überprüft, konnte jedoch nicht das gewünschte Verhalten erzielen. Ich habe die Entwickler noch nicht kontaktiert.
Saša Šijak

Antworten:

8

Derzeit hat iTerm2 diese Funktionalität ab Oktober 2016 aktiviert. Gehen Sie zu Einstellungen -> Erweitert -> Allgemein -> Hide iTerm2 from the dock and from the ⌘-Tab app switcher.

chriisu
quelle
4
Ab Version 3.1.2 wurde diese Einstellung auf die Registerkarte Darstellung unter System -> Vom Dock ausschließen und Application-Tab Application Switcher verschoben .
Alex Lipov
Danach gibt es keine Menüleiste, um wieder auf die Einstellungen zuzugreifen. Wenn Sie nicht weiterkommen können Sie diese Änderung rückgängig machen , indem Sie defaults write com.googlecode.iterm2 HideFromDockAndAppSwitcher 0dann killall iTermund neu zu starten.
BinarySplit
4

Der "Startdienstschlüssel" LSUIElementin der .plistDatei für iTerm2 ist Ihr Freund.

Um iTerm2 vor dem Umschalter auszublenden, öffnen Sie Terminal und geben Sie Folgendes ein:

/usr/libexec/PlistBuddy -c "Add :LSUIElement bool true" /Applications/iTerm.app/Contents/Info.plist

Sie müssen iTerm2 neu starten, damit die Einstellung wirksam wird.

Wenn Sie iTerm erneut anzeigen möchten, verwenden Sie den folgenden Befehl:

 /usr/libexec/PlistBuddy -c "Delete :LSUIElement" /Applications/iTerm.app/Contents/Info.plist

Erklärung von Apple :

LSUIElement "Anwendung ist Agent (UIElement)". Gibt an, ob es sich bei der App um eine Agenten-App handelt, dh um eine App, die nicht im Dock- oder Force-Quit-Fenster angezeigt werden soll. Siehe LSUIElement für Details.

Crishoj
quelle
Diese Einstellungen funktionieren nicht für MAMP :(
Alisso
@Alisso, könnten Sie etwas mehr Details liefern?
Crishoj
Ich habe es durch Keyboard Maestro gelöst :) (Ich habe die Registerkarte "Ausschließen" in Keyboard Maestro gefunden - obwohl das zunächst auch nicht offensichtlich war.)
Alisso
Diese Antwort hat bei mir nicht funktioniert (während die akzeptierte funktioniert hat). Das ist seltsam, da sie im Grunde das Gleiche tun.
Bumbu
@ Bumbu, eine Fehlermeldung?
Crishoj
3

Es gibt einige gute Modifikationen an GitHub. Das einfachste, das ich gefunden habe, ist hier:
https://gist.github.com/CrazyApi/5377685

Stellen Sie sicher, dass Sie einen Hotkey zum Umschalten von iTerm eingestellt haben. Sobald Sie das Dock-Symbol deaktiviert haben, können Sie kein Fenster mehr öffnen. Um den TotalTerminal-Visierstil zu erhalten, müssen Sie das Dropdown-Menü "iTerm-Fenstereinstellungen" auf "Oben auf dem Bildschirm" setzen.

Platzieren Sie den Code aus dem GitHub-Beitrag in Ihrem bash_profile:

  1. Öffnen Sie iTerm (stellen Sie sicher, dass sich iTerm in Ihrem Anwendungsordner befindet, oder ändern Sie den Code so, dass er auf den richtigen Pfad verweist.)
  2. Eingeben nano .bash_profile
  3. Fügen Sie diesen Code ein:

    # toggle iTerm Dock icon
    # add this to your .bash_profile or .zshrc
    function toggleiTerm() {
        pb='/usr/libexec/PlistBuddy'
        iTerm='/Applications/iTerm.app/Contents/Info.plist'
    
        echo "Do you wish to hide iTerm in Dock?"
        select ync in "Hide" "Show" "Cancel"; do
            case $ync in
                'Hide' )
                    $pb -c "Add :LSUIElement bool true" $iTerm
                    echo "relaunch iTerm to take effectives"
                    break
                    ;;
                'Show' )
                    $pb -c "Delete :LSUIElement" $iTerm
                    echo "run killall 'iTerm' to exit, and then relaunch it"
                    break
                    ;;
            'Cancel' )
                break
                ;;
            esac
        done
    }
    
  4. Strg + X, um Nano zu verlassen
  5. Y und Enter zum Speichern
  6. Starten Sie iTerm und geben Sie ein toggleiTerm
  7. Geben 1und Geben Sie
  8. Anwendung neu starten.

Profitieren.

Travis
quelle
Dies funktioniert wie erwartet. Das einzige Problem ist, dass die Menüleiste dauerhaft ausgeblendet wird. Aber da das Verhalten mit einem Befehl umgeschaltet werden kann, denke ich, dass es ausreicht. Auf die Einstellungen kann weiterhin von [cmd +,]
zugegriffen werden
Dies wird zuerst in Google mit den Schlüsselwörtern "osx remove cmd tab iterm" getroffen. Der Hauptlink ist tot, aber basierend auf dem Bearbeitungsverlauf wird der benötigte Code in der Antwort angegeben.
Christian
3

Öffnen iTerm2 Einstellungen finden Sie unter Aussehen Registerkarte und unter - System Prüfelementedaten Ausschließen von Dock und ⌘-Registerkarte Applikations Switcher .

Methode

EasternXiang
quelle
0

Es gibt einige Anwendungen, die "Treffer wechseln" können, indem sie entweder als fenstergesteuerte / traditionelle App ausgeführt werden, die auf dem Anwendungsumschaltbildschirm angezeigt wird, oder als Hintergrund-App oder Menüleisten-App.

Beispiele hierfür finden Sie unter Dash , Take Five und Skitch . Jeder hat die Präferenz, im "Vordergrund" oder im "Hintergrund" ausgeführt zu werden. Wenn Sie diese Präferenz ändern, müssen Sie die App beenden und neu starten, damit das System weiß, wie das Dock, die Fenster und das Menü zu handhaben sind Bar sowie der Anwendungsumschalter.

Geben Sie hier die Bildbeschreibung ein

Ich sehe kein Anzeichen dafür, dass iTerm 2 über diese Funktionalität verfügt. Sie müssen die Anwendung daher bestenfalls ändern oder neu kompilieren, wenn sie betriebsbereit ist und nur die bevorzugte Einstellung in der Anwendung fehlt. Mein Verdacht ist, dass für die Anwendung mehr Programmierung erforderlich ist, um beide Fälle zu behandeln, und Sie müssen mit dieser App im Umschalter leben oder ein anderes Terminalemulationstool auswählen.

Grundsätzlich kann das Betriebssystem eine App aufnehmen, die das Deaktivieren des Docks und des App-Umschalters ermöglicht. Es ist jedoch nicht so einfach, eine Einstellung für eine App festzulegen, die Sie ändern möchten.

bmike
quelle