Benutzer:PerfektesChaos/js/WikiSyntaxTextMod/tech/object

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

WikiSyntaxTextModTechnische Interna → Objektstruktur

Anwendungsobjekt

Die gesamte WSTM-Anwendung ist in einem Objekt untergebracht, ohne vermeidbare globale Variablen einzusetzen.

Alle Bestandteile sind offen. Gleichwohl empfiehlt es sich für Benutzer nicht, in Strukturen einzugreifen, sofern dies nicht ausdrücklich angeboten wird.

Das Anwendungsobjekt wird mittels mw.libs.WikiSyntaxTextMod als MW-Extension angedockt.

Komponenten[Bearbeiten | Quelltext bearbeiten]

Das Anwendungsobjekt ist wie folgt strukturiert:

api
API – Programmierschnittstelle
Für Benutzer aufrufbare Funktionen auf „Hauptprogramm“-Ebene
(Kopfmodul, M, [w])
bb
Interne Bausteine zur Verwaltung des Quellcodes
config
Benutzerkonfiguration und Optionen
(extern)
debugging
Interne Erprobung; Sichtbarkeit von Diagnose-Meldungen
(extern)
errors
Fehlermeldungen
Für Benutzer auslesbar
(Kopfmodul, M)
g
Globale Daten; Projekt-Konfiguration und Zeichenketten
(Kopfmodul, M)
hooks
Projekt-spezifische Anpassungen
(L)
ia
Interaktive Umgebung (GUI); editform
(Kopfmodul)
lang
Sprach- und Projekt-Unterstützung; Lokalisierung
(L, M)
main
„Hauptprogramm“-Ebene
Verwaltung des Ablaufs; Aktualisierung der Module
(Kopfmodul, M)
mod
Interne Abbildung benutzerdefinierter Ersetzungen
(M)
o
Eigenständige Objekte
(O)
str
Problemunabhängige Handhabung von Zeichenketten
(S)
text
Gesamter Wikitext der Seite als WikiTom
type
Zeichenkette "WikiSyntaxTextMod"
(Kopfmodul)
util
Problemunabhängige Funktionen
  • DNB, DOI, ISBN, ISSN, LCCN
  • Bibliotheksfunktionen für JavaScript
(U)
vsn
Zeichenkette mit Versionsnummer
(Kopfmodul)
w
Wikisyntax
w.chr
Zeichencodes (character)
(C)
w.elem
Verschiedene Elemente
(E)
w.img
Dateieinbindung (image)
(I)
w.link
Verlinkung (href)
(H)
w.tags
Tags (XML)
(X)
w.template
Vorlagen (template)
(T)

Code[Bearbeiten | Quelltext bearbeiten]

en:User:PerfektesChaos/js/WikiSyntaxTextMod/tech

34.000 LoC bei 1,1 MB (400 kB minimiert zur Benutzung)