Mòdul:ko-general
A continuació es mostra la documentació transclosa de la subpàgina /ús. [salta a la caixa de codi]
Aquest mòdul proporciona funcions generals pel coreà.
local p = {}
local gsub = mw.ustring.gsub
local match = mw.ustring.match
function p.decompose_jamo(syllable)
if not match(syllable, "[가-힣]") then
if match(syllable, "[ᄀ-ᄒ]") then return { initial = syllable, vowel = "Ø", final = "Ø" }
elseif match(syllable, "[ᅡ-ᅵ]") then return { initial = "Ø", vowel = syllable, final = "Ø" }
elseif match(syllable, "[ᆨ-ᇂ]") then return { initial = "Ø", vowel = "Ø", final = syllable }
elseif match(syllable, "[ㄱ-ㆎ]") then return { initial = "Ø", vowel = "Ø", final = syllable }
else return { initial = "Ø", vowel = " ", final = "X" } end
end
local char = mw.ustring.char
local cp = mw.ustring.codepoint(syllable)
if not cp then return { "", "", "" } end
local relative_cp = cp - 0xAC00
local jongseong = relative_cp % 28
local jungseong = math.floor((relative_cp % 588) / 28)
local choseong = math.floor(relative_cp / 588)
choseong, jungseong, jongseong =
char(0x1100 + choseong),
char(0x1161 + jungseong),
jongseong ~= 0 and char(0x11A7 + jongseong) or ""
return { initial = choseong, vowel = jungseong, final = jongseong }
end
return p