TBD sozlugu



Merhaba,

Ne  zaman  TBD'nin sozlugune  ihtiyac  duysam  ayni anda  bir  browser'a
da  ihtiyac  duymaktan bunaldim  ve  oturup  kelimelere browser  olmadan
bakabilmemi saglayacak kucuk (cok kucuk) bir Perl programi yazdim.

Calismak  icin  Perl'e,  DBI  modulune ve  kullanmayi  tercih  ettiginiz
saklama yonteminin gerektirdigi DBD  modulune ihtiyac duyuyor. Iki cesit
saklama  yontemi  mevcut; MySQL  ve  CSV. MySQL  icin DBD::mysql  modulu
gerekli (Msql-Mysql-modules paketinin parcasi). CSV icin DBD::CSV modulu
gerekli. DBD::CSV de bir takim modullere ihtiyac duyuyor, SQL::Statement
ve  Text::CSV_XS. Bu  modullerin hepsini  http://www.cpan.org'da  bulmak
mumkun.

Bu modulleri kurdugunuzu varsayip anlatmaya devam ediyorum.

Program  iki parca  halinde:  kurulum icin  tbd_install.pl ve  sozlukten
yararlanmak icin  tbd.pl. Her ikisini  de kullanmadan once  bir editorde
acip bazi ayarlar yapmaniz  gerekiyor. Her iki dosyada yapilmasi gereken
ayarlar  ayni ve  dosyalarda  kabaca  aciklamalari var. Bu  ayarlamalari
yaptiktan   sonra   tbd_install.pl'yi   TBD'nin   ing_turk.html   isimli
sozluguyle besleyin:

./tbd_install.pl < ing_turk.html

Bir  sure  calistiktan  sonra  sozluk  kullanima  hazir  olacak. Saklama
yontemi  olarak csv'yi  sectiyseniz kelimeler  virgulle ayrilmis  olarak
$dbdir   dizininde   $table   isimli  dosyada   birikecek. Eger   $dbdir
dizininde   onceden  $table   isimli  bir   dosyaniz  varsa   o  dosyayi
kaybedersiniz!!  Sormadan siler, sakasi  yok. Diger saklama yontemi olan
MySQL'i  sectiyseniz bu  sefer kelimeler  ve karsiliklari  ayarladiginiz
veritabaninda birikecek. Veritabani icin bir  tehlike yok ama tablo icin
var! Belirlediginiz  veritabanina  birsey  olmayacak ama  tablo  silinip
bastan  yaratilacak,  o  yuzden  ne  sectiginize  dikkat  edin!! Tekrar:
hangi  saklama   yontemi  olursa  olsun,  saklanacak   yerlerin  onceden
kullanilmadigindan emin olun!!

Kac  kelimenin  saklandigini  ogrendikten  sonra  ihtiyaciniz  olacagini
dusunmuyorsaniz tbd_install.pl'yi silebilirsiniz.

tbd.pl'nin   ayarlarini  tbd_install.pl   ile  ayni   yaptiysaniz  artik
dilediginiz kelimenin anlamina bakabilirsiniz. Hicbir parametre vermeden
sadece  kelime verirseniz  kelimenin  ingilizce  oldugunu ve  turkcesini
ogrenmek istediginizi varsayar. Tersini belirtmek icin -t veya --turkish
parametresini   kullanabilirsiniz.   -r  veya   --regex(p)   parametresi
verdiginiz  kelimenin Regular  Expression oldugunu  belirtmek icin  (CSV
yontemi regex'i maalesef desteklemiyor). Ayni  sekilde -p veya --partial
verdiginiz  kelimenin  aslinda  daha  buyuk bir  kelimenin  veya  kelime
grubunun  parcasi oldugunu  belirtmek  icin. Ayni  anda pekcok  kelimeye
bakmak mumkun. tbd.pl arama yonteminize gore okunakli bir sekilde sonucu
gosterecektir. Ayrica --help ve --version parametreleri de var.

Her iki  saklama metodunun  avantajlari ve dezavantajlari  var. CSV daha
once  soyledigim  gibi  regex   ile  aramayi  desteklemiyor  ve  MySQL'e
nazaran oldukca yavas. MySQL'i ise  herkes calistirmiyor, ve cok nadiren
kullanilacak kucuk bir sozluk icin kimse ugrasmak istemeyebilir.

Bende kurulu olan ilgili programlarin ve modullerin surumleri:
  Perl-5.6.0
  MySQL-3.23.32

  DBI-1.20
  DBD::mysql 2.0415
  DBD::CSV 0.1027
  Text::CSV_XS 0.23
  SQL::Statement 0.1021
  
Kullanan olursa,  benim isime  yaradigi kadar  onun da  isine yaramasini
dilerim.

-- 
Alper Ersoy

tbd_sozluk.tar.gz



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]