local data = {}
local concat = table.concat
local insert = table.insert
local U = require("Module:string/char")
local macron = U(0x304)
local spacing_macron = U(0xAF)
local modifier_macron = U(0x2C9)
local breve = U(0x306)
local spacing_breve = U(0x2D8)
local rough = U(0x314)
local smooth = U(0x313)
local diaeresis = U(0x308)
local acute = U(0x301)
local grave = U(0x300)
local circum = U(0x342)
local Latin_circum = U(0x302)
local coronis = U(0x343)
local subscript = U(0x345)
local undertie = U(0x35C) -- actually "combining double breve below"
data = {
= macron,
= spacing_macron,
= modifier_macron,
= breve,
= spacing_breve,
= rough,
= smooth,
= diaeresis,
= acute,
= grave,
= circum,
= Latin_circum,
= coronis,
= subscript,
}
local diacritics_all, diacritics_combining = {}, {}
for _, diacritic in pairs(data.diacritics) do
insert(diacritics_all, diacritic)
if not (diacritic == spacing_macron or diacritic == modifier_macron or diacritic == spacing_breve) then
insert(diacritics_combining, diacritic)
end
end
diacritics_all = concat(diacritics_all)
data.diacritics.all = diacritics_all
diacritics_combining = concat(diacritics_combining)
data.diacritics.combining = diacritics_combining
data = data
data = ""
data = ""
data = data
data = {
= "",
= "",
= "",
= subscript,
}
data = data
data = data
data = {
optional = macron .. "?" .. breve .. "?"
}
data = "%f" .. data
data = {
= 1,
= 2,
= 3,
= 3,
= 3,
= 4,
= 4,
= 4,
= 5,
}
data = {
-- Convert spacing to combining diacritics
= macron, -- macron
= macron,
= breve, -- breve
= rough, -- rough breathing, modifier letter reversed comma
= rough,
= smooth, -- smooth breathing, modifier letter apostrophe, coronis, combining coronis
= smooth,
= acute, -- acute
= grave, -- grave
= circum, -- Greek circumflex (perispomeni), circumflex, combining circumflex
= circum,
= circum,
= diaeresis,
}
-- Canonical letter forms
data = {
= "Θ",
= "Καί",
= "Καὶ",
= "Ϙ",
= "Σ",
= "Υ",
= "Ύ",
= "Ϋ",
= "Ͳ",
= "β",
= "ε",
= "θ",
= "κ",
= "καί",
= "καὶ",
= "π",
= "ϙ",
= "ρ",
= "σ",
= "σ",
= "φ",
= "ͳ",
}
data = "ΒβΓγΔδϜϝͶͷϚϛΖζͰͱΘθͿϳΚκΛλΜμΝνΞξΠπϺϻϘϙΡρΣσςΤτΦφΧχΨψͲͳϷϸ"
data = ""
data = "ΑαΕεΗηΙιΟοΥυΩω"
data = ""
-- Basic letters with and without diacritics
data.word_characters = "%*" .. require("Module:scripts").getByCode("Polyt"):getCharacters() .. diacritics_combining .. undertie
data.word_character = ""
return data