Benutzer:PerfektesChaos/Paulis/monobook.js
Erscheinungsbild
Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.
- Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
- Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
- Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
/// 2017-11-21
/// <nowiki>
/* global window: false, jQuery: false, mediaWiki: false */
/* jshint forin: false,
bitwise:true, curly:true, eqeqeq:true, latedef:true,
laxbreak:true,
nocomma:true, strict:true, undef:true, unused:true */
( function ( mw ) {
// Konfiguration von Sonderzeichenauswahl, Benutzer:Paulis
"use strict";
var Dummy = { launch: false };
function fiat( app ) {
// mw.hook für Sonderzeichenauswahl
// app -- Sonderzeichenauswahl-Anwendung
var options = { },
group, panel;
group = [ { start: "{{subst:Hallo}}",
show: "H&W" },
{ start: "{{Inuse|--[[Benutzer:Paulis|Paulis]]}}",
show: "InUse" },
{ vorlage: "Zeile",
init: 5,
fun: app.follower,
show: "Zeile" },
{ vorlage: "Seite",
fun: app.follower,
show: "Seite" },
{ start: "{{Idt}}",
show: "Idt" },
{ start: "<poem>",
suffix: "</poem>",
show: "Poem" },
{ start: "<ref name=\"\">",
suffix: "</ref>",
show: "RefNa" },
{ start: "''",
sample: "Kursiver Text",
suffix: "''",
support: "Kursivschrift",
show: "K",
style: "font-style:italic;" +
// Der Rest würde dann in eine Klasse gehören:
"background: #D0D0D0;" +
"border-color: #E0E0E0 #E0E0E0 #707070 #707070;" +
"border-style: solid;" +
"border-width: 2px;" +
"display: inline-block;" +
"min-width: 1.5em;" +
"text-align: center;" }
];
panel = { selector: "Paulis/Experiment",
support: "Einige neue Sachen",
def: group };
options.defs = { contentmodel: "wikitext",
system: "builtin",
last: false,
create: [ panel ] };
mw.hook( "ext.gadget.menuSwitcher.config" ).fire( options );
} // fiat()
// TEMP ---->
switch ( mw.config.get( "wgAction" ) ) {
case "view":
switch ( mw.config.get( "wgCanonicalSpecialPageName" ) ) {
case "Upload":
Dummy.launch = true;
break;
} // switch wgCanonicalSpecialPageName
break;
case "edit":
case "submit":
case "parsermigration-edit":
Dummy.launch = true;
break;
} // switch wgAction
if ( Dummy.launch ) {
Dummy.follower = function ( apply, event, $at ) {
// UDF für menuSwitcher
// apply -- def
// event -- DOM Event
// $at -- jquery des umgebenden Elements
// Return: string
var got, r, s, sB, sE;
if ( typeof apply.vorlage === "string"
&& apply.vorlage ) {
s = $at.textSelection( "getSelection" );
if ( typeof s === "string" && s ) {
got = /^\s+/.exec( s );
if ( got ) {
sB = got[ 0 ];
s = s.substr( sB.length );
}
got = /\s+$/.exec( s );
if ( got ) {
sE = got[ 0 ];
s = s.substr( 0, s.length - sE.length );
}
} else {
s = false;
}
if ( s ) {
got = /^[1-9][0-9]*$/.exec( s );
if ( got ) {
apply.i = parseInt( got[ 0 ], 10 );
s = apply.i + "";
}
}
if ( ! s ) {
if ( typeof apply.init !== "number" ) {
apply.init = 1;
}
if ( typeof apply.incr !== "number" ) {
apply.incr = apply.init;
}
if ( typeof apply.i === "number" ) {
apply.i += apply.incr;
} else {
apply.i = apply.init;
}
s = apply.i;
}
r = "{{" + apply.vorlage + "|" + s + "}}";
if ( sB ) {
r = sB + r;
}
if ( sE ) {
r = r + sE;
}
} else {
r = "<span class=\"error\">.vorlage undefiniert</span>";
}
return r;
} // Dummy.follower()
mw.hook( "ext.gadget.PaulisDummy.ready" ).fire( Dummy );
}
// <---- TEMP
mw.hook( "ext.gadget.PaulisDummy.ready" ).add( fiat );
}( mediaWiki ) );
/// </nowiki>