Benutzer:PerfektesChaos/js/prettyPageHeading
JavaScript Gadget – stellt bei Unterseiten und außerhalb des ANR den Seitentitel hübscher dar, und verlinkt Oberseiten in allen Lebenslagen.
- Optische Lücken werden zwischen den Schrägstrichen
/
und nach dem:
der Namensraumbezeichnung eingefügt.
Kopieren und Einfügen wird nicht beeinflusst; der Seitenname kann wie immer übernommen werden.
- Im ANR (bei den Lemmata enzyklopädischer Artikel) bleibt der Seitentitel unverändert.
- Auf Seiten mit komplexem SEITENTITEL wird das angegebene Format beibehalten.
- Auch im Bearbeitungsmodus, Versionsgeschichte und bei Seiteninformationen können Verlinkungen auf Oberseiten generiert werden.
Einbindung
[Bearbeiten | Quelltext bearbeiten]- Wenn das Projekt dieses Gadget bereits registriert haben sollte, genügt ein Häkchen auf der Seite Einstellungen („Helferlein“).
- Sonst wären die folgenden Zeilen in die persönliche common.js, global.js etc. einzufügen:
mw.loader.load( "https://en.wikipedia.org/w/index.php?title=User:PerfektesChaos/js/prettyPageHeading/r.js&action=raw&bcache=1&maxage=604800&ctype=text/javascript",
"text/javascript" );
Pfadkomponenten verlinken
[Bearbeiten | Quelltext bearbeiten]In der Seitenansicht einer Seite mit Oberseiten werden die existierenden Oberseiten verlinkt, indem links oben von der MediaWiki-Software in kleiner Schrift die einzelnen Komponenten angezeigt werden.
In allen anderen Darstellungen (Bearbeitungsmodus, Versionsgeschichte, Seiteninformationen) werden von der MediaWiki-Software keine derartigen Links dargestellt.
Mit der Option .link = true;
in JavaScript werden die mutmaßlichen Oberseiten verlinkt, wenn nicht im ANR, und die kleine Navigationsanzeige verschwindet im Gegenzug.
Benutzeroptionen
[Bearbeiten | Quelltext bearbeiten].link = true;
muss mittels JavaScript definiert werden.
Standardmäßig beträgt der eingefügte Abstand jeweils 0.25em
(25 % Breite eines M oder Zeilenhöhe) und kann auf zwei Arten konfiguriert werden.
CSS
[Bearbeiten | Quelltext bearbeiten]Die folgenden Zeilen können in dein common.css, global.css oder Skin-abhängiges CSS eingefügt werden. Jeder Attributwert kann angegeben werden.
.prettyPageHeading {
margin-left: 0.2em ! important;
}
JavaScript
[Bearbeiten | Quelltext bearbeiten]Ein anderer Weg ist die direkte Beeinflussung der Code-Generierung wie folgt:
if ( typeof mw.libs.prettyPageHeading !== "object" ) {
mw.libs.prettyPageHeading = { };
}
mw.libs.prettyPageHeading.key1 = value1; // example
mw.libs.prettyPageHeading.link = true;
mw.libs.prettyPageHeading.shift = "0.2em";
Dies sollte auf der common.js, global.js oder Skin-abhängigem JS stehen, und zwar möglichst vor dem Aufruf mw.loader.load()
wie im Abschnitt „Einbindung“ beschrieben.
Key | Value | Bedeutung |
---|---|---|
link
|
true
|
Oberseiten verlinken. Default: false – Komponenten werden nicht verlinkt.
|
shift
|
"0em"
|
Breite des Abstands als CSS-Längenangabe. Default: 0.25em
|
Code und Stammseite
[Bearbeiten | Quelltext bearbeiten]Die Stammseite ist en:User:PerfektesChaos/js/prettyPageHeading mit:
Quellcode |
|
ResourceLoader |
|
Namensraum |
|
mw.libs
|
prettyPageHeading
|
Testprozedur zur Prüfung auf Erfüllung der Grundfunktionalität; auch als Tutorial für Menschen, die mit den Fingern lernen.