| Jewiki unterstützen. Jewiki, die größte Online-Enzyklopädie zum Judentum.
Helfen Sie Jewiki mit einer kleinen oder auch größeren Spende. Einmalig oder regelmäßig, damit die Zukunft von Jewiki gesichert bleibt ... Vielen Dank für Ihr Engagement! (→ Spendenkonten) |
How to read Jewiki in your desired language · Comment lire Jewiki dans votre langue préférée · Cómo leer Jewiki en su idioma preferido · בשפה הרצויה Jewiki כיצד לקרוא · Как читать Jewiki на предпочитаемом вами языке · كيف تقرأ Jewiki باللغة التي تريدها · Como ler o Jewiki na sua língua preferida |
Modul:Vorlage:Vers
Zur Navigation springen
Zur Suche springen
-- Export local p = { }
function p.uc_html(c)
return "&#x" .. mw.ustring.format("%04x;", mw.ustring.codepoint(c))
end
function p.special_escape(c)
r, n = mw.ustring.gsub(c, "[a-zA-Z]", {
["a"] = "○"; -- äoilische Basis u. unbestimmte Silbe
["b"] = "̆"; -- Breve
["B"] = "⏜"; -- Brücke
["E"] = "└─┴─┘"; -- 5 Mora
["f"] = "ˌ"; -- Versfuß
["F"] = "└───┘"; -- 4 Mora = ganze Note
["G"] = "└──╴"; -- 3 Mora = 3/4 Note
["h"] = " ́"; -- Haupthebung
["H"] = "──"; -- 2 Mora = halbe Note
["i"] = "◠"; -- Indifferenz
["I"] = "◠̣"; -- Indifferenz (alternativ)
["k"] = "◡"; -- Kürze oder Länge
["l"] = "◡"; -- Länge oder Kürze
["m"] = "̄"; -- Macron
["M"] = "͞"; -- doppelter Macron
["n"] = " ̀"; -- Nebenhebung
["o"] = "(◡)"; -- optionale kurze Silbe
["s"] = "⫽"; -- Strophenende
["u"] = " "; -- unbetont (Platzhalter für Betonungszeichen)
["v"] = "/"; -- Versende
["w"] = "¦"; -- häufiges Wortende
-- [""] = ""; --
})
if n ~= 0 then return r end
return p.uc_html(c)
end
function p.do_convert (str)
str,_ = mw.ustring.gsub(str, "\\([^a-zA-Z])", p.uc_html)
str,_ = mw.ustring.gsub(str, "!!", " ‖ "); -- THIN SPACE + DOUBLE VERTICAL LINE + THIN SPACE
str,_ = mw.ustring.gsub(str, ".", {
["/"] = "—"; -- EM DASH
["-"] = "◡"; -- LOWER HALF CIRCLE
["'"] = "́"; -- COMBINING ACUTE ACCENT
["~"] = "̀"; -- COMBINING GRAVE ACCENT
["_"] = "̱"; -- COMBINING MACRON BELOW
-- ["^"] = "∧"; -- LOGICAL AND
["\n"] = "
\n"; -- Line break + new line
["!"] = " | "; -- THIN SPACE + VERTICAL BAR + THIN SPACE
})
str,_ = mw.ustring.gsub(str, "%%", "×"); -- MULTIPLICATION SIGN
str,_ = mw.ustring.gsub(str, "[§$+*]", {
["§"] = "◡◡";
["$"] = "◡◡";
["+"] = "◡";
["*"] = "◠";
})
str,_ = mw.ustring.gsub(str, "\\([a-zA-Z])", p.special_escape)
return str
end
function p.convert (frame)
local str = frame.args[1] return p.do_convert(str)
end
return p