منبع اصلی نوشتار زیر در این لینک قرار دارد

تقویم فارسی برای گنوم‌شل

اینم از عیدی سال نود و یک!

جمعه‌ی پیش (۱۹ اسفند) یه مقداری وقتم آزاد شد و البته همراه شد با بوی بهار و تهیه نکردن یک عیدی برای دوستانم!

خلاصه اینکه دست به کار شدم و یک توسعه‌ی ساده برای گنوم‌شل نوشتم که تاریخ فارسی رو نمایش بده و به امید روزی که این «تاریخ فارسی» به «تقویم فارسی» بدل بشه، اسمش رو گذاشتم «تقویم فارسی».

کدنویسی‌اش بد و کثیفه و عجله‌ای شد، ضمن اینکه رفرنس‌های توسعه برای گنوم‌شل هم خیلی زیاد نیست و دسترسی به پارامترهای یه سری متد در دسترس نیست (یا دسترسی بهشون خیلی سخته) و در عین حال باگ‌هایی در گنوم‌شل هست که تا برطرف نشه، نمی‌شه در بعضی ابعاد پیشرفت کرد. (مخصوصن در نوشتن یونیکد، که ظاهرن داره برطرف می‌شه!)

دیگه زیاده‌گویی نمی‌کنم… سورس برنامه توی github من هست.

خود توسعه رو هم می‌تونید از سایت مخصوص توسعه‌های گنوم‌شل، یعنی extensions.gnome.org  بیابید، لینک مستقیمش هم اینجاست.

و در نهایت اینکه…

سال نو مبارک \":-)\"

به روز رسانی ۲۴ اسفند ۱۳۹۰:

نسخه‌ی جدید که قابلیت نمایش فارسی رو هم داره منتشر شد. (این نسخه به محض تایید مسوولین سایت extensions.gnome.org در سایت مربوطه در دسترس عموم قرار خواهد گرفت)

این نسخه تاریخ رو به شکل «۲۰ اسفند ۱۳۹۰» نمایش می‌دهد!

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

PHP 5.4 alpha 1 منتشر شد

امروز اولین نسخه‌ی آلفای PHP 5.4 منتشر شد، تغییرات ساده و خوبی داره، که به نظرم موارد مهم‌اش ایناست:

  • توسعه‌ی multibyte رو به صورت پیش‌فرض پشتیبانی می‌کنه.
  • امکان مشاهده‌ی پروسه‌ی آپلود فایل توی این نسخه هست که مستندات‌اش رو می‌تونید اینجا ببینید.
  • اکثر/تمامی مواردی که توی PHP 5.3 به صورت deprecated در اومده بود، حذف شده، مثل register_globals و safe mode.
  • کاراکترست پیش فرض شده utf-8!
  • علامت =?> حتا اگه short_tags خاموش باشه، در دسترس است (احتمالن این کار برای اینه که توی نسخه‌های بعدی، در کل short_tags رو بردارند)
  • پشتیبانی کردن از Traits.
  • و در نهایت، کاهش مصرف حافظه و کاهش درگیری پردازنده در پردازش فایل‌های PHP!

نسخه‌ی لینوکسی رو می‌تونید از اینجا بگیرید.

اگر هم هنوز روی ویندوز کد PHP می‌نویسید، نسخه‌ی ویندوزی هم اینجا یافت می‌شود!

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

انتشار نسخه‌ی ۰٫۷ نرم‌افزار تقویم فارسی برای لینوکس

بعد از حدود دو ماه توسعه‌ی این تقویم، نسخه‌ی ۰٫۷ منتشر شد. البته دوستانی که مخزن pcalendar رو توی لیست مخازن‌شون داشتند، از همه‌ی نسخه‌های اون تا به امروز آگاهی پیدا کردند، اما ترجیح دادم که بعد از این مدت، دوباره مطلبی بنویسم و در مورد پیش‌رفت کار توضیح بدم.

اول از همه باید از دوست و همکارم، آقای مصطفا میرموسوی، به خاطر همکاری در این پروژه سپاس‌گذاری کنم.

زمانی که برنامه رو اجرا می‌کنید یک آیکان به قسمت Tray لینوکس اضافه می‌شه و یک پیام شامل تاریخ روز و احیانن مناسبت‌های اون روز نشون می‌ده.

ادامه مطلب رو ببینید:::

ادامه مطلب «انتشار نسخه‌ی ۰٫۷ نرم‌افزار تقویم فارسی برای لینوکس» ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

تقویم فارسی برای لینوکس

در طی یک پروژه‌ی درازمدت که فکر کنم از یک یا دو سال پیش شروع کردم، تصمیم گرفتم در کنار مابقی کارهای روزمره‌ام php-gtk رو برای دبیان/اوبونتو بسته‌بندی کنم!

خلاصه چندین هفته پیش این اتفاق افتاد و کلی تستش کردم و به نظرم خیلی از مشکلاتش برطرف شده، ضمن این‌که توسعه‌های pecl برای cairo و dbus رو هم ساختم و گذاشتم توی PPA خودم!

یک شب که خوابم نبرد، نشستم تا ساعت ۷ صبح یک پروژه‌ی خیلی ساده و مختصر هم درست کردم که یک تقویم فارسی است، شاید چیزی شبیه پروژه‌ی jalali calendar آقای پهنادایان و یا پروژه‌ی ساعت آقای محسن داوری.

این تقویم در حال حاضر در نسخه‌ی 0.0.5 به سر می‌بره و تقریبن به شاید ۵ درصد milestoneهام رسیدم و خیلی کار داره تا چیزایی که تو فکرم هست رو انجام بدم، اما اصولن برای توسعه خیلی خیلی وقت ندارم، مگر باز نیمه‌شبی بدخواب بشم!

قابلیت‌های فعلی این تقویم شامل موارد زیر است:

  • نمایش روز در نوار ابزار
  • نمایش کامل تاریخ بعد از کلیک روی آیکان
  • نمایش تمام روزهای تعطیل شمسی و عربی طبق تقویم رسمی ۸۹
  • قابلیت به روز رسانی خودکار برای تعطیلات عربی (هنوز درست کار کردن این مورد رو تست نکردم! شاید تا سال‌های آینده که به مشکل خورد برطرفش کنم!)
  • نمایش روز و اتفاقات هر روز در هنگام ورود به اون روز!

به هر حال، برای نصب این برنامه توی اوبونتو باید فرمان زیر رو تایپ کنید:

sudo add-apt-repository ppa:omidmottaghi/php-gtk; sudo apt-get update; sudo apt-get install pcalendar

هنوز وقت نکردم قسمت سوسول‌بازی پروژه، مثل مستندات لایسنس و فایل‌های README و …، رو بذارم سر جاش، وقتی این کارا انجام شد، سورس رو یه جای درست و حسابی‌تر آپلود می‌کنم تا هم رسمن منتشر شده باشه، هم بشه باگ‌هاش رو گزارش داد و بررسی کرد و هم دوستان بتونند در توسعه کمکم کنند. هر وقت منتشر شد، خبرش رو می‌دم.

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

کارت عروسی الکترونیکی

چندی پیش تصمیم گرفتم مزدوج بشم(به هر حال انسان جایزالخطا است :دی) و از اونجایی که خیلی تلاش می‌کنم تکراری نباشم، تصمیم گرفتم یک کارت عروسی دیجیتال بسازم. این مساله و علاقه‌ام به ۸-بیت باعث شد که یک کارت با گرافیک ۸-بیتی تولید کنم!

از اونجایی که تصمیم داشتم یک بازی به عنوان کارت طراحی کنم و با وسواسی که در انتخاب تکنولوژی دارم، رفتم سراغ جاوااسکریپت! خلاصه، با Inkscape کارهای گرافیکی‌ام رو انجام دادم و با FontForge فونت ۸-بیتی‌ام رو ساختم و با کمک Komodo Edit و Geany کدهای HTML و CSS و JavaScript رو نوشتم، که البته از کتاب‌خونه‌ی mootools هم برای جاوااسکریپت کمک گرفتم!

 در نهایت، نتیجه چیزی شد به شکل زیر: 

\"8-bit

 این کارت رو می‌تونید از اینجـــــــــــا تست کنید.

و سورس کارت در اینجـــــــــــــا با لایسنس GPLv3 به صورت آزاد منتشر شده. 

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

پی.اچ.پی ۵.۳ و تقویم فارسی

داشتم اندکی توی راهنمای پی.اچ.پی می‌گشتم و تغییرات جدید پی.اچ.پی ۵.۳ رو بررسی می‌کردم. مقدار زیادی تابع و کلاس در زمینه‌ی اینترنشنالیزیشن(!!) اضافه شده که به طور پیش‌فرض روی پی.اچ.پی هست که شاید مهم‌ترینش توابع کار با تقویم و تاریخ باشه.

کلی گشتم ببینم امکان کار با تقویم‌های دیگه‌ای جز گرگورین هست یا نه و راهنمای درستی پیدا نکردم و خلاصه بعد از کلی بررسی در اینترنت (و نیافتن هیچ منبع درستی!) رسیدم به سایت زیر: http://site.icu-project.org/charts/comparison

و البته چیزی یافتم به شکل @calendar=persian.

خلاصه برای گرفتن تاریخ فارسی باید چنین کرد:

ادامه مطلب «پی.اچ.پی ۵.۳ و تقویم فارسی» ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

PHPresentation

چندی پیش توسط یک مجموعه‌ی آموزشی موظف به ایجاد چندین پرزنتیشن (presentation) چند صد صفحه‌ای شدم!

خوب ابتدای کار خیلی ساده به نظر می‌رسید، نرم‌افزار openoffice به راحتی نتونست جواب کارم رو بده و شدیدن لنگ می‌زد. سپس دنبال معادل‌های آزاد دیگه رفتم و باز هم هیچ‌کدوم جواب مطلوبی ندادند و همه در باگ غوطه‌ور بودند! سپس سراغ به‌ترین محصول مزخرف‌ترین شرکت نرم‌افزاری دنیا رفتم و باز هم نتیجه‌ای که می‌خواستم رو به هیچ عنوان نتونستم به دست بیارم!

در نرم‌افزارهای موجود، نمی‌شد پروفایل برای استایل یک قسمت از متن ایجاد کرد (می‌شد، اما هم‌شون شدیدن باگی بودند). نمی‌شد کدهای برنامه‌هایی که قرار بود توی اسلایدها باشند رو رنگی کرد و این کار باید دستی انجام می‌شد (چقدر احمقانه!).

خلاصه دنبال یک نسخه‌ی HTML توی اینترنت بودم تا با نوشتن HTML حداقل بتونم شدیدن در استایل دادن و استاندارد کردن اسلایدهام مانور بدم. خلاصه این‌که به محصولی با نام S5 رسیدم که نمی‌دونم چرا تو ایران فیلقره!

محصول فوق به تنهایی پر از باگ‌های جاوااسکریپت بود و شدیدن شخصی نوشته شده بود و نیاز به تغییرات اساسی داشت. ضمن این‌که اتوماتیک شدن برخی کارهام و تولید اسلایدها برام مهم بود تا از دوباره‌کاری جلوگیری کنم. و در نهایت، محصول نوشته شده، یه چیزی شد به اسم PHPresentation که توی github هوست شده.

در حال حاضر برای کار کردن با این محصول باید یک سری فایل متنی رو برای پرزنتیشن‌ها تغییر بدید. هر فایل شامل تعداد نامحدودی اسلاید است که محتوای خاص خودشون رو دارند.

برای کار کردن خودم، تغییر فایل متنی خیلی معقولانه‌تر به نظر میاد(!) اما برای کاربران دیگه، دارم بخش گرافیکی‌ای برای ایجاد اسلاید و پرزنتیشن ایجاد می‌کنم که هنوز نسخه‌های اولیه‌اش رو داره طی می‌کنه!

همین دیگه. اگر نظری بود بفرمایید. اگر فکر می‌کنید ازتون کمکی بر میاد هم با من تماس بگیرید. ممنون.
ادامه مطلب «PHPresentation» ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

Persian Log2Vis نگارش دوم منتشر شد

پروژه‌ی Persian Log2Vis نگارش دوم منتشر شد.

نگارش اول به RC3 ختم شد و به دلیل تغییرات اساسی، تصمیم گرفتم نگارش بعدی رو با شماره‌ی دو منتشر کنم.

این نگارش از نظر امکانات تفاوتی با نگارش یکم نداره، بلکه فقط موتور مبدل متن تغییر کرده و دیگه نیازی به fribidi و mbstring نیست. در موتور جدید از توابع موجود در کتاب‌خانه‌ی TCPDF استفاده شده که الگوریتم bidi موجود در یکی از استانداردهای یونیکد رو با PHP پیاده‌سازی کرده (همون کاری که fribidi انجام می‌داد) البته این برخی کتب‌خونه مقداری تغییر داده شدند تا با فارسی سازگارتر باشند، مثلن کاراکتر نیم‌فاصله (zwnj) به کتاب‌خونه اضافه شد و …

برای دریافت این پروژه به روی لینک زیر کلیک کنید: https://github.com/omid/Persian-Log2Vis

موفق باشید ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

برطرف کردن مشکلات فایل‌های دانلود شده‌ی خراب!

فرض کنید یک فایل ۴ گیگابایتی (مثل فایل ایمیج دی‌وی‌دی اوبونتو) رو از اینترنت به صورت مستقیم دریافت می‌کنید. خوب، بعد از یک هفته تلاش (با اینترنت زغالی) و دریافت کامل فایل، هیجان‌زده ایمیج رو توی VirtualBox می‌خواین تست کنید که می‌بینید ایمیج بد دانلود شده! خوب مسلمن دریافت مجدد ۴ گیگابایت خیلی براتون ترسناکه، ولی احتمالن یک راه حل برای مشکل شما هست!

روی ادامه‌ی مطلب کلیک کنید تا راه حل رو بخونید.
ادامه مطلب «برطرف کردن مشکلات فایل‌های دانلود شده‌ی خراب!» ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

فایرفاکس ۳ در ایران

حتمن همتون در جریان تعداد نسخه‌های دریافت شده‌ی فایرفاکس ۳ هستید، بیشتر از اون چیزی که ما تعجب کردیم، جهانیان متعجب شدند!
واقعا این مساله برای من مهم نیست که آمار صحیح است یا نه، از بُعدِ سیاسی (منظورم اون سیاسی نیست!) بخوایم به قضیه نگاه کنیم، به نظرم مطلوبه، مخصوصا وقتی آدم برخی نظرها رو می‌بینه. مثلا این نظر رو ببینید:

I think the big surprise is Iran. I would not have guessed that they had 100K computers, much less 100K users able to download FF3.

همین‌که نظر افرادی که در مورد ایران اشتباه فکر می‌کنند جلب بشه، مطلوبه، چه برای دریافتِ واقعی باشه و چه دریافتِ غیر واقعی!

پیرو صحبت‌های فوق، بد نیست لینک‌های زیر رو هم ببینید و بخونید و نگاهی به نظرات‌شان بیاندازید:
http://www.uptospeedgame.com/news/iran-really-really-loves-firefox-3/
http://current.com/items/89031954_iran_is_among_the_top_firefox_3_downloaders?xid=216
http://www.millionface.com/l/the-download-day-and-the-iranian-record/
http://www.pooya.com/poo/index.php/2008/06/18/firefox-3-huge-in-iran/
http://mashable.com/2008/06/18/firefox-record/

منبع تصویر:
http://www.flickr.com/photos/8345192@N03/2571283860/ ادامه مطلب