Obwohl ich die Finder-Einstellung explizit so festgelegt habe, dass alle Dateierweiterungen angezeigt werden, stelle ich immer noch fest, dass einige Apps die Dateinamenerweiterung nicht in ihrem Spotlight-Ergebnis anzeigen.
Hier sind einige Beispiele.
Ich leite Mountain Lion.
macos
mountain-lion
spotlight
search
high-sierra
Rot und weiß
quelle
quelle
Antworten:
TL; DR
Grundsätzlich handelt es sich um einen Fehler oder eine Fehlerbehebung, die in macOS 10.13 High Sierra eingeführt wurde: Spotlight berücksichtigt jetzt die Finder-Einstellung, um Dateierweiterungen anzuzeigen. Durch Deaktivieren dieser Einstellung wird die Erweiterung .app aus Spotlight entfernt.
Antwort in voller Länge
Ich weiß, dass dies eine sehr alte Frage ist, aber ich hatte gerade ein Déjà-vu in 10.13 High Sierra; anders als dieses, aber mit einigen Ähnlichkeiten, also habe ich danach gesucht und bin auf diese Frage gestoßen, und hier ist meine Antwort:
Apps sind Verzeichnisse, die so angezeigt werden, als wären sie eine einzelne Datei. Apple nennt das ein Bundle (obwohl der Finder es " Paket " nennt, wie unter " Paketinhalt anzeigen " im Kontextmenü). Nicht nur Anwendungen sind Bundles, Apple verwendet Bundles auch für Frameworks, Plugins, Anwendungserweiterungen, XPI-Dienste, bestimmte Arten von Installationspaketen sowie das Datenspeicherformat, wenn gespeicherte Daten aus mehreren Dateien bestehen, aber nur als eine Datei angezeigt werden sollen (z Ein RTF-Dokument mit Bildern kann als RTFD-Paket gespeichert werden. Bundles haben immer einen echten Namen, den Namen des Dateieintrags auf der Festplatte. Wenn also nichts anderes angezeigt werden soll, zeigt macOS diesen Namen überall an.
In Bundles befindet sich jedoch eine Info-Datei mit dem Namen
Info.plist
, die alle Arten von Metadaten zum Bundle enthält. Eine solche Infodatei kann einen Anzeigenamen definieren . Wenn ein solcher Anzeigename festgelegt ist, zeigt der Finder den Anzeigenamen und nicht den tatsächlichen Namen des Verzeichnisses an. Das heißt, es sei denn, das Verzeichnis wurde umbenannt, was der Finder erkennen kann, wenn der Verzeichnisname nicht mit dem Bundle-Namen in derInfo.plist
Datei übereinstimmt . Nun, ich gebe zu, es ist ein bisschen kompliziert. Versuchen wir es mit einem Beispiel:My App.app
Info.plist
istMy App
Info.plist
lautetMy Cool App
Mit dieser Kombination zeigt Finder die App als
My Cool App.app
(oder nur,My Cool App
wenn Erweiterungen ausgeblendet sind). Solange (1) und (2) im Namen übereinstimmen, wird (3) angezeigt.Wenn ich das Verzeichnis jetzt umbenenne
My Boring App.app
, zeigt Finder es an,My Boring App.app
sobald (1) und (2) im Namen nicht übereinstimmen, (1) angezeigt wird, als ob der Benutzer seine App umbenennen möchte, von Natürlich sollte der Finder den vom Benutzer gewählten Namen anzeigen, macht Sinn, nicht wahr?Schon kompliziert genug? Nun, es tut mir leid, aber jetzt wird es noch komplizierter. Alle Werte in den
Info.plist
, die Benutzern angezeigt werden, können lokalisiert werden. Wenn Ihr System also auf US-Englisch eingestellt ist, lautet der Anzeigename des Bundles möglicherweiseMy Cool App
, wenn das System jedoch auf UK-Englisch eingestellt ist, kann dies der Fall seinMy Amazing App
. Wenn für die aktuelle Systemsprache eine Lokalisierung vorhanden ist, zeigt der Finder diese Lokalisierung an, jedoch nur dann, wenn die Namen von (1) und (2) übereinstimmen, andernfalls gewinnt (1) erneut.Localizing wird , indem getan
.strings
Dateien in Bündel in Unterverzeichnissen , die genannt werden<x>.lproj
, in denen<x>
nur ein Sprachcode sein kann, zBen.lproj
für Englisch,fr.lproj
für Französisch, etc. Aber in kann auch Sprache + Land, wie seinen_US.lproj
,en_GB.lproj
,en_AU.lproj
, und so weiter. Darin befindet sich eine Datei mit dem NamenInfoPlist.strings
und diese Datei kann die Basiswerte derInfo.plist
Datei überschreiben . Wird keine übereinstimmende Lokalisierung gefunden, werden die Werte aus der Basislokalisierung verwendet (benannte Entwicklungsregion ), die auch von derInfo.plist
Datei definiert wird . Wenn keine solche Lokalisierung definiert ist, werden die Werte ausInfo.plist
direkt verwendet.Spotlight verhält sich wie Finder, wenn (1) und (2) übereinstimmende Namen (3) entweder direkt oder über die übereinstimmende Lokalisierung angezeigt werden. Wenn (3) nicht eingestellt ist, wird (1) angezeigt. Im Gegensatz zu Finder wird die
.app
Erweiterung jedoch nicht immer hinzugefügt , selbst wenn dies in den Finder-Einstellungen angefordert wird. Ich konnte nie das genaue Verhaltensmuster finden, aber eine bestimmte Kombination von Einstellungen verhindert, dass Spotlight die Erweiterung anzeigt, unabhängig davon, was Sie konfiguriert haben. Für einige Benutzer ist es durch Ändern der Einstellung Finder fixiert und dann läuftsudo mdutil -E /
inTerminal
(die Wieder Indizes alles). Es funktioniert jedoch nicht für alle Benutzer, was möglicherweise mit der ausgewählten Sprache / Region zu tun hat.Im Grunde ist es ein Fehler. Durch erneutes Indizieren wird das Problem behoben oder es kann nicht behoben werden. Und das Verhalten wurde von Apple bei einigen MacOS-Versionen geändert und blieb danach konstant ... das heißt, bis 10.13 High Sierra. Plötzlich haben alle meine Apps eine
.app
Erweiterung in Spotlight, die meiner Finder-Einstellung entspricht, während in 10.12 Sierra trotz der Finder-Einstellung keine App eine Erweiterung in Spotlight hatte, es sei denn, ich habe sie umbenannt oder ich hatte mehrere Kopien herumliegen.quelle
Es scheint, dass dies passiert, wenn Spotlight die Apps indiziert, bevor die Einstellung zum Ausblenden von Erweiterungen wirksam wurde. Sie sollten versuchen, Anwendungen neu zu indizieren, um dieses Problem zu beheben.
Wechseln Sie in den Spotlight-Einstellungen zur Registerkarte Datenschutz, und fügen Sie das Anwendungsverzeichnis zu den ausgeschlossenen Speicherorten hinzu. Dadurch sollten alle Anwendungen aus dem Spotlight-Index entfernt werden. Entfernen Sie es dann erneut von den ausgeschlossenen Speicherorten, damit Spotlight Anwendungen mit den richtigen Einstellungen neu indiziert. Nach der Neuindizierung sollte die Erweiterung ".app" aus allen Ergebnissen entfernt werden.
quelle
Das .app-Problem wird sofort behoben
quelle