Benutzer:Schnark/js/wikieditor/Teil 4
In diesem Teil erfährst du, wie du ganz eigene Schaltflächen und Auswahllisten verwenden kannst.
Schaltflächen
[Bearbeiten | Quelltext bearbeiten]Um eine neue Schaltfläche einzufügen, verwendest du wikieditor.addMyButton('Ort', 'URL des Icons', 'Hinweis', 'vorne', 'mitte', 'hinten');
oder wikieditor.addMyButton('Ort', 'URL des Icons', 'Hinweis', 'vorne', 'mitte', 'hinten', opt);
oder wikieditor.addMyButton('Ort', 'URL des Icons', 'Hinweis', 'vorne', 'mitte', 'hinten', opt, funktion);
.
Zu den einzelnen Parametern:
'Ort'
- Hier hast du die gleichen Möglichkeiten wie bisher auch, also beispielsweise
''
für die Hauptleiste und'advanced'
für die erweiterte Leiste. 'URL des Icons'
- Es muss sich um die protokoll-relative URL des Icons, nicht der Bildbeschreibungsseite handeln, wird also vermutlich mit
'https://upload.wikimedia.org/wikipedia/commons/thumb/...'
anfangen. Bei SVGs wählst du eine Breite von 22 Pixeln, die URL endet dann auf'.../22px-___.svg.png'
. Gut geeignet sind die Nuvola-Icons (commons:Category:Nuvola icons). 'Hinweis'
- wird als Tooltip angezeigt. Aus technischen Gründen darf für zwei Buttons nicht der gleiche Tooltip verwendet werden.
'vorne', 'mitte', 'hinten'
- Vor dem Cursor bzw. der aktuellen Markierung wird
'vorne'
eingefügt, dahinter'hinten'
. Gibt es keinen markierten Text, wird'mitte'
dazwischen gesetzt und markiert. opt
- ist optional. Hier kannst du zusätzliche Optionen angeben, etwa
{ownline: true}
, wenn der eingefügte Text in jedem Fall in einer eigenen Zeile stehen soll, oder{splitlines: true}
, wenn der Text vor und hinter jeder markierten Zeile eingefügt werden soll, statt nur einmal ganz am Anfang und ganz am Ende. Mehrere Optionen können auch kombiniert werden. funktion
- ist optional. Die Funktion wird zusätzlich beim Klick auf die Schaltfläche ausgeführt. Mit
wikieditor.addComment('Ich war da.')
kann zum Beispiel automatisch die Zusammenfassungszeile gefüllt werden.
Auswahllisten
[Bearbeiten | Quelltext bearbeiten]Um eine neue Auswahlliste einzufügen, verwendest du wikieditor.addMySelect('Ort', 'Name der Auswahlliste', Liste);
. Liste
hat die Form [Punkt_1, Punkt_2, ..., Punkt_n]
, die einzelnen Punkte ['Bezeichnung', 'vorne', 'mitte', 'hinten']
oder ['Bezeichnung', 'vorne', 'mitte', 'hinten', opt]
oder ['Bezeichnung', 'vorne', 'mitte', 'hinten', opt, funktion]
.
Die Parameter entsprechen denen bei Schaltflächen.
Beispiele
[Bearbeiten | Quelltext bearbeiten]Beispiel 1
[Bearbeiten | Quelltext bearbeiten]mw.libs.wikieditor = { //<nowiki>
config: function (wikieditor) {
wikieditor.addMySelect('advanced', 'Bewertungen', [['Pro', '# {{pro}} ', '', wikieditor.sig],
['Contra', '# {{contra}} ', '', wikieditor.sig],
['Neutral', '# {{neutral}} ', '', wikieditor.sig]]);
}
}; //</nowiki>
Dieses Beispiel fügt eine Liste mit Vorlagen für Pro, Contra und Neutral ein. Der einfachere Befehl für die gleiche vordefinierte Auswahlliste lautet: wikieditor.addSelect('advanced', 'PCN');
Beispiel 2
[Bearbeiten | Quelltext bearbeiten]mw.libs.wikieditor = { //<nowiki>
config: function (wikieditor) {
wikieditor.addMyButton('advanced', //Position
'https://upload.wikimedia.org/wikipedia/commons/thumb/c/c0/Nuvola_gnome-fs-trash-full.svg/22px-Nuvola_gnome-fs-trash-full.svg.png', //Icon
'SLA', //Tooltip
'{{Löschen}} ', //Text vor dem Cursor
'kein Artikel', //Beispieltext
' --~~~~', //Text hinter dem Cursor
{ownline: true}, //zusätzliche Optionen
wikieditor.addComment('SLA+') //Funktion
);
}
}; //</nowiki>
Dieses Beispiel fügt eine Schaltfläche für Schnelllöschanträge hinzu, steht der Cursor am Textanfang, so wird automatisch eine neue Zeile nach dem Antrag begonnen, die Zusammenfassungszeile wird auch ausgefüllt.
Dokumentation: Einleitung • Teil 1 • Teil 2 • Teil 3 • Teil 4 • Teil 5
Skripte: wikieditor.js • wikieditor.js/basic.js • wikieditor.js/de.js • Benutzer:Schnark/js/wikieditor.js/global.js • Liste von Beispielanwendungen
Alternativen: Beschreibung der Toolbar-API (englisch) • ähnliches, wesentlich kompakteres Skript von Benutzer:Krinkle (englisch) • alte Version des Skripts