موضوع: حل مشكلة الكتابة باللغة العربية بالبايثون (Methodology)

ردود: 10 | زيارات: 2274
  1. #1

    حل مشكلة الكتابة باللغة العربية بالبايثون (Methodology)

    السلام عليكم
    اطرح هذا الموضوع ليكون محل للمناقشة من اصحاب البايثون و محبي البرمجة
    الموضوع ببساطة
    هوا كيف بمكن ان تحل مشكلة الحروف المقطعة في البلندر

    ما اطرحه هنا قد يكون صحيحا أو غير ذلك اتمنى التصحيح من من لديهم المعرفة

    What ماهي المشكلة ؟
    http://unicode.org/cldr/utility/list...c_Letter%3A%5D
    ببساطة المشكلة في الـ UNICODE
    ؟؟؟؟؟
    ترميز اليونيكودUTF-8 يضم الكثير من حقول الاحرف العربية وحروف اللغات الاخرى

    للعربية
    حقلين او مجالين في اليونيكود (هما ما يهم)في طرحي هذا
    كود:
    المجال الاول
    (0x0621 - 0x063A ) + ( 0x0640 - 0x064A)
    المجال الثاني
    (0XFE80 - 0xFEFC )
    المجال الاول للحروف المنفصلة م ن ف ص ل ة
    المجال الثاني للحروف المتصلة ‎ ‎ ﻣ‎ ‎ﺘ ﺼ ‎ﻟ ﺔ

    (على حسب علمي ) البلندر يتعامل مع حروف اللغة العربية كبقية البرامج مع الحروف المنصلة واظهار الحروف المتصلة على عاتق نظام التشغيل (في ويندوز خدمة ctfmon.exe هي المسؤولة عن اظهار الحروف بالشكل الصحيح)

    وهنا تكمن المشكلة والحل
    وجود وسيلة (سكريبت ) في البللندر ليحول الحروف من الحروف المنفصلة في المجال الاول أعلاه للمجال الثاني والعكس (لتمكين تحرير النصوص السابقة الادراج )

    وأيضاً عكس الاحرف اي عند ادخال "ع ر ب ي " يعكسها السكريبت لـ "ي ب ر ع" لان البلندر يعكس النصوص المدخلة بالبايثون فتصبح "ع ر ب ي" اي ترتيبها الصحيح .

    ================================================
    How to كيف يكون الحل ؟
    ببساطة قائمة تحوي الحروف (او بالاحرى ترميز الحروف) المنفصلة ومقابلها ترميز الاخرف المتصلة
    ودالة للتحويل بالاتجاهين




    =====================================


  2. #2
    كبداية هذه القاءمة
    كود PHP:
    Glyphes = [
      [
    0x0621 0xFE80],               # ARABIC LETTER HAMZA
      
    [0x0622 0xFE810xFE82],           # ARABIC LETTER ALEF WITH MADDA ABOVE
      
    [0x0623 0xFE830xFE84],           # ARABIC LETTER ALEF WITH HAMZA ABOVE
      
    [0x0624 0xFE850xFE86],           # ARABIC LETTER WAW WITH HAMZA ABOVE
      
    [0x0625 0xFE870xFE88],           # ARABIC LETTER ALEF WITH HAMZA BELOW
      
    [0x0626 0xFE890xFE8A0xFE8B0xFE8C],   # ARABIC LETTER YEH WITH HAMZA ABOVE
      
    [0x0627 0xFE8D0xFE8E],           # ARABIC LETTER ALEF
      
    [0x0628 0xFE8F0xFE900xFE910xFE92],   # ARABIC LETTER BEH
      
    [0x0629 0xFE930xFE94],          # ARABIC LETTER TEH MARBUTA
      
    [0x062A 0xFE950xFE960xFE970xFE98],  # ARABIC LETTER TEH
      
    [0x062B 0xFE990xFE9A0xFE9B0xFE9C],  # ARABIC LETTER THEH
      
    [0x062C 0xFE9D0xFE9E0xFE9F0xFEA0],   # ARABIC LETTER JEEM
      
    [0x062D 0xFEA10xFEA20xFEA30xFEA4],   # ARABIC LETTER HAH
      
    [0x062E 0xFEA50xFEA60xFEA70xFEA8],   # ARABIC LETTER KHAH
      
    [0x062F 0xFEA90xFEAA],          # ARABIC LETTER DAL
      
    [0x0630 0xFEAB0xFEAC],          # ARABIC LETTER THAL
      
    [0x0631 0xFEAD0xFEAE],          # ARABIC LETTER REH
      
    [0x0632 0xFEAF0xFEB0],          # ARABIC LETTER ZAIN
      
    [0x0633 0xFEB10xFEB20xFEB30xFEB4],   # ARABIC LETTER SEEN
      
    [0x0634 0xFEB50xFEB60xFEB70xFEB8],   # ARABIC LETTER SHEEN
      
    [0x0635 0xFEB90xFEBA0xFEBB0xFEBC],   # ARABIC LETTER SAD
      
    [0x0636 0xFEBD0xFEBE0xFEBF0xFEC0],   # ARABIC LETTER DAD
      
    [0x0637 0xFEC10xFEC20xFEC30xFEC4],   # ARABIC LETTER TAH
      
    [0x0638 0xFEC50xFEC60xFEC70xFEC8],   # ARABIC LETTER ZAH
      
    [0x0639 0xFEC90xFECA0xFECB0xFECC],   # ARABIC LETTER AIN
      
    [0x063A 0xFECD0xFECE0xFECF0xFED0],   # ARABIC LETTER GHAIN
      ###
      
    [0x0641 0xFED10xFED20xFED30xFED4],  # ARABIC LETTER FEH
      
    [0x0642 0xFED50xFED60xFED70xFED8],   # ARABIC LETTER QAF
      
    [0x0643 0xFED90xFEDA0xFEDB0xFEDC],   # ARABIC LETTER KAF
      
    [0x0644 0xFEDD0xFEDE0xFEDF0xFEE0],   # ARABIC LETTER LAM
      
    [0x0645 0xFEE10xFEE20xFEE30xFEE4],   # ARABIC LETTER MEEM
      
    [0x0646 0xFEE50xFEE60xFEE70xFEE8],   # ARABIC LETTER NOON
      
    [0x0647 0xFEE90xFEEA0xFEEB0xFEEC],   # ARABIC LETTER HEH
      
    [0x0648 0xFEED0xFEEE],          # ARABIC LETTER WAW
      
    [0x0649 0xFEEF0xFEF0],          # ARABIC LETTER ALEF MAKS0RA
      
    [0x064A 0xFEF10xFEF20xFEF30xFEF4],  # ARABIC LETTER YEH
      
    [0x0000  0xFEF50xFEF6],          # ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE 
      
    [0x0000  0xFEF70xFEF8],          # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE
      
    [0x0000  0xFEF90xFEFA],          # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW 
      
    [0x0000  0xFEFB0xFEFC]          # ARABIC LIGATURE LAM WITH ALEF


  3. #3
    ما الذي ستفعله او(سنفعله) بهذه القائمة ؟
    .
    C. 4d سابقاً

  4. #4
    اقتباس الموضوع الأصلي كتب بواسطة c. 4d معاينة الرد
    ما الذي ستفعله او(سنفعله) بهذه القائمة ؟
    كتابة سكريبت لحل مشكلة اللغة العربية في البلندر

    أخي الكريم ان كان استفسارك عن كيف استفيد كمستخدم من (ها الرجة) هههه
    في الحقيقة اعمل على الاسكريبت من فترة

    وطرحت الموضوع هنا للنقاش ليستفيد الجميع

  5. #5
    رغم انى مش من اهل البايثون حاليا
    ولكن اظن ان لبايثون مكتبات لدعم unicode
    الكود الذى كتبتة اشبة بالاسمبلى
    لابد من حل افضل ودعم اليونيكود بهيدر مكتبة(اعذرنى اذا كانت معلومات خاطئة فتلك تخاريف سى )

  6. #6
    master 3D
    صور رمزية jagalinho
    تاريخ التسجيل
    Jun 2008
    المنطقة
    الـــــمـــــغـــرب بالخصوص في تطوان
    العمر
    22
    ردود
    3,541
    ههه دائما ما تبهرني بمواضيعك الخطيرة أخي بلندر ههه
    بلاد الحر طبتي يا بلادي *** ملاذا طاب عيشك في فؤادي

    blender for ever

  7. #7
    طيب إذا كان البايثون للألعاب (حسب علمي البسيط) ,,هل أستفيد من هالكود للكتباة العربية دون تقطيع الحروف وكتبتها بالمقلوب ؟؟
    يعني هل أدخل الكود كما لو كان سكربت عادي ؟؟

  8. #8
    اقتباس الموضوع الأصلي كتب بواسطة غامض معاينة الرد
    طيب إذا كان البايثون للألعاب (حسب علمي البسيط) ,,هل أستفيد من هالكود للكتباة العربية دون تقطيع الحروف وكتبتها بالمقلوب ؟؟
    يعني هل أدخل الكود كما لو كان سكربت عادي ؟؟
    الباثيون للبلندر بشكل عام و يمكن استخدامه في الالعاب كذلك يمكن استخدامه في تطوير البلندر نفسه و ليس فقط الالعاب .
    .
    C. 4d سابقاً

  9. #9
    يا اخوانى
    لغة البايثون هى لغة برمجة سكربتنج وضعت عشان تبقى لغة خفيفة للبرمجة اليومية وانجاز الاعمال
    لذلك يستطيع الاشخاص تعلمها فى خلال اسابيع بعكس لغات اخرى قد تاخذ اضعاف هذا الوقت
    البايثون لها تكاملات implementation كتير زى فى انشاء تطبيقات سطح المكتب و ادارة قواعد البيانات وفى ادارة الشبكات وفى التعامل مع الانظمة (مثل سكربتنج الشل)
    ومن احد تطيبقاتها
    انها تستخدم كلغة حوار مع api البرامج (api تعنى محتوى البرنامج من اجزاء ومسميات ويعتبر الواجهة البرمجية للتعامل مع البرنامج ) لذلك هى تستخدم للاسكربتنج لصناعة نداءات من البرنامج وتعديل خصائص البرنامج
    معظم البرامج الان تستخدم البايثون (والبعض يستخدم معها الجافا سكربت او لغة سكربت خاصة انشتها شركة البرنامج) لانها الاكثر عموما واصبحت معيارية

    والبلندر يدعم بايثون بقوة وفى الاصدارة 2.5 تقريبا سيجعل بايثون الاكثر تكاملا معة وسيمكنة من الوصول لاعمق اجزاء البرنامج بسهولة ووضوح .
    اظن ان 2.5 بالتاكيد هو الاكثر تكاملا مع بايثون بالمقارنة مع اى برنامج تصميم ياخذ بايثون كلغة سكربتنج

  10. #10
    عضو متميز
    تاريخ التسجيل
    Sep 2008
    المنطقة
    السعودية
    ردود
    2,132
    رائع اخي دائما تأتينا بكل ما هو جديد وفريد



    ول نعيد المجد العظيم لأمة * كانت منارا للعلوم قديما

Bookmarks

قوانين الموضوعات

  • لا يمكنك اضافة موضوع جديد
  • لا يمكنك اضافة ردود
  • لا يمكنك اضافة مرفقات
  • لا يمكنك تعديل مشاركاتك
  •  
  • كود BB مفعّل
  • رموز الحالة مفعّل
  • كود [IMG] مفعّل
  • [VIDEO] code is مفعّل
  • كود HTML معطل