Posts Tagged ‘mono’

pymagic/sharpmagic!

Posted: أبريل 15, 2009 in General
الوسوم:, , , , , , , ,

بعد انهاء فصل ال FFI من RWH وقراية libghc-magic افتكرت ان بايثون كمان ليها FFL وهى ctypes فليه لأ ؟ كتبت واحد كامل لبايثون بالإعتماد على ctypes –بالمناسبة بردو ctypes مستخدمه مع pyinotify-

على كل حال pymagic بتشمل كل الثوابت الموجودة فى magic.h وبتكشف الدوال الآتيه

magic_t magic_open(int);

void magic_close(magic_t);

const char *magic_file(magic_t, const char *);

const char *magic_descriptor(magic_t, int);

const char *magic_buffer(magic_t, const void *, size_t);

const char *magic_error(magic_t);

int magic_setflags(magic_t, int);

int magic_load(magic_t, const char *);

int magic_compile(magic_t, const char *);

int magic_check(magic_t, const char *);

int magic_errno(magic_t);

مثال مباشر على الإستخدام للحج ستورم

http://www.linuxac.org/forum/showpost.php?p=135139&postcount=11

xmonader@xmonader-desktop:~$ pymagic.py twitter.xml

twitter.xml: XML

xmonader@xmonader-desktop:~$ pymagic.py VirtualTerminal.pyc

VirtualTerminal.pyc: python 2.5 byte-compiled

xmonader@xmonader-desktop:~$ pymagic.py Allison-Iraheta-2009-03-10.mp3

Allison-Iraheta-2009-03-10.mp3: Audio file with ID3 version 2.3, MP3 encoding

يستحسن تستخدم guess

>>> F=”/home/xmonader/Allison-Iraheta-2009-03-10.mp3″

>>> guess(F)

‘Audio file with ID3 version 2.3, MP3 encoding’

https://sourceforge.net/projects/pymagic/

تحديث:

تم انهاء SharpMagic وهى اعتقد الوحيدة ل Libmagic

https://sourceforge.net/projects/sharpmagic/

Advertisements

PySmallXMLParser

Posted: مارس 1, 2009 in General
الوسوم:, , ,

وانا بتصفح بعض السورسات فى Mono لقيت SmallXMLParser –وهو مبنى على الأحداث مشابه ل SAX- .. على كل حال قررت اكتب واحد لبايثون (على سبيل التطبيق 😉 )

تقدر تطلع عليه من هنا وكيفية الإستخدام فى ملف test.py

الفكرة انك تشتق الصف XMLReader كما فى BooksXMLReader وتعيد تعريف ال callbacks اللى تهمك مثل onStartTag (بيتم استدعاءها عند بداية كل tag) و onCharacters بيتم استدعاءها عند المحتوى و onEndTag عند انهاء tag معين و onComment بيتم استدعاءها عند البدأ فى قراءة comment و onPI عند كل Processing Instruction

فى الدالة testReadingBooks بتنشئ كائن BooksXMLReader وتمرر file object فى ال __init__ لو مش فى ملف فى string تقدر تستدعى الدالة create_stream علي ال string

تستدعى الطريقة start ليتم بدأ المعالجة

تقدر تستفيد من ال Reader بإنك تعمل حاجات كتير زى INI parser او غيرهم!

مش اجهدت الparser مع ملفات اكبر من 2 ميجا (صح ياستورم؟ :D)

ال APIs مازلت محتاجة refractoring

اى ملاحظات او تعليقات حوله لاتتردد فى مراسلتى.

بمناسبة ال parsing تابع الموضوع Heist مفسر Scheme مكتوب بروبى

كنت مخلص ريبورتات وكانت ناقصة على التسليم فقعدت حوالى ساعة بحاول اعرف  البرنتر وفى الآخر طلعت مش متوصلة بالجهاز اساسا وربنا ستر 😀

وبس كدا اشوفكم قريبا 🙂

Sleepless

Posted: يناير 31, 2009 in General
الوسوم:, , ,

كنت اتكلمت عن ال Docathon فى بوست سابق ويعنى كان فى تفاعل كويس -بالنسبة لكمية الناس اللى بتتفاعل اصلا :D- على كل حال انا انهيت ترجمة جزئية ال Mono WinForms و GTK# ومستضيفها حاليا على PF لحد ماتكون جاهزة تماما عشان تتنقل اما لموقع zetcode او تتظبط فى وثائق اعجوبة

حاليا سمسم فناننا ومبرمجنا هو اللى اكد على ترجمة The Java Swing Tutorial واكيد هتكون ترجمة تحفة.. انا مستنيها على احر من الجمر ومتوقعين اكتر من البقية

اه نسيت اخدت اجازة الترم الحمد لله عشان اتفرغ شوية لهاسكل وماتلاب wish me luck

احمد مصطفى هياخد الأجازة النهاردة وجاب باور سبلاى اخيرا.. ربنا يستر 😀

CSISOMounter

Posted: سبتمبر 27, 2008 in General
الوسوم:, , , , ,

برنامج كتبته كبورت لبرنامج Gmount-iso بال C#/GTK لضم mount ال ISO images طبعا فى الخلفية اللى شغال mount   command

الsource, linux binaries

Download