J'ai créé un importateur Spotlight pour les fichiers BD. Les attributs sont importés avec succès et consultables. La seule chose qui reste est d'obtenir les attributs à afficher dans la fenêtre d'informations d'un fichier.Comment puis-je obtenir les attributs Spotlight à afficher dans la fenêtre d'informations sur l'obtention?
Il semble que cela devrait être une simple opération d'édition du fichier schema.xml afin que les attributs soient imbriqués dans les balises displayattrs. Malheureusement, cela ne semble pas fonctionner.
J'ai simplifié le plugin pour le test. Ce qui suit sont tous les fichiers importants.
schema.xml
<types>
<type name="cx.c3.cbz-archive">
<allattrs>
kMDItemTitle
kMDItemAuthors
</allattrs>
<displayattrs>
kMDItemTitle
kMDItemAuthors
</displayattrs>
</type>
<type name="cx.c3.cbr-archive">
<allattrs>
kMDItemTitle
kMDItemAuthors
</allattrs>
<displayattrs>
kMDItemTitle
kMDItemAuthors
</displayattrs>
</type>
</types>
GetMetadataForFile.m
Boolean GetMetadataForFile(void* thisInterface,
CFMutableDictionaryRef attributes,
CFStringRef contentTypeUTI,
CFStringRef pathToFile)
{
NSAutoreleasePool * pool = [NSAutoreleasePool new];
NSString * file = (NSString *)pathToFile;
NSArray * authors = [[UKXattrMetadataStore stringForKey: @"com_opencomics_authors" atPath: file traverseLink: NO] componentsSeparatedByString: @","];
[(NSMutableDictionary *)attributes setObject: authors forKey: (id)kMDItemAuthors];
NSString * title = [UKXattrMetadataStore stringForKey: @"com_opencomics_title" atPath: file traverseLink: NO];
[(NSMutableDictionary *)attributes setObject: title forKey: (id)kMDItemTitle];
[pool release];
return true;
}
Même problème ici. Plugin fonctionne très bien recherche-sage, mais pas personnalisé Finder – Jay
Ah - problème était mauvais emplacement de * schema.xml * dans mon cas (voir ci-dessous) – Jay