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