Die Linter-Erweiterung erkennt Wikitext-Muster, die problematisch sind und korrigiert oder entfernt werden sollten. Diese Seite zur Validierung gibt einen Überblick über die derzeit durch das Lintwerkzeug erkannten Muster und erklärt, welche Probleme auftreten können oder wie die Anpassung erfolgen sollte.

Diese Funktion dient dazu sicherzustellen, dass Seiteninhalte langfristig wie beabsichtigt gerendert und wiedergegeben werden (beispielsweise durch Software wie RemexHTML oder Parsoid).

Die Spezialseite Lint-Fehler gruppiert die Probleme nach Typen.

Das Angebot dieser Mitte 2017 eingeführten Erweiterung ist als Work In Progress eingestuft und derzeit (Stand Juni 2017) noch in der Entwicklungsphase.

Hinweise zur Korrektur

Bearbeiten

Namensräume und relevante Projektseiten

Bearbeiten

Nur relevante Seiten sind zu bearbeiten. Das sind:

  • Artikel (namespace=0)
  • Aktuelle Projekt- und Portalseiten.
  • Nur vom jeweiligen Benutzer werden Benutzerseiten korrigiert.

Nicht bearbeitet werden:

  • Archivierte Seiten.
  • Diskussionsseiten bzw. analoge Plattformen.

Falsche Fehler

Bearbeiten

Die in den einzelnen Linter-Kategorien gelisteten Seiten können eventuell auch sogenannte „false-positives“ enthalten, also Seiten, auf denen irrtümlich Probleme erkannt wurden.

Nach der Freischaltung hatten sich eine Reihe praktischer Schwierigkeiten ergeben.

Beschreibung der Liste

Bearbeiten
Seitentitel Lint-Fehler je nach Liste Durch eine Vorlage?
Lemma (bearbeiten | Versionsgeschichte) BODY > SMALL Vorlage:Vorlagename
Lemma (bearbeiten | Versionsgeschichte) s ---
Lemma (bearbeiten | Versionsgeschichte) small Ausgabe nicht von einer einzelnen Vorlage
  • Lemma ist der Name der Seite, die einen Fehler enthält. Klickt man in der angezeigten Liste auf bearbeiten so wird man in der Quelltextbearbeitung der Seite direkt zur fehlerbehafteten Zeile weitergeleitet, sofern dies dort lokalisierbar ist.
  • Der Klick auf Versionsgeschichte zeigt den Verlauf der Versionen der Seite an.
  • Falls möglich wird in der mittleren Spalte ein Hinweis auf die Art des Fehlers ausgegeben. Beispielsweise der Name des betroffenen Tags oder unbekannten Parameters
  • Wurde der Fehler möglicherweise durch eine direkt eingebundene Vorlage ausgelöst, so ist in der rechten Spalte diese Vorlage verlinkt.
    • Das Problem könnte in einem an diese Vorlage übergebenen Parameterwert liegen.
    • Oder die Kombination dieser Parameterwerte mit der Vorlagenprogrammierung könnte Schwierigkeiten machen.
    • Die Programmierung der Vorlage kann generell ungeschickt sein.

Die Listen können zur Abfrage auf einzelne Namensräume eingestellt werden, die Auswahl erfolgt über ein Dropdownmenü. Anschließend auf die Schaltfläche Speichern klicken, um die Liste zu aktualisieren. Ober- und unterhalb der Liste sind Schaltflächen, mit denen vor und zurück geblättert werden kann.

Quelltextexpansion

Bearbeiten

Wenn eine Vorlage beteiligt ist, lässt sich aus dem Quelltext der dargestellten Seite nicht entnehmen, wie der resultierende Wikitext schließlich aussieht.

Es gibt zwei Möglichkeiten, sich den analysierten Text anzusehen, um die Fehlerwirkung zu verstehen:

  1. Über die Spezialseite Vorlagen expandieren
    • Der verdächtige Quelltext wird in das Eingabefeld kopiert.
    • Auf die Schaltfläche Vorlage expandieren klicken.
    • Im Feld „Ergebnis“ erscheint der ausgewertete Wikitext.
  2. Über die Wikipedia:Spielwiese:
    • {{#tag:syntaxhighlight|{{: Seitenname }}}}
      als Quelltext angeben.
    • Seitenvorschau ansehen.
    • Der ausgewertete Wikitext von Seitenname erscheint.

Problemtypen

Bearbeiten

Es folgt die Beschreibung der einzelnen Abfragen; ggf. mit einem Codebeispiel.

Tabellen-Tag, das gelöscht werden soll

Bearbeiten

Diese Seiten haben Tabellen-Tags, die gelöscht werden sollen.

Beispiel (Anmerkungen farblich hervorgehoben):

vorgefundene Syntax
{| ← <Start-tag Tabelle>
| Zellentext1
|-
{| ← <Start-tag Tabelle 2 ="unnötige Verschachtelung entfernen">
|- ← <Trenner Tabelle 2>
| Zellentext2
|} ← <End-tag Tabelle 2 ="unnötige Verschachtelung entfernen">
|} ← <End-tag Tabelle>
bereinigte Syntax
{| ← <Start-tag Tabelle>
|-
| Zellentext1
|-
| Zellentext2
|} ← <End-tag Tabelle>

  Info: Einzelnstehende schließende Tabellentags |} können im Seitenquelltext durch Vorlageneinbindungen entstehen, die oberhalb nicht sichtbar ein öffnendes Tabellentag {| einbinden. Es ist immer zu prüfen, ob die Syntax tatsächlich überflüssig ist.

Workaround für einen Absatzumbruchfehler

Bearbeiten

Diese Seiten haben einen Absatzumbruchfehler, der umgangen werden könnte. Es geht um die Formatierung mit den Zeilenumbruch verhindernde nowrap-Konstrukte.

Drei Ursachen sind möglich:

  1. Die ohne Zeilenumbruch darzustellende Textpassage enthält bereits selbst einen Zeilenumbruch.
    • Zeilenumbruch ais dem Text entfernen.
  2. Ein Element <span style="white-space:nowrap"> enthält ein Block-Element.
    • Ggf. den Zeilenumbruch innerhalb des Block-Elements verhindern.
  3. Eine Tabellenzelle beginnt mit der fraglichen Textpassage oder besteht nur daraus.
    • Gesamte Tabellenzelle mit style="white-space:nowrap" deklarieren.
    • Ggf. <nowiki /> voranstellen.

Die Vorlage:nowrap kann ebenfalls am Problem beteiligt sein.

Selbstschließendes Tag

Bearbeiten

Diese Seiten enthalten selbstschließende Tags. Tags, die beispielsweise der Formatierung dienen werden wie Klammern um den jeweiligen Abschnitt gelegt. Sie bestehen aus einem öffnenden und einem schließenden Tagelement <tag>…</tag>. Sie dürfen nicht wie ein unary-Tag selbstschließend verwendet werden.

Beispiele:

vorgefundene Syntax
<b>Inhalt<b/>
<span>Inhalt<span/>
</div/>
<div style="clear:both;" />
<s>Inhalt<s/>
bereinigte Syntax
'''Inhalt'''
<span>Inhalt</span> oder </span>
</div>
<div style="clear:both;"></div>
<s>Inhalt</s>

Fehlerhafte Dateioption

Bearbeiten

Diese Seiten haben Dateien mit fehlerhaften Optionen. So können beispielsweise Bildparameter doppelt, falsch benannt, unbekannt oder ein Pipe-Symbol | zu viel vorhanden sein.

Beispiele:

vorgefundene Syntax
[[Datei:Yellow card.svg|mini||Gelbe Karte]] ← Pipe-Symbol doppelt
[[Datei:Yellow card.svg|mini|mini|Gelbe Karte]] ← mini doppelt
[[Datei:Yellow card.svg|thumb|mini|Gelbe Karte]] ← thumb = mini
[[Datei:Yellow card.svg|mini|linkss|Gelbe Karte]] ← linkss „s“ doppelt
[[Datei:Yellow card.svg|mini|links|rechts|Gelbe Karte]] ← „links“ und „rechts“ widersprechen sich.
[[Datei:Yellow card.svg|mini|rahmenlos|Gelbe Karte]] ← „mini“ und „rahmenlos“ widersprechen sich.
[[Datei:Yellow card.svg|mini|links|hochkant|0,6|Gelbe Karte]] ← Parameter hochkant falsch
bereinigte Syntax
[[Datei:Yellow card.svg|mini|Gelbe Karte]]
[[Datei:Yellow card.svg|mini|links|Gelbe Karte]]
[[Datei:Yellow card.svg|rahmenlos|Gelbe Karte]]
[[Datei:Yellow card.svg|mini|links|hochkant=0.6|Gelbe Karte]]

Falsch verschachtelter Inhalt

Bearbeiten

Diese Seiten haben falsch verschachtelte Inhalte.

Beispiel:
Der Inhalt befindet sich in einem nicht darstellbaren Bereich der Tabellenstruktur und kann so nicht innerhalb der Tabelle ausgegeben werden. In diesem Beispiel stünde der Text oberhalb der Tabelle. Möglicherweise fehlt ein Element für die Überschrift |+, eine Tabellenzellenzuweisung | oder die Kopfzeilensyntax !.

vorgefundene Syntax Ausgabe
{| class="wikitable"
|-
Textfragment
|-
| Zelleninhalt
|-
| Zelleninhalt
|}

Textfragment

Zelleninhalt
Zelleninhalt
bereinigte Syntax Ausgabe
{| class="wikitable"
|-
| Textfragment
|-
| Zelleninhalt
|-
| Zelleninhalt
|}
Textfragment
Zelleninhalt
Zelleninhalt

Falsch verschachtelte Tags, die ordnungsgemäß verschachtelt werden sollten.

Bearbeiten

Diese Seiten haben falsch verschachtelte Tags, die korrigiert werden könnten.

Beispiele:

vorgefundene Syntax Ausgabe
''' fett '' Text ''' kursiv ''

* a
* b <small>(Anmerkung)
* c (Anmerkung)</small>
* d

<s>durch und <u>unterstrichen</s></u>

fett Text kursiv

  • a
  • b (Anmerkung)
  • c (Anmerkung)
  • d

durch und unterstrichen

bereinigte Syntax Ausgabe
'''fett''' Text ''kursiv ''

* a
* b <small>(Anmerkung)</small>
* c <small>(Anmerkung)</small>
* d

<s>durch und <u>unterstrichen</u></s>

fett Text kursiv

  • a
  • b (Anmerkung)
  • c (Anmerkung)
  • d

durch und unterstrichen

Fehlendes End-Tag

Bearbeiten

Diese Seiten haben fehlende End-Tags.

Beispiel (Anmerkungen farblich hervorgehoben):

vorgefundene Syntax
<small>Text ← <Info ein ="schließendes Tag fehlt">
<small>Text<small><Info Slash =" / fehlt im schließenden Tag">
bereinigte Syntax
<small>Text</small>

Ignoriertes Tag

Bearbeiten

Diese Seiten haben ignorierte Tags.

Beispiel (Anmerkung farblich hervorgehoben):

vorgefundene Syntax
Text</small><Info ein ="öffnendes Tag fehlt">
bereinigte Syntax
<small>Text</small>

Veraltetes HTML-Tag

Bearbeiten

Diese Seiten verwenden veraltete HTML-Tags.

Beispiele:
Als „obsolet“ oder „veraltet“ eingestufte Tags sind in der Tabelle gelistet.

Tag Ersatz im Artikelbestand Funktion
<font>…</font> <span style="…"> immer entfernen oder ersetzten Schrifteigenschaften zuweisen
<center>…</center> style="text-align:center;"
class="centered"
class="center"
möglichst ersetzen Schrift, Tabellen oder Medien zentriert anordnen siehe Hilfe:Textgestaltung/Zentrieren
<big>…</big> <style="font-size:larger;"> ersetzen oder entfernen Text vergrößern[1]
<strike>…</strike> <s>…</s> möglichst entfernen Text durchstreichen[1]
<tt>…</tt> <code>…</code>
<code style="border:0; background:#FFFFFF;">…</code>
<syntaxhighlight lang="text">…</syntaxhighlight>
gelegentlich ersetzen Einzelne Worte oder einen Textblock in Schreibmaschinenschrift darstellen
  1. a b nicht im Artikel verwenden

Weitere Informationen

Bearbeiten
MediaWiki: Help:Extension:Linter – Technische Informationen (englisch)Vorlage:MediaWiki – Unzulässiger Parameter 3=, jetzt suffix=

Vorlage:Phabricator