المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : لينكس قواميس بروتوكول dict



dr_tux
21-08-2005, 10:52 AM
قواميس بروتوكول dict

سنتحدث هنا عن استخدام هذه القواميس محليا (دون الحاجة لاتصال باإنترنت)

إذا كنت تخطط لا ستخدام قاموس عن طريق برتوكول dict محليا على جهازك تحتاج الى اعدادdict server
ليعمل على جهازك أولا ,أى ستحتاج الى
1-dict server
2-dict client
3-قاعدة بيانات (الملفات التى تحتوى على الكلمات ومقابلاتها أو بعبارة أوضح مادة القاموس)

والآن نبدأ العمل

dict server (http://www.dict.org/)
احصل عليه:


يمكن الحصول عليه من هنا (ftp://ftp.dict.org/pub/dict/) على شكل حزمة مصدرية(dictd-x.x.x.tar.gz) ثم تقوم ببنائها كالعادة

أو ابحث عن حزمة rpm لتوزيعتك هنا (http://rpm.pbone.net/index.php3/stat/2/simple/2)
التنصيب:
لبناء الحزمة المصدرية



tar xvfz /path_where_it//dictd-x.x.x.tar.gz
cd dict-x.x.x
less INSTALL
./configure
make
make install


أما مستخدمى جنتو (شكرا للأخ liquidCrystal)



emerge dictd


لتنصيب الحزم الجاهزة
حزم rpm



rpm -Uhv dictd*.rpm

وإذا كنت تستخدم ماندريك



urpmi dictd

ملحوظة: تحتاج الى اعداد urpmi أولا (http://********************/ib/index.php?showtopic=1544)

حزم ديبان


apt-get install dictd
الإعداد:

سنحتاج لوضع script لتشغيل dictd مع بدأ التشغيل ,يوجد script جاهز لهذا ياتى مع الحزمة المصدرية ولكن سنعدله تعديلا طفيفا لنضيف خيار UTF-8 ليدعم العربية



#!/bin/sh
# Example script courtesy of Jeff Blain

#عدل السطر التالى ليشير الى مكان ملف dicd التنفيذى
#مثلا DICTD=/usr/sbin/dictd
DICTD=/where/is/your/dictd_binary

# DICTD_OPTIONS="-put -command_line -options -for -dictd -here"
#سنضع هنا الخيار المطلوب
DICTD_OPTIONS="--locale UTF-8"
#DICTD_OPTIONS=""

DICTD_PID_FILE=/etc/dictd.pid

case "$1" in
'start')
if [ -x $DICTD ]; then
echo "dictd starting."
$DICTD $DICTD_OPTIONS
else
echo "dictd.init: cannot find $DICTD or it's not executable"
fi
;;
'stop')
if [ ! -f $DICTD_PID_FILE ]; then
exit 0
fi
dictdpid=`cat $DICTD_PID_FILE`
if [ "$dictdpid" -gt 0 ]; then
echo "Stopping the dictd server."
kill -15 $dictdpid 2>&1 > /dev/null
fi
rm -f $DICTD_PID_FILE
;;
)
echo "Usage: dictd.init { start | stop }"
;;
esac
exit 0

ثم انسخ الملف الى /etc/init.d/ باسم dictd مثلا

والآن سنحرر ملف الإعدادات /etc/dictd.conf ونضع به السطر التالى



access {allow localhost deny *}

هذا سيسمح باستخدام الخادم من على نفس الجهاز محليا ويمنع ما عدا ذلك , أما لو كنت تخطط لا ستخدامه من أجهزة أخرى (من خلال شبكة محلية أو حتى من الإنترنت ) فستكون كالآتى



access {allow *}

والآن لتشغيل الخادم



/etc/init.d/dictd start

قواعد البيانات:
احصل عليها:

توجد العشرات (ربما أكثر ) من القواميس التى تعمل مع برتوكول dict يمكنك الحصول عليها من dict.org أو الحصول عليها على شكل حزم جاهزة لتوزيعتك
الإعداد:

إذا حصلت على القواميس من dict.org ستجدها على شكل ملف مضغوط ,فك ضغطه ستجد بداخله ملفين



XXX.dict.dz & XXX.index

انسخ الملفات الى أى مكان ,لنقل الى /usr/share/dict , الآن حرر ملف /etc/dictd.conf وأضف الأسطر التالية



database name { data "/usr/share/dict/XXX.dict.dz"
index "/usr/share/dict/XXX.index" }

استبدل name بأى اسم تريده لقاعدة البيانات
dict client
احصل عليه

هذا هو البرنامج الذى يتفاعل معه المستخدم النهائى وكالعادة يوجد عدة خيارات
gnome-dictionary مع جنوم
kdict مع كدى
dict قياسى ويأتى مع حزمة dictd (اذا كنت تستخدم حزمة جاهزة فربما يكون فى حزمة منفصلة)
يوجد بدائل أخرى يمكنك البحث عنها
الإعداد:

ببساطة كل ما نحتاج اليه هو اخبار البرنامج بأن يستخدم localhost كخادم

يمكنك عمل ذلك من خيارات اعداد gnome-dictionary أو kdict أما بالنسبة لـ dict فستكون عن طريق تحرير الملف /etc/dict.conf (لاحظ dict.conf وليس dictd.conf ) ليحتوى السطر التالى


server localhost
الإستخدام:

البرامج الرسومية سهلة ولا تحتاج الى كثير عناء

أما dict فيمكنك كتابة الأمر ثم الكلمة التى تبحث عنها ببساطة مثل هذا المثال



$ dict dyspnoea
1 definition found

From Webster's Revised Unabridged Dictionary (1913) [web1913]:

Dyspnoea \Dysp*n[oe]"a\, n. [L., fr. Gr. ?, fr. ? short of
breath; pref. ? ill, hard + ?, ?, breathing, ? to blow,
breathe: cf. F. dyspn['e]e.] (Med.)
Difficulty of breathing.
[SIZE=6]
طبعا هناك العديد من الخيارات التى يمكن تمريرها اليه (dict --help لمزيد من المعلومات)
wordlist من عرب ايز

أحد مشاريع عرب ايز لتوفير قائمة كلمات عربية يمكن استخدامه كقاموس عربى-انجليزى
احصل عليها:

الصفحة الرئيسية (http://www.arabeyes.org/project.php?proj=Wordlist)
الإعداد:



tar xvfj arabic_wordlist-x.x.x.tar.bz2
cd arabic_wordlist-x.x.x
less INSTALL
./scripts/po2dict.pl

لو تم كل شئ على مايرام فسينسخ الملفات الناتجة (arabic.dict & arabic.index الى /usr/share/dictd وسيكون عليك بعدها تحرير /etc/dictd.conf لإضافة قاعدة البانات الجديدة