Gibt es eine Möglichkeit, bestimmte Apps im cmd + -Registerkarte-Menü auszublenden?

39

Gibt es eine Möglichkeit, bestimmte Apps vor cmd+ zu verbergen tab?

Das Problem ist, dass ich einige Apps (wie iTunes und natürlich Finder) immer geöffnet habe. Aber wenn ich arbeite und zwischen für mich relevanten Apps (Chrome, Sublime, Terminal) mit cmd+ tabwechsle, werden diese "irrelevanten" Apps immer im Menü angezeigt.

Vielen Dank

wpp
quelle

Antworten:

37

Ja, es ist möglich, aber die einzige mir bekannte Möglichkeit, dies zu tun, verbirgt auch das Dock-Symbol.

Sie müssen die Datei mit dem Namen 'Info.plist' im Paket der Anwendung ändern (dh Sherlock.app/Contents/Info.plist). Öffnen Sie diese Datei in Ihrem bevorzugten Texteditor und fügen Sie den folgenden Abschnitt hinzu (falls bereits vorhanden, ändern Sie einfach die 0 in eine 1 im String-Tag):

<key>LSUIElement</key>
<string>1</string>

Quelle: Ausblenden des Dock-Symbols eines Programms - Macworld Mac OS X-Tipps

In der neuesten Version von macOS sollte für LSUIElement kein String festgelegt werden. Stattdessen müssen Sie einen Booleschen Wert wie folgt verwenden:

<key>LSUIElement</key>
<true/>

Verwenden Sie vor OS X 10.8 stattdessen Folgendes (beachten Sie NS anstelle von LS):

<key>NSUIElement</key>
<string>1</string>
grg
quelle
heiliger Rauch, der besser als erwartet funktioniert hat, vielen Dank!
wpp
1
Zwei Kommentare. Erstens funktioniert das obige [STRING] -Format in 10.8 nicht - Sie müssen einen Booleschen Typ verwenden. Zweitens wird durch Ändern des NSUIElement neben dem Ausblenden der App vor dem Anwendungsumschalter auch die Menüleiste ausgeblendet, sodass die Verwendung der "versteckten" Anwendungen sehr schwierig wird.
Kent
Hattest du Glück mit LSUIElement in Mavericks?
atreat
2
Ja, ich habe das Update heruntergeladen und sie unterstützen es jetzt nativ mit ihrer Version 1.4.2. github.com/binaryage/totalterminal/issues/…
atreat
4
In Mavericks stürzt das für mich ab. Ich habe ein paar verschiedene Anwendungen ausprobiert.
Sandover
7

Sie können LSUIElement in der Info.plist als String auf 1 setzen:

<key>LSUIElement</key>
<string>1</string>

Es entfernt Anwendungen aus dem Anwendungsumschalter, dem Dock und dem Force-Quit-Fenster. Außerdem wird die Menüleiste entfernt, sodass sie mit Finder oder iTunes nicht wirklich verwendet werden kann.

Wenn Sie eine Info.plist bearbeiten, stürzen einige Anwendungen wie TextEdit und Chess beim Start in 10.8 ab. Außerdem werden die Codesignaturen signierter Anwendungen ungültig, sodass diese nicht automatisch auf Schlüsselbunde zugreifen können.

http://www.cocoabuilder.com/archive/cocoa/141753-lsuielement-and-lsbackgroundonly.html :

NSUIElement wird abgeschrieben. Ich erinnere mich jedoch noch genau daran, dass NSUIElement und LSUIElement vor ein paar Jahren bei Apple (Apple DTS) zusammengearbeitet haben (zumindest damals, als ich dort war und ich bezweifle, dass sich das geändert hätte). Obwohl NSUIElement abgeschrieben wird (NS steht natürlich für Next Step! Und LS für Launch Services), sind sie in jeder Hinsicht identisch.

Sowohl LSUIElement als auch NSUIElement funktionieren weiterhin, und beide können auch als Ganzzahl auf true oder 1 gesetzt werden.

grep -A1 [LN]SUIElement /Applications/*/Contents/Info.plist

Informationen Eigenschaftenliste Key Referenz: Launch Services Keys :

LSUIElement( String- OS X) gibt an, ob die App als Agent-App ausgeführt wird. Wenn dieser Schlüssel auf "1" gesetzt ist, führt Launch Services die App als Agent-App aus. Agent-Apps werden nicht im Dock oder im Fenster "Beenden erzwingen" angezeigt. Obwohl sie normalerweise als Hintergrund-Apps ausgeführt werden, können sie bei Bedarf in den Vordergrund treten, um eine Benutzeroberfläche anzuzeigen. Durch Klicken auf ein Fenster, das zu einer Agenten-App gehört, wird diese App weitergeleitet, um Ereignisse zu verarbeiten.

Das Dock und das Anmeldefenster sind zwei Apps, die als Agent-Apps ausgeführt werden.

Hexe hat eine Option, um Anwendungen zu ignorieren:

Ich habe gerade den Application Switcher und das Dock deaktiviert. Ich benutze hauptsächlich Tastaturkürzel und Alfred, um Anwendungen zu wechseln.

Lri
quelle
Das Setzen LSUIElementin Slacks info.plist verursachte für mich einen Absturz beim Start.
Taylor Edmiston
3

Haftungsausschluss: Ich habe GhostTile entwickelt

Kurzer Anwser: einfach GhostTile ausprobieren . Es ist zwar bezahlt, aber Sie können versuchen, so lange Sie können (stehlen Sie die Idee von Sublime Text)

Lange Anwser:

AFAIK, Sie können dies auf zwei Arten erreichen:
1. Richten Sie eine App als Agent ein. ZB LSUIElementSchlüssel zur Info.plist der App hinzufügen oder Aktivierungsrichtlinie der App auf setzen NSApplicationActivationPolicyAccessory.
2. Haken Sie Dock oder einen anderen verwandten Systemprozess ein, um einige Apps zu ignorieren. Danke an SIP (Rootless) auf El Captian. Dies wird nicht empfohlen.

GhostTile konzentriert sich auf das Ausblenden von Apps aus dem Dock. Es ist einfach zu bedienen und bietet mehrere Möglichkeiten zum Verwalten der von Ihnen ausgeblendeten Apps. Die Festplatte wird nicht geändert, sodass die Codesign-Signatur der Apps nicht beschädigt wird.

Andere Eigenschaften:

  • Sie können weiterhin über die Dock-Aktivität der App benachrichtigt werden
  • Expose-like Übersicht
  • Alfred Workflow
Hewigovens
quelle
Habe gerade diese App ausprobiert und keine der von mir ausprobierten Apps wird "noch unterstützt". Finder, Mail, iOS Simulator ...
pkamb
1
@pkamb Es tut mir leid, aber alle Apps, die Sie ausprobiert haben, sind durch den in El Capitan eingeführten System Integration Protection (SIP) geschützt. Könnten Sie bitte andere Apps von Drittanbietern ausprobieren? oder SIP ausschalten?
Hewigovens
Fair genug, danke für die Antwort. Ich würde eine informativere Fehlermeldung oder einen Link zu einer FAQ vorschlagen!
pkamb
Wie verstecke ich Ghost Title im Cmd + Tab Launcher? Ich habe versucht, <key> NSUIElement </ key> <string> 1 </ string> zu Info.plist hinzuzufügen und die App neu zu starten. Es hat nicht funktioniert
Mac
@mac Es gibt eine Voreinstellungsoption namens "Hide GhostTile from Dock"
hewigovens
1

Tut mir leid, dass ich zu spät zur Party komme, aber wie in früheren Antworten und Kommentaren angegeben, kann dies dazu führen, dass einige Anwendungen beim Start abstürzen. Ich kann diese Funktion in Yosemite nicht ausführen, obwohl ich sie zuvor auf einem anderen Mac ausführen konnte. Ändern des TotalTerminal Info.plist hat nichts tun, und die Änderung der Applications/Utilities/Terminal/Info.plistverursachte den Absturz.

Als @atreat in einer der Kommentare erwähnt, sind die Jungs von TotalTerminal werden nun unterstützt diese auszublenden über einen einfachen Befehl:

defaults write com.apple.Terminal TotalTerminalHideDockIcon -bool YES

Das hat bei mir perfekt funktioniert.

Raul Rene
quelle