Dalam satu minggu ini banyak sekali yang protes, bertanya, salah paham atau kesal pada status Yahoo! Messengerku, yang selalu menampilkan jam saat ini. Bukan jam tepat sih, melainkan jam fuzzy.
Sebenarnya bukan cuma pada Yahoo! Messenger, karena status itu aku terapkan pada aplikasi Adium, sehingga semua account chat-ku yang lain juga terpengaruh dengan status tersebut.
Status menampilkan antara lain “jam sepuluh lebih seperempat”, atau “jam setengah dua belas lebih lima”, dan seterusnya.
Kebanyakan teman pada curiga aku mengetik status tersebut secara manual, mengganti status secara terus menerus. Lha kok nganggur banget sampai harus melakukan itu.
Faktanya, aku menggunakan script kecil yang aku tulis dalam AppleScript, yang dijalankan oleh crontab setiap 3 menit.
Script ini hanya berjalan pada Mac OS, dengan aplikasi Adium. Bagi yang tidak menggunakan 2 itu, maka tidak dapat menggunakan script ini
Berikut ini script jamfuzzy.sh:
#!/usr/bin/osascript
-- Menampilkan jam sekarang berupa kata-kata
-- pada isi status Adium
-- Aryo Sanjaya, 2008, aryo@aryosanjaya.net
on namaJam(jam)
if jam is greater than 12 then set jam to jam - 12
if jam is less than 1 then set jam to 12
set arrjam to {"satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas", "duabelas"}
return item jam of arrjam
end namaJam
set menit to minutes of (current date)
set jam to namaJam(hours of (current date))
set nextjam to namaJam((hours of (current date)) + 1)
if menit is less than 2 then
set sekarang to "jam " & jam & " pas"
else if menit is less than 4 then
set sekarang to "jam " & jam & " lebih sedikit"
else if menit is less than 6 then
set sekarang to "jam " & jam & " lebih lima"
else if menit is less than 8 then
set sekarang to "jam " & jam & " lebih delapan"
else if menit is less than 12 then
set sekarang to "jam " & jam & " lebih sepuluhan"
else if menit is less than 17 then
set sekarang to "jam " & jam & " lebih seperempat"
else if menit is less than 22 then
set sekarang to "jam " & jam & " lebih duapuluhan"
else if menit is less than 27 then
set sekarang to "jam " & jam & " lebih dualimaan"
else if menit is less than 32 then
set sekarang to "jam setengah " & nextjam & " pas"
else if menit is less than 37 then
set sekarang to "jam setengah " & nextjam & " lebih limaan"
else if menit is less than 41 then
set sekarang to "jam setengah " & nextjam & " lebih sepuluhan"
else if menit is less than 47 then
set sekarang to "jam " & nextjam & " kurang seperempat"
else if menit is less than 52 then
set sekarang to "jam " & nextjam & " kurang sepuluh"
else if menit is less than 58 then
set sekarang to "hampir jam " & nextjam
else
set sekarang to "jam " & nextjam & " pas"
end if
tell application "System Events"
if exists process "Adium" then tell application "Adium" to set status message of every account to sekarang
end tell
Atau download scriptnya dari sini: jamfuzzy.sh
Simpan script jamfuzzy.sh pada folder home (misalnya), lalu masuk ke Console:
Berikan attribute executable:
chmod +x jamfuzzy.sh
Masukkan ke dalam crontab:
crontab -e
tekan i (masuk ke mode insert), lalu paste baris seperti ini:
*/3 * * * * /Users/aryosanjaya/jamfuzzy.sh > /dev/null
Ubah lokasi script di atas sesuai lokasi script jamfuzzy.sh. Kalau sudah, tekan ESC, lalu :wq <enter>
Selesai.
Nanti setiap menjalankan Adium, statusnya akan berubah sesuai jam saat ini, namun dengan tampilan yang beda.