Ana sayfa Yazılım Şans Kurabiyesi

Şans Kurabiyesi

0

Veritabanından rasgele alıntılar alarak ekrana getiren Fortune uygulamasıyla eğlenceli ve farklı anlar yaratabilirsiniz

Bu ay kendi şans kurabiyelerimizi hazırlayacağız. ?ans kurabiyelerimizi bir yumurta beyazı, iki yemek kaşığı un, şeker ve sıvı yağ gibi malzemeleri kullanarak yapmak yerine, kelime anlamı talih olan uygulamamızı indirip, kendi metin dosyalarımızı oluşturarak karışımımızı yardımcı uygulamalar ile harmanlayıp taze taze kullanabileceğimiz şans kurabiyeleri inşa edeceğiz.
çoğu kullanıcı şans veya dilek kurabiyelerini duymuştur, sıradan kurabiyelere benzemelerinin yanında içinde küçük kağıt parçalarının olduğu kurabiyelerdir. Bu kağıtlarda çeşitli temenniler bulunur ve genellikle eğlence amaçlı kullanılırlar. Aslında konuyu buradan almamın sebebi kullandığımız programın isminden kaynaklanmakta.
Eğlenmek veya bilgilenmek amaçlı yaratılmış bu küçük çaplı uygulama sayesinde farklı sözler veya şakalar derleyerek kendi veritabanımızı oluşturabiliriz. Fortune uygulaması veritabanından rasgele alıntılar kaparak, ekrana basan ufak bir çerezlik. Unix benzeri işletim sistemlerinde sisteme bağlanan veya sistemden çıkan kullanıcılara ilginç mesajlar veren bu uygulama farklı anlar yaratmak için ideal.

Kurulum
Uygulamayı, daha önce kurulumunu anlattığımız, port yardımı ile kuracağız. öncelikle dosyayı ilgili veritabanında aramak için aşağıdaki komutu çalıştırıyorum.
macosx:~ $ port -v search fortune
dopewars @1.5.12 (games)
    Rewrite of a game originally based on “Drug Wars”

fortune @6.2.0-RELEASE (games)
    Infamous electronic fortune-cookie generator

OSXPal @1.1 (aqua)
    Useless dock-only fortune application for Mac OS X

pureftpd @1.0.21 (net)
    A fast and standard-conformant FTP server

Found 4 ports.

İlgili komutun çıktısından da anlayabileceğimiz gibi “fortune” kelimesi ile alakalı dört uygulama ile karşılaştık, biz bunlardan fortune ile başlayan uygulamayı kullanacağız. ?imdi uygulamamızı sisteme kuralım, takip eden komutu çalıştırdığımda kurulum işlemi başlayacak ve eğer daha önce paketi kurduysanız bir uyarı mesajı ile karşılaşacaksınız.

macosx:~ $ sudo port -v install fortune

Uygulama çok yalın ve basit bir uygulama olup, çok fazla parametre barındırmamakta. Daha doğrusu biz pek fazla parametresine değinmeyeceğiz. Programı ismini vererek (fortune) çalıştırdığınızda, size çıktı olarak bir cümle geri döndürecektir. öncelikle parametrelere bir göz atıp ardından kendi talih dosyalarımızı yaratacağız. Komutu “-l” parametresi ile kullandığımızda veritabanında daha uzun olan vecize veya özdeyişleri seçmiş oluyoruz. Bunun aksine “-s” parametresi kullandığımızda ise kısa özlü sözler veritabanından seçilmektedir.

macosx:~ $ fortune -l
[1] Alexander the Great was a great general.
[2] Great generals are forewarned.
[3] Forewarned is forearmed.
[4] Four is an even number.
[5] Four is certainly an odd number of arms for a man to have.
[6] The only number that is both even and odd is infinity.
    Therefore, Alexander the Great had an infinite number of arms.

Bu önemli argümanlardan başka veritabanı içerisinde belli bir kelime veya isim aramak için kullanabileceğimiz “-m” parametresi bulunmakta. örnekte
“Alexander” isminin geçtiği özlü sözlerin hepsini listelemiş olduk.

macosx:~ $ fortune -m Alexander

Son olarak inceleyeceğimiz parametre ise özellikle oturum kapama sırasında önem kazanmakta. Kullanılan “-w” argümanı sayesinde komut ekrana ilgili özdeyişi bastıktan sonra basılan özdeyişin karakter sayısını hesaba katarak  bekleme yapmaktadır. özellikle .bash_logout dosyası içerisine konulduğunda kullanıcıya ilgili shell’i kapatırken mesaj iletmeye yaramaktadır. İlgili bir shell’den çıkmak icin “exit” komutunu uyguladığınızda fortune’un gereklı özlü sözü ekrana getirdiğini göreceksiniz.

macosx:~ $ fortune -w -s

Fortune Dosyası Oluşturmak

Fortune komutunun detaylarına biraz göz attıktan sonra sıra bu dosyaları bizim olusturmamıza geldi. öncelikle iyi kullandığınız bir editör programı kullanarak bir metin dosyası oluşturalım. Oluşturduğumuz dosyanın formatı aşağıdakine benzer bir dosya olacak. Ben örnek olarak yoda adında bir dosya yarattım ve Yoda’nın özlü sözlerini bu dosyaya, özdeyişlerin aralarına “%” karakteri ekleyerek formatı oluşturdum.

“Do or do not… there is no try.”
%
 “Size matters not, … Look at me. Judge me by size, do you?”
%
 “[Luke:] I can”t believe it. [Yoda:] That is why you fail.”

Dosyayı oluşturduktan sonra bu dosyayı fortune programının anlayabileceği bir formata çevireceğiz. Format değişikliğini yapacağımız uygulamanın ismi “strfile”. Format değişikliği aslına bakılırsa pek karmaşık değil. Bir metin dosyası ismi veriyoruz ve gerisini strfile uygulaması hallediyor.
Benim oluşturduğum “sinema” dosyası, sinema tarihine geçmiş filmlerdeki karakterlerin sarf ettikleri önemli sözlerin bir derlemesi. örnekte görüldüğü üzere uygulamaya sadece çevirimi yapılacak metin dosyasının ismini giriyorum. Oluşturulan dosya ise “sinema.dat” isminde bir dosya oluyor.

macosx:~ $ strfile sinema
“sinema.dat” created
There were 17 strings
Longest string: 201 bytes
Shortest string: 79 bytes

Bu iki dosyayı yani benim örneğimde sinema ve sinema.dat ismindeki  dosyaları cp (copy) komutu yardımı ile fortune veritabanlarının bulunduğu dizine kopyalıyorum.

macosx:~ $ sudo cp sinema* /opt/local/share/games/fortune
   
Oluşturduğum dosyaları artık fortune ile kullanabilirim. Dosya ismini fortune uygulamasının ardından vermek yeterli olacaktır. Son olarak bu sözlerin her shell(kabuk) açtığınızda aktif hale gelmesini istiyorsanız .bash_profile dosyasına ekleyebilirsiniz.

macosx:~ $ fortune sinema
“You talkin’ to me?”
Travis Bickle
Robert De Niro
Taxi Driver
1976

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BİR CEVAP BIRAK

Please enter your comment!
Please enter your name here