From 2a91ac7324140151ca16c2c51f79187b60373bea Mon Sep 17 00:00:00 2001 From: fkaimphilat Date: Sat, 29 Jan 2022 01:48:01 +0300 Subject: [PATCH] fixed "one", "five"; added >100 & >1000 numbers; created transliterations; updated Makefile --- Makefile | 22 +++++++++++++++++++++- btlx.num.lexd | 13 ++++++++----- correspondence | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 76 insertions(+), 6 deletions(-) create mode 100644 correspondence diff --git a/Makefile b/Makefile index b031b6e..e91ca9f 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,25 @@ +.DEFAULT_GOAL := btlx.num.analyzer.hfst + +# generate analyzer and generator btlx.num.analyzer.hfst: btlx.num.generator.hfst hfst-invert btlx.num.generator.hfst -o btlx.num.analyzer.hfst - btlx.num.generator.hfst: btlx.num.lexd lexd btlx.num.lexd | hfst-txt2fst -o btlx.num.generator.hfst + +# generate transliteraters +cy2la.transliterater.hfst: la2cy.transliterater.hfst + hfst-invert la2cy.transliterater.hfst -o cy2la.transliterater.hfst +la2cy.transliterater.hfst: correspondence.hfst + hfst-repeat -f 1 correspondence.hfst -o la2cy.transliterater.hfst +correspondence.hfst: correspondence + hfst-strings2fst -j correspondence -o correspondence.hfst + +# generate analyzer and generator for transcription +btlx.num.analyzer.tr.hfst: btlx.num.generator.tr.hfst + hfst-invert $< -o $@ +btlx.num.generator.tr.hfst: btlx.num.generator.hfst cy2la.transliterater.hfst + hfst-compose $^ -o $@ + +# remove all hfst files +clean: + rm *.hfst \ No newline at end of file diff --git a/btlx.num.lexd b/btlx.num.lexd index 7a41688..fc91096 100644 --- a/btlx.num.lexd +++ b/btlx.num.lexd @@ -1,18 +1,21 @@ PATTERNS -(TeenRoot | (NumRoot TyInfl)) TeenInfl < One +(TeenRoot | (NumRoot TyInfl)) TeenInfl < One ClM TeenRoot (TeenInfl NumRoot)? CardInfl NumRoot (TyInfl > (TeenInfl NumRoot1))? CardInfl -GrandRoot CardInfl +NumRoot? GrandRoot CardInfl # требуется уточнение по формам >2000 LEXICON One -:цеб # один +:це # один + +LEXICON ClM +:б # показатель класса LEXICON NumRoot :кӀе # два :гьабу # три :бугъу # четыре -:ищту # пять -:интлӀи # шесть +:ишту # пять +:интлӀи # шесть :гьакьу # семь :бикьи # восемь :гьачӀа # девять diff --git a/correspondence b/correspondence new file mode 100644 index 0000000..e7fdf24 --- /dev/null +++ b/correspondence @@ -0,0 +1,47 @@ +a:а +b:б +w:в +g:г +ʁ:гъ +h:гь +ʕ:гI +d:д +e:е +ɵ:ё +ʒ:ж +z:З +i:и +j:й +k:к +q’:къ +ƛ':кь +k':кӀ +l:л +ɬ:лъ +ƛ:лӀ +m:м +n:н +o:о +p:п +r:р +s:с +t:т +t':тӀ +u:у +f:ф +χ:х +qχ:хъ +х:хь +ћ:хӀ +c:ц +c':цӀ +č:ч +č':чӀ +š:ш +šː:щ +ʔ:ъ +ɨ:ы +ʼ:ь +ɛ:э +ju:ю +ja:я \ No newline at end of file