Nicht angemeldeter Benutzer - Bearbeiten von Seiten ist nur als angemeldeter Benutzer möglich.
Änderungen
Zur Navigation springen
Zur Suche springen
Zeile 1:
Zeile 1:
− +
Zeile 62:
Zeile 62:
+
+
+
+
+
+
+
+
+
+
+
+
Zeile 1.060:
Zeile 1.072:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Zeile 1.088:
Zeile 1.245:
− +
− s = Data.tree.format:lower( Data.tree.format )+
− +
− style = "i"+
− else+
− s = mw.text.encode( s ):gsub( "\n", "\n" ) +
− style = "code"+
− -- TODO Validate+
+
+
− mw.log(s)
− show = "Format"
− if Config.supportFormat then
− show = string.format( "[[%s|%s]]",
− Config.supportFormat, show )
− end
− r:node( mw.html.create( "p" )
− :wikitext( show .. ": " )
− :node( mw.html.create( style )
− :wikitext( s ) ) )
− +
Zeile 1.136:
Zeile 1.285:
− +
Modul:TemplateData (Quelltext anzeigen)
Version vom 11. Februar 2018, 17:38 Uhr
, 17:38, 11. Feb. 20182018-02-11
local TemplateData = { suite = "TemplateData",
local TemplateData = { suite = "TemplateData",
serial = "2018-02-10T1845",
serial = "2018-02-11",
item = 46997995 }
item = 46997995 }
--[=[
--[=[
}
}
local Permit = {
local Permit = {
builder = { align = "block",
block = "block",
compressed = "block",
dense = "block",
grouped = "inline",
half = "inline",
indent = "block",
inline = "inline",
last = "block",
lead = "block",
newlines = "block",
spaced = "inline" },
colors = { tableheadbg = "B3B7FF",
colors = { tableheadbg = "B3B7FF",
required = "EAF3FF",
required = "EAF3FF",
local function format()
local function format()
-- Build formatted element
-- Returns <inline>
local source = Data.tree.format:lower()
local r, s
if source == "inline" or source == "block" then
r = mw.html.create( "i" )
:wikitext( source )
else
local code
if source:find( "|", 1, true ) then
local scan = "^[\n ]*%{%{[\n _]*|[\n _]*=[\n _]*%}%}[\n ]*$"
if source:match( scan, 1, true ) then
code = source
else
source = mw.text.nowiki( source ):gsub( "\n", "\n" )
s = tostring( mw.html.create( "code" )
:wikitext( source ) )
Fault( "Invalid format " .. s )
source = false
end
else
local words = mw.text.split( source, "%s+" )
local show, start, unknown
for i = 1, #words do
s = words[ i ]
if i == 1 then
start = s
end
if Permit.builder[ s ] == start then
Permit.builder[ s ] = true
else
if unknown then
unknown = string.format( "%s %s", unknown, s )
else
unknown = s
end
end
end -- i = 1, #words
if unknown then
s = tostring( mw.html.create( "code" )
:css( "white-space", "nowrap" )
:wikitext( s ) )
Fault( "Unknown/misplaced format keyword " .. s )
source = false
start = false
end
if start == "inline" then
if Permit.builder.half == true then
show = "inline half"
code = "{{_ |_=_}}"
elseif Permit.builder.grouped == true then
show = "inline grouped"
code = "{{_ | _=_ }}"
elseif Permit.builder.spaced == true then
show = "inline spaced"
code = "{{_ | _ = _ }}"
end
elseif start == "block" then
local space = " " -- amid "|" and name
local spaced = " " -- preceding "="
local spacer = " " -- following "="
local suffix = "N" -- closing "}}" on new line
show = "block"
if Permit.builder.indent == true then
start = " "
show = "block indent"
else
start = ""
end
if Permit.builder.compressed == true then
space = ""
spaced = ""
spacer = ""
show = show .. " compressed"
if Permit.builder.last == true then
show = show .. " last"
else
suffix = ""
end
else
if Permit.builder.lead == true then
show = show .. " lead"
else
space = ""
end
if Permit.builder.align == true then
if type( Data.got ) == "table" and
type( Data.got.params ) == "table" then
local n = 0
for k, v in pairs( Data.got.params ) do
if type( v ) == "table" and
v.deprecated and
type( k ) == "string" and
#k > n then
n = #k
end
end -- for k, v
if n > 1 then
spaced = string.rep( "_", n ) .. " "
end
end
show = show .. " align"
elseif Permit.builder.dense == true then
spaced = ""
spacer = ""
show = show .. " dense"
end
end
if Permit.builder.last == true then
suffix = spacer
show = show .. " last"
end
code = string.format( "N{{_N%s|%s_%s=%s_%s}}N",
start,
space,
spaced,
spacer,
suffix )
end
if show then
r = mw.html.create( "span" )
:wikitext( show )
end
end
if code then
source = code:gsub( "N", "\n" )
code = mw.text.nowiki( code ):gsub( "N", "\n" )
code = mw.html.create( "code" )
:wikitext( code )
if r then
r = mw.html.create( "span" )
:node( r )
:node( code )
else
r = code
end
end
end
Data.tree.format = source
return r
end -- format()
local function formatter()
-- Build presented documentation
-- Build presented documentation
-- Returns <div>
-- Returns <div>
end
end
if Data.tree and Data.tree.format then
if Data.tree and Data.tree.format then
local e, show, style
local e = format()
if e then
if s == "inline" or s == "block" then
local show = "Format"
if Config.supportFormat then
show = string.format( "[[%s|%s]]",
Config.supportFormat, show )
end
r:node( mw.html.create( "p" )
:wikitext( show .. ": " )
:node( e ) )
end
end
end
end
return r
return r
end -- format()
end -- formatter()
end
end
end
end
Data.div:node( format() )
Data.div:node( formatter() )
if not Data.lazy then
if not Data.lazy then
Data.slim = flush()
Data.slim = flush()