Он-толийн Англи-Монгол толийг Stardict рүү хөрвүүлэв
Өмнө babylon-толийг stardict рүү хөрвүүлж 2 толийг гаргасан. Сая он-толийн Англи-Монгол толийг хөрвүүллээ. Татаж аваад хэрэглээд үзээрэй. Он-толийнхондоо баярлалаа.
Хэрхэн хөрвүүлэх(Үбүнтү дээр):
# sudo apt-get install dictconv stardict-tools
# dictconv -o on-toli.dic on-toli.com.bgl
# convert_to_unicode.sh on-toli.dic
# /usr/lib/stardict-tools/tabfile on-toli.dic.unicode
Тайлбар:
convert_to_unicode.sh -гэдэг нь текст файл доторхи крил үсгүүдийг юникод руу сольдог скрипт байгаа юм. Хэрэв та *mon фонтууд(юникод биш) хэрэглэдэг бол юникод руу хөрвүүлэхгүй байсан ч болно. Юникод фонтууд хэрэглэдэг бол ямар нэг аргаар *.dic файлыг юникод болгочихож чадна биз ээ.

11 comments:
ter shell ni haana bn ve.
Бэлэн болсон толийг татаж авахаар тавьчихсан болохоор юникод руу хөрвүүлэх скриптийг тавьсангүй. Нийтэд хэрэглүүлэхээр тавихад арай түүхий эд юм л даа. Өөрөө хийхэд хэцүү биш, бас интернэт дээр бэлэн хөрвүүлчдэг вэб ч байж магад
Tany blog mash ix taalagddag suuliin ued um bichigdehgui bsan, sonirxoltoi zuil ix bicheerei. thanks. /reader/
Нэг кодоос нөгөө рүү хөрвүүлэх их амархан, хэрэв та *nix OS-тэй бол. inconv гэж сайхан програм байна.
iconv --from-code cp1251 --to-code utf8 your_file
хэлбэрээр ажлаа нугалж болох юм.
Нэг нөхрийн блог дээрээ тавьсан үгсийн санг татаж аваад дээрх байдлаар хөрвүүлж байлаа. Пират бааз болохоор нийтэд зарлалгүй, зөвхөн өөртөө ашигладаг юм. Сонирхвол: http://203.183.46.219/~battur/
Харин тийм, iconv ашиглах гэхээр babylon-ий толийг dictconv-оор хөрвүүлээд гарч ирж байгаа файлынх нь кодчилол мэдэгдэхгүй байгаа юм. "мэдэхгүй тэмдэгт байна" -гэсэн маягийн алдаа заагаад байсан. Алтангэрэлийнх нэг өөр кодчилолтой, Он-толь, Тэмука эд нарынх бас өөр кодчилолтой. Ер нь кодчилолын нэгдсэн стандартгүй явсны уршиг үүгээр зогсохгүй л дээ.
on-toli-ийг нээрээ ямар кодоор бичсэн юм бол до...
Википедиагаас энкодийн жагсаалт татаж байгаад дараахи байдлаар хөрвүүлж үзлээ:
for e in $(cat encodings); do iconv -f $e -t utf8 on-toli.dic > /tmp/tmp; [ $? -eq 0 ] && mv /tmp/tmp ./$e || echo "$e NG"; done
Хөрвөсөн үр дүнг үзтэл хүн ойлгох нэг ч файл байсангүй :(
Үсэг үсгээр нь л солих нь. Хөрвүүлэлтийн таблицыг комментоор энд оруулах боломжтой юу? Үсэгний ард үсэг байх хэдэн арван мөр текст байгаа болов уу?
16-тын кодоор:
D09F->D2AF
D098->D191
D09A->D3A9
D0A0->D090
D0A1->D091
D0A2->D092
D0A4->D094
D0A5->D095
D0A6->D096
D0A7->D097
D0A8->D098
D0A9->D099
D0AA->D09A
D0AB->D09B
D0AC->D09C
D0AD->D09D
D0AE->D09E
D0AF->D09F
D0B0->D0A0
D0B1->D0A1
D0B2->D0A2
D0B3->D0A3
D0B4->D0A4
D0B5->D0A5
D0B6->D0A6
D0B7->D0A7
D0B8->D0A8
D0BD->D0AD
D0BE->D0AE
D0BF->D0AF
D180->D0B0
D181->D0B1
D182->D0B2
D183->D0B3
D184->D0B4
D185->D0B5
D186->D0B6
D187->D0B7
D188->D0B8
D189->D0B9
D18A->D0BA
D18B->D0BB
D18C->D0BC
D18D->D0BD
D18E->D0BE
D18F->D0BF
E28496->D180
D191->D181
D192->D182
D193->D183
D194->D184
D195->D185
D196->D186
D197->D187
D198->D188
D199->D189
D19A->D18A
D19B->D18B
D19C->D18C
D19E->D18E
D19F->D18F
C2A7->D18D
git://github.com/ochko/stardict-mn-dics.git Энд толиудыг хуулав. Алтангэрэлийн толийн тэмдэгтийн кодыг олох хэрэгтэй байгаа. Туслах хүн байвал сайн.
хөрвүүлэлтийн таблиц 16таар байгаа тохиолдолд дараахи байдлаар on-toli.dic-г хөрвүүлж болохоор байна. Жаахан удаан ажиллах ч, үүргээ бол гүйцэтгэчихнэ ;)
http://203.183.46.219/~battur/conv_ontoli.py.htmlBaltic adj. Срыђшщэ ђ§эушёшщэ
Bangladeshi n. Срэуырфхј ѕПэ
Bank for International Settlements юыюэ ѓыёћэ ђююіююэћ срэъ
***********
Baltic adj. Балтийн тэнгисийн
Bangladeshi n. Бангладеш хүн
Bank for International Settlements олон улсын тооцооны банк
Bank reconciliations Банкны зохицуулалтын тайлан
=========================
1 #!/usr/bin/python
2 # -*- coding: utf-8 -*-
3 # conv_ontoli.py:
4 # on-toli-ийн dic хувилбарыг хүн ойлгохоор тэмдэгтэд хөрвүүлнэ.
5 #
6 # Author: Battur. batturjapan@gmail.com
7 # Reference: http://ochko.blogspot.com/2009/04/stardict.html
8
9 table = {}
10 # хөрвүүлэлтэд ашиглах хэш: table
11 for line in open('conversion_table').readlines():
12 [key, val] = line.strip().split("->")
13 table[key.decode("hex").decode("utf8").encode("utf8")] = val.decode("hex").decode("utf8").encode("utf8")
14
15 # хэшийг нягтлая
16 #for key, val in table.iteritems():
17 # print key, val
18
19 # хөрвүүлэлтийг энд
20 for iline in open('on-toli.dic').readlines():
21 oline = ""
22 for c in iline.decode("utf8"):
23 try:
24 o = table[c.encode("utf8")]
25 oline = "%s%s" % (oline, o.decode("utf8"))
26 except:
27 o = c
28 oline = "%s%s" % (oline, o)
29
30 print oline.strip().encode("utf8")
31 # төгсөв ;)
=========================
нэг иймэрхүү байхаар байж, ккк
27 #o = c
28 oline = "%s%s" % (oline, c)
refactoring үнэхээр сэтгэл хөнгөлөх ном байна лэ, руби хувилбар нь уул нь өнгөрсөн 4 сард гарах байсан ч, ямар нэг шалтгаанаар 9 сард болж хойшилсон байна лэ.
Код бичиж тавьсанд баярлалаа.
Post a Comment