shenikan/dictionary.kts

81 lines
2.2 KiB
Kotlin

#!/usr/bin/kscript
@file:Import("dsl.kt")
glyphs { // in font encoding and alphabetical order
// bare vowels
glyph(vowel, "i", outer)
glyph(vowel, "e", outer, slashed)
glyph(vowel, "a", slashed)
glyph(vowel, "o", `inner`, slashed)
glyph(vowel, "u", `inner`)
glyph(vowel, "y", both)
// consonant clusters (note: both core can be written with a dot in most cases)
glyph(cluster, "θ", left, top)
glyph(cluster, "", left, middle)
glyph(cluster, "x", left, bottom)
glyph(cluster, "n", center, middle)
glyph(cluster, "p", right, top)
glyph(cluster, "t", right, middle)
glyph(cluster, "k", right, bottom)
glyph(cluster, "θl", left, top, tall)
glyph(cluster, "∫l", left, middle, tall)
glyph(cluster, "xl", left, bottom, tall)
glyph(cluster, "nl", center, middle, tall)
glyph(cluster, "pl", right, top, tall)
glyph(cluster, "tl", right, middle, tall)
glyph(cluster, "kl", right, bottom, tall)
glyph(cluster, "θr", left, top, wide)
glyph(cluster, "∫r", left, middle, wide)
glyph(cluster, "xr", left, bottom, wide)
glyph(cluster, "nr", center, middle, wide)
glyph(cluster, "pr", right, top, wide)
glyph(cluster, "tr", right, middle, wide)
glyph(cluster, "kr", right, bottom, wide)
glyph(cluster, "", left, top, both)
glyph(cluster, "s∫", left, middle, both)
glyph(cluster, "sx", left, bottom, both)
glyph(cluster, "sn", center, middle, both)
glyph(cluster, "sp", right, top, both)
glyph(cluster, "st", right, middle, both)
glyph(cluster, "sk", right, bottom, both)
syllables()
glyph(punctuation, "«", left)
glyph(punctuation, ".")
glyph(punctuation, "»", right)
glyph(numeric, "0", circle)
glyph(numeric, "1", dash)
glyph(numeric, "2", vee)
glyph(numeric, "3", hump)
glyph(numeric, "4", dash, hump)
glyph(numeric, "5", vee, hump)
glyph(numeric, ".", dump)
}
dialect("jukashenikan") {
replace("x", "ç")
replace("p", "j")
// ...
}
dialect("gazhenigan") {
replace("k", "g")
replace("", "ʒ")
replace("s", "z")
replace("θ", "ð")
replace("t", "d")
// ...
}
romanization {
// TODO
}
dictionary {
// TODO
}