Vor einer Woche funktionierte Quicklook nicht mehr mit .m
und - .h
Dateien. Stattdessen wird mir ein .m
oder .h
-Thumbnail angezeigt. Ich glaube, an diesem Tag tauchte ein Meldungsfeld auf und ich habe es nicht gelesen – ich habe die Frage hastig beantwortet –, aber ich habe nichts mit dem System gemacht. Wie auch immer, jetzt habe ich den Quicklook für diese Dateitypen verloren.
Es funktioniert immer noch für alle anderen Standarddateien. Ich habe versucht, die ".qlgenerator"-Dateien von einem anderen Mac zu kopieren, der dieselbe Betriebssystemversion hat ... und es hat immer noch nicht funktioniert.
Ich habe versucht, Berechtigungen auf der Festplatte zu überprüfen / zu reparieren, es zeigte etwas bezüglich .qlgenerator-Dateien an, aber ich dachte: "Es liegt wahrscheinlich an meinem Kopieren-Einfügen-Ersetzen durch Eindringlingsdateien, die wahrscheinlich einige Berechtigungen geändert haben". Jedenfalls hat es das Problem nicht gelöst.
Ich habe auch versucht qlmanage -r
, auszuführen und meinen Mac neu zu starten. Das Problem besteht weiterhin.
Der andere Mac zeigt immer noch die Standardmethode (auch bekannt als Quicklook-Vorschau) für diese Dateitypen.
Irgendeine Idee, was schief gelaufen ist? Glaubst du, dass das Nachrichtenfeld, das ich hastig beantwortet habe, dafür verantwortlich ist? Ich habe das Gefühl, dass es so ist, aber ich bin mir nicht sicher, weil ich weder das System oder irgendetwas konfiguriert habe, noch irgendetwas, das weder mit Quicklook (ich wusste nicht, dass diese Funktion damals einen Namen hatte) noch mit xcode zu tun hat ... Ich bin verloren.
BEARBEITEN Wie @Bootle vorgeschlagen hat, bin ich gerannt
qlmanage -p DATEI
und überraschenderweise hat der Quicklook die Datei korrekt geöffnet, dh Sie können den Inhalt der Datei und die Standard-XCode-Farbgebung dafür sehen. Zusätzlich wurde die folgende Ausgabe im Terminal gedruckt.
Also noch weitere Hinweise?
BEARBEITEN Nach der Überprüfung des Protokolls von der Konsole nach der Bearbeitung durch @StvnW sind neue Hinweise aufgetaucht.
Ich hänge das Protokollbild an, nachdem ich Quicklook in einer Datei bestellt habe
UPDATE Die Lösung bestand darin, dass ich ältere Versionen von XCodes seit 3.6.2 ^_^ und anderen Versionen aufbewahrte und sie alle in einem Ordner zusammenfasste, in dem ich mir selbst die Berechtigung zum Zugriff verweigerte. Damit wurden sie auch für das System unzugänglich. Und das Problem wurde gelöst, das System (oder QL) hat sich auf die neueste offizielle XCode-Anwendung festgelegt.
Aber das ist der folgenden Antwort zu verdanken, die mir diesen Hinweis aus dem Debugging gegeben hat. Ich denke, andere Leute, die dasselbe Problem haben, sollten seiner Antwort folgen. Ich markiere diese Antwort als die richtige Antwort
Sie könnten erwägen, einfach QLStephen zu verwenden , das die richtige QuickLook-Unterstützung für alle Textdateien unabhängig von ihren Erweiterungen hinzufügt. Es wird auch Dateien ohne Erweiterungen (z . B. README
, Makefile
) richtig handhaben. Was ich daran mag, ist, dass Sie keine Liste von Erweiterungen führen müssen; QLStephen erkennt Textdateien automatisch. QLStephen ist unabhängig von XCode und ein QL-Plugin, das Sie in /Library/QuickLook/
oder einfügen ~/Library/QuickLook/
.
Dass ich auch Steven heiße, ist reiner Zufall.
Aktivieren Sie die QuickLook-Protokollierung:
defaults write -g QLEnableLogging YES
Hier ist eine Referenzprotokollausgabe (in die Konsole geschrieben):
Stock Xcode installiert:
2014-04-29 2:46:08.172 PM quicklookd[19315]:
[QL] Thumbnailing file://localhost/Users/user/src/hello/main.m.
Content type UTI: public.objective-c-source
Generator used: <QLGenerator Text.qlgenerator>
2014-04-29 2:46:08.173 PM com.apple.quicklook.satellite[19330]:
[QL] <QLThumbnailRequest main.m
token: d45af7955eb9401bc7a49fd6652d1c3aa5cc4a8b;00000000;000000000000001a;
com.apple.app-sandbox.read;00000001;01000003;0000000003e32849;
/users/user/src/hello/main.m>.
Content type UTI: public.objective-c-source.
Generator used: <QLGenerator /System/Library/QuickLook/Text.qlgenerator>
Drittanbieter-Generator (QLColorCode) installiert:
2014-04-29 2:51:40.458 PM quicklookd[19359]:
[QL] Thumbnailing file://localhost/Users/user/src/hello/main.m.
Content type UTI: public.objective-c-source.
Generator used: <QLGenerator /Users/user/Library/QuickLook/QLColorCode.qlgenerator>
2014-04-29 2:51:40.459 PM com.apple.quicklook.satellite[19367]:
[QL] <QLThumbnailRequest main.m
token: d45af7955eb9401bc7a49fd6652d1c3aa5cc4a8b;00000000;000000000000001a;
com.apple.app-sandbox.read;00000001;01000003;0000000003e32849;
/users/user/src/hello/main.m>.
Content type UTI: public.objective-c-source.
Generator used: <QLGenerator /Users/user/Library/QuickLook/QLColorCode.qlgenerator>
Da die Dinge beim Aufrufen qlmanage
über die Befehlszeile für Sie funktionieren, können Sie möglicherweise die in die Konsole geschriebenen Protokolle mit der Ausgabe des manuellen Aufrufs über die Befehlszeile vergleichen und das Problem erkennen. Wenn nur Xcode installiert ist:
[user@macbook]/Users/user/src/hello$ qlmanage -p -d 1 main.m
Testing Quick Look preview with files:
main.m
[DEBUG] Registering <QLGenerator Built-in 0x7fa08241eaa0> for public.image
[DEBUG] Preview test for main.m -- file://localhost/Users/user/src/hello/.
Content type UTI: public.objective-c-source
[DEBUG] Previewing file://localhost/Users/user/src/hello/main.m.
Content type UTI: public.objective-c-source.
Generator used: <QLGenerator Text.qlgenerator>
[DEBUG] Loading <QLGenerator Text.qlgenerator>
[DEBUG] Previewing file://localhost/Users/user/src/hello/main.m finished
QuickLook für diese Dateitypen funktioniert, da der Dateityp in der Info.plist von Xcode angegeben ist.
Damit QuickLook Xcode verwenden kann, um diese Dateien schnell wieder im Finder anzuzeigen, müssen Sie die Info.plist-Datei von Xcode bearbeiten. Dies finden Sie, indem Sie in Ihren Anwendungen mit der rechten Maustaste auf die Datei Xcode.app klicken und auf „Paketinhalt anzeigen“ klicken. Sie finden Info.plist im Inhaltsordner, der sich öffnet.
In der Datei „Info.plist“ sind alle mit Xcode verknüpften Dateitypen als „CFBundleTypeExtensions“-Wörterbücher aufgeführt.
Führen Sie nach dem Öffnen der Plist eine Suche nach <string>h</string>
(oder dasselbe mit 'm') durch. Wenn es nicht gefunden werden kann, müssen Sie es hinzufügen.
Hinweis: An dieser Stelle möchten Sie möglicherweise eine Sicherungskopie der gesamten Xcode.app-Datei erstellen, falls etwas schief geht.
Erstellen Sie eine Kopie von Info.plist, indem Sie sie bei gedrückter Alt-Taste auf Ihren Desktop ziehen. Öffnen Sie die Kopie und suchen Sie nach <key>CFBundleExecutable</key>
. Sie sehen </array>
in der Zeile darüber. Fügen Sie vor dem </array>
Textblock den Textblock ein, der es ermöglicht, einen Dateityp mit Xcode zu verknüpfen (siehe unten). Dieser Block sollte mit bzw. beginnen und <dict>
enden </dict>
.
Für die .h-Datei:
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>h</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>c-header_Icon</string>
<key>CFBundleTypeName</key>
<string>C Header Source</string>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>LSIsAppleDefaultForType</key>
<true/>
<key>LSItemContentTypes</key>
<array>
<string>public.c-header</string>
</array>
</dict>
Für die .m-Datei:
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>m</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>objective-c-source_Icon</string>
<key>CFBundleTypeName</key>
<string>Objective-C Source</string>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>LSIsAppleDefaultForType</key>
<true/>
<key>LSItemContentTypes</key>
<array>
<string>public.objective-c-source</string>
</array>
</dict>
Sobald dies erledigt ist, sollten Sie in der Lage sein, die bearbeitete Info.plist zurück in den Xcode.app-Inhaltsordner zu kopieren. Manchmal möchten Apps nicht, dass Sie ihre Plists bearbeiten, und entscheiden sich danach, nicht zu arbeiten. Wenn dies der Fall ist, stellen Sie einfach die Kopie wieder her, die Sie zuvor erstellt haben (sollten).
Dies kann mit jeder Anwendung und jedem Dateityp repliziert werden. Wenn es einen besseren Weg gibt, dies zu tun, vielleicht indem Sie einige Einstellungen in Xcode ändern/festlegen, wäre es gut zu wissen.
Bootle
qlmanage -p FILE
Wobei DATEI der Pfad zu einer .h- oder .m-Datei auf Ihrem Computer ist. Und dann kopieren und fügen Sie die Terminalausgabe hier oder in ein Pastebin oder so ein. Danke.