Symbole für Dateitypen werden von Launch Services verwaltet (der Dienst bestimmt unter anderem, welche Anwendung einen Dateityp verarbeitet). Das Dateisymbol wird immer von der Anwendung bereitgestellt, die standardmäßig eine Datei öffnet. Auf diese Weise werden z. B. in der Vorschau standardmäßig PDF-Symbole und PNG-Symbole angezeigt. Wenn Sie jedoch alle PNG-Dateien so ändern, dass sie stattdessen mit Pixelmator geöffnet werden, erhalten diese Dateien anschließend ein Symbol im Pixelmator-Stil.
Sie müssen der Anwendung, die sie standardmäßig öffnet, Ihre Dateitypdefinition hinzufügen oder eine eigene "Dummy" -Anwendung für den Dateityp erstellen .
Zum Beispiel weiß mein System noch nichts darüber .scalaund ich möchte TextMatedamit umgehen.
Zuerst zeige ich den Paketinhalt von TextMate.app, navigiere zu Contents/und öffne ihn Info.plistentweder mit einem Texteditor oder einem Property List EditorTeil der Entwickler-Tools von Apple.
TextMate verwendet ein ungewöhnliches Format für Info.plist(normalerweise binär oder XML). Ein Auszug davon sieht folgendermaßen aus:
CFBundleDocumentTypes = (
{ CFBundleTypeName = "ADA source";
CFBundleTypeExtensions = (adb, ads);
CFBundleTypeIconFile = ADA;
},
Der Elternschlüssel CFBundleDocumentTypesist das, was wir wollen. Das erste untergeordnete Element in geschweiften Klammern enthält eine Dateitypdefinition mit dem Namen (für die Dateitypspalte im Finder), den Dateierweiterungen und dem Namen der Symboldatei ( ADAfür TextMate.app/Contents/Resources/ADA.icns).
Zur Unterstützung .scalamüssen wir unter demselben übergeordneten Element ein Geschwisterelement hinzufügen, das dem obigen Element ähnelt CFBundleDocumentTypes:
CFBundleDocumentTypes = (
{ CFBundleTypeName = "ADA source";
CFBundleTypeExtensions = (adb, ads);
CFBundleTypeIconFile = ADA;
},
{ CFBundleTypeName = "Scala source";
CFBundleTypeExtensions = (scala);
CFBundleTypeIconFile = ADA;
},
Der Einfachheit halber verwende ich dieselbe Symboldatei, aber wir können eine selbst erstellen, kopieren TextMate.app/Contents/Resources/SCALA.icnsund darauf verweisen wie SCALAin Info.plist.
Schließen Sie jetzt TextMate, falls es ausgeführt wird, verschieben Sie die Anwendung TextMate.appin einen anderen Ordner und öffnen Sie sie erneut. Schließen Sie es, und verschieben Sie es zurück, und öffnen Sie es dann erneut. Dies geschieht, damit Launch Services die Änderungen übernimmt, die Info.plistwir gerade durchgeführt haben.
Das Ergebnis sieht folgendermaßen aus (denken Sie daran, wir haben das TextMate Ada-Symbol für wiederverwendet .scala):

Wenn Sie eine Anwendung nicht mit geöffneten .scalaDateien verknüpfen möchten (ich kann mir nicht vorstellen, warum, aber es gibt eine Möglichkeit, dies zu tun): Ändern Sie die Ergänzungen der Datei wie folgt:
{ CFBundleTypeName = "Scala source";
CFBundleTypeExtensions = (scala);
CFBundleTypeIconFile = ADA;
CFBundleTypeRole = "None";
},
Die Anwendung deklariert nun den Dateityp, teilt dem System jedoch mit, dass sie nicht weiß, wie sie damit umzugehen ist.
* Beachten Sie, dass eine permanente Zuweisung der Anwendung zum Dateityp das Symbol überschreibt, wahrscheinlich zur Art "unbekanntes Dokument".
Wenn Sie bereits eine Anwendung zugeordnet .scalahaben und nur das Dateisymbol ändern möchten, ohne die zugeordnete Anwendung zu ändern:
Öffnen Sie die Anwendung Info.plist, suchen Sie nach dem Dateitypeintrag in CFBundleDocumentTypesund rufen Sie den auf CFBundleTypeIconFile. Ändern Sie diese Datei in .../Contents/Resources/und sie sollte kurz danach im Finder angezeigt werden.
Bonus Informationen:
So ändern Sie das Symbol eines einzelnen Dokuments oder Ordners in eine Bilddatei
Angenommen, Sie haben ein Bild, für ~/Desktop/test.pngdas Sie ein Symbol verwenden möchten (der Screenshot oben zeigt die .scalaÄnderung des Symbols / TextMate / Ada.
Öffnen /Applications/Utilities/Terminal.appund eingeben:
sips -i ~/Desktop/test.png
Dadurch wird das test.pngDateisymbol in das entsprechende Bild geändert . Da ich gerne rekursiv bin, versuchen wir Folgendes:
Vorher das einfache Vorschausymbol png(Bildvorschau ist deaktiviert):

Danach ist die Bilddatei selbst die Vorschau:

Jetzt können wir die Datei öffnen , ist Get Info - Dialog, klicken Sie auf das gewünschte, Dokumentsymbol Zukunft auf dem oben links, Cmd-Cum es zu kopieren, öffnen für das Dokument Datei Get Info - Dialog, klicken Sie auf das unerwünschte, aktuelle Dokument - Symbol oben links, und Cmd-Vdie Paste Ikone, die wir wollen.
Alternativ können Sie die Bilddatei öffnen, die Sie als Symbol in der Vorschau verwenden möchten, Cmd-Aum alle auszuwählen und Cmd-Cdas Bild in die Zwischenablage zu kopieren. Öffnen Sie dann das Dialogfeld " Informationen " des Zieldokuments , wählen Sie das zu ändernde Symbol oben links aus und Cmd-Vfügen Sie das Bild darüber ein.