Dieses Skript erzeugt einige zusätzliche Reiter (im Monobook-Skin direkt neben den anderen Reitern, im Vector-Skin zusammen mit „Verschieben“ im Drop-Down-Menü) und Einträge in der linken Seitenspalte mit nützlichen Funktionen, hauptsächlich auf dem Labs-Server.

So sieht’s aus (Vector-Skin)

Einschränkung

Bearbeiten
  • In der Standard-Einstellung werden teils so viele Reiter eingefügt, dass man das Skript nur im Vector-Skin vernünftig nutzen kann.
  • Aufgenommen sind die meisten Tools, die sich sinnvoll als kontextbezogenes Werkzeug verlinken lassen, ursprünglich diente Benutzer:Inkowik/Tools als Grundlage, sowie sonstige Werkzeuge, die einem so über den Weg laufen. Falls dir irgendewtas fehlt, kann ich das noch einfügen.
  • Auf Grund der Tatsache, dass jeder Tool-Programmierer seine eigenen Vorstellungen hat, wie das Projekt angegeben werden muss, ob der Namensraum einer Seite davorstehen muss, wie Leerzeichen zu codieren sind, etc. gibt es sicher genug Tools, die auf einigen Seiten oder in einigen Projekten falsch aufgerufen werden, in diesem Fall bitte ebenfalls bei mir melden.

Einbindung

Bearbeiten

Falls du meine Skriptsammlung Fliegelflagel verwendest, ist das Skript in der Standardkonfiguration bereits aktiviert.

Andere Benutzer können das Skript in der eigenen common.js einbinden mit:

//[[Benutzer:Schnark/js/extratabs.js]]
mw.loader.load('https://de.wikipedia.org/w/index.php?title=Benutzer:Schnark/js/extratabs.js&action=raw&ctype=text/javascript');

Konfiguration

Bearbeiten

Falls die Google-Übersetzung nicht angezeigt wird, in die falsche Sprache übersetzt oder überflüssig ist, musst du in der Fliegelflagel-Konfiguration die Sprache anpassen.

Die Auswahl der Tools lässt sich konfigurieren, dazu musst du das Skript aber über Fliegelflagel einbinden. Beachte auch die Hinweise in der Fliegelflagel-Dokumentation!

Um die Auswahl der Tools zu konfigurieren, verwendest du die Funktionen extratabs.add, extratabs.enable, extratabs.remove und extratabs.replace.

  • add erwartet als ersten Parameter den Namen des Tools (siehe im Code die Einträge in tools, oder ein mittels extratabs.defineTool selbst definiertes Tool), als zweiten, optionalen Parameter eine Bedingung, wann das Tool angezeigt werden soll und als dritten, ebenfalls optionalen Parameter den Ort (verwende den String 'p-tb', wenn das Tool nicht als Reiter, sondern in der linken Spalte erscheinen soll). Der Parameter für die Bedingung ist entweder ein String oder ein Array aus Strings. In diesem Fall müssen alle Bedingungen erfüllt sein, damit das Tool angezeigt wird. Beginnt eine Bedingung mit einem Ausrufezeichen, so wird sie negiert. Mögliche Bedingungen sind:
    • action_aktion, wobei aktion für eine Aktion wie view (dies schließt purge mit ein), edit (dies schließt submit mit ein) oder history steht
    • special_spezial, wobei spezial für den kanonischen Namen einer Spezialseite (in Kleinbuchstaben) steht, etwa search
    • ns_namensraum, wobei namensraum den Namensraum angibt: entweder eine Zahl, ein kanonischer Name (etwa user, dies schließt Diskussionsseiten mit ein) oder talk für Diskussionsseiten
    • is_ip prüft ob der betroffene Benutzer (Benutzer(-diskussions-)seite/-beiträge) eine IP ist
  • enable erwartet als einzigen Parameter den Namen des (standardmäßig deaktivierten) Tools, das aktiviert werden soll.
  • remove erwartet als einzigen Parameter den Namen des Tools, das entfernt werden soll.
  • replace erwartet als ersten Parameter den Namen des zu ersetzenden Tools, als zweiten den Namen des Tools, das stattdessen angezeigt werden soll.

Beispiel: Wenn du ab und zu den VisualEditor verwenden willst, ohne ihn dauerhaft in deinen Einstellungen zu aktivieren, kannst du das hierfür existierende, aber standardmäßig deaktivierte Tool visualeditor aktivieren:

	extratabs: function (extratabs) {
		extratabs.enable('visualeditor');
	}

Soll er dagegen nur im ANR erscheinen, so musst du das Tool selbst hinzufügen:

	extratabs: function (extratabs) {
		extratabs.add('visualeditor', 'ns_0');
	}

Oder wenn du ein anderes Tool zum Anzeigen der erstellten Seiten bevorzugst:

	extratabs: function (extratabs) {
		extratabs.replace('pages', 'created');
	}

Selbstverständlich lassen sich diese Beispiele auch kombinieren, also etwa

	extratabs: function (extratabs) {
		extratabs.enable('visualeditor');
		extratabs.replace('pages', 'created');
	}

Der Javascript-Code befindet sich unter Benutzer:Schnark/js/extratabs.js.