a2niː2skɰaː2niː4iː t͡sa2la2kiː
plain/vocative form | ᎡᏙᏓ (edoda) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
person | singular | dual | plural | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1st | inclusive | ᎠᎩᏙᏓ (agidoda) | ᎩᏂᏙᏓ (ginidoda) | ᎢᎩᏙᏓ (igidoda) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
exclusive | ᎣᎩᏂᏙᏓ (oginidoda) | ᎣᎩᏙᏓ (ogidoda) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2nd | ᏣᏙᏓ (tsadoda) | ᏍᏗᏙᏓ (sdidoda) | ᎢᏥᏙᏓ (itsidoda) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd | ᎤᏙᏓ (udoda) | ᎤᏂᏙᏓ (unidoda) |
object → | singular | dual | plural | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1st | 2nd | 3rd | 1st | 2nd | 3rd | 1st | 2nd | 3rd | |||||
subject ↓ | incl. | excl. | incl. | excl. | |||||||||
singular | 1st | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | |
2nd | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ||
3rd | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ||
dual | 1st | incl. | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) |
excl. | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ||
2nd | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ||
3rd | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ||
plural | 1st | incl. | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) |
excl. | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ||
2nd | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ||
3rd | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) | ᎠᎩᏙᏓ (agidoda) |
a2niː2skɰaː2niː4iː t͡sa2la2kiː
local export = {}
local gsub = mw.ustring.gsub
local gmatch = mw.ustring.gmatch
local sub = mw.ustring.sub
local U = mw.ustring.char
-- map tone numbers to formatted superscripts and contours
local tones = {
= {"¹", "˨˩"},
= {"²", "˨"},
= {"³", "˧"},
= {"⁴", "˧˦"}
}
-- apply placeholder substitutions for double letter sequences
local placeholders = {
= "q",
= "G",
= "T",
= "D",
= "c",
= "W"
}
-- map letters to phonetic values
local phon = {
= "ə̃",
= "kʰ",
= "k",
= "h",
= "kʰʷ",
= "kʷ",
= "tʰ",
= "t",
= "t͡ɬʰ",
= "t͡ɬ",
= "t͡sʰ",
= "t͡s",
= "ɰʰ",
= "ɰ",
= "j"
}
-- add glottal stop before vowel-initial syllable
local function glotallise(entry)
return gsub(entry, "()()", "%1ʔ%2")
end
function export.respell(entry)
if type(entry) == "table" then -- get user input as a table
entry = entry.args
end
entry = glotallise(entry)
entry = gsub(entry, ".", tones)
entry = gsub(entry, "%.", U(0323))
return entry
end
function export.toIPA(entry)
if type(entry) == "table" then -- get user input as a table
entry = entry.args
end
-- all non-final vowels must be marked with a tone number succeeding them
local no_tone_vowels = {}
for match in gmatch(sub(entry, 1, -2), "(%.?)(?!)") do
table.insert(no_tone_vowels, match)
end
if #no_tone_vowels > 0 then
error("Tones must be provided on all vowels except the last vowel.")
end
-- non-final unmarked vowels are long
entry = gsub(entry, "()", "%1ː") -- FIXME
-- however a full stop represents a short vowel
entry = gsub(entry, "ː%.", "")
-- substitute double letter placeholders
entry = gsub(entry, "..", placeholders)
-- substitute phonetic values
entry = gsub(entry, ".", phon)
-- substitute tones
-- entry = gsub(entry, "", tones)
return entry
end
return export