Zum Inhalt springen

Modul:Convert-CH

Aus Wiktionary, dem freien Wörterbuch

Die Dokumentation für dieses Modul kann unterModul:Convert-CH/Dokuerstellt 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

localexport={}

-- this function enables the module to be called from a template
functionexport.main(frame)
iftype(export[frame.args[1]])=='function'
then
returnexport[frame.args[1]](frame.args[2],frame.args[3])
else
returnexport[frame.args[1]][frame.args[2]]
end
end

-- diese Funktion wandelt ein "ss" in "ß" um
functionexport.convert_to_sz(word)
word=mw.ustring.gsub(word,"ss","ß")

returnword
end

-- diese Funktion wandelt ein "ß" in "ss" um
functionexport.convert_to_ss(word)
word=mw.ustring.gsub(word,"ß","ss")

returnword
end

-- diese Funktion prüft, ob in einem String der
-- Buchstabe "ß" (true) auftaucht oder nicht (false)
functionexport.check_sz(word)
if(mw.ustring.find(word,"ß")==nil)
then
returnfalse
else
returntrue
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
functionexport.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
returnword
end

returnexport