Jump to content

Module:Hepburner

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by DarmaniLink (talk | contribs) at 03:37, 3 March 2024 (no long i, oops!). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

require('strict');
-- Converts romanji input to modified hepburn, I recommend subst:ing

-- standard long vowel patterns
local diacritics = {
    ["aa"] = "ā",
    ["uu"] = "ū",
    ["ee"] = "ē",
    ["oo"] = "ō",
    ["ou"] = "ō",
    ["Aa"] = "Ā",
    ["Uu"] = "Ū",
    ["Ee"] = "Ē",
    ["Oo"] = "Ō",
    ["Ou"] = "Ō",
    ["AA"] = "Ā",
    ["UU"] = "Ū",
    ["EE"] = "Ē",
    ["OO"] = "Ō",
    ["OU"] = "Ō"
}

local p = {}
--input: 1:1 transliterated romanji
function p.toHepburn(frame)
		local romanji = frame.args[1]
		for target, replacement in pairs(diacritics) do
        	romanji = romanji:gsub(target, replacement) 
    end
    return romanji	
end

return p