Ugrás a tartalomhoz

„Modul:Kladogram” változatai közötti eltérés

Innen: MKOE wiki
Nincs szerkesztési összefoglaló
Nincs szerkesztési összefoglaló
4. sor: 4. sor:
     local text = frame.args[1] or frame:getParent().args[1] or ""
     local text = frame.args[1] or frame:getParent().args[1] or ""
      
      
     -- Eltávolítjuk a felesleges soremeléseket és szóközöket a szöveg legelejéről és legvégéről
     -- Takarítás a kód elejéről és végéről
     text = text:gsub("^%s+", ""):gsub("%s+$", "")
     text = text:gsub("^%s+", ""):gsub("%s+$", "")
      
      
     -- Minden sor eleji normál szóközt lecserélünk HTML szóköz entitásra,
     -- Sor eleji szóközök maszkolása
    -- így a parser nem fogja bekezdéssé vagy pre blokká alakítani.
     local processed_text = text:gsub("\n ", "\n ")
     local processed_text = text:gsub("\n ", "\n ")
     if processed_text:sub(1,1) == " " then
     if processed_text:sub(1,1) == " " then
14. sor: 13. sor:
     end
     end
      
      
     return '<div style="font-family: monospace; font-size: 0.95em; line-height: 1.4; background-color: #f8f9fa; border: 1px solid #eaecf0; border-left: 4px solid #36c; padding: 1em; margin: 1em 0; overflow-x: auto; white-space: pre-wrap;">' .. processed_text .. '</div>'
    -- A trükk: Nem sima stringként adjuk vissza, hanem egy zárt kiterjesztés-tagként,
    -- így a MediaWiki parser utólag teljesen békén hagyja a belsejét.
     return frame:extensionTag('div', processed_text, {
        style = "font-family: monospace; font-size: 0.95em; line-height: 1.4; background-color: #f8f9fa; border: 1px solid #eaecf0; border-left: 4px solid #36c; padding: 1em; margin: 1em 0; overflow-x: auto; white-space: pre-wrap;"
    })
end
end


return p
return p

A lap 2026. június 20., 10:45-kori változata

A modult a Modul:Kladogram/doc lapon tudod dokumentálni

local p = {}

function p.render(frame)
    local text = frame.args[1] or frame:getParent().args[1] or ""
    
    -- Takarítás a kód elejéről és végéről
    text = text:gsub("^%s+", ""):gsub("%s+$", "")
    
    -- Sor eleji szóközök maszkolása
    local processed_text = text:gsub("\n ", "\n&#x20;")
    if processed_text:sub(1,1) == " " then
        processed_text = "&#x20;" .. processed_text:sub(2)
    end
    
    -- A trükk: Nem sima stringként adjuk vissza, hanem egy zárt kiterjesztés-tagként,
    -- így a MediaWiki parser utólag teljesen békén hagyja a belsejét.
    return frame:extensionTag('div', processed_text, {
        style = "font-family: monospace; font-size: 0.95em; line-height: 1.4; background-color: #f8f9fa; border: 1px solid #eaecf0; border-left: 4px solid #36c; padding: 1em; margin: 1em 0; overflow-x: auto; white-space: pre-wrap;"
    })
end

return p