Modul:Convert-CH
Die Dokumentation für dieses Modul kann unter Modul:Convert-CH/Doku erstellt werden
-- die ersten beiden Funktionen dienen zum Umwandeln von ß -> ss und zurück.
-- Kann sehr hilfreich sein, damit man beim Erstellen von CH-Schreibweisen
-- mittels (Kopier-)Vorlagen die beiden Buchstaben nicht immer von Hand
-- ändern muss. Beispiel zur Benutzung siehe in [[Benutzer:Udo T./common.js]]
--
-- Die dritte Funktion dient zum Überprüfen, ob ein Wort respektive Eintrag
-- ein "ß" enthält
local export = {}
-- this function enables the module to be called from a template
function export.main(frame)
if type(export[frame.args[1]]) == 'function'
then
return export[frame.args[1]](frame.args[2], frame.args[3])
else
return export[frame.args[1]][frame.args[2]]
end
end
-- diese Funktion wandelt ein "ss" in "ß" um
function export.convert_to_sz(word)
word = mw.ustring.gsub(word, "ss", "ß")
return word
end
-- diese Funktion wandelt ein "ß" in "ss" um
function export.convert_to_ss(word)
word = mw.ustring.gsub(word, "ß", "ss")
return word
end
-- diese Funktion prüft, ob in einem String der
-- Buchstabe "ß" (true) auftaucht oder nicht (false)
function export.check_sz(word)
if (mw.ustring.find(word, "ß") == nil)
then
return false
else
return true
end
end
-- diese neue Funktion wandelt für die Worttrennung
-- von Schweizer Schreibweisen ausgehend von der herkömmlichen um:
-- ein "·ß" wird in "s·s" umgewandelt
-- bei einem "ß·" wird nur das "ß" in "ss" umgewandelt, der Punkt bleibt
-- ansonsten ("ß" ohne Punkt davor o. dahinter)
-- wird ebenfalls "ß" einfach in "ss" umgewandelt
function export.convert_wt_to_ss(word)
if (mw.ustring.find(word, "·ß") == nil)
then
-- "·ß" wurde NICHT gefunden
-- also kann es nur "ß·" oder ein ß ohne einen · sein
-- dann einfach das "ß" in "ss" umwandeln, ein evtl.
-- vorhandener Punkt nach dem ß bleibt unberührt stehen
word = mw.ustring.gsub(word, "ß", "ss")
else
-- es wurde "·ß" gefunden
-- also "·ß" in "s·s" umwandeln
word = mw.ustring.gsub(word, "·ß", "s·s")
-- für den sicherlich seltenen Fall, dass es neben einem "·ß" auch noch
-- ein "ß·" oder "ß" gibt, z. B. "auf gro·ßem Fuß le·ben"
word = mw.ustring.gsub(word, "ß", "ss")
end
return word
end
return export