لماذا تظهر رموز مئوية وأحرف وأرقام بدلاً من النص العربي في روابط المقالات؟
تظهر رموز مئوية وأحرف وأرقام بدلاً من النص العربي في روابط المقالات لأنَّ معظم بروتوكولات الإنترنت لا تدعم استخدام النص العربي في روابط الويب بشكل مباشر. وبدلاً من ذلك، يتم تحويل النص العربي إلى رموز وأحرف وأرقام تسمى “مسودة حروف النص العربي” أو “UTF-8″، والتي يمكن استخدامها في عناوين الصفحات وروابط الويب. وعندما يتم الوصول إلى الرابط، يقوم المستعرض بتحويل هذه الرموز إلى النص العربي الصحيح.
ظهور رموز مئوية وأحرف وأرقام بدلاً من النص العربي في الروابط؟
إذا كنت تستخدم متصفح إنترنت حديث، فمن المرجح أنك تشاهد رابط صفحة هذا الموضوع كما هو في الواقع:
ومع ذلك، إذا قمت بنسخ هذا الرابط ولصقه في مكان آخر مثل مستند نصي أو قمت بإرساله في رسالة نصية أو غيرها، فلن يظهر الرابط بالشكل المألوف، بل سيبدو كتسلسل عشوائي من الحروف والأرقام ورموز النسبة المئوية % كما يلي:
https://ma3laumat.com/%d8%aa%d8%b8%d9%87%d8%b1-%d8%b1%d9%85%d9%88%d8%b2-%d9%85%d8%a6%d9%88%d9%8a%d8%a9-%d9%88%d8%a3%d8%ad%d8%b1%d9%81-%d9%88%d8%a3%d8%b1%d9%82%d8%a7%d9%85/
هل سبق وتساءلت عن السبب الذي يؤدي إلى ظهور الأحرف غير الإنجليزية في الروابط على شكل رموز مئوية متبوعة بأرقام وأحرف، في حين تظهر النصوص الإنجليزية بشكل سليم في أي سياق ضمن الروابط؟ وهل هناك احتمال لتغيير هذا الأمر في المستقبل؟
سنشرح في هذا الموضوع السبب وراء ظهور الأحرف غير الإنجليزية في الروابط على هذا الشكل الغريب، ونتناول إمكانية تغيير هذا الأمر في المستقبل.
الإنترنت في مراحله الأولى ونظام الترميز ASCII
عندما بدأ ظهور الإنترنت في السبعينيات من القرن العشرين، كان العالم متشتتاً ومنعزلاً عن بعضه البعض بشكل كبير، ولذلك لم تكن هناك معايير موحدة لترميز الأحرف والأرقام والرموز بلغة الآلة. وهذا بسبب عدم فهم الحواسيب لكلماتنا وأحرفنا وأرقامنا، حيث أنها تفهم فقط الرمزين الثنائيين: 0 و 1. ولذلك، كان علينا تحويل أي معلومات أو بيانات نريد إدخالها إلى الحاسوب إلى أصفار وواحدات حتى يتمكن من التعامل معها.
ترميز ASCII (تلفظ أسكي) كان واحداً من أكثر الترميزات شيوعاً في الولايات المتحدة في البداية، ويتميز هذا الترميز بربط الأرقام والأحرف الإنجليزية والعديد من الرموز والحروف الهامة بمقابلات في لغة الآلة. وبموجب هذا الترميز، يتم تمثيل الحرف A بالرقم 01000001، فيما يتم تمثيل الحرف u بالرقم 01110101 وهكذا.
بدأ استخدام ترميز ASCII لعناوين الإنترنت فعلياً بعد بدء ظهور الإنترنت في الولايات المتحدة، مما أدى إلى تقييد عناوين المواقع الإلكترونية بالأحرف الإنجليزية والأرقام وبعض الرموز المميزة. ولذلك، لم تدعم العديد من الحروف الخاصة واللغات الأخرى في ذلك الوقت.
توسيع مجموعة الحروف والتطوير النسبي للترميز.
مع مرور الوقت، أصبح من الواضح أن الأحرف الإنجليزية وبعض المحارف المميزة لا تكفي للتعبير بشكل كامل. لذلك، أصبح من الضروري إيجاد طريقة لإضافة المزيد من المحارف الخاصة، بما في ذلك حروف اللغات الأخرى غير الإنجليزية. ومع ذلك، كانت هناك مشكلة مهمة تتمثل في أنه في حالة إضافة المحارف الجديدة على النحو الذي هي عليه، فسيكون هناك انقطاع في الدعم وستصبح الأنظمة والبرامج القديمة غير قادرة على التعامل مع العناوين الجديدة. وبالطبع، فإن هذه المشكلة تعد كبيرة.
لحل هذه المشكلة، كان من الضروري إيجاد طريقة لترميز جميع المحارف والأحرف المختلفة بدون الحاجة لإضافتها فعليًا أو الاعتماد على ترميز آخر غير ASCII. وتبين أن هناك طريقة فعالة لتحقيق ذلك، وهي استخدام إشارة النسبة المئوية (%) كوسيلة للترميز. فقد كانت هذه الإشارة قليلة الاستخدام عادة ومعدومة الأهمية في تلك الفترة، مما جعلها متاحة للاستخدام كرمز ترميزي جديد. وتمكنت هذه الطريقة من إضافة مجموعة كبيرة من المحارف والأحرف الخاصة دون الحاجة لإجراء أي تعديلات على الأنظمة والبرمجيات القديمة.
باستخدام ترميز النسبة المئوية، يمكن إضافة عدد لا محدود نظريًا من المحارف والأبجديات إلى العناوين، ولكن مع وجود فرق بسيط: سيزيد طول الكتابة بشكل كبير بسبب طريقة عمل ترميز النسبة المئوية التي سوف نشرحها هنا.
ما هو ترميز النسبة المئوية وكيف يعمل؟
كان استخدام ترميز النسبة المئوية في البداية مرتبطاً بضرورة إدراج بعض الرموز التي كانت محجوزة مسبقاً في أسماء المواقع. وذلك لأن بعض الرموز، مثل النقطتين والـ “باك سلاش”، محجوزة مسبقاً لتعطي بنية روابط الإنترنت، والفراغات ممنوعة بشكل كامل أيضاً. وهذا أضاف حاجة لاستخدام هذه المحارف بطريقة ملتوية.
تعمل الطريقة عادة عن طريق استبدال المحرف غير المدعوم بإشارة نسبة مئوية، متبوعة برقمين ست عشريين، حيث يرمز الرقم الست عشري للأرقام من 0 إلى 9 والحروف من A إلى F. على سبيل المثال، يتم تحويل رمز النقطتين إلى %3A، وإشارة الاستفهام (للغات المكتوبة من اليسار) إلى %3F، وهكذا. وبالطبع، فالإشارة المئوية لم تعد مسموحة، بل بات من الضروري ترميزها نفسها حتى يتم منع اللغط، حيث يتم تحويل الإشارة المئوية إلى %25.
كان الشكل الأساسي لترميز النسبة المئوية كافيًا لمجموعة محدودة من الرموز والمحارف، ولكنه كان محدودًا للغاية، حيث إنه يتسع فقط لإضافة 256 محرفًا جديدًا. وبسبب توافر مئات وحتى آلاف الحروف في الأبجديات المختلفة حول العالم، فإن وجود 256 خانة متاحة غير كافٍ، ولذلك كان من الضروري تطوير الترميز ليشمل هذه اللغات.
تم استخدام طريقة تطوير بسيطة لتوسيع ترميز النسبة المئوية، حيث تم الاحتفاظ بالمحارف المرمزة مسبقاً واعتماد عدة أماكن فارغة كمعرف لمجموعة محارف إضافية. وعند استخدام الرموز الخاصة، يتم تفسير ترميز النسبة المئوية بشكل مزدوج وليس بشكل فردي.
على سبيل المثال، يرمز حرف الألف في اللغة العربية إلى الرمز “%D8%A7″، وحرف الياء يرمز إلى الرمز “%D9%8A”. وبهذا الشكل، يتم تمثيل جميع الأبجديات المختلفة حول العالم باستخدام مجموعة من الإشارات المئوية والأحرف والأرقام.
ونتيجة لذلك، عندما تنظر إلى أي رابط يتضمن كلمات عربية، فإن النص الأصلي هو مجموعة من هذه الإشارات المئوية والأحرف والأرقام فقط، ويتم تحويله إلى النص العربي الذي يظهر على الشاشة باستخدام تقنيات ترميز الحروف والإشارات.
كيف يمكن تفسير عدم ظهور ترميز النسبة المئوية بشكل موحد؟
بما أنها المعيار العالمي المعتمد حالياً، قد تسأل نفسك لماذا تظهر الأحرف العربية، على سبيل المثال، بشكل سليم في شريط عنوان متصفحات مثل Google Chrome و Safari وغيرها. والسبب في ذلك هو تبسيط الأمر للمستخدمين عن طريق تمييز محتوى الروابط، بدلاً من عرض شريط طويل من المحارف غير المفهومة أمامهم.
تتمثل الفكرة في أن المتصفحات لا تتعامل بشكل صحيح مع النصوص العربية، حيث تقوم بعرضها فقط في شريط العنوان. ولكن عند نسخ الرابط، يتم تحويله تلقائياً إلى شكل مرمز باستخدام الترميز النسبي المئوي. يتم ذلك لتجنب إرسال رابط غير صالح عبر خدمة أو إلى متصفح قديم لا يدعم تحويل الترميز التلقائي، وبالتالي يتطلب الوصول إلى النص الأصلي.
وعلى الرغم من أن معظم المتصفحات اليوم لا تواجه مشكلة في دخول عناوين إلكترونية تحتوي على أحرف عربية أو يونانية أو حتى صينية، إلا أنها ستقوم بالتحويل في كل مرة لضمان توصيل المحتوى بشكل صحيح.