Saltu al enhavo

Vikipedio:Lua/Moduloj/WLink/de

El Vikipedio, la libera enciklopedio
Ŝablona programado Diskutoj Lua Testoj Subpaĝoj
Modulo Esperanto English Deutsch

Modulo: Dokumentado

WLink – Modul mit Funktionen für Zeichenketten im Zusammenhang mit Wiki-Verlinkungen (Wikilink-Format und URL-Format).

Funktionen für Vorlagen

[redakti fonton]

Alle Funktionen haben genau einen unbenannten Parameter (sinnvollerweise anzugeben). Dieser ist tolerant gegenüber Leerzeichen vor oder nach dem Inhalt. HTML-Entities sind in der Eingabe möglich und werden im Resultat aufgelöst. In der Regel handelt es sich dabei um eine Zeichenkette, in der geklammerte Verlinkungen erwartet werden; dann wird die erste Klammer weiterverarbeitet.

Der Rückgabewert ist eine leere Zeichenkette („nichts“), wenn der Parameterwert die Erwartung nicht erfüllt. Wenn ein Ergebnis vorhanden oder die Abfragebedingung wahr ist, resultiert mindestens ein Zeichen. Das Ergebnis beginnt oder endet nicht mit Leerzeichen.

ansiPercent
Konvertiere URL mittels ANSI-Encoding statt durch UTF-8-Encoding.
Für manche Server mit Software-Format aus dem letzten Jahrhundert benötigt.
Optionaler Zusatzparameter space – Kodierung der Leerzeichen:
  • space=+ – in Query-Komponenten üblich
  • space=_ – wie im Wiki
  • Standard: %20
formatURL
Formatiere eine URL, ein betiteltes Weblink oder schlicht eine Domain.
  • [http://example.org/about Homepage] ergibt [http://example.org/about Homepage]
  • http://example.org/about ergibt [http://example.org/about example.org/about]
  • example.org ergibt [http://example.org/ example.org]
Textzusätze außerhalb dieser Formate werden durchgereicht.
getArticleBase
Ermittle den generischen Seitentitel, ohne Fragment oder Klammerausdruck eines „Klammerlemma“.
Benutze den momentanen Seitentitel, falls nicht angegeben.
getBaseTitle
Ermittle in einer Unterseite das letzte Segment des Seitentitels, ohne Fragment.
getExtension
Ermittle die „Namenserweiterung“ von Mediendateien.
Das Ergebnis wird in Kleinschreibung ohne führenden Punkt dargestellt.
getFile
Ermittle den Dateinamen.
Die Eingabe kann eine geklammerte Verlinkung oder nur ein Dateiname sein. Sie ist nur gültig, wenn sowohl eine zulässige Bezeichnung des Dateinamensraum wie auch eine „Namenserweiterung“ vorhanden ist.
Das Ergebnis ist der Titel der Datei ohne Namensraum.
getFragment
Ermittle das originale (nicht dekodierte) Fragment nach #.
Kein Resultat, wenn Fragment leer oder nicht vorhanden.
getLanguage
Ermittle den Sprachbezeichner des Projekts
getNamespace
Ermittle die Nummer des Namensraums
getPlain
Löse alle Verlinkungen im Text auf und ersetze durch die Linktitel.
getProject
Ermittle den Projektbezeichner (nur innerhalb der Wikifarm) in empfehlenswerter Kurzform
getTarget
Ermittle das erste Linkziel (Wikilink oder URL).
getTargetPage
Ermittle den Seitennamen zur ersten Verlinkung (Seitenname oder URL der Seite)
Identisch mit getTarget, falls kein Fragment.
getTitle
Ermittle den ersten Linktitel (Wikilink oder URL), oder sonst das Linkziel eines Wikilinks.
isBracketedLink
Enthält das eine geklammerte Verlinkung?
isBracketedURL
Enthält das eine geklammerte URL?
isCategorization
Enthält das eine wirksame Kategorisierung?
isExternalLink
Enthält das eine URL?
isInterlanguage
Enthält das ein Interlanguage?
isInterwiki
Enthält das ein Interwiki-Link innerhalb der Wikifarm, einschließlich Interlanguage?
isMedia
Enthält das eine Medieneinbindung?
isTitledLink
Enthält das eine betitelte Verlinkung?
isValidLink
Enthält das eine Verlinkung?
isWikilink
Enthält das ein Wikilink?
failsafe
Versionsbezeichnung: 2019-11-10
Optionaler Zusatzparameter 1 – Mindestversionsbezeichnung
Rückgabewert: Leer, falls Mindestversionsbezeichnung nicht erfüllt

Beispiele (Testseite)

[redakti fonton]

Eine Testseite illustriert praktische Beispiele.

Funktionen für Lua-Module

[redakti fonton]

Alle oben dokumentierten Funktionen können auch über require() in andere Module eingebunden werden:

local lucky, WLink = pcall( require, "Module:WLink" )
if type( WLink ) == "table" then
    WLink = WLink.WLink()
else
    -- Fehlerfall; WLink enthält Fehlermeldung
    return "<span class=\"error\">" .. WLink .. "</span>"
end

Danach stehen zur Verfügung:

  • WLink.ansiPercent(story, space)
  • WLink.formatURL()
  • WLink.getArticleBase()
  • WLink.getBaseTitle()
  • WLink.getExtension()
  • WLink.getFile()
  • WLink.getFragment()
    false, wenn nicht vorhanden; aber "" wenn Fragment leer.
    Kein # am Anfang des Ergebnisses.
  • WLink.getLanguage()
  • WLink.getNamespace()
  • WLink.getPlain()
  • WLink.getProject()
  • WLink.getTarget()
  • WLink.getTargetPage()
  • WLink.getTitle()
  • WLink.isBracketedLink()
  • WLink.isBracketedURL()
  • WLink.isCategorization()
  • WLink.isExternalLink()
  • WLink.isInterlanguage()
  • WLink.isInterwiki()
  • WLink.isMedia()
  • WLink.isTitledLink()
  • WLink.isValidLink()
  • WLink.isWeblink()
  • WLink.isWikilink()
  • WLink.wikilink()
    Liefert table mit den Komponenten des Wikilinks, sonst false.
    Komponenten können sein, falls angegeben:
    • lead – Führender Doppelpunkt vorhanden und erforderlich, falls true
    • project – Projekt-Interwiki (standardisierte Abkürzung)
    • lang – Bekannte Sprachversion (Kleinbuchstaben)
    • ns – Nummer des Namensraums
    • space – Standardname des Namensraums
    • title – Seitentitel wie vorgefunden; mindestens eine leere Zeichenkette
  • WLink.failsafe(atleast)
    1. atleast
      optional
      nil oder Mindestversion
    Rückgabewert: string oder false

Im Erfolgsfall geben die WLink.get*() eine Zeichenkette zurück, die WLink.is*() den Wert true (sofern nicht anders angegeben); bei Misserfolg jeweils false.

Verwendung

[redakti fonton]

Allgemeine Bibliothek; nicht eingegrenzt.

Abhängigkeiten

[redakti fonton]

Siehe auch

[redakti fonton]
  • URLutil – allgemeine Funktionalitäten speziell für URL.