Wie kann man unter OS X die Art einer Datei ändern?

15

Unter OS X möchte ich die mit Dateien verknüpfte Bezeichnung "Art" ändern. Viele meiner Dateien werden als "Nur-Text-Datei" angezeigt, wenn es sich wirklich um Javascript, PHP, CSS und andere Dateitypen handelt.

Ich habe kein Problem damit, sie mit der gewünschten Anwendung zu öffnen. Das ist ganz einfach - es gibt viele Themen dazu.

Was mich stört, ist, wenn ich einen großen Ordner mit vielen Dateien darin habe, ich möchte in der Lage sein, nach Art zu sortieren und alle CSS-, alle PHP- und alle JS-Dateien zusammen zu haben.

Bildbeschreibung hier eingeben

Ich habe einen Dateityp gesehen, der unter OSX abstürzt, und ich habe Quickchange gesehen , bin mir aber nicht sicher, ob das wirklich das ist, was ich brauche.

Vielleicht hat sich schon jemand anders damit befasst und weiß, wie man es behebt?

cwd
quelle
Interessant. Es scheint nicht mit dem veritablen Befehlszeilenprogramm zu tun zu haben file.
dmckee
Sie können doch einfach so etwas wie TextWrangler als Standard-Datei-Handler für JS-, PHP- und CSS-Dateien festlegen? Dann werden sie als TextWrangler-Dateien aufgelistet.
Ich denke, das Problem könnte mit der Coda gewesen sein. Daniel Beck hat weiter unten geholfen, das Problem zu lösen. Eine weitere Frage: Wozu wird das Schnellwechsel-Dienstprogramm verwendet, das ich (oben) gefunden habe? Es hat etwas für einen 4 Buchstaben "Typ" und einen 4 Buchstaben "Schöpfer" ...?
KWD

Antworten:

8

Die Datei Art wird in der Regel durch die Anwendung festgelegt , dass Griffe dieses Dateityp in Launch Service. Für die meisten von ihnen ist dies die Anwendung, die standardmäßig einen Dateityp öffnet, in Ihrem Fall Coda.

Anwendungen geben Dateitypen in ihrer Contents/Info.plistDatei an. Sie können es anzeigen und bearbeiten, indem Sie mit der rechten Maustaste auf das Anwendungspaket klicken und Paketinhalt anzeigen auswählen .

Es sieht so aus, als hätten die Paniker etwas durcheinander gebracht. Alle von ihnen definierten Dateitypen sind PlainTextType:

Bildbeschreibung hier eingeben

Sie können den Namen des Dateityps ändern, indem Sie alle Document Type NameEinträge im Eigenschaftenlisten-Editor oder alle CFBundleTypeNameEinträge beim Bearbeiten der Datei in einem normalen Texteditor bearbeiten. Ersetzen Sie stattdessen einfach das, was als Beschreibung angezeigt werden soll.

Bildbeschreibung hier eingeben

Bearbeiten, speichern und vergewissern Sie sich, dass die Launch Services-Benachrichtigungen angezeigt werden (neu starten, abmelden oder die Anwendung einfach in einen anderen Ordner und wieder zurück verschieben). Das Ergebnis sieht dann folgendermaßen aus:

Bildbeschreibung hier eingeben


Sie müssen dies bei jedem Update der Anwendung wiederholen, da diese die von Info.plistIhnen bearbeitete Datei ersetzen . Am besten melden Sie einen Fehler den Entwicklern von Panic.

Daniel Beck
quelle
und die Leute bei Panic werden (wahrscheinlich) berichten, dass eine .php-, .js- oder .css-Datei immer noch eine reine Textdatei ist. seine Semantik, und das ist nicht der Zweck von HWI. das ist keine neue Debatte; HWI wurden von Anfang an missverstanden und missbraucht, auch aufgrund dieses Problems, gegen das der Apfel in seiner unendlichen Weisheit noch nichts unternommen hat.
Peelman
@peelman Apple macht das in TextEdit nicht so Info.plist. Sie sind tatsächlich in der Lage, korrekte Dokumenttypnamen bereitzustellen. Und Benutzer interessieren sich mehr für die Spalte Finder's Kind als für die technischen Aspekte von HWI.
Daniel Beck
@db - ist PListEdit Pro dasselbe wie der Eigenschaftenlisten-Editor? Ich habe die erste und mein Bildschirm sieht ein bisschen anders aus. Vielen Dank für eine ziemlich umfassende Antwort :)
cwd
nm, habe gerade den Property List Editor im /Developer/Applications/UtilitiesOrdner gefunden. Ich hatte nicht QS diesen Ordner zu katalogisieren. Hoppla.
KWD
Ich habe nach etwas in diesen Zeilen gesucht, aber ist es möglich zu ändern, wie der Finder die Sortierung verwaltet, wie hier beschrieben ?
Konrad
1

Es ist Aufgabe des Speicherprogramms, die UTI (Uniform Type Identifier) ​​für eine bestimmte Datei festzulegen. Wenn Sie es schaffen, sie zu ändern, bearbeiten Sie die Datei in dem Programm, in dem Sie sie erstellt haben, und legen Sie sie als Nur-Text fest. Wenn Sie sie erneut speichern , werden sie wahrscheinlich wieder in Nur-Text umgewandelt.

Technisch gesehen SIND diese Dateien reiner Text. Sie können von jedem Editor geöffnet werden, der die UTI für reinen Text unterstützt. Dies ist der Zweck der UTIs. Es handelt sich also nicht um eine Ungenauigkeit, sondern um eine Semantikübung. Ich persönlich vermeide solche Probleme, indem ich meine Bilder, Stylesheets und Javascript-Dateien in Unterordner lege.

Unabhängig davon müssen Sie wahrscheinlich den von Ihnen ausgewählten Editor durchsuchen und prüfen, ob er eine Möglichkeit zum Definieren von UTI-> Dateierweiterungsbeziehungen oder eine Möglichkeit zum Definieren der UTI, mit der eine Datei gespeichert wird, unterstützt.

Peelman
quelle
1

OS X Core Types- Beschreibungen können durch Bearbeiten von InfoPlist.strings innerhalb des CoreTypes.bundle geändert werden.

Die Eigenschaftsliste ist eine kompilierte Binärdatei, erstellen Sie also vor dem Bearbeiten eine Sicherungskopie. Systemaktualisierungen überschreiben diese wahrscheinlich. Bewahren Sie daher eine Kopie auf oder verknüpfen Sie (wie ich empfehle) Ihre bearbeitete Version mit dem Speicherort des Orginaldokuments - vorausgesetzt, es handelt sich um eine Kopie benannt InfoPlist.strings.customund befindet sich im selben Verzeichnis wie orginal:

cd /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj

cp InfoPlist.strings InfoPlist.strings.custom - Ihre benutzerdefinierte Kopie

mv InfoPlist.strings InfoPlist.strings.backup - Orginal bewegen

Öffnen InfoPlist.strings.custommit Textmate , da es schön Listen binäre Eigenschaft parst, vorausgesetzt , Sie bekommen mateinstalliert:

mate /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj/InfoPlist.strings.custom

Wenn Sie mit Ihren Änderungen fertig sind, verknüpfen Sie die Originaldatei an der richtigen Stelle:

sudo ln -s /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj/InfoPlist.strings.custom /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj/InfoPlist.strings

und starte Finder neu mit killall Finder- danach solltest du die Änderungen im Finder sehen.

zum Beispiel habe ich "Portable Document Format (PDF)" = "Portable Document Format (PDF)";zu "Portable Document Format (PDF)" = "PDF";und ... verabschiede mich von nervigen langen "Kind" -Strings im Finder :-)

Vorher NachherBildbeschreibung hier eingeben Bildbeschreibung hier eingeben

HINWEIS: Ich verwende Englisch als Systemsprache. Wenn Sie eine andere Sprache eingestellt haben, müssen Sie den Namen des Verzeichnisses in die entsprechende Sprache ändern:

cd /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/Deutsch.lproj/ <- sagen wir zum Beispiel Deutsch

Update 1 (über plutil herausgefunden):

Mit können Sie plutilvom Binärformat in XML oder JSON konvertieren

sudo plutil -convert json InfoPlist.strings -o InfoPlist.strings.json

Nachdem Sie die .json-Datei bearbeitet haben, konvertieren (kompilieren?) Sie sie wieder in ein Binärformat:

sudo plutil -convert binary1 InfoPlist.strings.json -o InfoPlist.strings

UPDATE 2

Möchten Sie herausfinden, wo sich diese nervige "Art" -Saite befindet?

sudo find ./ -name '*.plist' -o -name '*.strings' -exec plutil -p {} \; | grep"annoying"wo annoyingist das ding , das die s ** t des tages nervt

PJJ
quelle
0

Schau dir duti an

Ein Befehlszeilentool zum Auswählen von Standardanwendungen für Dateitypen unter OS X

ocodo
quelle
0

Dies geschah, als ich ein Upgrade auf Office 2016 durchführte und Office 2011 entfernte. Der Finder entschied, dass es sich bei den .dotDateien (MS Word 97-2004-Vorlagen) um GraphViz handelte DOT-Dateien waren, obwohl GraphViz nicht installiert war, und entschied, dass dies Nisus Writer sein sollte die Standardanwendung.

Ich habe es geschafft, die Standardanwendung auf einfache Weise im Finder zu reparieren (Get Info / Open With: / Change All…), aber der Dateityp war immer noch falsch. Per Daniel Becks Antwort habe ich die Info.plistsvon Word 2016 und Nisus Writer überprüft , aber beide waren korrekt.

Am Ende musste ich die Launch Services-Registrierung mit neu erstellen

/System/Library/Frameworks/CoreServices.framework/Versions/Current/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister -kill -r -domain local -domain system -domain user

(vom Terminal) und das hat es endlich behoben.

David Moles
quelle