Spotlight


Aus Macwrench

Wechseln zu: Navigation, Suche
Diese Funktion oder Software benötigt Mac OS X in der Version 10.4 (oder neuer)
Spotlight.png

Inhaltsverzeichnis

Spotlight

Spotlight ist die neue, mit MacOS 10.4 (aka Tiger) eingeführe Suchengine

Tastaturshortcuts

Spotlight-Suche starten
+
(konfigurierbar)
Spotlight-Suche in neuem Fenster starten
+ +

Im Ergebnisfenster:

Top-Treffer direkt öffnen
+
Zum ersten Treffer der nächsten Kategorie wechseln
+
Zum ersten Treffer der vorigen Kategorie wechseln
+
Zum ersten Treffer der Liste wechseln
+
Zum letzten Treffer der Liste wechseln
+
Eintrag im Finder zeigen
+ KLICK
1x: Suchefeld und -ergebnisse löschen
2x: das Ergebnisfenster schließen

Suchoperatoren

In den Spotlight Suchanfragen können Begriffe auch geklammert sowie andere boolesche Operatoren verwendet werden:

Außerdem kann durch Verwendung des Präfix "art:" nach Dateityp gefiltert werden:

Name Operator Beispiel
AND (Leerzeichen) begriff1 begriff2
NOT (-) begriff1 (-begriff3)
OR | begriff1 | begriff4
Dateityp art:

art:programm
art:bild, art:bilder
art:lesezeichen
art:mail, art:email, art:e-mail
art:film, art:filme
art:schrift, art:schriften
art:kontakt
art:musik
art:ordner
art:präsentation
art:einstellungen, art:systemeinstellungen
art:ereignis
art:aufgabe

Beispiele
(Schinken|Salami) Pizza(-Aufschnitt)

Der jeweilige Typ einer Datei ist dabei lokalisiert in der jeweilgen Systemsprache (I lässt sich dabei im Terminal mit Hilfe des Kommandos Manpage.png mdls herausfinden:

 mdls | grep "^kMDItemKind"

Indizierung

Spotlight indiziert die folgenden Verzeichnisse:

  /Library/PreferencePanes/
  /System/Library/PreferencePanes/
  /Developer/Applications/
  /Developer/Examples/

Das Benutzerverzeichnis (Home) ~/ mit den Unterverzeichnissen

  Documents/   
  Movies/ 
  Music/ 
  Pictures/ 
  Library/Metadata/ 
  Library/Caches/Metadata/ 
  Library/Mail/ 
  Library/Caches/com.apple.AddressBook/Metadata/ 
  Library/PreferencePanes/

unabhängig davon, ob das Homeverzeichnis lokal, mit filevault verschlüsselt oder per Netzwerkfreigabe eingebunden verwendet wird.

Spotlight indiziert nicht die folgenden Systemverzeichnisse:

/automout/ 
/bin/ 
/cores/
/dev/ 
/private/ 
/sbin/
/tmp/ 
/usr/ 
/var/ 
/Previous Systems/ (für ein bei der 10.4 Installation ggf. erstelltes Backup) 
/Network/

ebenso werden bei den folgenden Verzeichnissen diejenigen darunterliegenden Strukturen nicht indiziert, die oben nicht explizit aufgeführt wurden:

~/Library/ (ausser die oben genannten Verzeichniss) 
iPod_Control/ (in gemounteten iPods) 
/System/ (ausser die oben genannten Verzeichniss) 
/Library/ (ausser die oben genannten Verzeichniss) 
/Developer/ (ausser die oben genannten Verzeichniss) 

Um Ordner aus der Indizierung auszuschliessen benennt man diese in ".noindex" um. Als Beispiel: "MeinOrdner.noindex" Wir sind immernoch auf der Suche "/sw" aus der Indizierung auszuschliessen ohne diesen umzubennen

PHP Dateien indizieren mit Spotlight

Bearbeiten der info.plist mit dem Preferences Editor

terminal öffnen und mit

open /Library/Spotlight/SourceCode.mdimporter/Contents/Info.plist

den PropertyEditor öffnen, dort unter

Root/CFBundleDocumentTypes/0/LSItemContentTypes

ein neues Sibling anlegen. Der key 7 wird automatisch vergeben und muss den folgenden Wert enthalten:

public.php-script

Abschliessend mit

Manpage.png mdimport -r /Library/Spotlight/SourceCode.mdimporter

den SpotlightServer dazu veranlassen das plugin neu einzulesen.

Mülleimer ausschliessen

Für manche mag es von nutzen sein, dass auch der/die Mülleimer (~/Trash/) indiziert werden. Wer aber häufig den selben Namen verwendet für seine Notizen o.ä. und diese gleich benennt und dann wieder wegschmeisst, kann mit dieser Funktion wahrscheinlich nicht sehr viel anfangen. Deshalb empfiehlt es sich dann, den Mülleimer aus der Indizierung auszuschliessen.

  • Im Finder
    + + G
  • und im Eingabe Feld "Gehe zu:" dann
~/.Trash

eingeben.

  • In den Spotlight-Einstallungen auf Privatsphäre klicken
  • Den Ordner Trash aus der Menuleiste im Finder auf die Privatsphäre ziehen

Spotlight Tuning

Die Suche beschleunigen

Die Spotlight Suche ist so gebaut, dass jeder Buchstabe eine neue Suchanfrage auslöst. Die Suche kann also spürbar beschleunigt werden, indem man einen Suchstring ausserhalb zusammenbaut und dann komplett in das Suchfenster kopiert. Noch besser ist, dann einfach mit
+ + F
die Suche direkt starten.

Noch besser geht das, wenn Quicksilver installiert ist:

  1. Quicksilver starten
  2. Mit
    .
    in die Texteingabe wechseln
  3. Suchstring eingeben
  4. Mit ins nächste Feld wechseln.
  5. "Spotlight Suche" auswählen. (mit
    + KLICK
    lässt sich das dann auch als default für die Texteingabe wählen.

Anm.: nur bei installiertem Spotlight-Plugin - hagbard

Am schnellsten schliessen lässt sich das Ergebnis- und das Suchfenster durch zweimaliges drücken von

Spotlight aus der Menubar entfernen

Im Moment gibt es keine Möglichkeit, die Spotlightlupe aus der Menubar zu entfernen, ohne die Funktionalität zu verlieren.

Erweiterte Informationen

In der Spotlight- Suche, kann durch drücken auf das "i" die erweiterten Informationen zu diesem Ergebnis angezeigt werden. Hält man beim klicken zusätzlich , so werden die erweiterten Informationen aller der Gruppe angehörenden Elemente.

Alternativ geht dies auch mit sowie
+

Spotlight und launcher utilities (Quicksilver, Butler, Launchbar)

Als Quicksilver Benutzer starte ich meine Anwendungen immer noch mit Quicksilver. Zuerst wollte ich komplett auf Spotlight wechseln, aber da ist Spotlight einfach zu träge. Deshalb hab ich also in den Spotlight-Einstellungen Anwendungen und Systemeinstellungen deaktiviert und in Quicksilver dafür Adressbuch, Mail etc. deaktiviert.

Spotlight deaktivieren

Über das Terminal kann Spotlight (z.B. aus Performancegründen oder in einer virtuellen Maschine) komplett deaktiviert werden:

Mac OS 10.4 / 10.5

Folgende Zeilen sind im Terminal einzugeben um ...

... Spotlight vorübergehend zu deaktivieren:

sudo launchctl unload /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
launchctl unload /System/Library/LaunchAgents/com.apple.Spotlight.plist
sudo launchctl unload -w /System/Library/LaunchAgents/com.apple.Spotlight.plist

... Spotlight permanent zu deaktivieren:

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
launchctl unload /System/Library/LaunchAgents/com.apple.Spotlight.plist
sudo launchctl unload -w /System/Library/LaunchAgents/com.apple.Spotlight.plist

... Spotlight vorübergehend wieder zu aktivieren:

sudo launchctl load /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
launchctl load /System/Library/LaunchAgents/com.apple.Spotlight.plist
sudo launchctl load -w /System/Library/LaunchAgents/com.apple.Spotlight.plist

... Spotlight permanent wieder zu aktivieren:

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
launchctl load /System/Library/LaunchAgents/com.apple.Spotlight.plist
sudo launchctl load -w /System/Library/LaunchAgents/com.apple.Spotlight.plist

siehe auch:

Mac OS 10.5 Quickfix

Diese beiden Dateien an einen anderen Ort verschieben:

   /System/Library/LaunchAgents/com.apple.Spotlight.plist
   /System/Library/LaunchDaemons/com.apple.metadata.mds.plist

Nach einem Systemupdate ist dies ggf. zu wiederholen

Mac OS 10.6

Unter 10.6 ist über folgendes Kommando Spotlight zu (de-)aktivieren:

sudo mdutil -a -i off
sudo mdutil -a -i on

Mac OS 10.7

Folgende Zeilen sind im Terminal einzugeben um ...

... Spotlight vorübergehend zu deaktivieren:

sudo launchctl unload /System/Library/LaunchDaemons/com.apple.metadata.mds.plist

... Spotlight permanent zu deaktivieren:

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist

... Spotlight vorübergehend wieder zu aktivieren:

sudo launchctl load /System/Library/LaunchDaemons/com.apple.metadata.mds.plist

... Spotlight permanent wieder zu aktivieren:

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist

Spotlight-Index neu aufbauen

Dies hilft auch oftmals, wenn der Mac App Store Aktualisierungen von längst deinstallierten Programmen anzeigt, dazu sind im Terminal folgende Anweisungen nacheinander einzugeben:

Spotlight-Indizierung deaktivieren:

sudo mdutil -a -i off

Spotlight-daemon beenden:

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist

Spotlight-daemon erneut laden:

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist

anschließend die Indizierung neu starten:

sudo mdutil -a -i on

Nun sollte der Index neu aufgebaut werden, was unter Umständen eine Weile dauern kann.

Benutzung in der Shell

Spotlight Kommandozeilen-Tools


mdfind Spotlight-Suche
Manpage.png mdls Anzeige der Metadaten einer Datei im Index
Manpage.png mdimport Ordnerstrukturen in den Metadaten-Index aufnehmen (==indizieren)
Manpage.png mdutil Verwaltungstool für den Spotlight Metadaten-Index
mdcheckschema Gültigkeit eines Importschemas für Spotlight überprüfen

Beispiele

Hier sollen in Zukunft ein paar Beispiele entstehen, die man immer mal wieder gut gebrauchen kann.


Alle Audiodateien im Home anzeigen, sortieren und doppelte aussortieren:

mdfind 'kMDItemMediaTypes == "Sound" ' -onlyin "/~" | sort -fd | uniq 

Anmerkungen zu Spotlight

Spotlight in Multi-Boot Systemen

Bei Multi-Boot Systemen (also Systemen mit mehreren MacOS Installationen) ist recht nervig, dass Spotlight die von der Indizierung ausgeschlossenen Ordner und Volumes (Systemeinstellungen > Spotlight) nicht für jede Installation getrennt speichert sondern scheinbar direkt im Index.

Das hat zur Folge, das entwder Spotlight nicht funktioniert oder immer alle Installationen im Index sind, was insbesondere bei verschiedenen MacOS Versionen zu Komplikationen führen kann.

Ideen zur Abhilfe sind willkommen.

Weitere Informationen

Spotlight Plugins

  • Apple Downloads: Spotlight Plugins (MD-Importer)
  • Xcode Plugin: Spotlight importer für AppleScript, Xcode Projekte und Interface Builder Dateien (NIB, XIB)

Grundlagen

Entwicklung

Tools und Hilfsmittel

  • mdfind2: mdfind-Ersatz mit XML-Ausgabe der Suchergebnisse

Manpages

Ansichten