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.....
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
#! /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"
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
Style file bạn chọn star_style.txt trong thư mục ConvStar của MDXBuilder.1. Style file (mình hiểu là format file) là file nào vậy?
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)2. Phần Option nên chọn phần nào?
3. Cần điền gì vào phần Description?
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.)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.
Để 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.htmla.
<k>a.</k>\nadjective
</>
abbr
<k>abbr</k>\nabbreviation
</>
abbrs
<k>abbrs</k>\nabbreviations
</>
ad.
<k>ad.</k>\nadverb
</>
adj
<k>adj</k>\nadjective
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.
Đú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
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.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.
Lỗi này là do từ điển này convert bị lỗi đấy bạn, ai cũng bị thế cả.Bác ơi em gửi ảnh chụp màn hình đấy.
Lỗi này là do từ điển này convert bị lỗi đấy bạn, ai cũng bị thế cả.
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ề.
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]