Benutzer:PerfektesChaos/js/superscriptMagnifier

JavaScript Gadget – vergrößere Zeichen für Exponentialziffern (und Indizes) – superscript/subscript.

Wenn man Maßinheiten wie m³ oder cm² für Volumina oder Flächen liest, kann es je nach Auswahl der Zeichensätze und Browserkonfiguration schwierig sein, das Zeichen und den Zahlenwert tatsächlich zu identifizieren. Im Allgemeinen lässt sich allerdings die Bedeutung dem Kontext entnehmen, selbst wenn das Zeichen nicht erkannt wurde.

Dieses Werkzeug tauscht die kleinen Zeichen in einer Wiki-Seite gegen eine Variante des normalen Zeichensatzes: m3 und cm2 statt m³ und cm².

Installation Bearbeiten

Folgendem Block in die persönliche common.js etc. einfügen:

mw.loader.load( "https://en.wikipedia.org/w/index.php?title=User:PerfektesChaos/js/superscriptMagnifier/r.js&action=raw&bcache=1&maxage=604800&ctype=text/javascript",
                "text/javascript" );

Nicht angemeldete Benutzer können das Skript mittels Greasemonkey einbinden.

Wirkung Bearbeiten

Welche Seiten werden bearbeitet?
Alle Seiten mit benutzergeschriebenem Wikitext.
Das gilt auch für die Seitenvorschau bei der Quelltextbearbeitung, VisualEditor und LivePreview-Zwischenergebnisse.
Welche Seiten und Darstellungen werden ignoriert?
Spezialseiten, Diffpages, Versionsgeschichte, Seiteninformationen, Medienbetrachter.
Einige Seiten können systematisch ausgenommen werden oder können individuell mit der Option except konfiguriert werden. Diese Dokumentationsseite sollte ausgeschlossen sein, um den Unterschied zu demonstrieren.
Wird die ganze Seite modifiziert?
Nein, nur der Inhaltsbereich.
Überschrift, Portalrahmen mit Navigation und Fußzeilen werden nicht geändert, auch keine Formulare und Bearbeitungsfelder.
Was ist mit vorformatiertem Text?
Bereiche in <code>, <pre> und <syntaxhighlight> werden beibehalten.
HTML Entities werden zurzeit vom Server aufgelöst und sind im HTML-Dokument nicht mehr unterscheidbar. Falls sich das einmal ändern sollte, würden Entities im Quelltext ignoriert.
Werden alle Zeichen vom Typ superscript und subscript vergößert?
Nein, standardmäßig werden nur die häufigsten ANSI-Ziffern ¹²³ ersetzt, um die Verarbeitung zu beschleunigen. Die Unicode-Zeichen sind in der deutschsprachigen Wikipedia nicht erwünscht und sehr selten.
Die Option large dehnt das auf alle Zeichen der üblichen lateinischen Schrift aus; nebst Ziffern usw.
Wenn die begrenzende Option latin abgeschaltet wird, werden auch griechische und asiatische Zeichen eingeschlossen.

Benutzeroptionen Bearbeiten

Die Vorgaben können angepasst werden, und die Dekoration der veränderten Zeichen kann beeinflusst werden.

Konfiguration mittels JavaScript Bearbeiten

In die common.js etc. die folgenden Zeilen einfügen (möglichst vor mw.loader.load, so vorhanden):

if ( typeof mw.superscriptMagnifier !== "object" ) {
   mw.libs.superscriptMagnifier   =  { };
}
mw.libs.superscriptMagnifier.key1 = value1;   // Beispiel

Danach können individuelle Zuweisungen vorgenommen werden.

Key Value Bedeutung
except [ ] Array mit Seitenkennnummern, die nicht analysiert werden sollen.
Default: false – nur intern definiert, etwa einschlägige Hilfeseiten und diese Dokumentationsseite.
lapsus true Markiere Unicode mit class=error.
Damit erscheint ein solches Zeichen in roter Fettschrift und wird von remindErrorMessages aufgelistet.
Die Optionen large und locator werden automatisch gesetzt.
Default: false – keine zusätzliche Fehlerklasse.
large true Schließe Zeichen jenseits von ANSI ein.
Default: false – nur ¹²³ suchen.
latin false Beschränke die Analyse auf Zeichen der lateinischen Schrift.
Default: true – griechische und asiatische Zeichen ignorieren.
locator true Zeige eine Markierung im Seitenfußbereich, wenn es Treffer gab, und statte die Elemente mit class-Selektoren aus.
Default: false – einfach nur vergrößern.
max 0 Maximale Textgröße
Wer einen langsamen Rechner hat und den Eindruck bekommt, dass die Verarbeitung sehr großer Seiten zu lange dauern würde, kann die Analysezeit beschränken.
Der Wert ist die maximal erlaubte Zahl der Zeichen im Inhaltsbereich des HTML-Dokuments.

CSS Bearbeiten

Wenn die Option locator aktiv ist, werden CSS-Selektoren zusammen mit den Elementen generiert. Das kann zum Debugging und für weitere Untersuchungen genutzt werden; unerwünschte Zeichen können detektiert werden.

.superscriptMagnifier
Alle generierten Elemente.
.superscriptMagnifier-ucs
Zeichen jenseits von ANSI.
#superscriptMagnifier-info
Markierung im Seitenfußbereich, wenn es Treffer gab.
.error
Zusätzlich bei Zeichen jenseits von ANSI, wenn lapsus; löst rote Fettschrift aus.

Die folgenden Zeilen können in dein common.css, global.css oder Skin-abhängiges CSS eingefügt werden. Beliebiige Attributwerte mögen zugewiesen werden.

.superscriptMagnifier {
   background: #FF8080;
}

Codes Bearbeiten

Quellcode
ResourceLoader
  • ext.gadget.superscriptMagnifier
  • Dependencies: user
Namensräume
  • Alle außer Spezialseiten.
mw.libs superscriptMagnifier
mw.hook superscriptMagnifier.ready
MediaWiki 1.23