Search++ stellt eine alternative Form der Suche zur Verfügung, die logische Kombinationen komplexer Suchanfragen erlaubt. So ist es möglich, alle Seiten innerhalb eines Kategorienbaums zu finden, auf die weitere Kriterien zutreffen. Aktiv ist das Skript auf der Seite Spezial:Search++.
Einschränkungen
Bearbeiten- Die Suche kann sehr lange dauern.
- Einige Suchkriterien können nur verwendet werden, um die Ergebnisse einzuschränken.
Einbindung
BearbeitenFalls du meine Skriptsammlung Fliegelflagel verwendest, ist das Skript in der Standardkonfiguration bereits aktiv.
Andere Benutzer können das Skript durch folgende Zeile in der eigenen common.js einbinden:
//[[Benutzer:Schnark/js/search++.js]]
mw.loader.load('https://de.wikipedia.org/w/index.php?title=Benutzer:Schnark/js/search%2B%2B.js&action=raw&ctype=text/javascript');
Beispiele
Bearbeiten
Alle Seiten im Kategorienbaum unterhalb von Kategorie:Unicode, deren Titel nicht mit Unicodeblock
anfängt:
cattree("Kategorie:Unicode") NOT prefix("Unicodeblock")
Alle Seiten, die mit Abc
beginnen, keine Weiterleitungen sind und höchstens 2000 Byte groß sind:
prefix("Abc") NOT redir() AND maxSize(2000)
Alternativ und etwas schneller kann man – Kenntnisse der API vorausgesetzt – auch schreiben:
api("allpages", "apprefix=Abc&apfilterredir=nonredirects&apmaxsize=2000")
Alle Mathematiker des Mittelalters, die im Juni geboren sind:
cattree("Kategorie:Mathematiker des Mittelalters") AND sourceRE(/GEBURTSDATUM\s*=.*Juni/)
Alle Links auf Liste der Nobelpreisträger darauf prüfen, ob sie oder die Seite, auf die sie weiterleiten, in einer Unterkategorie der Kategorie:Nobelpreisträger einsortiert sind und alle anderen Seiten auflisten:
linkedOn("Liste der Nobelpreisträger") MAP redir() NOT cattree("Kategorie:Nobelpreisträger")
Alle englischen Artikel, die mit Artikeln der Kategorie:Satz (Mathematik) verknüpft sind, sortiert nach dem englischen Titel:
cattree("Kategorie:Satz (Mathematik)") MAP iw("en") SORT title()
Code
BearbeitenDer Javascript-Code befindet sich unter Benutzer:Schnark/js/search++.js.