! ======================================== ! ! Hyphenator and phon for West Greenlandic ! ! ======================================== ! echo <> define Vow [ a | á | e | i | o | u | y | æ | ø | å | ä | ö | A | Á | E | I | O | U | Y | Æ | Ø | Å | Ä | Ö | é | ó | ú | í | à | è | ò | ù | ì | ë | ü | ï | â | ê | ô | û | î | ã | ý | É | Ó | Ú | Í | À | È | Ò | Ù | Ì | Ë | Ü | Ï | Â | Ê | Ô | Û | Î | Ã | Ý | ɑ | ɛ | ɔ ] ; define KalVow [ a | e | i | o | u | ɑ | A | E | I | O | U ] ; define BackVow [ a | ɑ | ɔ | o | u ] ; define NonBackVow [ ɑ | a | i | ɛ | e ] ; define ForVow [ Vow - KalVow ] ; define LongVow [ a a | A a | A A | e e | E e | E E | i i | I i | I I | o o | O o | O O | u u | U u | U U | a i | A i | A I ] ; define A2 [ a | A | i | I ] ; define E2 [ e | E ] ; define I2 [ i | I ] ; define O2 [ o | O ] ; define U2 [ u | U ] ; define Cns [ b | c | č | d | đ | ð | f | g | h | j | k | l | m | n | ŋ | B | C | Č | D | Đ | Ð | F | G | H | J | K | L | M | N | Ŋ | ñ | p | q | r | s | š | t | ŧ | v | w | x | z | ž | Ñ | P | Q | R | S | Š | T | Ŧ | V | W | X | Z | Ž | ç | ɣ | ł | ŋ | ʁ | w | χ | ɕ | ʲ | ʷ ] ; define Ss [ S | s ] ; define Cnss [ Cns - Ss ] ; define ptk [p|t|k]; define Uvu [ r | R | ʁ | q | Q | ʔ ] ; !define Sgm [ Cns | Vow ] ; define Dummy [ %^K ] ; echo << Rules>> define NG [..] -> %. || Vow ([r|R|n|N]) _ [ n g | N G ] ; define beforeCV [..] -> %. || Vow _ Cns Vow ; !a-te-qu-seq define sC [..] -> %. || Vow Ss Cns* _ Cns Vow ; define Css [..] -> %. || Vow Cns Ss _ Ss ; define CCV [..] -> %. || Vow Cnss+ _ Cns Vow ; !il-lu, Matt-hæ-u-sip define CsCV [..] -> %. || Vow Cnss+ _ Ss Cnss Vow ; !Kron-stadt, Kris-tus define keep [..] -> %^K || [a|A] _ A2 , [e|E] _ E2 , [i|I] _ I2 , [o|O] _ O2 , [u|U] _ U2 ; define VV [..] -> %. || Vow _ Vow ; !Matt-hæ-u-sip echo << Cleanup...>> define clean [ Dummy -> 0 ] ; ! Lagre denne fila i xfst source < dennefila.txt og deretter save hy.fst ! cat fil.txt | preprocess | ./lookup -utf8 hy.fst | cut -f2 | tr '\n' ' ' | less echo <> define down [ A -> a, B -> b, C -> c, D -> d, E -> e, F -> f, G -> g, H -> h, I -> i, J -> j, K -> k, L -> l, M -> m, N -> n, O -> o, P -> p, Q -> q, R -> r, S -> s, T -> t, U -> u, V -> v, W -> w, X -> x, Y -> y, Z -> z, Æ -> æ, Ø -> ø, Å -> å ] ; define foreignletters [ c -> k , w -> v , z -> s , å -> o ] ; define aifin [ i -> a j || a _ .#. ] ; define ai [ i -> a || a _ ] ; define aa [ a -> %ː || a _ ] ; define ee [ e -> %ː || e _ ] ; define ii [ i -> %ː || i _ ] ; define oo [ o -> %ː || o _ ] ; define uu [ u -> %ː || u _ ] ; define aUv [ a -> ɑ || _ (%ː) (%.) [r|q] ] ; define oUv [ o -> ɔ ] ; define eUv [ e -> ɛ ] ; define rf [ r -> f || _ %. f ] ; define rg [ r -> g || _ %. g ] ; define rk [ r -> k || _ %. k ] ; define rl [ r -> l || _ %. l ] ; define rm [ r -> m || _ %. m ] ; define rn [ r -> n || _ %. n ] ; define rp [ r -> p || _ %. p ] ; define rq [ r -> q || _ %. q ] ; define rs [ r -> s || _ %. s ] ; define rt [ r -> t || _ %. t ] ; define rv [ r -> v || _ %. v ] ; define qf [ q -> f || _ %. f ] ; define qg [ q -> g || _ %. g ] ; define qk [ q -> k || _ %. k ] ; define ql [ q -> l || _ %. l ] ; define qm [ q -> m || _ %. m ] ; define qn [ q -> n || _ %. n ] ; define qp [ q -> p || _ %. p ] ; define qs [ q -> s || _ %. s ] ; define qt [ q -> t || _ %. t ] ; define qv [ q -> v || _ %. v ] ; define ng [ n g -> ŋ ] ; define nng [ n -> ŋ || _ %. ŋ ] ; define gg [ g %. g -> ç %. ç ] ; define gGlide [ g -> ɣ ] ; define dbl [ l %. l -> ł %. ł ] ; !define v [ v -> w || Vow %. _ Vow ] ; omformuleret 4.11. define vRound [ v -> w || u (%ː) %. _ [ u | ɔ ]] ; define rr [ r %. r -> χ %. χ ] ; define rUv [ r -> ʁ ] ; define ts [ s -> ɕ || t %. _ ] ; define assibilering [ t -> ɕ || _ [ i | ɛ ] ] ; define jBackGlide [ i %. -> i %. ʲ || _ BackVow ] ; !define JAlowglide [..] -> ʲ || i %. _ ɑ ; !define JUlowglide [..] -> ʲ || i %. _ ɔ ; !define JUglide [..] -> ʲ || i %. _ u ; define wNonBackGlide [ u %. -> u %. ʷ || _ [ ɑ | a | i | ɛ ] ] ; !define WAlowglide [..] -> ʷ || u %. _ ɑ ; !define WAglide [..] -> ʷ || u %. _ a ; !define WIlowglide [..] -> ʷ || u %. _ ɛ ; !define WIglide [..] -> ʷ || u %. _ i ; define ta [..] -> ¹ || [ %. | .#. ] (Cns?) _ (Cns) Vow Cns %. ; define tb [..] -> ² || [ %. | .#. ] (Cns?) _ (Cns) Vow %ː [ %. | .#. ] ; define tc [..] -> ³ || [ %. | .#. ] (Cns?) _ (Cns) Vow %ː Cns [ %. | .#. ] ; !define ipao o -> ɔ ; ! Kleinschmidt: ⁴⁵ ! Each vowel counts 2, each cns 1. ! v = 2, vc = 3, vv = 4 vvc = 5. echo <> read regex [ ! Syll NG .o. beforeCV .o. sC .o. Css .o. CCV .o. CsCV .o. keep .o. VV .o. clean .o. down .o. foreignletters .o. aifin .o. ai .o. aa .o. ee .o. ii .o. oo .o. uu .o. aUv .o. oUv .o. eUv .o. rf .o. rg .o. rk .o. rl .o. rm .o. rn .o. rp .o. rq .o. rs .o. rt .o. rv .o. qf .o. qg .o. qk .o. ql .o. qm .o. qn .o. qp .o. qs .o. qt .o. qv .o. ng .o. nng .o. gg .o. gGlide .o. dbl .o. vRound .o. rr .o. rUv .o. ts .o. assibilering .o. jBackGlide .o. wNonBackGlide .o. WAglide .o. WIlowglide .o. WIglide .o. tc .o. tb .o. ta ] ; invert net ;