• Hiện tại trang web đang trong quá hình chuyển đổi và tái cấu trúc lại chuyên mục nên có thể một vài chức năng chưa hoàn thiện, một số bài viết và chuyên mục sẽ thay đổi. Nếu sự thay đổi này làm bạn phiền lòng, mong bạn thông cảm. Chúng tôi luôn hoan nghênh mọi ý kiến đóng góp để chúng tôi hoàn thiện và phát triển. Cảm ơn

Từ Điển Bách Khoa Wiki & MDict

hello1186

New Member
N72 có thể xài Mdict 3.0 Final được không anh Du?? Em thấy phần mềm này hay thật.....
 

zaita

New Member
1. Bạn Lenguyendu ơi, mình đã đọc bài này của bạn và làm theo nhưng đến bước thứ 5 thì bị lỗi, không tạo ra outputfile được, mong bạn chỉ dùm. File Stardic này mình down từ http://sourceforge.net về. (gửi kèm theo hình chạy cmd bị lỗi)

2. Mình rất muốn tham gia tạo từ điển cho Mdict. Mình có một số từ điển babylon thấy rất hay và muốn chuyển sang Stardic, rồi từ Stardic sẽ chuyển sang Mdict. Bạn cho mình tool hay hướng dẫn chuyển từ babylon sang Stardic nha. Nếu thực hiện được, mình tin sẽ đóng góp rất nhiều cho diễn đàn đó. Thanks

1- Theo mình thấy thì bạn thực hiện sai câu lệnh, sau khi chạy Cmd bạn chạy các lệnh DOS sau:
e: ->enter ---->E:\
E:\cd thumucchuafile
***E:\thumucchuafile>java ................ (bỏ order trong câu lệnh của bạn đi)
cái này Lenguyendu có hướng dẫn bằng hình nhưng mình ko nhớ link.

2- Bạn muốn convert babylon dict BGL thì mình biết có hai cách. Cách thứ nhất là dùng Unpackbgl (->Google), sau khi extract được dữ liệu (có dạng ****.bgl.txt), file này sau đó cần được chuyển sang tab.dict file (lấy file này chỉnh sửa rồi build mdx lun) . Mình thấy Thura bên ForumUbuntu thực hiện bằng ngôn ngữ Python (dùng SPE, - http://developer.berlios.de/project/showfiles.php?group_id=4161) - cách này thực hiện với font tiếng Việt khá ổn.
Code:
Mã:
#! /usr/bin/env python
# -*- coding: utf-8 -*-

import re

inputFile = " " #input file ( *.bgl.txt converted with file
outputFile = " " #output file

#Read File
try:
inFile = open(inputFile,"r")
except IOError:
print "Cannot open the input file!"
sys.exit(1)
content = inFile.read()
inFile.close()

#==========
#Conversion
#==========
removeCSS = re.compile("[.#].+\s*{[^}]*?}") #pattern to remove CSS
removeHTML = re.compile("<[^>]*>",re.M) #pattern to remove HTML
removeEmptyLines = re.compile("\s+\n\n", re.M) #pattern to remove Empty Lines
replaceTabs = re.compile("^\t",re.M) #pattern to replace lines starting with tabs
removeBC = re.compile("\s●\s+") #pattern to remove ●
newlinestr = re.escape("\\n")

content = removeCSS.sub("",content) #remove CSS
content = removeHTML.sub("",content) #remove HTML
content = replaceTabs.sub(newlinestr,content) #replace lines starting with Tabs
content = removeEmptyLines.sub("\t",content) #remove Empty Lines
content = content.replace("\n\\n","") #replace new lines before "\n" string
content = removeBC.sub(newlinestr,content) #replace ● with "\n"
inFile.close()

#Write File
try:
outFile = open(outputFile,"w")
except IOError:
print "Cannot open the output file"
outFile.write(content)
outFile.close()

print "Fin"

(*) Cách 2: (Cách này đơn giản hơn nhưng dùng cho từ điển có tiếng Việt mình thấy font nhảy lung tung, chưa khắc phục được)
Dùng cách này bạn cần cài HĐH Ubuntu (Linux) + StarDict + Stardict-tools
Download và cài đặt các file sau để dùng Stardict-tools: dictzip, libmaa, libmysqlclient15off, mysql-common, tất cả các file này đều có trên www.debian.com
Mở Stardict, vào Mycomputer>~/.stardict (tìm đến thư mục .stardict) copy các file BGL cần convert vào (đỡ mất công tìm). Sau đó chạy Terminal,
1> cd ~/.stardict
2> stardict-editor
Lúc này hiện ra cửa sổ Stadict-tools
Tại cửa sổ Stardict-tools>Browse>***.bgl
Chỉnh ô ở dưới bên trái sang BGL file ->Build--->tạo file mới ***.babylon
Browse>***.babylon -> chỉnh ô ở dưới thành Babylon file ->Build -->Xong.

Mình cũng đang làm một số từ điển nhưng chưa xong. Hiện tại mới xong dữ liệu của OALD7 với mấy cái từ điển Synonyms nhưng đang còn chỉnh sửa. Sẽ ráng xong sớm up lên diễn đàn :D
 
Chỉnh sửa cuối:

thekyjp

New Member
1- Theo mình thấy thì bạn thực hiện sai câu lệnh, sau khi chạy Cmd bạn chạy các lệnh DOS sau:
e: ->enter ---->E:\
E:\cd thumucchuafile
***E:\thumucchuafile>java ................ (bỏ order trong câu lệnh của bạn đi)
cái này Lenguyendu có hướng dẫn bằng hình nhưng mình ko nhớ link.

2- Bạn muốn convert babylon dict BGL thì mình biết có hai cách. Cách thứ nhất là dùng Unpackbgl (->Google), sau khi extract được dữ liệu (có dạng ****.bgl.txt), file này sau đó cần được chuyển sang tab.dict file (lấy file này chỉnh sửa rồi build mdx lun) . Mình thấy Thura bên ForumUbuntu thực hiện bằng ngôn ngữ Python (dùng SPE, - http://developer.berlios.de/project/showfiles.php?group_id=4161) - cách này thực hiện với font tiếng Việt khá ổn.
Code:
Mã:
#! /usr/bin/env python
# -*- coding: utf-8 -*-

import re

inputFile = " " #input file ( *.bgl.txt converted with file
outputFile = " " #output file

#Read File
try:
inFile = open(inputFile,"r")
except IOError:
print "Cannot open the input file!"
sys.exit(1)
content = inFile.read()
inFile.close()

#==========
#Conversion
#==========
removeCSS = re.compile("[.#].+\s*{[^}]*?}") #pattern to remove CSS
removeHTML = re.compile("<[^>]*>",re.M) #pattern to remove HTML
removeEmptyLines = re.compile("\s+\n\n", re.M) #pattern to remove Empty Lines
replaceTabs = re.compile("^\t",re.M) #pattern to replace lines starting with tabs
removeBC = re.compile("\s●\s+") #pattern to remove ●
newlinestr = re.escape("\\n")

content = removeCSS.sub("",content) #remove CSS
content = removeHTML.sub("",content) #remove HTML
content = replaceTabs.sub(newlinestr,content) #replace lines starting with Tabs
content = removeEmptyLines.sub("\t",content) #remove Empty Lines
content = content.replace("\n\\n","") #replace new lines before "\n" string
content = removeBC.sub(newlinestr,content) #replace ● with "\n"
inFile.close()

#Write File
try:
outFile = open(outputFile,"w")
except IOError:
print "Cannot open the output file"
outFile.write(content)
outFile.close()

print "Fin"

(*) Cách 2: (Cách này đơn giản hơn nhưng dùng cho từ điển có tiếng Việt mình thấy font nhảy lung tung, chưa khắc phục được)
Dùng cách này bạn cần cài HĐH Ubuntu (Linux) + StarDict + Stardict-tools
Download và cài đặt các file sau để dùng Stardict-tools: dictzip, libmaa, libmysqlclient15off, mysql-common, tất cả các file này đều có trên www.debian.com
Mở Stardict, vào Mycomputer>~/.stardict (tìm đến thư mục .stardict) copy các file BGL cần convert vào (đỡ mất công tìm). Sau đó chạy Terminal,
1> cd ~/.stardict
2> stardict-editor
Lúc này hiện ra cửa sổ Stadict-tools
Tại cửa sổ Stardict-tools>Browse>***.bgl
Chỉnh ô ở dưới bên trái sang BGL file ->Build--->tạo file mới ***.babylon
Browse>***.babylon -> chỉnh ô ở dưới thành Babylon file ->Build -->Xong.

Mình cũng đang làm một số từ điển nhưng chưa xong. Hiện tại mới xong dữ liệu của OALD7 với mấy cái từ điển Synonyms nhưng đang còn chỉnh sửa. Sẽ ráng xong sớm up lên diễn đàn :D

Cám ơn bạn nhiều, mình đã chỉnh lại đoạn code trong cmd và xuất được file txt rùi, nhưng khi mình dùng MdxBuilder để chuyển .txt thành .mdx thì lại gặp lỗi, mình có một số điểm không hiểu trong khi dùng MdxBuilder mong bạn chỉ giáo:
1. Style file (mình hiểu là format file) là file nào vậy?
2. Phần Option nên chọn phần nào?
3. Cần điền gì vào phần Description?
Mình để nguyên các option mặc định và file format (style file) mình chọn file example_style.txt trong folder MdxBuilder thì nó convert được nhưng nó lại tạo ra file .mdd, mình thử đổi lại thành .mdx, bỏ vào ppc nhưng không chỵ được. Thất bại rùi hichic

Về chuyển file .bgl sang .mdx, mình tìm hiểu nhiều trên mạng, cũng thấy có 2 cách, với cách thứ 2 là không dùng được rùi(bị lỗi khi dùng cho font tiếng Việt,hay nói rộng ra là font unicode, hơn nữa mình không dùng Linux nên..pó tay). Còn cách 1 mình đã từng thử dùng Unpackbgl, nhưng khi chạy thì thấy báo có lỗi trong quá trình unpack, hơn nữa khi unpack xong mình không biết cách nào chuyển sang tab.dict file để buid .mdx nên...dậm chân tại chỗ lun.

Định lên nhờ mod lenguyendu nhưng không thấy reply hichic.:(:(

Còn đoạn code python mình không hiểu lắm vì không dùng ngôn ngữ này, bạn có code của C/C++ không? Mình cũng từng làm về đọc và convert file nên biết một ít về vấn đề này. Nếu không có code bạn có thể cho mình biết cấu trúc của file bgl và file mdx được không, nếu biết cấu trúc của 2 loại file này mình nghĩ có thể viết 1 app nhỏ để convert được.Thanks
 

zaita

New Member
1. Style file (mình hiểu là format file) là file nào vậy?
Style file bạn chọn star_style.txt trong thư mục ConvStar của MDXBuilder.
2. Phần Option nên chọn phần nào?
3. Cần điền gì vào phần Description?
Phần Option bạn chỉ cần chỉnh Encoding thành UTF-8 là được, còn phần Description là thông tin về file từ điển bạn build hay...(About -> Dictionary trong Mdict) (code HTML)
Về chuyển file .bgl sang .mdx, mình tìm hiểu nhiều trên mạng, cũng thấy có 2 cách, với cách thứ 2 là không dùng được rùi(bị lỗi khi dùng cho font tiếng Việt,hay nói rộng ra là font unicode, hơn nữa mình không dùng Linux nên..pó tay). Còn cách 1 mình đã từng thử dùng Unpackbgl, nhưng khi chạy thì thấy báo có lỗi trong quá trình unpack, hơn nữa khi unpack xong mình không biết cách nào chuyển sang tab.dict file để buid .mdx nên...dậm chân tại chỗ lun.
Cách thứ 2 mình thấy rất đơn giản, Ubuntu có hỗ trợ cài trong win mà (cách này áp dụng rất tốt cho các từ điển En-En). Còn nếu ngại nữa thì có thể dùng VM-Ware tạo máy ảo (mình đang dùng cách này.)
Chương trình UnpackBGL báo lỗi trong quá trình extract data thì bạn đừng lo, không sao đâu, cứ để chương trình chạy hết. Mình đã so sánh file text thu được với file gốc rồi, đặc biệt cách này hỗ trợ tốt unicode.
Còn kiểu dữ liệu trong mdx thì theo mình biết là như bên dưới (\n-->xuống dòng,\t -->tab,..., bạn đọc mấy file hướng dẫn có trong MDXBuilder á), còn dạng của bgl thì mình không rõ.
a.
<k>a.</k>\nadjective
</>
abbr
<k>abbr</k>\nabbreviation
</>
abbrs
<k>abbrs</k>\nabbreviations
</>
ad.
<k>ad.</k>\nadverb
</>
adj
<k>adj</k>\nadjective
Để chỉnh mấy file txt thu được sang tab.dict thì mình thấy dùng python rất tốt, lại nhanh nữa. Bạn tham khảo ở đây nhé: http://docs.python.org/dev/howto/regex.html
Mình mới tập sử dụng nên chưa rành lắm, chỉ mới biết mấy cái cơ bản thôi.
 

zaita

New Member
Vừa qua mình có convert và chỉnh sửa được một số data cho từ điển MDict, giờ up lên cho mọi người cùng dùng. Vì tương lai của chúng ta. Hix... học, học nữa, học mãi........... T.T

1. mtMDict Việt - Anh - Việt (dữ liệu lấy từ mtbab.bgl)

http://www.mediafire.com/?kgjhoogqmdm
2. OALD 7th Edition
http://www.mediafire.com/?wg54wmym5xz
3. Oxford Guide to British and American Culture 2
http://www.mediafire.com/?tjni2ntw3zy
4. American Idioms 4.6
http://www.mediafire.com/?xmnucm2nhf5
5. Oxford – Soule Synonyms
http://www.mediafire.com/?r1z5yyzn5nl

Bác nào có data của từ điển kỹ thuật (bản full có Business và Technical) thì cho mình xin với nhé. Nếu có file mdx thì càng tốt ^^. Cảm ơn các bác!
 
Chỉnh sửa cuối:

dusa_guangzhou

New Member
Các bác ơi, em cài lên nhưng phần phiên âm của tiếng Trung va tiếng anh một số phông bị lỗi, không đọc được. :(:)(( Các bác giúp em với.
 
Chỉnh sửa cuối:

lovelydaisy

New Member
Đúng rồi cho mình hỏi phần phiên âm làm cách nào hay cài font gì để thể hiện được nó vậy.tks
 

lovelydaisy

New Member
mình không nói không hiển thị tiếng trung được mà nói là trong phần phiên âm tiếng trung (và tiếng Anh) có những kí tự phiên âm không thể hiện được (hiện lên ô vuông). việc đó rất gây khó khăn cho việc phát âm theo phiên âm. không biết có ai fix được lỗi này kg?? tks
 

PhongQuang

Super V.I.P
mình không nói không hiển thị tiếng trung được mà nói là trong phần phiên âm tiếng trung (và tiếng Anh) có những kí tự phiên âm không thể hiện được (hiện lên ô vuông). việc đó rất gây khó khăn cho việc phát âm theo phiên âm. không biết có ai fix được lỗi này kg?? tks
Hiện ô vuông tức là lỗi font đó bạn. Cụ thể hơn bạn nên chụp màn hình port lên thì dễ xử lý hơn.
 

dusa_guangzhou

New Member
Lỗi phiên âm Mdict 2

Hiện ô vuông tức là lỗi font đó bạn. Cụ thể hơn bạn nên chụp màn hình port lên thì dễ xử lý hơn.

Bác ơi em gửi ảnh chụp màn hình đấy. Từng giờ từng phút mong bác phong_quang và các bác cao thủ ra tay cứu giúp...
 
Chỉnh sửa cuối:

dusa_guangzhou

New Member
Lỗi này là do từ điển này convert bị lỗi đấy bạn, ai cũng bị thế cả.

Thanks bác. Thế thì đau quá bác Phong_Quang nhỉ, vì phần phiên âm rất quan trọng của ngoại ngữ. Có phiên bản Mdict nào không bị lỗi phiên âm như vậy không bác?:-?
 

lovelydaisy

New Member
bác nói rất đúng,phần phiên âm trong tự điển là rất quan trọng.buồn thật
 

nguyenr9

New Member
Cái này là do bạn chwa cài font phiên âm vào thôi. bạn search lại font trong diễn đàn rồi theo hướng dẫn copy vào thư mục fonts trong Mdict (vào program chứa thư mục cài đặt Mdict và tạo 1 new folder mới tên là "fonts" rồi copy 2 font đó vào thư mục vừa tạo là xong)
Tên 2 font đó là: "Ksphonet" và "L_10646"
Ps: mình không attach file dc, bạn tự tìm lại bài hướng dẫn cũng trong diễn đàn để download về.
 

dusa_guangzhou

New Member
Cái này là do bạn chwa cài font phiên âm vào thôi. bạn search lại font trong diễn đàn rồi theo hướng dẫn copy vào thư mục fonts trong Mdict (vào program chứa thư mục cài đặt Mdict và tạo 1 new folder mới tên là "fonts" rồi copy 2 font đó vào thư mục vừa tạo là xong)
Tên 2 font đó là: "Ksphonet" và "L_10646"
Ps: mình không attach file dc, bạn tự tìm lại bài hướng dẫn cũng trong diễn đàn để download về.

Thật tuyệt vời! Em đã làm được rồi các bác ạ! Vô cùng cám ơn bác nguyenr9 nha. Các bác vào trong mục font của Windows trên máy vi tính, copy 2 font nay vào trong mục font của Mdict là ok.
 

PhongQuang

Super V.I.P
Mình quên, về vấn đề font phiên âm VIP lenguyendu đã có lần đề cập đến. Các bạn có thể tải file đính kèm về giải nén ra có 2 file cóp vào thư mục font của Mdict.
 

bsnttm

New Member
các bro ơi! ai có dữ liệu từ điển anh-việt, việt-anh, việt-việt ở dạng .txt hoặc .xls cho mình xin với. Mong các anh em nhiệt tình giúp đỡ mình với! Mình xin cám ơn!
 

exec

New Member
MDICT VIỆT HOÁ :

Bản Mdict 3.0 Final đã được Việt hóa hoàn chỉnh ở đây

--------------------------------------------------------

Cập nhật dữ liệu Từ điển BKTT Viwiki 27/06/2009 của VIP lenguyendu

Link mediafire


]VIP lenguyendu
[/COLOR]

Tự điển này hay quá nhưng mình đã search vẫn không biết cách sử dụng như thế nào ? nhờ các bạn chỉ giúp. Cám ơn nhiều.
 
Top