Benutzer:Schnark/js/stub
Dieses Skript erstellt ein Artikelgrundgerüst aus den Daten aus Wikidata und anderen Sprachen. Beim Erstellen einer neuen Seite wählt man in der linken Spalte unter „Werkzeuge“ den Punkt „Stub erstellen“, gibt die Wikidata-ID an und folgt den Anweisungen. Als Ergebnis erhält man einen Artikelanfang, den man weiter ausbauen sollte.
Du bist herzlich dazu eingeladen selbst Unterseiten anzulegen und die vorhandenen zu bearbeiten. Die Syntax ist etwas gewöhnungsbedürftig, aber probiere es einfach aus.
Einbindung
Falls du meine Skriptsammlung Fliegelflagel verwendest, kannst du das Skript in der Fliegelflagel-Konfiguration aktivieren.
Andere Benutzer können das Skript durch folgende Zeile in der eigenen common.js einbinden:
importScript('Benutzer:Schnark/js/stub.js'); //[[Benutzer:Schnark/js/stub.js]]
Konfiguration
Die Konfiguration speist sich aus mehreren Unterseiten. main/json
definiert grundsätzliche Variablen, die anderen Seiten (etwa person/json
und person
treten in der Regel paarweise auf und definieren Variablen für eine bestimmte Artikelgruppe und das zugehörige Grundgerüst, die Variablen können aber auch fehlen.
Ein Grundgerüst ist einfach Wikitext mit folgenden Zusätzen: Mit $variable
kann der Inhalt einer Variablen eingefügt werden, mit $$
ein Dollarzeichen (falls es sonst als Variable interpretiert würde), mit $:
einen Leerstring (um Variablen zu trennen oder Kategorien etc. zu entschärfen).
Die Variablendefinitionen erfolgen mittels JSON, optional in syntaxhighlight
-Blöcke gepackt. Es handelt sich um ein Array, dessen Einträge wiederum Arrays sind, die die Variablen definieren. Der erste Eintrag ist der Variablenname, der zweite die Funktion. Alle weiteren Einträge werden der Funktion als Parameter übergeben. Wurde die Variable zuvor schon erfolgreich definiert, so wird die erneute Definition übersprungen. Es wird also die erste erfolgreiche Definition verwendet. Eine Besonderheit ist der leere Variablenname. Wird dieser in main/json
gesetzt, so wird die Verarbeitung beendet und der Wert als Name des Gerüsts vorgeschlagen.
Es gibt folgende Funktionen:
Funktion | Parameter | Aufgabe |
---|---|---|
input | Eingabeaufforderung | Lässt den Benutzer einen Wert eingeben |
re | Wiki, regulärer Ausdruck, optionale Flags | Holt den Text aus dem angegebenen Wiki (etwa enwiki , dewikisource , etc.) und wendet den regulären Ausdruck an. Trifft dieser zu, so wird die Variable gesetzt: Bei einer Klammer im Ausdruck als einfacher String, bei mehreren Klammern oder dem Global-Flag als Array von Strings, bei mehreren Klammern und dem Global-Flag als Array von Arrays von Strings.
|
translate | Sprache, Variable | Übersetzt den in der Variablen gespeicherten Titel von der angegebenen Sprache nach Deutsch. |
format-link | Seite, optionaler Text | Erzeugt einen Link mit den Werten der Variablen. |
format-array | Variable, Format, Verbinder | Jeder Eintrag des in der Variablen gespeicherten Arrays wird mit dem Formatstring formatiert (siehe unten bei format-string) und dann zu einem einzigen String verbunden. |
format-date | Variable, Format | Das in der Variable gespeicherte Datum wird formatiert, wobei der Formatstring einige Zeichen wie %Y , %j etc. erkennt (wie {{#time}}). Ohne Format wird die Standardformatierung genommen, zudem gibt es das Format "link" .
|
format-coord | Variable, Richtung | Die in der Variablen gespeicherte Koordinate wird formatiert, je nach Richtung die Nord-Süd-Angabe oder West-Ost. |
format-string | Format, Variable[n] | $-Zeichen gefolgt von Zahlen im Formatstring werden durch die Werte der Variablen ersetzt, oder durch den Eintrag im Array, falls die erste und einzige Variable ein solches ist. Alle Variablen müssen dabei definiert sein. |
map | Variable, Objekt, optionaler Standardwert | Der Wert der Variablen wird gemäß den Einträgen des Objekts übersetzt, falls er dort nicht vorkommt, wird der Standardwert genommen. |
wikidata | Eigenschaft | Ermittelt den Wert der Eigenschaft des Wikidata-Eintrags. |
wikidata-label | optionaler Wikidata-Eintrag | Ermittelt das Label des Wikidata-Eintrags. |
wikidata-description | optionaler Wikidata-Eintrag | Ermittelt die Beschreibung des Wikidata-Eintrags. |
wikidata-aliases | optionaler Wikidata-Eintrag | Ermittelt die Aliase des Wikidata-Eintrags. |
wikidata-article | optionaler Wikidata-Eintrag | Ermittelt den verknüpften Artikel des Wikidata-Eintrags. |
warn | Variable | Sollte dem Leerstring zugewiesen werden und erzeugt keinen Wert, sondern gibt am Ende die in der Variablen gespeicherte Warnung aus (fallst dort etwas gespeichert war). |
Code
Der Javascript-Code befindet sich unter Benutzer:Schnark/js/stub.js.