Gibt es eine Möglichkeit, Spotlight dazu zu bringen, nach xattr zu suchen?

Ich tagge gerne Dateien mit xattr, zB xattr -w user.foo bar myfile.

Gibt es eine Möglichkeit, Spotlight zu verwenden, um nach einem bestimmten xattr-Schlüssel (oder Schlüssel-Wert-Paar) zu suchen? Wenn ich beispielsweise foooder foo:barin die Spotlight-Suchleiste eingebe, möchte ich, dass es myfilein der Ergebnisliste angezeigt wird.

Mir ist klar, dass Sie dies tun können, indem Sie das com.apple.metadata:_kMDItemUserTagsAttribut schreiben - aber das ist nicht sehr portabel, daher bin ich gespannt, ob dies auf alle xattr-Tags ausgedehnt werden kann.

Antworten (1)

Basierend darauf , ja, aber Sie sind auf die Verwendung von com.apple-Attributen beschränkt. Was die Erweiterung von Spotlight auf beliebige xattrib-Tags angeht, könnten Sie, aber Sie müssen einen Importer für Spotlight entwickeln. Es sind viele Metadaten-Tags verfügbar, ich würde eines auswählen, das als persönliches Tag verwendet werden soll.

Wenn ich mich dazu verpflichten würde, nach benutzerdefiniertem xattrib zu suchen, würde ich Spotlight aufgeben und verwenden:

find . -xattrname foo
Der zweite Link ist für Carbon - wissen Sie, ob dies in Cocoa unterstützt wird?
Ich entwickle nicht für macOS, aber ich verstehe, dass Carbon reines C verwendet und Cocoa eine Objective-C-API verwendet, die für C oder C++ leicht zugänglich ist. Der Link enthält definitiv Objective-C-Beispiele.
Ich habe ein paar Spotlight-Plug-Ins entwickelt, die größtenteils in Objective-C geschrieben werden können. Etwas C wird benötigt, um das Plug-in einzurichten, aber dies wird von der Projektvorlage von Xcode bereitgestellt.